(Linux) Schwierigkeitsgrad: Einfach

So, hier ist mein erstes Crackme. Das Ziel ist es, das Programm dazu zu bringen, eine bestimmte Meldung auszugeben.

Erlaubt ist alles, erklärt aber bitte, was ihr gemacht habt.

Es sollte nicht allzu schwierig sein.
 
Ich sehe momentan keine andere Möglichkeit als zu patchen:
Das CrackMe prüft ob die UID 0 ist(ob das Cm als root ausgeführt wird).
Diese Überprüfung kann man patchen indem man die 2 Bytes an Offset 704(75 21 = jne) zu (90 90 = nop,nop) ändert.
 
Wie gesagt, es ist nicht besonders schwer. Aber vielleicht lernt ja ein Anfänger was daraus. Für alle anderen ist es natürlich langweilig ;)
 
mh - linux
ich benutze ja jetzt auch ubuntu und dachte mir, löste mal wieder ein crackme
was dann zu meiner frage führt
welchen disassembler/debugger benutzt ihr denn unter linux ?
 
LD_PRELOAD...
Code:
#include <unistd.h>
#include <stdio.h>

uid_t getuid()
{
	return 0;
}
Code:
$ gcc -g -shared -fPIC -Wall -o rep-getuid.so rep-getuid.c -lc -m32
$ LD_PRELOAD="./rep-getuid.so" ./easy-crackme
You got it!
 
Zurück
Oben