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
POC-CVE-2023-32681 — POC for the CVE-2023-32681 | Kitploit
Tools/GitHubGitHub/hardikmodha/poc-cve-2023-32681
Vulnerability AnalysisExploitationWeb SecurityLearning & EducationLabs & PracticeArchived
GitHubhardikmodha/poc-cve-2023-32681

POC-CVE-2023-32681

POC for the CVE-2023-32681

Repository anzeigen
41vor 3 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

POC für CVE-2023-32681

Dies ist eine Python 3 Implementierung von CVE-2023-32681, die Clients betrifft, die die requests-Bibliothek in Version <= 2.30.0 verwenden.

Gemäß https://www.rfc-editor.org/rfc/rfc9110.html#section-15.4 sollte der User-Agent bei einer vom Server ausgesendeten 3xx-Weiterleitung die Anfrage modifizieren, um bestimmte Header und Felder aus der Anfrage zu entfernen.

Details zu diesen Feldern finden Sie unter https://www.rfc-editor.org/rfc/rfc9110.html#section-15.4-5. Spezifisch für diese CVE habe ich den relevanten Teil hier hervorgehoben.

image

requests-Version <= 2.30.0 hat die "Proxy-Authorization"-Header bei der Verarbeitung der Weiterleitung zu "https" nicht entfernt und somit die Proxy-Zugangsdaten an den umgeleiteten Server weitergegeben.

Weitere Details dazu finden Sie unter

  • https://www.cve.org/CVERecord?id=CVE-2023-32681
  • https://security.snyk.io/vuln/SNYK-PYTHON-REQUESTS-5595532

Voraussetzungen

  • Gültiges Zertifikat für den HTTP(S)-Server. Sie können mkcert verwenden, um die Zertifikate lokal zu generieren.
  • Go v1.19
  • Python 3.x
  • virtualenv (Optional)

Übersicht

  1. Proxy-Server-Implementierung in Go. Startet einen Proxy-Server auf Port 8080 und erfordert eine Basisauthentifizierung. Für POC-Zwecke sind der Benutzername und das Passwort in derselben Datei fest codiert.
  2. HTTP(S)-Server-Implementierung in Go. Startet 2 Server.
    • Weiterleitungsserver, der auf Port 443 lauscht, und ein weiterer Echo-Server auf Port 4431.
    • Der Weiterleitungsserver definiert eine Route /redirect, die den Datenverkehr zum zweiten Server auf Port 4431 umleitet.
    • Der Echo-Server definiert eine Route /echoHeaders. Diese Route gibt die in der Anfrage empfangenen Header an den Client zurück.
  3. POC Python-Skript. Sendet eine proxierte Anfrage an den Weiterleitungsserver auf Port 443 und gibt die Antwort des Servers aus.
  4. Wenn die Antwort den Proxy-Authorization-Header enthält, gilt die requests-Version als anfällig für "CVE-2023-32681".

Schritte

  1. Klonen Sie dieses Repository.
  2. Aktualisieren Sie die Variablen certFile und keyFile in server/main.go.
  3. Starten Sie die HTTP(S)-Server mit dem Befehl go run server/main.go. Dadurch werden zwei Server gestartet, die auf Port 443 und 4431 lauschen.
  4. Starten Sie den Proxy-Server mit dem Befehl go run proxy/main.go. Dadurch wird der Proxy-Server auf Port 8080 gestartet.
  5. Installieren Sie die Abhängigkeiten für das Python-Skript mit pip3 install -r script/requirements_request_2_30_0.txt
  6. Führen Sie das POC-Skript mit python3 script/poc.py aus und beobachten Sie die Ausgabe. Sie sehen, dass der "Proxy-Authorization"-Header vom Server in der Antwort zurückgegeben wird. Der Server gibt die empfangenen Header auch in den Logs aus.
  7. Aktualisieren Sie nun die requests-Version auf >= 2.31.0 oder führen Sie pip3 install -r script/requirements_request_2_31_0.txt aus.
  8. Führen Sie das POC-Skript erneut mit python3 script/poc.py aus und beobachten Sie die Ausgabe. Sie sehen, dass der "Proxy-Authorization"-Header jetzt nicht mehr in der Server-Antwort vorhanden ist. Dasselbe kann auch in den Server-Logs überprüft werden.

Screenshots

Proxy server

proxy_server_logs

requests==2.30.0

requests_2_30_0_script_output requests_2_30_0_server_output

requests==2.31.0

requests_2_31_0_script_output requests_2_31_0_server_output
Tool herunterladen