Hackerboard WikiHaboBlog

[HaBo]

 
Hacks & Crackmes Tests, Fragen oder Hilfestellungen. Crackmes und Hackits werden hier diskutiert.

Rückberechnung einer Crack Routine

Diskussion: Rückberechnung einer Crack Routine im Forum Hacks & Crackmes, in der Kategorie Software Home; Wie löst man folgendes Schema: 1. Eingabestring durchläuft eine beliebige Routine, die einen 32 u Bit Wert als Ergebnis zurückliefert ...

Antwort
Alt 01.09.09, 21:38   #1 (permalink)
 
Registriert seit: 12.01.09
lone.wolf Leistung: Z3
lone.wolf eine Nachricht über AIM schicken
Likes: 1
Standard Rückberechnung einer Crack Routine


Wie löst man folgendes Schema:

1. Eingabestring durchläuft eine beliebige Routine, die einen 32 u Bit Wert als Ergebnis zurückliefert
2. Das Zurückgelieferte wird mit einer Konstante verglichen - sind sie gleich, darfs weiter gehen / man bekommt die Goodboy Message

Ich denke mal, man müsste da die Routine genauer untersuchen und versuchen, einen String durch Rückberechnung (Konstante) zu generieren.

Konkretes Beispiel:

Code:
Routine:

MOVZX ECX,BYTE PTR DS:[EDI]  // EDI = STRING
ADD EAX,ECX
ROR EAX,8
XOR EAX,7B
INC EDI
CMP EDI,ESI  // ESI = (Startwert von) EDI + Stringlänge
JNZ !back!

Später:

cmp eax, AAE23242h
jnz  --BadBoy--
jmp --GoodBoy--
Würde mich freuen, wenn mir irgendwer mit Tipps aus-/weiterhelfen kann :)

MfG
der Einzelgänger
lone.wolf ist offline   Mit Zitat antworten
Alt 08.09.09, 08:04   #2 (permalink)
Themenstarter
 
Registriert seit: 12.01.09
lone.wolf Leistung: Z3
lone.wolf eine Nachricht über AIM schicken
Likes: 1
Standard

Hallo, ist da jemand?

lone.wolf ist offline   Mit Zitat antworten
   
HaBOT
 

Werbung ist gerade online    
Alt 08.09.09, 08:17   #3 (permalink)
Moderator
 
Benutzerbild von Elderan
 
Registriert seit: 30.03.04
Elderan Leistung: 8086
Likes: 14
Standard

Hallo,
das Problem könnte evt. sein, dass du in deinem Post kein Fragezeichen verwendest und man somit sehr schwierig eine Frage, die uns gerne stellen möchtest, findet. Und ohne Frage kann hier auch keiner sinnvoll antworten.

Zitat:
Ich denke mal, man müsste da die Routine genauer untersuchen und versuchen, einen String durch Rückberechnung (Konstante) zu generieren.
Dann tu es doch
Nur durch (Eingabe, Ausgabe)-Paare ist es vollkommen unmöglich, auf die zugrundeliegende Funktion zu schließen. Da hilft nur den Code zu analysieren.
Elderan ist offline   Mit Zitat antworten
Alt 08.09.09, 09:58   #4 (permalink)
Senior Member
 
Registriert seit: 03.09.05
Lesco Leistung: Facit NTK
Likes: 0
Standard

Das mit der Rückberechnung ist allerdings nicht immer so einfach und ist je nach Qualität der Hashfunktion auch teils nur durch Brute-Force zu lösen.
Lesco ist offline   Mit Zitat antworten
Alt 08.09.09, 10:13   #5 (permalink)
CDW
Moderator
 
Benutzerbild von CDW
 
Registriert seit: 20.07.05
CDW Leistung: OpteronCDW Leistung: OpteronCDW Leistung: OpteronCDW Leistung: OpteronCDW Leistung: Opteron
Likes: 156
Standard

Bei ROR und XOR lässt sich die Routine meistens gut umkehren. Bsp (schnell in Olly eingetippt):
Code:
CPU Disasm
Address   Hex dump                 Command                                  Comments
00401030  /.  B8 4232E2AA          MOV EAX,AAE23242                         ; startwert
00401035  |.  BF 00204000          MOV EDI,OFFSET Crackme.00402000          ; ein leerer string
0040103A  |.  83C7 1F              ADD EDI,1F                               ; starte am Ende des Strings
0040103D  |>  83F0 7B              /XOR EAX,0000007B
00401040  |.  C1C0 08              |ROL EAX,8                               ; ror rueckgaengig machen
00401043  |.  0FB6C8               |MOVZX ECX,AL                            ; zeichen "extrahieren"
00401046  |.  29C8                 |SUB EAX,ECX                             ; volstndigkeitshalber das Zeichen subtrahieren
00401048  |.  880F                 |MOV BYTE PTR DS:[EDI],CL                ; in den String schreiben
0040104A  |.  4F                   |DEC EDI                                 ; annahme fuer Startwert von EAX==0
0040104B  |.  3D 007B7B7B          |CMP EAX,7B7B7B00                        ; da ja sonstige Infos fehlen ;)
00401050  |.^ 75 EB                \JNE SHORT 0040103D
für EAX mit startwert==0
bekomme ich "Erzeugerstring"
Code:
CPU Dump
Address   Hex dump                                         ASCII
0040201C  39 32 E2 AA|                                     92
wenn man nun das erste Byte auf 42 korrigiert passt es auch schon (Gegencheck erzeugt die nötige Summe).

Um eine "anständige" Ausgabe zu erhalten, sollte man einige Infos mehr einbeziehen (was darf eingegeben werden? Z.B Zahlen oder Groß/Kleinbuchstaben) und dann das auch in den Algo einarbeiten (subtrahiere statt dem kompletten AL Wert nur ASCII Wert von 0 oder 'A'/ 'a').
__________________
Noch mal, für alle Pseudo-Geeks: 1+1=0. -> 10 wäre Überlauf!
Selig, wer nichts zu sagen hat und trotzdem schweigt.
CDW ist offline   Mit Zitat antworten
Alt 10.09.09, 17:54   #6 (permalink)
Themenstarter
 
Registriert seit: 12.01.09
lone.wolf Leistung: Z3
lone.wolf eine Nachricht über AIM schicken
Likes: 1
Standard

Zitat:
Original von Elderan
Hallo,
das Problem könnte evt. sein, dass du in deinem Post kein Fragezeichen verwendest und man somit sehr schwierig eine Frage, die uns gerne stellen möchtest, findet. Und ohne Frage kann hier auch keiner sinnvoll antworten.
Ohh oops.

@CDW

Och mannn ... das hätt ich mir aber auch wirklich selber denken können.. Sorry, die Frage hat sich gelöst.. Die schlaflosen Nächte machen mir manchmal echt zu schaffen xD

MfG und danke nochmal
lone.wolf ist offline   Mit Zitat antworten
Antwort
   

Werbung ist gerade online    

[HaBo] » Software Home » Hacks & Crackmes » Rückberechnung einer Crack Routine
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
eMule CRACK andi_hauser Downloads 4 23.02.04 14:41
1.6 Lan Crack Reaper Games 2 04.11.03 17:02


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61