Mein 2tes Crackme(leicht) [solved]

Ich bin ziehmlich neu hier und wollte wissen wie schwer(leicht) ihr dieses Crackme findet.
Ich hab ca. 15 min gebraucht.

Erlaubte Tools sind: beliebiger Disassembler, Hex Editor
Aufgabe:
Cracken,
Am Schluss soll Cracked angezeigt werden(nicht mit dem Hex Editor den Text verändern, richtig cracken).
Das Programm soll nicht mehr auf die Datei crackmeconfig.ini zugreifen.

MfG Liar
 
Fertig ;)
- greift nicht mehr auf die ini zu, kann man also löschen
- Execution-Flow wurde so gepatched, dass der "Cracked" String angezeigt wird.

Eine Frage bleibt. Warum durfte man OllyDbg nicht benutzen?
IDA und Hexeditor geht natürlich auch, aber warum kein Debugger?

Von der Schwierigkeit natürlich sehr leicht. Man muss nur kurz überlegen, welche Conditional Jumps man ändern muss. Damit es nicht mehr auf die ini zugreift natürlich einfach Calls zu fopen, fscanf, fprintf,fclose noppen.
 
Interessanter wäre hier ein lokal-Exploit, der die fscanf Funktion nutzt - was auf jedenfall möglich sein sollte.Dann braucht man das Programm gar nicht zu patchen, denn als Rücksprungsadresse kann man direkt den "cracked" Abschnitt angeben ;)
 
Ich habs selbst ohne Debugger geschafft, mit Debugger ist es sicher nicht viel einfacher oder? Ok Debugger sind auch erlaubt.
 
Interessanter wäre hier ein lokal-Exploit, der die fscanf Funktion nutzt - was auf jedenfall möglich sein sollte.

Ja, aber dann greift er doch auf die ini zu, und das sollte Das Crackme laut den Bestimmungen nicht mehr.
Fand ich auch ein bisschen merkwürdig, denn dafür musste man extra jeden Zugriff auf die ini noppen, was eigentlich nicht nötig wäre. Weiß jetzt nicht ob das der Sinn war...
 
also ich fand das auch sehr einfach. habe ollydbg benutzt und es so wie derxenon gemacht (ohne vorher die lösung gesehen zu haben) da sich einem diese lösung ja förmlich aufdrängt ;)
 
Klar geht es so.
Nur hat der Author etwas merkwürdige Vorgaben gemacht. ;)
Zum Beispiel keinen Debugger benutzen. OllyDbg wäre also zum Beispiel raus.
Dann muss man noch den Zugriff auf die ini stoppen. Über Sinn/Unsinn dieser Vorgaben kann man sich streiten.
 
Original von +++ATH0
Klar geht es so.
Nur hat der Author etwas merkwürdige Vorgaben gemacht. ;)
Zum Beispiel keinen Debugger benutzen. OllyDbg wäre also zum Beispiel raus.
Dann muss man noch den Zugriff auf die ini stoppen. Über Sinn/Unsinn dieser Vorgaben kann man sich streiten.

Original von Liar
Ich habs selbst ohne Debugger geschafft, mit Debugger ist es sicher nicht viel einfacher oder? Ok Debugger sind auch erlaubt.

hmmm, also ob ich nun die gleiche adresse für meinen sprung verwendet habe wie derxenon habe ich jetzt nicht geguckt. meinen habe ich einfach an die stelle gemacht, wo fopen aufgerufen wird (und somit ersetzt).

damit sind also die beiden vorgaben erfüllt und nen debugger durfte man ja mitlerweile benutzen ;)
 
Hallo,

Ich habe mich auch mal daran gemacht. Als einfachste und regelkonforme Lösung fand ich, einfach
Code:
00401391  |. 75 20          JNZ SHORT Crackme.004013B3               ; |
zu patchen, damit der JNZ immer auf cracked zeigt:
Code:
004015F7  |. C70424 D430400>MOV DWORD PTR SS:[ESP],Crackme.004030D4  ; |ASCII "Cracked"

ALso die einzige änderung hier:
Code:
00401391  |. 75 20          JMP LONG Crackme.004015F7               ; |

:D

Patchen war ja nicht verboten. Und da ich gleich beim ini test wegspringe ist der filetest auch nicht mehr vorhanden...

Im Anhang die gepatchte exe.

EIDT:
Bäh, erst jetzt sehe ich, dass DerXenon und lighsaver beide diese (oder zumindest eine ähnliche Lösung) schon gepostet hatten :rolleyes: Naja, dann haben halt 3 die gleiche simple Lösung gefunden :D
 
Ich weiß nicht ob ich das Ganz richtig gemacht habe:

Liars 2nd crackme (very very easy)
Cannot open crackmeconfig.ini

.
.
.
 
Original von knizz
Ich weiß nicht ob ich das Ganz richtig gemacht habe:

Liars 2nd crackme (very very easy)
Cannot open crackmeconfig.ini

.
.
.
?
Hast du die ini einfach gelöscht/umbenannt? Und richtig (solved) ist es erst, wenn die Erfolgsmeldung ausgegeben wurde...
 
Zurück
Oben