
Dieses Repository enthält einen Proof of Concept (PoC), der die Double-Free-Schwachstelle (CVE-2026-23918) im Apache HTTP Server 2.4.66 `mod_http2` demonstriert.
Dieses Repository enthält einen Proof of Concept (PoC), der die Double-Free-Schwachstelle (CVE-2026-23918) im Apache HTTP Server 2.4.66 mod_http2 demonstriert.
Die Schwachstelle beruht auf einer Race Condition während der frühen Verarbeitung von RST_STREAM-Frames. Ich habe mich auf das Timing-Fenster konzentriert, in dem sowohl der Session-Handler als auch der Backend-Worker versuchen, den Speicherpool des Streams zu bereinigen, was zu einem Double Free im APR-Allocator führt.
Aktueller Fortschritt Crash ausgelöst: Die Race Condition wurde lokal erfolgreich getriggert. Der Apache-Kindprozess wird mit einem Segmentation Fault (11) beendet.
DoS-Status: In diesem Stadium erreicht der PoC einen zuverlässigen Denial of Service, indem die Free-Liste des Allocators korrumpiert wird.
RCE-Forschungspfad Um von einem Crash zur Codeausführung zu gelangen, sind in den folgenden Bereichen weitere Arbeiten erforderlich:
Heap-Grooming: Stabilisierung des Heaps, um sicherzustellen, dass der korrumpierte Chunk mit einer vorhersehbaren Struktur überlappt.
Kontrollfluss: Überschreiben von apr_pool_cleanup_register oder ähnlichen Funktionszeigern, um die Ausführung umzuleiten.
ROP-Kette: Aufbau einer Kette, um NX/ASLR zu umgehen, sobald der Instruction Pointer kontrolliert wird.
Dateien Dockerfile: Richtet eine verwundbare 2.4.66-Instanz mit aktiviertem HTTP/2 ein.
poc.py: Skript, das darauf ausgelegt ist, die Race Condition durch schnelle Frame-Sequenzierung auszulösen.