(c) teso. all rights reversed.
exploiting format string vulnerabilities - Tools

Tools

Für den Bau eines Exploit haben sich viele Tools als hilfreich erwiesen. GDB ist zwar nützlich, aber nicht gerade auf das Debuggen von Binaries ohne Symbols optimiert. Oft braucht man die spezifischen Offsets einer Binary. Dazu haben sich besonders ltrace [7] und strace [8] als hilfreich erwiesen. Beide arbeiten nach dem selben Prinzip, ltrace hooked alle library-calls und gibt sie aus, strace macht das gleiche mit system-calls. Das ist deswegen so praktisch, weil alle *printf Funktionen library calls sind, und man so leicht die Adresse des Format Strings herausfinden kann. Wird der Format String gelesen, zum Beispiel mit read() so erhält man diese Auskunft von strace. Zusätzlich ist objdump [9] unverzichtbar beim Finden der GOT Adresse.

Will man eine Weiterentwicklung des Exploits erreichen, zum Beispiel andere Leute dazu motivieren einem default offsets mitzuteilen, so sollte man dem Exploit eine Beschreibung beilegen, wie man leicht (und das heisst meistens ohne GDB) an die Daten kommt, am Besten man legt ein kleines Shellscript dazu, was diese Aufgabe übernimmt.

<< - < - > - >>