09.10.09, 16:44
|
#15 (permalink)
|
Registriert seit: 14.04.06 Likes: 4 | Ich versuch mal, mich zu erinnern (immerhin ist es schon 'ne Weile her, dass ich mir das CrackMe angeschaut habe  ). Zitat: Original von user82
wie kamst du darauf dass der call über eax wichtig ist
| Zitat: Original von user82
wie interpretierst du den call(ist dass der richtige) zum passwort?
| Um ehrlich zu sein, ich habe erst nur gesehen, dass die Funktion irgendetwas mit dem String anstellt. Es hat ein wenig gedauert, bis ich erkannt hat, dass die Funktion den String zeichenweise einliest, um zu prüfen, ob es sich um Ziffern handelt, von denen sie dann die ASCII-0 abzieht, um sie in "richtige" Zahlen umzuwandeln.
Nachdem ich das erkannt habe, habe ich vermutet, dass die Funktion die Aufgabe hat, einen String in eine Zahl umzuwandeln. Das hat sich auch durch Nachrechnen bestätigt, die Rückgabe in EAX entsprach genau dem Wert des Strings, wenn man es von hex->dec umgerechnet hat (Olly zeigt normalerweise nur Hex an).
Der Wert wurde dann ohne weitere Verarbeitung mit einem festen Wert verglichen, von daher hatte ich den "Algorithmus" zur Passwort-Berechnung.
Dann habe ich mich noch gefragt, wozu die Funktion die Ziffern mit den Zeichen '$' und 'x' vergleicht, und lag mit der Vermutung richtig, dass die Funktion auch Hexadezimal-Strings versteht.
Das ging natürlich nicht so schnell und geradlinig (zumindest nicht bei mir), da ich zunächst nur Buchstaben und keine Zahlen eingegeben habe, weshalb ich zunächst nur Fehlermeldungen bekam.
MfG, Eydeet |
| |