[Zusammenarbeit]Patch2 entpacken

10/23/2010 23:50 henpii#1
Liebe Com,

wir haben in dem Thread

[Zusammenarbeit]Der weiße Löwe

angefangen darüber zu reden wie es möglich wäre patch2 zu entpacken...

dabei hat lolkid2009 eine Theorie in den Raum geworfen:

Code:
Theorie:
Patch2 Key durch Packet Sniffing
Patch2 lade Methode per Debugger dumpen
Die gedumpte Methode mit dem Key und pushedx Extractor Source verwenden.
http://www.elitepvpers.com/forum/meti...or-source.html <- Extractor mit Source
weiterhin ist bekannt das der Key 289byte groß ist und dierekt nach dem login packet kommt

dank an LighTii!



so sitze gerade dadrann dieses besagte 289 byte große packet mit dem key zu finden..

es gibt aber während der gesammten loginphase kein 289 byte großes packet..

irgentwer eine idee?


Lg

henpii


-----

Dieses ist eine weitere möglichkeit die funktionieren könnte:

Quote:
Originally Posted by Mario23231 View Post
das entpack verfahren von patch2 ist genauso wie jedes andere.
Aber wenn wie gesagt die Datei von Type 3 ist diese verschlüsselt.
Man könnte die .bin durch hex-ray(decompiler von IDA pro) schicken und die verschlüsselungs funktion neu schreiben.
XTEA decode Funktion steht auf Wikipedia. Nur so ein Tipp
War nur so ein gedanke

--------

diese Infos hatte uns nico_w noch dagelassen:

Quote:
Originally Posted by nico_w View Post
Der XTEA-Key wird zufällig erstellt und ändert sich bei jedem Login, d.h. diesen müsst ihr dann auch herrausfinden.
Der Generierte Key wird dann nocheinmal mit dem Key JyTxtHljHJlVJHorRM301vf@4fvj10-v verschlüsselt.
Und der Key, der verwendet wird bevor der andere generiert wurde ist 1234abcd5678efgh

Also viel Glück ;O
Quote:
Originally Posted by nico_w View Post
So einfach wird's nicht, hab grade mit tim geschrieben und er meinte die patch2 ist mit einem anderen Algorithmus verschlüsselt, d.h. dafür müsste man den gesamten Client noch einmal auseinandernehmen bzw. die Funktion in der die patch2 geladen wird debuggen
thx dafür =)



-----

tims beitrag:

Quote:
Originally Posted by tim66613 View Post
16Bits = 2Bytes.
Das ist wohl hoffentlich nicht euer Ernst.
Der Key ist 32Bytes (256 Bits) groß.
Es sind die letzten 32Bytes eines 289Bytes großen Packets.

@zu dem von nico_w
Die Packets werden mit XTEA verschlüsselt.
Am Anfang ist der XTEA-Key "1234abcd5678efgh" bei Europäischen Servern.
Bei allen anderen ist der Key "testtesttest".
(Beides mal ohne Anführungszeichen)

Später wird eine Sequenz aus Random-Zahlen entweder mit
"JyTxtHljHJlVJHorRM301vf@4fvj10-v" (NICHT Europa) oder mit dem Teil eines größeren Keys (Europa) verschlüsselt und an den Server gesendet.
Als Teil des Login Packets.

Nach dem Login-Packet kommt das Packet mit dem 256-Bit Key für die Patch2.

Kind Regards Tim

-------------
Momentan auf der Suche nach:

289 Bytes großem Packet

--------

mann kann den key auch hooken, mit einer dll..
ich habe mich grade n bsl bei mir im Team rumgefragt, es setzt sich einer drann..
ist aber nicht 100 % sicher dass er es hinbekommt....

ansonsten wären ich und alle anderen hier froh, wenn sich ein C / C++ fähiger da mal dransetzten würde ;)

was noch zu tun ist schauen ob das hier evt der key ist:

Code:
¹:.§ÕFò| |.^^T#´^°É.|Þ¨Ã"©../¿¿$§Ø
thx an Crank an dieser stelle!

lg
henpii & der rest der arbeitenden
10/23/2010 23:53 heshii'#2
Tim hat doch gesagt das es in XTEA verschlüsselt ist ?
10/23/2010 23:53 henpii#3
mhmm werde mir XTEA mal anschauen... weil Tim weiß was er schreibt.
10/23/2010 23:57 nico_w#4
Der XTEA-Key wird zufällig erstellt und ändert sich bei jedem Login, d.h. diesen müsst ihr dann auch herrausfinden.
Der Generierte Key wird dann nocheinmal mit dem Key JyTxtHljHJlVJHorRM301vf@4fvj10-v verschlüsselt.
Und der Key, der verwendet wird bevor der andere generiert wurde ist 1234abcd5678efgh

Also viel Glück ;O
10/23/2010 23:58 heshii'#5
Hier hab ich mal ein abschnitt was der meister gesagt hat

Quote:
Originally Posted by tim66613 View Post
Noch ein Tipp auf den man sicherlich nicht so schnell kommt: Der Key für die patch2 ist in einem Packet, das nach dem erfolgreichen Login versendet wird.

Kind Regards Tim
UND hier noch was

Quote:
Originally Posted by tim66613 View Post
Packets und norm. Archive sind mit XTEA verschlüsselt.
Die Dateien innerhalb eines Pack Archives, die den Typ 3 haben, sind jedoch anders verschlüsselt (1er von 3 mögl. Algorithmen, welcher davon hängt vom Filename CRC ab)

