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-2026-20660 — Eigenständiger PoC-Exploit für CVE-2026-20660: Path Traversal im gzip-Decoder von Safari. Server liefert bösartige gzip-Daten aus, um beliebige Dateien auf einem anfälligen macOS zu schreiben. | Kitploit
Tools/GitHubGitHub/retx0/cve-2026-20660
Payload-GenerierungSchwachstellenanalyseExploitationWebanwendungs-ExploitationPenetrationstests
GitHubretx0/cve-2026-20660

CVE-2026-20660

Eigenständiger PoC-Exploit für CVE-2026-20660: Path Traversal im gzip-Decoder von Safari. Server liefert bösartige gzip-Daten aus, um beliebige Dateien auf einem anfälligen macOS zu schreiben.

Repository anzeigen
22vor 5 MonatenNoch 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-2026-20660 PoC-Paket

Dieser Ordner enthält einen eigenständigen Proof-of-Concept für:

  • CVE-2026-20660
  • CFNetwork NSGZipDecoder Pfad-Traversierung via gzip FNAME
  • Auswirkung auf anfälliges macOS Safari mit aktiviertem Auto-Öffnen

1. Verzeichnisstruktur

  • server.py: Haupt-PoC-Server mit konfigurierbarer Traversierungstiefe und Zielname
  • server_overwrite.py: Fokussierte Variante, die ../../pwn.sh schreibt
  • README.md: Reproduktionshinweise und Betriebsprotokoll

2. Voraussetzungen

  1. Ziel ist ein anfälliges macOS Safari (vor Patch-Serie 26.3).
  2. Safari-Einstellung aktiviert:
    • Einstellungen -> Allgemein -> Sichere Dateien nach dem Herunterladen öffnen
  3. Sie können von dem Zielbrowser auf diesen Host zugreifen.

3. Zusammenfassung der Grundursache

Patch-Diff zeigt geändertes Verhalten von -[NSGZipDecoder filenameWithOriginalFilename:]:

  • Altes Verhalten: Gibt den aus dem gzip-FNAME abgeleiteten Namen direkt zurück.
  • Neues Verhalten: Wendet lastPathComponent vor der Rückgabe an.

Dies blockiert Verzeichniskomponenten wie ../ und absolute Pfade im FNAME.

4. Warum Content-Disposition nicht der Vektor ist

Der HTTP-Dateiname kann sauber sein und der Exploit gelingt dennoch.

  • HTTP Content-Disposition-Dateiname: sauber (Beispiel: report.gz)
  • gzip-Header-FNAME: bösartig (Beispiel: ../../proof.txt)

Die Safari-seitige Bereinigung gilt hauptsächlich für Namen auf HTTP-Ebene, nicht für den eingebetteten gzip-FNAME, der von NSGZipDecoder im anfälligen Ablauf verarbeitet wird.

5. Schnellstart

Vom Repository-Stammverzeichnis aus:

root@kitploit:~
python3 exploit/cve-2026-20660/server.py --port 8888 --depth 2

Im anfälligen Safari öffnen:

root@kitploit:~
http://<server-ip>:8888/

Klicken Sie auf Trigger depth=2.

6. Validierung

Nach dem Auslösen überprüfen Sie das Schreibergebnis auf dem Zielcomputer:

root@kitploit:~
ls -la ~/cve-2026-20660-proof.txt
cat ~/cve-2026-20660-proof.txt

Für die Überschreibvariante:

root@kitploit:~
python3 exploit/cve-2026-20660/server_overwrite.py --port 9999

Dann öffnen:

root@kitploit:~
http://<server-ip>:9999/

Überprüfen:

root@kitploit:~
ls -la ~/pwn.sh
cat ~/pwn.sh

7. Parameterhinweise (server.py)

  • --bind, -b: Bind-Adresse (Standard 0.0.0.0)
  • --port, -p: Lauschport (Standard 8888)
  • --depth, -d: Traversierungstiefe (../-Wiederholungsanzahl, Standard 2)
  • --name, -n: Name der Zieldatei

Beispiele:

root@kitploit:~
# schreibt nach ~/proof.txt, wenn die Tiefe der Verzeichnisschachtelung zur Laufzeit entspricht
python3 exploit/cve-2026-20660/server.py -p 8888 -d 2 -n proof.txt

# expliziter absoluter Pfadtest (falls vom Resolver erlaubt)
python3 exploit/cve-2026-20660/server.py -p 8888
# dann verwenden: /download?depth=0&fname=/tmp/proof.txt

8. Beobachtetes Verhalten (Aktuelle Hinweise)

  1. Die Dekomprimierung kann in einem temporären Verzeichnis unter ~/Downloads erfolgen, daher ist die Tiefe oft >= 2 erforderlich, um in ~/ zu gelangen.
  2. Vorhandene Zieldateien werden möglicherweise nicht überschrieben; der Download-Stack kann automatisch umbenennen, um Kollisionen zu vermeiden.
  3. Skript-Payloads können in beobachteten Läufen mit Ausführungsbits erscheinen; je nach Build/Konfiguration validieren.

9. Fehlerbehebung

  1. Kein Schreibvorgang beobachtet:
    • Bestätigen Sie, dass die Safari-Einstellung für automatisches Öffnen aktiviert ist.
    • Erhöhen Sie die Tiefe (2, 3, 4) und testen Sie erneut.
  2. Datei bleibt in Downloads:
    • Die Tiefe ist zu gering für die aktuelle Dekomprimierungs-Verzeichnisschachtelung.
  3. Verbindung fehlgeschlagen:
    • Bestätigen Sie die Host-Firewall und die LAN-Erreichbarkeit.
  4. Zielpfad unverändert:
    • Ein bestehender Dateinamenskonflikt kann zu einer umbenannten Ausgabe führen.

10. Sicherheit und Umfang

Nur in autorisierten Testumgebungen verwenden.

  • Keine Systeme ohne ausdrückliche Erlaubnis anvisieren.
  • Payloads für die Reproduzierbarkeit nicht destruktiv halten.
  • Screenshots/Protokolle für Bewertungsnachweise speichern.

11. Vorgeschlagene Beweissammlung

  1. Safari-Version und OS-Build-Screenshot.
  2. Server-Konsolenprotokolle des PoC (Anfrage + FNAME).
  3. Dateisystem-Überprüfungsbefehle und Ausgabe.
  4. Vorher-/Nachher-Verzeichnisliste des Zielpfads.

12. Ausführlicher Bericht

Für eine detailliertere Erklärung siehe:

  • https://ret0.dev/posts/cve-2026-20660/
Tool herunterladen