[Zusammenarbeit]Patch2 entpacken

10/31/2010 18:45 tim66613#121
Quote:
Originally Posted by henpii View Post
ja, weil sie bei p-servern nicht gesendet werden...
deswegen kann der patch2 ordnern bei p-servern meines wissens nach nicht genutzt werden.

@CranK:

ich bin mir nicht sicher ob es der ist, aber ich glaube schon...
am besten wäre es wenn das jemand überprüfen würde:

Code:
const uint32_t kEterIndexKey[16] = {
0x63 ^ 1, 0x61 ^ 2, 0x73 ^ 3, 0x69 ^ 4, 0x32 ^ 5, 0x67 ^ 6, 0x6f ^ 7, 0x6f ^ 8,
0x64 ^ 9, 0x34 ^ 10, 0x6e ^ 11, 0x61 ^ 12, 0x6d ^ 13, 0x65 ^ 14, 0x63 ^ 15, 0x61 ^ 16
};

// copy the EterPack IndexFile key
// NOTICE: Do NOT use memcpy here
uint8_t* key = reinterpret_cast(0x60ACE4);
for (uint32_t i = 0; i
1. Das ist der Pack-Index-Key des Clients, den ich Casi gegeben habe.

2. Warum versucht ihr es mit 1234abcd.... und & co. zu entschlüsseln, wenn ich doch RANDOM-Key sagte. Der Key wird immer unterschiedlich sein.

Kind Regards Tim
10/31/2010 18:50 CranK™#122
Wenn der profi da is bringt er alle wieder zum verzeifeln -.- :D naja ich versteh das jetzt nicht ganz wie sollen wir dann den RANDOM - Key rauskriegen wird der auch per packet gesendet?? und wie meinste das jetzte mit dem Pack-.Index- Kex könnteste des pls besser erklären habe mich ehrlich gesagt noch nie mit C++ befasst nur mit VB -.- ich bereue es ^^

€: Könnte mir vielelciht jemand etwas über OllyDbg erzählen/erklären??
10/31/2010 18:53 henpii#123
wir sollen es eben NICHT mit dem random key machen oder?
10/31/2010 19:09 tim66613#124
Quote:
Originally Posted by henpii View Post
wir sollen es eben NICHT mit dem random key machen oder?
Du kannst das Packet natürlich auch mit "IchBinHenpii" entschlüsseln, nur dann darfst du keinen richtigen Pack-Key erwarten.

Quote:
Originally Posted by •CranK• View Post
Wenn der profi da is bringt er alle wieder zum verzeifeln -.- :D naja ich versteh das jetzt nicht ganz wie sollen wir dann den RANDOM - Key rauskriegen wird der auch per packet gesendet?? und wie meinste das jetzte mit dem Pack-.Index- Kex könnteste des pls besser erklären habe mich ehrlich gesagt noch nie mit C++ befasst nur mit VB -.- ich bereue es ^^

€: Könnte mir vielelciht jemand etwas über OllyDbg erzählen/erklären??
Jein, der Client bestimmt den Key und versendet ihn dann mit dem Login-Packet (simpel erklärt).

Am einfachsten ist, du holst dir den Random-Packet-Encryption-Key aus der CAccountConnector-Instance.

Mit dem entschlüsselst du dann das Packet und ließt den Pack-Key(32 bytes) aus.

Wenn du das geschafft hast, musst du noch Crypto++ reversen und die Algorithmen finden, was so ziemlich der schwierigste Teil wäre.

Der Pack-Index-Key ist der Key mit dem die .eix verschlüsselt ist.
Um den braucht ihr euch gar nicht kümmern, da dieser Key bei allen .eix's gleich ist.

Und nein, ich kann dir nicht bei OllyDBG helfen, da ich lieber mit IDA & Co. arbeite und von Olly deshalb keinen Plan hab'.

PS: Der Source vom File-Extractor ist kein gutes Lernmaterial.

Kind Regards Tim
10/31/2010 19:13 CranK™#125
Hmm ok danke tim für die schnelle antowrt aber enn der Source vom File Extractor nicht so gt ist dann zeig uns doch einen teil von deinem File Archiver source um uns auf die Sprüng zu helfen und das mit dem CAccountConnector-Instance kapier ich nicht ganz und es wird noch schwerer als es eh schon ist :D oh man das wird ne harte nacht ;D
10/31/2010 19:25 ℰ✗!ℳ#126
oder besser stell den key puplic !
10/31/2010 20:43 tim66613#127
Quote:
Originally Posted by EditPacket View Post
oder besser stell den key puplic !
Dann lernt niemand was.

Quote:
Originally Posted by •CranK• View Post
Hmm ok danke tim für die schnelle antowrt aber enn der Source vom File Extractor nicht so gt ist dann zeig uns doch einen teil von deinem File Archiver source um uns auf die Sprüng zu helfen und das mit dem CAccountConnector-Instance kapier ich nicht ganz und es wird noch schwerer als es eh schon ist :D oh man das wird ne harte nacht ;D
Ihr braucht eigentlich gar keinen Extractor.
Meiner extrahiert die verschlüsselten Dateien neuerdings unbeschädigt, ihr müsst nur den Algorithmus & den Key finden.

Kind Regards Tim
10/31/2010 21:10 syηтaχ#128
@tim66613

Ja wenn wir den Algorithmus + Key haben was sollen wir dann machen wenn wir kein Extractor brauchen ?

MfG -Eazy-
10/31/2010 22:36 tim66613#129
Quote:
Originally Posted by -Eazy- View Post
@tim66613

Ja wenn wir den Algorithmus + Key haben was sollen wir dann machen wenn wir kein Extractor brauchen ?

MfG -Eazy-
Entschlüsseln?

Kind Regards Tim
10/31/2010 22:59 henpii#130
momentmal, habe ich es richtig verstanden, dass wir das 32 bit große packet entschlüsseln müssen? in diesem ist dasnn der random- key drinne?

oder bin ich jetzt komplett neben der Spur?
11/01/2010 09:35 syηтaχ#131
@tim66613

Was jetzt du sagst:

Quote:
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.

Jein, der Client bestimmt den Key und versendet ihn dann mit dem Login-Packet (simpel erklärt).

Am einfachsten ist, du holst dir den Random-Packet-Encryption-Key aus der CAccountConnector-Instance.

Mit dem entschlüsselst du dann das Packet und ließt den Pack-Key(32 bytes) aus.

Wenn du das geschafft hast, musst du noch Crypto++ reversen und die Algorithmen finden, was so ziemlich der schwierigste Teil wäre.

Der Pack-Index-Key ist der Key mit dem die .eix verschlüsselt ist.
Um den braucht ihr euch gar nicht kümmern, da dieser Key bei allen .eix's gleich ist.

Ihr braucht eigentlich gar keinen Extractor.

Kind Regards Tim
Ja wenn wir den Algorithmus + Key entschlüsselt haben was sollen wir damit machen wenn wir keinen "Extractor" brauchen ?

MfG -Eazy-
11/01/2010 17:55 ℰ✗!ℳ#132
timm stell den key pub !

DU meinst wir lernen dabei nix ??

dan nag wie dus gemacht hass ! dann wissen wirßs !!
11/01/2010 18:26 henpii#133
Quote:
Originally Posted by EditPacket View Post
timm stell den key pub !

DU meinst wir lernen dabei nix ??

dan nag wie dus gemacht hass ! dann wissen wirßs !!
NEIN!!!!!
ich mache das hier damit ich etwas dazu lernen kann, und es auch selber anwenden kann...
was bringen dir 100 how tos, wenn du es trotzdem nicht verstanden hast?

learning by doing!
11/01/2010 18:29 ℰ✗!ℳ#134
Quote:
was bringen dir 100 how tos, wenn du es trotzdem nicht verstanden hast?
das kann ich dir sagen sehr viel

weil wenn dus net verstanden hass dan fragen und dann nochma durchlesen !
11/02/2010 13:27 LighTii#135
Quote:
Originally Posted by henpii View Post
NEIN!!!!!
ich mache das hier damit ich etwas dazu lernen kann, und es auch selber anwenden kann...
was bringen dir 100 how tos, wenn du es trotzdem nicht verstanden hast?

learning by doing!
Fang lieber klein an? So wie ich das mitbekomme habe hast du kaum - wenig Programmierkentnisse

und dann "einfach mal eben" einen Key entschlüsseln, ihr stellt es euch viel zu leicht vor

befass dich erstmal bisschen mit Kryptographie - ich denke Tim macht das auch schon bisschen länger