
Beispiel-Exploit für Pufferüberlauf in libpng
Beispiel-Exploit unter Verwendung der Schwachstelle CVE-2010-1205 in libpng (<=1.4.2)
gregbook - Sammlung von Beispielprogrammen, die mit den libpng-Quellen verteilt werden
generate - erzeugt eine bösartige PNG-Datei, die beim Lesen der Datei mit libpng einen Heap-Überlauf auslöst
Schritte zum Reproduzieren: ./build.sh # baut alle Bibliotheken und ausführbaren Dateien. gregbook/rpng2-x ist gegen libpng-1.4.2 (fehlerhaft) gelinkt. ./generate/build/generate # erzeugt xploit.png - eine fehlerhafte PNG-Datei cd gregbook/ ./rpng2-x ../xploit.png # führt das Beispiel aus, das zeigt, wie man libpng zum Anzeigen einer PNG-Datei verwendet. Endet mit Segmentation Fault.
Schritte zur Ausführung mit der korrigierten libpng-Version (1.4.3): in gregbook/Makefile Zeile 33 bearbeiten: PNGDIR = ../libpng-1.4.3 im Verzeichnis gregbook ausführen: make clean && make ./rpng2-x ../xploit.png # öffnet ein Fenster mit der PNG-Datei