
HTTP/2-Angriffssimulations- & Verteidigungslabor – Slowloris-, Rapid-Reset- (CVE-2023-44487) und HPACK-Bomb-Angriffe mit 5 mehrschichtigen Verteidigungsmaßnahmen. In reinem Python mit Raw-Sockets und der h2-Bibliothek entwickelt.
Ein von Grund auf neu geschriebenes Labor zur Simulation und Abwehr von HTTP/2-Angriffen, komplett in reinem Python.
Simuliert 3 reale HTTP/2-Angriffe gegen einen verwundbaren Server und zeigt anschließend 5 Verteidigungsebenen, die alle 3 auf einem gehärteten Server blockieren.
| Angriff | Technik | Auswirkung |
|---|
| Slowloris | Stream öffnen, nie END_STREAM senden | RAM-Erschöpfung |
| Rapid Reset | RST_STREAM-Flut (CVE-2023-44487) | CPU-Erschöpfung |
| HPACK Bomb | 300+ Header pro Anfrage | Speicherzuweisungsangriff |
| Verteidigung | Methode |
|---|---|
| Slowloris-Watchdog | Hintergrund-Thread beendet untätige Verbindungen |
| Rapid-Reset-Sperre | IP nach 10 RSTs dauerhaft gesperrt |
| Header-Flut-Block | Stream-Reset bei mehr als 25 Headern |
| Rate-Limiter | IP nach 60 Anfragen/Minute gesperrt |
| Stream-Obergrenze | MAX_CONCURRENT_STREAMS = 20 |
Basic Server → 0/3 blockiert (0%) Gehärteter Server → 3/3 blockiert (99%)
pip install h2
# Terminal 1
python3 basic_server.py
# Terminal 2
python3 hardened_server.py
# Terminal 3
python3 compare.py