
Лаборатория симуляции и защиты от атак HTTP/2 - Slowloris, Rapid Reset (CVE-2023-44487), HPACK Bomb атаки с 5 уровнями защиты. Создана на чистом Python с использованием raw sockets и библиотеки h2.
Лаборатория моделирования атак и защиты HTTP/2, созданная с нуля на чистом Python.
Моделирует 3 реальные атаки HTTP/2 на уязвимый сервер, затем демонстрирует 5 уровней защиты, блокирующих все 3 на защищённом сервере.
| Атака | Техника | Воздействие |
|---|---|---|
| Slowloris | Открытие потока, без отправки END_STREAM | Истощение RAM |
| Rapid Reset | Флуд RST_STREAM (CVE-2023-44487) | Истощение CPU |
| HPACK Bomb | 300+ заголовков на запрос | Атака на выделение памяти |
| Защита | Метод |
|---|---|
| Slowloris Watchdog | Фоновый поток убивает неактивные соединения |
| Rapid Reset Ban | IP навсегда блокируется после 10 RST |
| Header Flood Block | Сброс потока при > 25 заголовках |
| Rate Limiter | IP блокируется после 60 запр/мин |
| Stream Cap | MAX_CONCURRENT_STREAMS = 20 |
Базовый сервер → 0/3 заблокировано (0%) Защищённый сервер → 3/3 заблокировано (99%)
pip install h2
# Terminal 1
python3 basic_server.py
# Terminal 2
python3 hardened_server.py
# Terminal 3
python3 compare.py