Packet blocken / Client Manipulieren ?

07/17/2015 06:39 Waller66#1
Hallo, ich suche nach einer Methode um Pakete die vom Client zum Spielserver zu blocken um diese dann modifiziert weiter zu leiten. Das Problem ist sobald man eine Client unabhängige Nachricht zum Server schickt wird erkennt der server die und verarbeitet diese auch, also top, nur das problem der client selber merkt sich irgendwie den letzen ausgangspunkt mit welchen "secure code" das letzte paket gesendet wurde und rechnet den dann +1 (vereinfacht) , nun sobald der client wieder eine nachricht schickt überschneidet sich der sicherheits code und der server antwortet logischer weise mit kick darauf ... Wenn man es schaffen würde das alle folgenden pakete (nach dem eigenen packet send) zu manipulieren das sie eben wieder dem sicherheits code entsprechen wäre das ganze gefixxt und man würde fröhlich weiter basteln können :D ich freue mich über hilfreiche vorschläge :)
Irgendwie muss doch auch die Anzahl der gesendeten Pakete im Client auslesbar sein (könnte man einfach +1 rechnen mit jedem paket was man selber schickt und nicht der client) ... also per Variable finde ich nichts per CE wisst ihr wie die so etwas zwischenspeichern ? per sniffing lässt sich das bestimmen.... aber alles viel viel aufwendiger :/

Hier mal eine Reihe von Paketen damit ihr seht was ich mit Sicherheits Code meine :

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

Fals jemand allgemeine Infos zum thema hat immer her damit :)
Also was mich auch noch interessiert ist das ver-/entschlüsseln der Pakete :)


mfg Waller66
07/17/2015 07:36 alpines#2
Die Antwort darauf müsste in der Funktion liegen die die Pakete zusammenwürfelt. Die kannst du hooken und dort den Sicherheitscode verändern und anschließend mit einem Proxy die Packets lesen und blockieren/abschicken.
07/17/2015 11:23 Lee Ki-Hwan#3
Du kanst Proxifier benutzen.
Ich hatte mal irgendwo ein C# Programm gehabt, womit ich in der Lage war, die Packete vom Proxifier zu meinem Programm weiterzuleiten, und dann entscheiden konnte, schick ich das Packet, oder was auch immer.

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

Damit wirst vielleicht was anfangen können.
07/17/2015 15:00 Waller66#4
vielen danke ich werden den vorschlägen nachgehen , an nen proxy hatte ich auch schon irgendwie gedacht aber kann man das nicht local machen also proxy auf der marschine selber machen und dann da reinhooken also in den proxy ? (habe noch 3 monate nen socks5 mit 1k mbit)

alpines wie ist soetwas am leichtesten zu finden ?

Leider ist die datei im ollydbg für mich nicht leicht zu durchschauen (habe mit der thematik gestern begonnen aber ich kann euch sagen ich finde das thema einfach nur hamma, exp, gold ,dmg quests alles kann man dann damit erreichen :D (keine sorge wird kein release von op hacks geben ^^ will nur dazu lernen und keinem den spiel spaß kaputt machen)
07/18/2015 01:00 alpines#5
Quote:
Originally Posted by Waller66 View Post
vielen danke ich werden den vorschlägen nachgehen , an nen proxy hatte ich auch schon irgendwie gedacht aber kann man das nicht local machen also proxy auf der marschine selber machen und dann da reinhooken also in den proxy ? (habe noch 3 monate nen socks5 mit 1k mbit)
Das geht auch lokal. Der Proxy ist eigentlich nur eine Zwischeninstanz zwischen Client und Server. Der Client denkt der Proxy wäre der Server, der Server denkt der Proxy wäre der Client.

Quote:
Originally Posted by Waller66 View Post
alpines wie ist soetwas am leichtesten zu finden ?
Da kann ich selber nicht viel zu sagen aber die Funktion ausfindig zu machen sollte ja nicht allzuschwer sein. Danach kannst du den Code Stück für Stück unter die Lupe nehmen und schauen ob regelmäßig Variablen um 1 erhöht werden und zum testen kannst du den Wert um 2 erhöhen und schauen ob das Paket dann den +2 Securitycode sendet.

Quote:
Originally Posted by Waller66 View Post
Leider ist die datei im ollydbg für mich nicht leicht zu durchschauen (habe mit der thematik gestern begonnen aber ich kann euch sagen ich finde das thema einfach nur hamma, exp, gold ,dmg quests alles kann man dann damit erreichen :D (keine sorge wird kein release von op hacks geben ^^ will nur dazu lernen und keinem den spiel spaß kaputt machen)
So lob ich mir das.
07/19/2015 15:33 meak1#6
Ist es zufällig Florensia oder Fiesta ?
Dort wird nach jedem Packet immer +1 addiert, diesen wert kann man wie schon erwähnt per hook verändert oder per memcpy ;c

Per ollydbg die sendfunc suchen und benutzen, so das automatisch +1 addiert wird wenn du ein Packet sendest über diese Func
07/21/2015 12:52 Lee Ki-Hwan#7
Es handelt sich um ein anderes Spiel, ich hatte leider keine Zeit deine Fragen zu beantworten, werde aber denke spätestens Freitag Zeit finden, bis dahin kann ich dir raten mal den Source anzugucken, hab dir ja schon geschrieben wo du ihn kriegst.
Dort hast du dann die Funktionen die Interessant sind, ist aber halt C++ und kein C#.

Bei der älteren Version, also EP3 2013 war das glaub ich, ist die Verschlüsselung eine XOR mit nem static Key: 0x33 und 4 Bytes Checksumme am ende in CRC32.
Das Problem wird die Checksumme sein, ich wusste damals auch nicht wie ich das Löse, irgendwann war es dann auch nicht mehr relevant, da der Source da ist, kannst dir deine eigene Engine kompilieren und die Packete schicken wie du lustig bist.