[Q]Pakete sniffen

09/10/2009 15:57 Gianotti#1
ich möchte gerne einen login server für ein spiel erstellen und bin dabei die packets zu sniffen , was wiederum nicht funktioniert. ich habe überall einen haken gesetzt ( 1.1 2.0 ). doch es werden keine pakete gesnifft wenn ich z.b. id und pw eingebe und abschicke müsste doch was angegeben sein oder ? ich connecte auf meine eigene ip das tut nichts zur sache oder ?

spielname : flyff v6
09/10/2009 17:45 pachen123321#2
hi ^^

hast du es so versucht ??? :

[Only registered and activated users can see links. Click Here To Register...]

wenn du hängen solltest, hole dir einfach einen open source code von einem flyff server und schau da nach :P

have fun
09/10/2009 19:25 Gianotti#3
Quote:
Originally Posted by pachen123321 View Post
hi ^^

hast du es so versucht ??? :

[Only registered and activated users can see links. Click Here To Register...]

wenn du hängen solltest, hole dir einfach einen open source code von einem flyff server und schau da nach :P

have fun
die pakete haben sich zwischen den versionen verändert ;)
09/11/2009 09:34 pachen123321#4
nimm dann den sourve von der V6 version :P

hier nen ausschnitt von KiKis version 6 ServerFiles:


Code:
void LoginPacket::loginError(Player* player, int errorid){
	Packet packet = Packet();
	packet.addHeader(0xfe);
	packet.addInt(errorid);
	packet.packetSendLogin(player);
}

void LoginPacket::sendPong(Player *player, int time){
	Packet packet = Packet();
	packet.addHeader(0x14);
	packet.addInt(time);
	packet.packetSendLogin(player);
}

void LoginPacket::showWorld(Player* player, vector<World*> worlds){
	Packet packet = Packet();
	packet.addHeader(0xfd);
	packet.addInt(0x9dd5b70d);//0db7d59d
	packet.addByte(worlds.size());
	if(!player->getIsOld()){
		packet.addString(player->getUserName(),true);
	}
	for(unsigned i=0;i<worlds.size();i++){
		World* world = worlds.at(i);
		packet.addInt(4);
		packet.addInt(-1);
		packet.addInt(world->id);
		packet.addString(world->name,true);
		packet.addString(world->ipaddress,true);
		packet.addInt(0);
		packet.addInt(0);
		packet.addInt(1);
		packet.addInt(0);
		for(int i=1; i<world->channels+1; i++){
			packet.addInt(world->id);
			packet.addInt(i);
			char channelname[100];
			sprintf_s(channelname,99,"%d-%d",world->id,i);
			packet.addString(channelname,true);
			packet.addInt(0);
			packet.addInt(0);
			packet.addInt(0);
			packet.addInt(1);
			packet.addInt(0x3e8);
		}
	}
	//packet.addBytes("0db7d59d010800000063686f77666163650b000000ffffffff0300000014000000835a83938356838a836283675b504b89c2945c5d0e0000003231302e3133362e3130342e343500000000000000000100000000000000030000000100000003000000332d3100000000000000005a00000001000000b0040000030000000200000003000000332d3200000000000000002200000001000000e8030000ffffffff02000000080000008356815b836a83740e0000003231302e3133362e3130342e333800000000000000000100000000000000020000000100000003000000322d310000000000000000f400000001000000b0040000020000000200000003000000322d320000000000000000a200000001000000e8030000020000000300000003000000322d3300000000000000008700000001000000e8030000ffffffff010000000a000000834583468393836683420e0000003231302e3133362e3130342e333200000000000000000100000000000000010000000100000003000000312d3100000000000000006101000001000000b0040000010000000200000003000000312d320000000000000000d400000001000000e8030000010000000300000003000000312d330000000000000000e200000001000000e8030000");
	packet.packetSendLogin(player);
}

void LoginPacket::channelSelect(Player* player){

}

void LoginPacket::checkName(Player* player, char is, char* name){

}

void LoginPacket::showCreateError(Player* player){

}

void LoginPacket::showCharacter(Player* player, Character charc){

}

void LoginPacket::deleteCharacter(Player* player, int ID){
	Packet packet = Packet();
	packet.addHeader(0x08);
	packet.addInt(ID);
	packet.addByte(0);
	packet.packetSendLogin(player);
}

void LoginPacket::sendAuth(Player* player, int time){
	Packet packet = Packet();
	packet.addHeader(0x0b);
	packet.addInt(time);
	//time_t curtime = time(NULL)
	packet.addBytes("def8457672d6c801");//server time
	packet.packetSendLogin(player);
}

void LoginPacket::sendServerIp(Player* player, char* ip){
	Packet packet = Packet();
	packet.addHeader(0xf2);
	packet.addString(ip,true);
	packet.packetSendLogin(player);
}

