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
ai-vuln-rediscovery-nginx-cve-2026-42945 — Reproduzierbare KI-gestützte Wiederentdeckung des Heap-Pufferüberlaufs CVE-2026-42945 im nginx-Rewrite-Modul. Enthält Audit-Prompts, PoC-Trigger, ASan-Absturzreproduktion und technische Analyse für defensive Forschung. | Kitploit
Tools/GitHubGitHub/chamsbouzaiene/ai-vuln-rediscovery-nginx-cve-2026-42945
SchwachstellenanalyseWebsicherheitPapers & ForschungLernen & BildungKI-SicherheitBinary-Exploitation
GitHubchamsbouzaiene/ai-vuln-rediscovery-nginx-cve-2026-42945

ai-vuln-rediscovery-nginx-cve-2026-42945

Reproduzierbare KI-gestützte Wiederentdeckung des Heap-Pufferüberlaufs CVE-2026-42945 im nginx-Rewrite-Modul. Enthält Audit-Prompts, PoC-Trigger, ASan-Absturzreproduktion und technische Analyse für defensive Forschung.

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
Repository anzeigen
2vor 3 MonatenNoch nicht geprüft

KI-gestützte Wiederentdeckung von CVE-2026-42945 in nginx

Dieses Repository dokumentiert ein reproduzierbares, KI-gestütztes Schwachstellen-Wiederentdeckungsexperiment gegen das nginx ngx_http_rewrite_module, das später mit CVE-2026-42945 in Verbindung gebracht wurde.

Das Experiment ist bewusst eng gefasst. Die anfällige Datei src/http/ngx_http_script.c wurde dem Modell direkt zur Prüfung vorgelegt. Dies ist keine Behauptung, dass ein KI-System das Problem autonom im gesamten nginx-Codebase von Grund auf gefunden hat.

Zusammenfassung

Der geprüfte Fehler ist ein Heap-Pufferüberlauf, der durch einen veralteten Zustand der Skript-Engine in der nginx-Rewrite-Verarbeitung verursacht wird.

Auf hoher Ebene:

  1. Ein rewrite-Ersatz, der ? enthält, setzt e->is_args = 1.
  2. Im anfälligen Code wird e->is_args nach Abschluss des Rewrites nicht gelöscht.
  3. Ein späterer set-, if- oder Rewrite-Ausdruck, der einen unbenannten Regex-Capture wie $1 kopiert, kann den Zielpuffer so bemessen, als ob der Capture roh kopiert würde.
  4. Der Schreibdurchlauf sieht dann den veralteten e->is_args = 1 und führt URI-Escaping des Captures durch.
  5. Das Escaping kann Bytes wie Leerzeichen von einem Byte auf drei Bytes erweitern, sodass der Schreibdurchlauf die vom Längendurchlauf berechnete Allokation überschreitet.

Die lokale AddressSanitizer-Reproduktion bestätigt einen Heap-Pufferüberlauf in:

root@kitploit:~
ngx_escape_uri
ngx_http_script_copy_capture_code
ngx_http_rewrite_handler

Was dieses Repository enthält

root@kitploit:~
.
├── README.md
├── LICENSE
├── prompts/
│   ├── audit_prompt.md
│   └── poc_prompt.md
├── poc/
│   ├── trigger.py
│   ├── nginx.conf
│   ├── reproduce.sh
│   └── expected_output.txt
├── docs/
│   ├── technical-analysis.md
│   ├── vulnerability-breakdown.md
│   └── methodology.md
└── screenshots/
    └── asan-crash.png

Reproduktion

Der PoC ist für einen lokalen Laborbuild von anfälligem nginx mit aktiviertem AddressSanitizer ausgelegt. Er startet nginx auf 127.0.0.1:18080, sendet eine präparierte Anfrage an einen lokalen Server und gibt Absturznachweise aus.

1. Anfälliges nginx mit ASan erstellen

Verwenden Sie einen betroffenen nginx-Quellbaum. Das Experiment wurde gegen nginx 1.30.0 validiert, das mit clang und ASan erstellt wurde:

