
Una herramienta de prueba integral en Python para CVE-2023-44487, la vulnerabilidad HTTP/2 Rapid Reset. Esta versión mejorada proporciona control granular sobre los parámetros de prueba, múltiples patrones de ataque y capacidades avanzadas de monitoreo.
Una herramienta de prueba integral en Python para CVE-2023-44487, la vulnerabilidad de Restablecimiento Rápido HTTP/2. Este repositorio contiene tanto herramientas de prueba de ataque como de verificación.
¡Esta herramienta es solo para fines educativos y pruebas autorizadas!
CVE-2023-44487, también conocido como "Restablecimiento Rápido HTTP/2", es una vulnerabilidad crítica en el protocolo HTTP/2 que permite a los atacantes:
Puntuación CVSS: 7.5 (Alta)
Impacto: Denegación de Servicio, Agotamiento de Recursos
h2: pip install h2git clone https://github.com/madhusudhan-in/CVE_2023_44487-Rapid_Reset.git
cd CVE_2023_44487-Rapid_Reset
pip install h2
chmod +x *.py
python3 --version # Debe ser 3.7+
cve_2023_44487_verifier_enhanced.pyPropósito: Detección de señales de aplicación de medidas para verificación posterior al parche y comprobación de cumplimiento.
# Verificación básica
python3 cve_2023_44487_verifier_enhanced.py objetivo.com
# Múltiples conexiones concurrentes
python3 cve_2023_44487_verifier_enhanced.py objetivo.com -c 5 -s 500
# Salida detallada con depuración
python3 cve_2023_44487_verifier_enhanced.py objetivo.com -v -c 3 -s 1000
# Solo prueba de referencia (solicitudes normales)
python3 cve_2023_44487_verifier_enhanced.py objetivo.com --baseline-only
| Opción | Descripción | Valor por defecto |
|---|---|---|
host | Nombre de host objetivo (obligatorio) | - |
-p, --port | Puerto objetivo | 443 |
--no-ssl | Deshabilitar SSL/TLS | False (SSL habilitado) |
-s, --streams | Número de flujos por conexión | 1000 |
-d, --delay | Retardo entre operaciones de flujo (segundos) | 0.001 |
-c, --connections | Número de conexiones concurrentes | 1 |
--baseline-only | Solo realizar prueba de referencia (sin ataque) | False |
-v, --verbose | Salida detallada/depuración | False |
El script proporciona un veredicto inteligente basado en las señales de aplicación compatibles con RFC 9113:
El servidor envía GOAWAY con código de error ENHANCE_YOUR_CALM (0xb)
Clasificación: NO VULNERABLE — la aplicación a nivel de protocolo está activa
Significado: La implementación de HTTP/2 tiene controles de limitación de velocidad adecuados
El 50%+ de las conexiones se terminaron mediante restablecimiento TCP
Clasificación: PROBABLEMENTE PROTEGIDO — verifique con el equipo de infraestructura/borde
Significado: El appliance de borde o la protección DDoS actuó en la capa de transporte
La tasa de restablecimiento por segundo disminuye significativamente con el tiempo (últimos segmentos <60% de los primeros)
Clasificación: PROTECCIÓN PARCIAL — confirme con el equipo de infraestructura
Significado: El servidor o el borde está ralentizando el ataque de forma adaptativa
El servidor envía respuestas REFUSED_STREAM (0x7)
Clasificación: PROTECCIÓN PARCIAL — revise los límites de tasa
Significado: Existe alguna limitación de velocidad a nivel de flujo
No se detectó GOAWAY con ENHANCE_YOUR_CALM, ni restablecimientos TCP, ni limitación
Clasificación: VECTOR EJERCITABLE — explotabilidad no confirmada
Importante: Esto no demuestra explotabilidad de DoS. Las protecciones volumétricas/comportamentales
de borde (Akamai, CloudFlare) pueden activarse a escalas mayores
============================================================
ANÁLISIS DE SEÑALES DE APLICACIÓN
============================================================
SETTINGS del servidor (frame inicial):
HEADER_TABLE_SIZE = 4096
ENABLE_PUSH = True
MAX_CONCURRENT_STREAMS = 128
INITIAL_WINDOW_SIZE = 65535
MAX_FRAME_SIZE = 16384
→ MAX_CONCURRENT_STREAMS=128 es conservador (buen valor predeterminado post-CVE)
Desglose de GOAWAY entre conexiones:
ENHANCE_YOUR_CALM (0xb): 3/5
Otros códigos GOAWAY: 1/5
Sin GOAWAY recibido: 1/5
Restablecimiento TCP (RST en transporte): 0/5
Total de frames RST_STREAM del servidor: 2
Frames REFUSED_STREAM del servidor: 0
Conexiones que muestran limitación adaptativa: 1/5
============================================================
VEREDICTO
============================================================
✅ APLICACIÓN CONFIRMADA
3/5 conexión(es) recibieron GOAWAY con ENHANCE_YOUR_CALM (0xb).
Esta es la señal canónica de que la mitigación de CVE-2023-44487 está activa.
Clasificación: NO VULNERABLE — la aplicación a nivel de protocolo está activa.
# Verifique la implementación del parche con 10 conexiones, 500 flujos cada una
python3 cve_2023_44487_verifier_enhanced.py prod-api.ejemplo.com \
-c 10 \
-s 500 \
-d 0.0001 \
-v
# Pruebe un puerto HTTPS no estándar
python3 cve_2023_44487_verifier_enhanced.py ejemplo.com \
-p 8443 \
-c 5 \
-s 1000
# Prueba de cumplimiento con carga mínima
python3 cve_2023_44487_verifier_enhanced.py ejemplo.com \
-c 3 \
-s 200 \
--baseline-only