## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-AA022-CVE-2026-23918-PASSIVE-AUDIT
# Сценарий аудита CVE-2026-23918
В качестве альтернативы можно просто curl заголовки и заглянуть, но вот:
Неинвазивный аудитор метаданных HTTP для Apache HTTP Server Триаж экспозиции CVE-2026-23918 (https://www.openwall.com/lists/oss-security/2026/05/04/19).
Инструмент отправляет обычные HTTP-запросы `HEAD`/`GET` и выполняет согласование TLS ALPN для наблюдения поддержки HTTP/2.
## Требования
* Python 3.13 или новее
* `uv`
Установка `uv`:
root@kitploit:~
curl -LsSf https://astral.sh/uv/install.sh | sh
Примеры с помощью пакетных менеджеров:
root@kitploit:~
brew install uv some-email@example.com
sudo apt install python3.13 python3.13-venv pipx && pipx install uv
sudo dnf install python3.13 pipx && pipx install uv
sudo pacman -S uv python
Установка зависимостей проекта:
root@kitploit:~
make install
Установка зависимостей для разработки (линтинг):
root@kitploit:~
make install-dev
## Использование
Вывод справки по командам:
root@kitploit:~
make help
Аудит одной цели:
root@kitploit:~
make run https://example.com
Вывод однострочных заключений по CVE:
root@kitploit:~
make run https://example.com brief
Аудит целей из `targets.json`:
root@kitploit:~
make run targets.json brief
Необязательные переменные:
root@kitploit:~
make run targets.json brief TIMEOUT=30 CONCURRENCY=10
make run https://example.com INSECURE=1
make run targets.json JSON_OUTPUT=1
В интерактивных терминалах отображается небольшой ASCII-спиннер в stderr, пока выполняются запросы. Вывод отчёта остаётся в stdout.
## Файл целей
`targets.json` должен быть JSON-массивом имен хостов, IP-адресов или URL:
root@kitploit:~
[
"https://httpd.apache.org",
"https://example.com",
"http://scanme.nmap.org"
]
Эквивалентный общий формат:
root@kitploit:~
[
"https://example.com",
"example.org",
"192.0.2.10",
"http://192.0.2.20:8080"
]
Каждая запись должна быть непустой строкой. Простые имена хостов и IP-адреса нормализуются к HTTPS.
## Проверки
* Извлечение серверного баннера и версии Apache
* Индикаторы HTTP/2 из протокола ответа, TLS ALPN, `Alt-Svc` и `Upgrade`
* Триаж версий по CVE-2026-23918
* Обычные заголовки безопасности
* Атрибуты безопасности cookie
* Статус проверки TLS
Краткий формат вывода:
root@kitploit:~
https://example.com [Apache/2.4.66] [h2 no] => likely vulnerable (h2 not confirmed)
Для CVE-2026-23918 Apache `2.4.66` считается уязвимым, а `2.4.67` или новее — исправленным. Более старые версии Apache сообщаются как находящиеся за пределами подтверждённого диапазона CVE.
## Структура
* `audit.py`: точка входа CLI.
* `auditor/`: проверка, пассивный сбор, анализ, отчётность и отображение прогресса.
## Код завершения
Успешное выполнение завершается с кодом `0` после вывода результатов. Находки, включая подозрительные баннеры, являются выходными данными и не приводят к сбою процесса.
Ошибки проверки ввода и настройки могут завершиться с ненулевым кодом.
## Отказ от ответственности
Результаты основаны на внешне видимых метаданных и не являются авторитетным доказательством состояния пакета. Серверные баннеры могут быть скрыты, изменены, бэкпортированы или переданы через посредников.
## Лицензия
CC0 1.0 Universal. См. `LICENSE`.