root@kitploit:~
./auto/configure \
  --prefix=/tmp/nginx-asan-poc \
  --with-cc-opt='-O0 -g -fsanitize=address -fno-omit-frame-pointer' \
  --with-ld-opt='-fsanitize=address'

make -j"$(getconf _NPROCESSORS_ONLN 2>/dev/null || sysctl -n hw.ncpu)"

2. PoC ausführen

Aus diesem Repository:

root@kitploit:~
NGINX_BIN=/path/to/vulnerable/nginx/objs/nginx ./poc/reproduce.sh

Wenn dieses Repository direkt im für die Validierung verwendeten nginx-Quellcheckout platziert wird, findet das Skript auch automatisch ../../objs/nginx.

3. Erwartetes Ergebnis

Eine erfolgreiche Reproduktion gibt einen ASan-Bericht aus, der ähnlich aussieht wie:

root@kitploit:~
ERROR: AddressSanitizer: heap-buffer-overflow
WRITE of size 1
    #0 ngx_escape_uri ngx_string.c:1687
    #1 ngx_http_script_copy_capture_code ngx_http_script.c:1399
    #2 ngx_http_rewrite_handler ngx_http_rewrite_module.c:180

Siehe poc/expected_output.txt.

ASan crash screenshot

Minimale Auslöserkonfiguration

Die vom PoC verwendete nginx-Konfiguration ist bewusst klein:

root@kitploit:~
location / {
    rewrite ^(.*) /new?c=1;
    set $myvar $1;
    return 200 "$myvar\n";
}

Der erste rewrite setzt e->is_args, da der Ersatz ? enthält. Der spätere set wertet $1 aus, während dieser veraltete Zustand noch vorhanden ist.

Offizieller Patch

Der minimale Patch setzt das Argument-State-Flag der Skript-Engine zurück, wenn ein Regex-Rewrite abgeschlossen ist:

root@kitploit:~
e->is_args = 0;
e->quote = 0;

Im für dieses Experiment verwendeten Quellbaum erscheint der Fix als Commit:

root@kitploit:~
524977e7c534e87e5b55739fa74601c9f1102686
Rewrite: fixed escaping and possible buffer overrun

Der entscheidende Punkt ist nicht die Größe des Patches, sondern die Zustandsinvariante, die er wiederherstellt: Der Längendurchlauf und der Schreibdurchlauf müssen sich darüber einig sein, ob Captures als URI-Argumente kopiert werden.

Transparenz des Experiments

Dieses Experiment verwendete einen hochmodernen Codierungsagenten als Prüfungsassistenten. Der Prompt wies das Modell explizit an, sich auf Speichersicherheitsprobleme in src/http/ngx_http_script.c zu konzentrieren und besonders auf Zweipass-Längen-/Schreibabweichungen zu achten.

Wichtige Einschränkungen:

  • Die anfällige Quelldatei wurde direkt bereitgestellt.
  • Der Prüfungs-Prompt war stark auf die Fehlerklasse ausgerichtet.
  • Das Modell hatte während der Validierung Zugriff auf die lokale Repository-Historie.
  • Das Ergebnis sollte als geführte Wiederentdeckung interpretiert werden, nicht als autonome Fehlersuche.
  • Der PoC demonstriert nur Absturz-/ASan-Nachweise; es ist kein bewaffneter Exploit.

Die genauen Prompts sind in prompts/audit_prompt.md und prompts/poc_prompt.md enthalten.

Verantwortungsvolle Nutzung

Dieses Repository ist für defensive Forschung, Patch-Validierung und Reproduzierbarkeit gedacht. Führen Sie den PoC nur gegen lokale Laborinstanzen aus, die Sie kontrollieren.

Lizenz

Die Dokumentation und das PoC-Framework in diesem Repository werden unter der MIT-Lizenz veröffentlicht. nginx selbst ist nicht enthalten und unterliegt seiner eigenen Lizenz.

Tool herunterladen