August 1999 |
"Image Optimizer V1.10" |
Win Code Reversing |
|
vom Instructor |
|
Finden der korrekten Serial mit SoftIce |
|
|
Programm- URL: Hier
|
||
Tools : Softice V4.0 | ||
Level |
Leicht ( ) Mittel ( X ) Schwer ( ) |
Die Einleitung |
Der Autor von Image Optimizer V1.10 sagt:
" Image Optimizer " ist ein Tool,
mit dem man Graphiken im Format Gif, JPEG und PNG erzeugen kann, die durch
Komprimierung nur noch bis zu 50 Prozent ihrer ursprünglichen Größe besitzen.
Das Sicherungssystem |
" Image Optimizer " ist ein 30 Tage Trial Programm, mit
eingeschränktem Funktionsumfang in der Shareware - Version. Um den Registrations Screen zu erreichen gehe
in ' Help ' / ' Enter Release Code ' :
Du wirst nach folgenden Angaben gefragt:
Release Code: xxxxxxxxxxxx
Der eingegebene Code wird in der Registrierungsdatei abgespeichert, egal ob er falsch oder richtig war.
HKCU\Software\xat.com\xat.com Image Optimizer\Application\Code xxxxxxxxx
Die Lösung |
Das Programm nutzt die 32 Bit Funktion RegQueryValueExA,
um die Registrationseingaben auszulesen.
Gerade dieses Programm hat mir gezeigt, daß man bei jedem
Crack zuerst RegMon und FileMon
laufen lassen sollte, um zu sehen, was beim Programmstart so alles passiert.
Starte nun " Image Optimizer " und mach die geforderten Eingaben.
1. Wenn du das getan hast, starte Softice durch Drücken von CTL-D.
2. Tippe ein: bpx RegQueryValueExA if *(ESP->8) == 'Code' do "D ESP->14;"
(SI unterbricht durch diese Anweisung beim Zugriff auf die Registrierung im oben benannten Abschnitt).
3. Verlasse Softice und starte das Programm.
4. Softice unterbricht das Programm beim Beginn der 1. System Funktion RegQueryValueExA.
5. Drücke F11
einmal.
wir sind jetzt im
"Image Optimizer" Code, und steppen mit F10
durch
den Code bis hierhin :
Ab Adresse 41A5DD wird unsere gefakte Serial Zahl für Zahl eingelesen mit xor verschlüsselt und verglichen, wenn der Vergleich stimmt, geht es weiter, ansonsten erfolgt ein Sprung zur Fehlermeldung ( jne 0041A63E).
Wenn alle 8 Stellen der Serial verglichen wurden und alle Vergleiche stimmten, springt das Programm zum Codeabschnitt der Vollversion. Um die Verschlüsselung mit xor besser zu verdeutlichen, habe ich ein kleines Proggi beigelegt ( xor.zip). Einfach bei A und B die HexWerte eingeben und dann auf den Button drücken.
Bitte beachten, daß die HexWerte mit $ vorangestellt werden müssen. (Beispiel $A3 $90). So könnt ihr die im Listing blau markierten Stellen besser verstehen.
Das Finale |
Das wars dann auch schon wieder, entweder die Serial auslesen " 378keoiu ", oder die JNE's ausnoppen.
-- Mein Dank geht an 'Sandman' für seine hervorragenden Tutorials --
Tutorial
von: Instructor
Page gestaltet:
21.August
1999