| Hacks & Crackmes Tests, Fragen oder Hilfestellungen. Crackmes und Hackits werden hier diskutiert. |
Diskussion: frage zu einem patch im Forum Hacks & Crackmes, in der Kategorie Software Home; Hi. Ich wollte zu Übungszwecken ein Programm zu dem ich eine gültige Serial besitze patchen, so dass keine Serial mehr ...
![]() |
| | #1 (permalink) |
| Registriert seit: 26.05.05 ![]() Likes: 0 | Hi. Ich wollte zu Übungszwecken ein Programm zu dem ich eine gültige Serial besitze patchen, so dass keine Serial mehr notwendig ist. Ich habe die Seriennummerüberprüfung gepatcht, so dass jede Nummer zum Erfolg führt. Gleichzeitig wurde das ganze unbeabsichtigt zu einem Inline Keygen, da das Programm die richtige Serial in der Erfolgsmeldung anzeigt. Allerdings wird der Dialog "Seriennummer eingeben" immer noch bei jedem Programmstart angezeigt. Nun könnte man natürlich einfach die angezeigte Serial verwenden, um das Programm ganz freizuschalten, aber ich wollte auch dieses Problem gerne durch einen Patch lösen. Ich habe festgestellt, dass das Speichern der eingegebenen Serial in der Registry geschieht, habe den entsprechenden Aufruf von RegSetValueExA gefunden, und habe die Anweisung geändert, die das entsprechende Argument von RegSetValueExA in das Register kopiert, das anschließend "gepusht" wird. Snapshot davon habe ich angefügt. Eigentlich sieht es so aus, als würde es funktionieren. Das ist der einzige Aufruf von RegSetValueExA, der diesen Schlüssel ändert, dennoch ist der Wert dieses Schlüssels am Ende immer 0 und nicht, wie erwartet und gewünscht, die richtige Seriennummer. Hat jemand eine Idee, woran das liegen kann? cu Gabriel Edit: Die geänderte Zeile ist diese: 00446102 MOV ECX,WmrProFi.0049FE10 Im Original stand dort: LEA ECX,DWORD PTR SS:[ESP+18] Wobei das Ziel hier die vom User eingegebene Serial war. |
| | |
| | #2 (permalink) |
| Moderator ![]() Registriert seit: 20.07.05 ![]() ![]() ![]() ![]() ![]() Likes: 156 | Bitte keine konkreten Programmnamen angeben - Screenshot deshalb entfernt. lea ecx,DWORD ptr [esp+18] sollte nur 4 Bytes groß sein, Du überschreibst diese Anweisung dagegen mit 5 Byte-Anweisung (MOV ECX,xyz.0049FE10) und dann auch noch paar Nops. Entweder fehlt also irgendwas hier beim API Aufruf (also danach im Regedit prüfen, ob der Aufruf korrekt den Schlüssel schreibt) oder der Schlüssel wird nachträglich gelöscht - z.B per RegDeleteValue. Setze einfach auf alle Reg-APIs einen BP . Alternative wäre beim Programmstart die Stelle zu erwischen, wenn die Nummer aus der Registry ausgelesen wird.
__________________ Noch mal, für alle Pseudo-Geeks: 1+1=0. -> 10 wäre Überlauf! Selig, wer nichts zu sagen hat und trotzdem schweigt. |
| | |
![]() |
| | |
| |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| frage zu einem weiteren win-bug | LionC | (In)security allgemein | 9 | 03.04.08 16:02 |
| Frage aus einem Quiz | chris755 | Cryptography & Encryption | 6 | 07.03.08 20:36 |
| Frage zu einem JAVA-Script! | bambid | (Web-) Design und webbasierte Sprachen | 2 | 11.10.05 12:52 |
| Frage zu einem Kurs | Keshali | Windows | 5 | 12.06.05 20:49 |
| Frage zu einem PC Spiel? | pätterick | Games | 13 | 26.02.05 04:24 |