
RapidResetClient
Rapid Reset Client — это инструмент для проверки мер защиты и подверженности CVE-2023-44487 (вектор DDoS-атаки rapid reset). Он реализует минимальный HTTP/2-клиент, который открывает единственный TCP-сокет, согласовывает TLS, игнорирует сертификат и обменивается кадрами SETTINGS. Затем клиент отправляет быстрые кадры HEADERS, за которыми следуют кадры RST_STREAM. Он отслеживает (но не обрабатывает) кадры сервера после начальной настройки, а также выводит их в стандартный поток вывода.
Скрипт cve.bat скомпилирован для Windows, а файл cve_python.bat подготовлен для выполнения в других системах через Python.
Если атакуемое оборудование защищено должным образом, выполнение программы завершится и ничего не покажет.
Если же видно, что кадры RST отправляются, это означает, что сервер уязвим к этому CVE.
Один из самых быстрых способов снизить риск этой уязвимости — временно отключить HTTP/2 в Apache, по крайней мере до выхода более полного патча. Это может уменьшить вашу подверженность атакам, но это лишь временное решение.
Шаг 1. Отключите модуль HTTP/2 в Apache:
sudo a2dismod http2
Шаг 2. Перезапустите Apache, чтобы применить изменения:
sudo systemctl restart apache2
После этого сервер перестанет принимать соединения HTTP/2, и соединения будут осуществляться через HTTP/1.1, что предотвращает атаку, основанную на уязвимости CVE-2023-44487.
Этот проект лицензирован в соответствии с Apache License — подробности см. в файле LICENSE
Эта работа основана на первоначальном анализе CVE-2023-44487, выполненном Юхо Снеллманом и Даниэле Имартино из Google.