void LoginPacket::sendCharacters(Player* player, vector <Character> chars){	
	Packet packet = Packet();
	packet.addHeader(0xf3);
	packet.addInt(0x9dd5b70d);//serverside tempid
	packet.addInt(chars.size());//number of chars
	for(unsigned i=0;i<chars.size();i++){
		Character chara = chars.at(i);
		packet.addInt(chara.slot);//slotid
		packet.addInt(1);//??
		packet.addInt(1);//??
		packet.addInt(0xc);//??
		packet.addString(chara.name,true);
		packet.addFloat(chara.x);
		packet.addFloat(chara.y);
		packet.addFloat(chara.z);
		packet.addInt(chara.id);//userid
		packet.addInt(0);//??
		packet.addInt(0);//??
		packet.addInt(0);//??
		packet.addInt(0);//??
		packet.addInt(chara.hair);//hair
		packet.addInt(chara.haircolor);//hair color
		packet.addInt(chara.face);//face
		packet.addByte(chara.gender);//gender
		packet.addInt(chara.classid);//class
		packet.addInt(chara.level);//level
		packet.addInt(0);//??
		packet.addInt(chara.str);//str
		packet.addInt(chara.sta);//sta
		packet.addInt(chara.dex);//dex
		packet.addInt(chara.intt);//int
		packet.addInt(0);//??	
		if(player->getIsOld()){
			packet.addInt(0);
		}
		packet.addInt(chara.equips.size());//number of items (items can be in any order!!)
		for(unsigned i=0;i<chara.equips.size();i++){
			CharEquip equip = chara.equips.at(i);			
			packet.addInt(equip.id);
		}
	}
	packet.addInt(1);//??
	packet.addInt(2);//??
	packet.addByte(0);//??
	packet.addInt(0);//??

	packet.packetSendLogin(player);
}
have fun



[EDIT] Source hinzugefügt
09/11/2009 15:55 Gianotti#5
thx source hilft weiter . ich möchte meine eigenen serverfiles erstellen und möchte nicht leechen :( er snifft einfach nicht

btw ich wohn in dortmund :D:D:D so weit sind wir ja nicht entfernt

ruhrpott FTW
09/11/2009 16:57 pachen123321#6
^^

mit welchem programm versuchst du die pakete abzufangen ??
versuchst du dich mit einem bestehenden server zu verbinden ??

have fun
09/11/2009 16:59 Gianotti#7
Quote:
Originally Posted by pachen123321 View Post
^^

mit welchem programm versuchst du die pakete abzufangen ??
versuchst du dich mit einem bestehenden server zu verbinden ??

have fun
er verbindet ins nix müsste trotzdem nmindestens einen ping senden , was er nicht tut.

ich habe schon wpe und rpe ausprobiert
09/11/2009 21:21 pachen123321#8
ich hab leider die v6 net drauf, kann dir also net sagen wie dich die version verhält.
wenn du flyff startest müste er jedenfalls versuchen sich mit dem loginserver zu verbinden.
tippe mal einfach auf benutzerfehler.
teste doch mal bei nem anderem game, ob du da an die packs kommst

have fun

[EDIT] in welcher sprache willst du die files proggen ??? ich bin c++ anfänger ^^
09/11/2009 21:37 MoepMeep#9
Quote:
Originally Posted by Gianotti View Post
thx source hilft weiter . ich möchte meine eigenen serverfiles erstellen und möchte nicht leechen :( er snifft einfach nicht

btw ich wohn in dortmund :D:D:D so weit sind wir ja nicht entfernt

ruhrpott FTW
Du möchtest eigene serverfiles erstellen und kannst noch nichtmal packets sniffen?

Und jetzt schiebs nicht auf wpe/rpe...
09/12/2009 10:10 Gianotti#10
Quote:
Originally Posted by MoepMeep View Post
Du möchtest eigene serverfiles erstellen und kannst noch nichtmal packets sniffen?

Und jetzt schiebs nicht auf wpe/rpe...
...ich habe genug erfahrung mit packets. habe schon einen packet "hack" geschrieben wo er automatisch angreift. also halt dich zurück.

ich konnte packets bis jetzt in jedem game sniffen , das ist die ausnahme

@pachen ich code in c++ ja :)
09/12/2009 10:17 Adroxxx#11
Olly BP auf Send /WSASend / Sendto ?
09/12/2009 10:20 Gianotti#12
Quote:
Originally Posted by Adroxxx View Post
Olly BP auf Send /WSASend / Sendto ?
dann muss ich ja nurnoch detouren um die packets abzufangen naja besser als nichts danke adri
09/13/2009 01:34 bloodx#13
dann haste wahrscheinlich immer noch crypted packets :X
09/13/2009 12:05 Gianotti#14
Quote:
Originally Posted by bloodx View Post
dann haste wahrscheinlich immer noch crypted packets :X
nein sind sie nicht :) ich konnte mit dem detouren der funktionen Send die pakete sniffen

ist zwar umständlich ohne wpe aber egal so gehts auch
09/13/2009 12:29 bloodx#15
oO das game hat keine Crypted Packets? goil :D