Kind Regards Tim
hoffe das hilft euch

danke nico für info
10/24/2010 00:01 henpii#6
mhmm wenn er sich immer ändert...

müsste es doch möglich sein, immer wieder den selben ablauf zu sniffen, und dann zu schauen was sich verändert hat...
dann hat man bei einem login den XTEA key...

oder liege ich falsch?
10/24/2010 00:08 CranK™#7
Also ich habe mal gesnifft al ich passwort falsch eingegeben habe da kam ein 16 bit langer code:

(hexCode)

Code:
Weiss nicht ob das richtig ist oder ob das so funktioniert aber ein versuch ists wert

42 1D 98 0B F8 45 18 84 1D 48 33 C4 C4 49 C4 EC
10/24/2010 00:16 henpii#8
noch eben eine frage habe ich nico_w's post richtig verstanden:

1.1234abcd5678efgh
2. key
3. key verschlüsselt mit JyTxtHljHJlVJHorRM301vf@4fvj10- Alghorytmus


oder habe ich da etwas falsch verstanden?


habe grade mal noch etwas gedacht:

also die ganzen epk und eix datein werden geladen während des ladebalkens, da werden sie entschlüsselt.

d.h. den packet sniffer erst starten wenn man den char ausgewählt hat, und nach dem ladebalken wieder beenden.. da müsste das patch2 dingen dan drinne sein oder?

lg

henpii

€: am besten man snifft beim connecten auf metin2.de weil da wird der patch2 ordner genutzt!
10/24/2010 00:18 nico_w#9
So einfach wird's nicht, hab grade mit tim geschrieben und er meinte die patch2 ist mit einem anderen Algorithmus verschlüsselt, d.h. dafür müsste man den gesamten Client noch einmal auseinandernehmen bzw. die Funktion in der die patch2 geladen wird debuggen
10/24/2010 00:20 #Minecraft#10
Quote:
Originally Posted by nico_w View Post
Der XTEA-Key wird zufällig erstellt und ändert sich bei jedem Login, d.h. diesen müsst ihr dann auch herrausfinden.
Der Generierte Key wird dann nocheinmal mit dem Key JyTxtHljHJlVJHorRM301vf@4fvj10-v verschlüsselt.
Und der Key, der verwendet wird bevor der andere generiert wurde ist 1234abcd5678efgh

Also viel Glück ;O
Quote:
Originally Posted by nico_w View Post
So einfach wird's nicht, hab grade mit tim geschrieben und er meinte die patch2 ist mit einem anderen Algorithmus verschlüsselt, d.h. dafür müsste man den gesamten Client noch einmal auseinandernehmen bzw. die Funktion in der die patch2 geladen wird debuggen


Danke für die Info.
Ich versuch's ganze Zeit ..
10/24/2010 00:20 henpii#11
mhmm funktionen debuggen habe ich zwar noch nie gemacht... aber irgentwann ist immer das erste mal!

werde mich da ma n bsl schlaulesen was es da so alles gibt...

thx für dein mitwirken nico_w, fühle ich geehrt O.o
10/24/2010 00:28 Mario23231#12
das entpack verfahren von patch2 ist genauso wie jedes andere.
Aber wenn wie gesagt die Datei von Type 3 ist diese verschlüsselt.
Man könnte die .bin durch hex-ray(decompiler von IDA pro) schicken und die verschlüsselungs funktion neu schreiben.
XTEA decode Funktion steht auf Wikipedia. Nur so ein Tipp
War nur so ein gedanke
10/24/2010 00:32 henpii#13
mhm das ist auch ein guter ansatz....
werden ihn mal am anfang einfügen.

thx dafür
10/24/2010 01:18 tim66613#14
Quote:
Originally Posted by henpii View Post
Liebe Com,

wir haben in dem Thread

[Zusammenarbeit]Der weiße Löwe

angefangen darüber zu reden wie es möglich wäre patch2 zu entpacken...

dabei hat lolkid2009 eine Theorie in den Raum geworfen:

Code:
Theorie:
Patch2 Key durch Packet Sniffing
Patch2 lade Methode per Debugger dumpen
Die gedumpte Methode mit dem Key und pushedx Extractor Source verwenden.
http://www.elitepvpers.com/forum/meti...or-source.html <- Extractor mit Source
weiterhin ist bekannt das der Key 16bit groß ist und dierekt nach dem login packet kommt

dank an LighTii!
16Bits = 2Bytes.
Das ist wohl hoffentlich nicht euer Ernst.
Der Key ist 32Bytes (256 Bits) groß.
Es sind die letzten 32Bytes eines 289Bytes großen Packets.

@zu dem von nico_w
Die Packets werden mit XTEA verschlüsselt.
Am Anfang ist der XTEA-Key "1234abcd5678efgh" bei Europäischen Servern.
Bei allen anderen ist der Key "testtesttest".
(Beides mal ohne Anführungszeichen)

Später wird eine Sequenz aus Random-Zahlen entweder mit
"JyTxtHljHJlVJHorRM301vf@4fvj10-v" (NICHT Europa) oder mit dem Teil eines größeren Keys (Europa) verschlüsselt und an den Server gesendet.
Als Teil des Login Packets.

Nach dem Login-Packet kommt das Packet mit dem 256-Bit Key für die Patch2.

Kind Regards Tim
10/24/2010 01:35 CranK™#15
danke tim werde nachher sofort mal ausprobieren