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-2023-43804 — Containerisiertes dreistufiges Lab, das CVE-2023-43804 urllib3-Cookie-Leak über Cross-Origin-Redirects reproduziert, mit Exploit-Skript und Patch-Verifikation. | Kitploit
Tools/GitHubGitHub/deepanshu-khurana/cve-2023-43804
DefensivwerkzeugeContainer-SicherheitSchwachstellenanalyseExploitationWebsicherheitPenetrationstestsLernen & BildungLabs & Praxis

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
GitHub
deepanshu-khurana/cve-2023-43804

CVE-2023-43804

Containerisiertes dreistufiges Lab, das CVE-2023-43804 urllib3-Cookie-Leak über Cross-Origin-Redirects reproduziert, mit Exploit-Skript und Patch-Verifikation.

Repository anzeigen
1vor 4h 40mNoch nicht geprüft
Teilen

CVE-2023-43804: urllib3 Cookie-Leak-Reproduktion & Behebungslabor

Das Repository enthält eine vollständig containerisierte, dreistufige Laborumgebung, die dazu dient, CVE-2023-43804 (den urllib3 Cookie-Leak bei Cross-Origin-Weiterleitungen) zu demonstrieren, auszunutzen und die Korrekturen zu verifizieren.


1. Laborumgebung & Architektur

Das Labor wird mit Docker Compose orchestriert und besteht aus drei isolierten Diensten, die über ein internes Bridge-Netzwerk kommunizieren:

  • victim_client: Python-basierter Container, der das Reproduktions- und Exploit-Skript (exploit.py) ausführt.
  • target_app: Flask-Webanwendung, die einen verwundbaren Zielserver simuliert, der eine HTTP-302-Cross-Origin-Weiterleitung zu einem externen Origin auslöst.
  • attacker_app: Flask-Logging-Server, der eingehende HTTP-Anfragen erfasst und geleakte Header extrahiert.

2. Voraussetzungen & Systemanforderungen

  • Docker Desktop installiert und ausgeführt.
  • Docker Compose (v2+).
  • PowerShell oder eine beliebige Standard-Kommandozeilen-Shell.

3. Installations- & Einrichtungsschritte

  1. Klonen Sie das Repository und navigieren Sie in das Projektverzeichnis:
    root@kitploit:~
    git clone [https://github.com/deepanshu-khurana/cve-2023-43804-lab.git](https://github.com/deepanshu-khurana/cve-2023-43804-lab.git)
    cd cve-2023-43804-lab
    
    
    
    
  2. Bauen und starten Sie die containerisierte Laborinfrastruktur:
root@kitploit:~
docker compose up -d --build


4. So starten und stoppen Sie das Labor

  • Labor-Container starten:
root@kitploit:~
docker compose up -d

  • Labor stoppen & Ressourcen bereinigen:
root@kitploit:~
docker compose down --volumes


5. Schwachstellenübersicht (CVE-2023-43804)

  • Verwundbare Komponente: urllib3
  • Verwundbare Versionen: < 1.26.17 oder < 2.0.5
  • Schwachstellenbeschreibung: urllib3 entfernte sensible Authentifizierungs-Header (wie Cookie) nicht, wenn HTTP-302-Weiterleitungen über verschiedene Origins hinweg verfolgt wurden, wodurch nicht vertrauenswürdige Weiterleitungsendpunkte sensible Sitzungstoken abfangen konnten.

6. So nutzen Sie die Schwachstelle aus (Phase 1)

  1. Stellen Sie sicher, dass die verwundbare Version von urllib3 im Client-Container installiert ist:
root@kitploit:~
docker exec -it victim_client pip install urllib3==1.26.16

  1. Führen Sie das Exploit-Skript aus:
root@kitploit:~
docker exec -it victim_client python3 -u /lab/exploit.py

  1. Erwartetes verwundbares Ergebnis:
  • Die Client-Ausgabe zeigt "status": "EXFILTRATED" zusammen mit dem geleakten Sitzungstoken.
  • docker logs attacker_app zeigt den erfassten sensiblen Cookie-Header.

7. So führen Sie den Erkennungs- & Verifizierungsmechanismus aus (Phase 2)

Um den Patch nach Beobachtung des Exploits zu verifizieren:

  1. Aktualisieren Sie urllib3 im Client-Container auf die gepatchte Version:
root@kitploit:~
docker exec -it victim_client pip install urllib3==1.26.17

  1. Führen Sie das Exploit-Skript erneut aus:
root@kitploit:~
docker exec -it victim_client python3 -u /lab/exploit.py

  1. Erwartetes gepatchtes Ergebnis:
  • Die Client-Ausgabe zeigt "status": "SECURE", "stolen_cookie": "None / Stripped".
  • Die attacker_app-Logs bestätigen, dass die eingehende Anfrage Leaked Cookie Header: None enthält.

8. Behebung

  • Bibliotheks-Upgrade: Aktualisieren Sie die Abhängigkeiten in requirements.txt, um sichere Versionen zu erzwingen:
root@kitploit:~
urllib3>=1.26.17

  • Defense-in-Depth: Konfigurieren Sie explizit Header-Verwaltungsrichtlinien über remove_headers_on_redirect in benutzerdefinierten Retry-Konfigurationen, wenn Legacy-Runtimes beibehalten werden.

9. Hinweise zur Fehlerbehebung

  • Container-Benennung: Stellen Sie sicher, dass Sie die Containernamen korrekt ansprechen (victim_client, target_app, attacker_app), wie von Docker Compose zugewiesen. Verwenden Sie docker ps, um die aktiven Containernamen zu überprüfen.
  • Port-Verfügbarkeit: Stellen Sie sicher, dass die Ports 5000 und 5001 nicht von anderen lokalen Diensten belegt sind, bevor Sie den Docker-Stack starten.

10. Labordemonstration & Ergebnisse

Phase 1: Verwundbarer Zustand (Cookie-Leakage)

Beim Ausführen des Labors mit verwundbarem urllib3==1.26.16 wird das sensible Authentifizierungs-Cookie bei Cross-Origin-Weiterleitungen abgefangen und erfolgreich vom Angreifer-Server protokolliert.

  • Client-Ausgabe & Server-Log-Erfassung: Vulnerable Execution and Log Capture
    • Abbildung 1.1: exploit.py zeigt "status": "EXFILTRATED" zusammen mit dem geleakten Sitzungstoken, verifiziert durch die attacker_app-Logausgabe.

Phase 2: Patch-Verifizierung (Sicherer Zustand)

Nach dem Upgrade von urllib3 auf die gepatchte Version (1.26.17) entfernt die Bibliothek automatisch den sensiblen Cookie-Header bei Cross-Origin-Weiterleitungen.

  • Paket-Upgrade auf gepatchte Version: Urllib3 Upgrade

    • Abbildung 2.1: Upgrade von urllib3 in victim_client via pip install urllib3==1.26.17.
  • Sichere Client-Ausgabe & bereinigte Logs: Secure Execution and Log Capture

    • Abbildung 2.2: exploit.py gibt "status": "SECURE" mit "stolen_cookie": "None / Stripped" zurück, bestätigt durch das Server-Log, das Leaked Cookie Header: None zeigt.
Tool herunterladen