CVE-2023-44487 HTTP/2 DoS Rapid Reset Exploit
Professional Edition v1.0.1 | Autore: Sudeepa Wanigarathna
-orange.svg)
Indice dei contenuti
Panoramica
Un framework di valutazione di livello professionale per CVE-2023-44487, la vulnerabilità HTTP/2 Rapid Reset. Questo strumento aiuta i professionisti della sicurezza a testare e validare i sistemi contro una delle condizioni DoS HTTP/2 più impattanti divulgate negli ultimi anni.
Dimostra come la creazione e il reset rapidi di stream HTTP/2 possano esaurire le risorse del server e portare a condizioni di Denial of Service (DoS).
Caratteristiche principali in sintesi
- Motore di attacco multi-connessione — Connessioni HTTP/2 concorrenti
- Controllo adattivo della velocità — Regolazione dinamica per la massima efficacia
- Modalità stealth — Header randomizzati e rotazione delle connessioni
- Report completi — JSON/CSV con valutazione del rischio
- Supporto Docker — Distribuzione containerizzata
- Monitoraggio in tempo reale — Metriche di attacco live e avanzamento
- Logging professionale — Output console colorato con logging su file
| Uso | Risultati |
|---|
 |  |
Dettagli della vulnerabilità
CVE-2023-44487: attacco HTTP/2 Rapid Reset
| Attributo | Valore |
|---|
| ID CVE | CVE-2023-44487 |
| Punteggio CVSS | 7.5 (Alto) |
| Vettore di attacco | Rete |
| Complessità dell'attacco | Bassa |
| Impatto | Denial of Service (Esaurimento delle risorse) |
| Protocolli interessati | HTTP/2 |
| Data di divulgazione | Ottobre 2023 |
Panoramica tecnica
La vulnerabilità sfrutta il meccanismo di gestione degli stream del protocollo HTTP/2:
- Creazione dello stream — Il client invia un frame HEADERS per creare un nuovo stream
- Reset immediato — Il client invia immediatamente un frame RST_STREAM
- Elaborazione lato server — Il server deve elaborare entrambi i frame, consumando risorse
- Esaurimento delle risorse — I cicli ripetuti sopraffanno le risorse del server
Impatto
- Esaurimento delle risorse sui server HTTP/2
- Possibile Denial of Service (DoS)
- Può colpire load balancer, proxy e CDN
- Non richiede autenticazione o privilegi speciali
Caratteristiche
Funzionalità principali
| Funzionalità | Descrizione |
|---|
| Supporto HTTP/2 | Implementazione completa del protocollo HTTP/2 tramite la libreria h2 |
| Multi-connessione | Attacco concorrente su più connessioni |
| SSL/TLS | Supporto HTTPS con opzioni di verifica dei certificati |
| Controllo adattivo della velocità | Regola dinamicamente la velocità di attacco in base alla risposta del server |
| Modalità stealth | Header randomizzati e rotazione delle connessioni |
| Monitoraggio in tempo reale | Visualizzazione delle metriche live durante l'esecuzione |
| Report completi | Output JSON/CSV con valutazione del rischio |
| Supporto Docker | Distribuzione containerizzata per test semplificati |
Funzionalità avanzate
- Supporto proxy — Configurazione proxy estendibile
- Connection pooling — Gestione efficiente delle connessioni
- Recupero dagli errori — Gestione pulita dei fallimenti di connessione
- Ottimizzazione delle prestazioni — Impostazioni configurabili per diversi scenari
- Integrazione CI/CD — Adatto al testing di sicurezza automatizzato
Requisiti
Requisiti di sistema
| Componente | Minimo | Consigliato |
|---|
| Sistema operativo | Linux / macOS / Windows | Linux o macOS |
| Python | 3.7+ | 3.11+ |
| CPU | 2 core | 4+ core |
| RAM | 2GB | 4GB+ |
| Rete | 100Mbps | 1Gbps+ |
Dipendenze
h2>=4.1.0,<5.0.0
aiohttp>=3.8.0,<4.0.0
Installazione
1. Installazione rapida
# Clone the repository
git clone https://github.com/CerberusMrXi/CVE-2023-44487-HTTP2-DoS-Rapid-Reset-Exploit
cd CVE-2023-44487-HTTP2-DoS-Rapid-Reset-Exploit
# Install dependencies
pip install -r requirements.txt
# Verify installation
python3 cve-2023-44487-exploit.py --help
2. Ambiente virtuale (consigliato)
# Create virtual environment
python3 -m venv venv
# Activate virtual environment
# On Linux/macOS:
source venv/bin/activate
# On Windows:
venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
3. Installazione Docker
# Build Docker image
docker build -t cve-2023-44487-exploit .
# Run with Docker
docker run --rm cve-2023-44487-exploit target.com
4. Installazione manuale
# Install without requirements.txt
pip install "h2>=4.1.0,<5.0.0" "aiohttp>=3.8.0,<4.0.0"
# Download the exploit
wget https://raw.githubusercontent.com/CerberusMrXi/CVE-2023-44487-HTTP2-DoS-Rapid-Reset-Exploit/main/cve-2023-44487-exploit.py
# Make executable
chmod +x cve-2023-44487-exploit.py
Avvio rapido
Utilizzo di base
# Simple run with default settings
python3 cve-2023-44487-exploit.py example.com
# Test HTTPS on port 443
python3 cve-2023-44487-exploit.py target.com -p 443 --no-verify
# Test HTTP on port 80
python3 cve-2023-44487-exploit.py target.com -p 80 --no-ssl
Test rapido (5 secondi)
python3 cve-2023-44487-exploit.py target.com -c 10 -s 100 -d 5 --no-verify
Valutazione completa (60 secondi)
python3 cve-2023-44487-exploit.py target.com -c 100 -s 2000 -d 60 --stealth --no-verify
Guida all'utilizzo
Opzioni della riga di comando
Configurazione del target
| Opzione | Descrizione | Predefinito |
|---|
host | Hostname o IP del target | Obbligatorio |
-p, --port | Porta del target | 443 |
--no-ssl | Disabilita SSL/TLS | False |
--no-verify | Salta la verifica SSL | False |
Configurazione dell'attacco
| Opzione | Descrizione | Predefinito |
|---|
-c, --connections | Numero di connessioni concorrenti | 50 |
-s, --streams | Stream per connessione | 1000 |
-d, --duration | Durata in secondi | 30 |
--max-streams | Numero massimo totale di stream | 100000 |
--delay | Ritardo base tra le operazioni | 0.0001s |
Opzioni avanzate