
Questo repository contiene una Proof of Concept (PoC) che dimostra la vulnerabilità Double Free (CVE-2026-23918) in Apache HTTP Server 2.4.66 `mod_http2`.
Questa repository contiene una Proof of Concept (PoC) che dimostra la vulnerabilità Double Free (CVE-2026-23918) in Apache HTTP Server 2.4.66 mod_http2.
La vulnerabilità deriva da una race condition durante l'elaborazione anticipata dei frame RST_STREAM. Mi sono concentrato sulla finestra temporale in cui l'handler di sessione e il worker di backend tentano entrambi di eliminare il pool di memoria dello stream, portando a un double free nell'allocatore APR.
Stato attuale Crash attivato: Ho raggiunto con successo la race condition localmente. Il processo figlio di Apache termina con un Segmentation fault (11).
Stato DoS: In questa fase, la PoC ottiene un Denial of Service affidabile corrompendo la lista dei blocchi liberi dell'allocatore.
Percorso di ricerca per RCE Per passare da un crash all'esecuzione, le seguenti aree richiedono ulteriore lavoro:
Heap Grooming: Stabilizzare l'heap per garantire che il blocco corrotto si sovrapponga a una struttura prevedibile.
Control Flow: Sovrascrivere apr_pool_cleanup_register o puntatori a funzione simili per reindirizzare l'esecuzione.
ROP Chain: Costruire una catena per bypassare NX/ASLR una volta controllato il program counter.
File Dockerfile: Configura un'istanza vulnerabile 2.4.66 con HTTP/2 abilitato.
poc.py: Script progettato per attivare la race condition tramite una sequenza rapida di frame.