Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
web-server-audit_CVE-2026-42945 — Аудит CVE веб-серверов nginx и Apache с учетом триггеров. Выходит за рамки сопоставления версий, проверяя, действительно ли уязвимый путь кода достижим в вашей конфигурации. Классифицирует находки как Active / Latent / Unverified. Однофайловый Python 3.5+, без зависимостей. | Kitploit
Инструменты/GitHubGitHub/sibersan/web-server-audit_cve-2026-42945
Сканеры уязвимостейАнализ уязвимостейАудит конфигурацииВеб-безопасностьDevSecOpsНеправильная Конфигурация
GitHubsibersan/web-server-audit_cve-2026-42945

web-server-audit_CVE-2026-42945

Аудит CVE веб-серверов nginx и Apache с учетом триггеров. Выходит за рамки сопоставления версий, проверяя, действительно ли уязвимый путь кода достижим в вашей конфигурации. Классифицирует находки как Active / Latent / Unverified. Однофайловый Python 3.5+, без зависимостей.

Репозиторий
43 месяцев назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

web_server_audit

Не спрашивай, уязвим ли ты. Спроси, эксплуатируем ли ты.

Однофайловый Python-инструмент, который проверяет nginx и Apache на известные CVE, одновременно анализируя как установленную версию, так и то, достижим ли уязвимый код через вашу конфигурацию.

Зачем?

Большинство CVE-сканеров останавливаются на сопоставлении версий: "nginx 1.18.0 — CVE-2026-42945, ВЫСОКИЙ уровень, вы уязвимы." Однако для многих CVE требуется определённый шаблон конфигурации, чтобы быть эксплуатируемыми. Сканер, игнорирующий конфигурацию, заваливает вас красными предупреждениями, которые не отражают реальный риск — и, что хуже, может скрывать скрытые риски, которые станут реальными, если ваша конфигурация завтра изменится.

web_server_audit отвечает на два отдельных вопроса по каждой CVE:

  1. Находится ли установленная версия в уязвимом диапазоне?
  2. Присутствует ли триггерный шаблон в рабочей конфигурации?

Комбинация этих вопросов даёт три честные классификации:

КлассификацияЗначение
🔴 Риск активной эксплуатацииУязвимая версия и триггер присутствует. Эксплуатируемо сегодня.
🟡 Скрытый рискУязвимая версия, триггер отсутствует. Становится эксплуатируемым, если изменение конфигурации введёт шаблон.
⚪ Не провереноКонфигурация нечитаема; статус неизвестен.

Особенности

  • 🎯 Обнаружение триггеров по каждой CVE (не только сопоставление версий)
  • 🟢 Разделение активного и скрытого риска в сводке
  • 🐧 Осведомлённость об Ubuntu Pro / ESM — отмечает пакеты вне покрытия ESM
  • 🔬 Проверка ASLR, статус службы, прослушиваемые порты, количество SIGSEGV за последнее время
  • 🎨 Цветной вывод в терминал, JSON для автоматизации
  • 📦 Один файл, Python 3.5+, без сторонних зависимостей
  • 🔌 Легко расширяется — добавление новой CVE примерно в 10 строк

Быстрый старт

root@kitploit:~
git clone https://github.com/YOUR_USERNAME/web-server-audit.git
cd web-server-audit
sudo python3 web_server_audit.py

Поддерживаемые CVE (nginx)

CVEУровень опасностиТриггерный шаблон
CVE-2026-42945 (Rift)ВЫСОКИЙrewrite + безымянная группа захвата ($1,$2) + ? в замене
CVE-2026-42946СРЕДНИЙИспользуется scgi_pass или uwsgi_pass
CVE-2026-40701СРЕДНИЙssl_stapling on + resolver вместе
CVE-2026-42934НИЗКИЙДирективы charset/charset_types/source_charset

Список CVE для Apache в настоящее время пуст, но структура готова — см. Расширение ниже.

Дополнительные проверки

Помимо CVE, инструмент также сообщает:

  • Состояние ASLR (/proc/sys/kernel/randomize_va_space) — полный ASLR существенно снижает эксплуатацию RCE через ошибки памяти
  • Версия ОС и статус завершения поддержки — отмечает дистрибутивы с истекшим сроком поддержки или только ESM
  • Состояние подписки Ubuntu Pro (ESM) для esm-infra и esm-apps
  • Статус службы — запущен ли nginx/Apache и на каких портах
  • Источник пакета — различает установки из ESM, PPA и стандартного репозитория (Ubuntu)
  • Сбои рабочих процессов — подсчёт событий SIGSEGV за последние 30 дней как индикатор активной эксплуатации

Требования

  • Python 3.5+ (работает с Python 3.6, поставляемым в Ubuntu 18.04)
  • Нет сторонних пакетов — только стандартная библиотека
  • Использует nginx, apache2, systemctl, ss, journalctl, когда они доступны; в противном случае проверки пропускаются корректно

Использование

root@kitploit:~
# Компактный отчёт (по умолчанию — скрывает строки OK)
sudo python3 web_server_audit.py

# Все результаты, включая строки OK
sudo python3 web_server_audit.py --verbose

# Без ANSI-цветов (хорошо для конвейеров, журналов, вывода CI)
sudo python3 web_server_audit.py --no-color

# Машиночитаемый JSON
sudo python3 web_server_audit.py --json

Коды возврата

КодЗначение
0Нет проблем
1Только предупреждения или некритические CVE-находки
2Как минимум одна CVE активно эксплуатируема

Код возврата 2 — естественный сигнал сбоя в CI/CD.

Пример вывода

root@kitploit:~
========================================================================
Web Server Audit - 2026-05-16T01:24:55
Host: web-prod-01
web_server_audit.py v1.0.0 - SiberSAN - MIT License
========================================================================

[system]
------------------------------------------------------------------------
  [OK] OK    ASLR полностью включён (randomize_va_space=2)
  [i] INFO  ОС: Ubuntu 18.04.6 LTS
  [!] WARN  Ubuntu 18.04 находится в режиме только ESM

[nginx] версия 1.18.0 (активен)
------------------------------------------------------------------------
  [i] INFO  nginx прослушивает: 0.0.0.0:80, 0.0.0.0:443
  [i] INFO  CVE-2026-42945 (ВЫСОКИЙ): версия уязвима, но НЕ активирована
           Триггер: rewrite + безымянная группа захвата ($1,$2) + '?' в замене
           Доказательство: Директивы rewrite отсутствуют в конфигурации
  [i] INFO  CVE-2026-42946 (СРЕДНИЙ): версия уязвима, но НЕ активирована
  [!] WARN  nginx установлен из PPA (1.18.0-3ubuntu1+bionic1)

========================================================================
Сводка по реальному риску
------------------------------------------------------------------------
РИСК АКТИВНОЙ ЭКСПЛУАТАЦИИ: не обнаружено.

СКРЫТЫЙ РИСК — уязвимая версия, триггер в конфигурации отсутствует (3):
  - [nginx] CVE-2026-42945 (ВЫСОКИЙ)
  - [nginx] CVE-2026-42946 (СРЕДНИЙ)
  - [nginx] CVE-2026-42934 (НИЗКИЙ)
  Становятся эксплуатируемыми, если изменение конфигурации введёт триггер.
  Смягчение: дисциплина изменений конфигурации + планирование обновления.

========================================================================
Результаты: 0 критических, 2 предупреждения
========================================================================

Расширение

Добавление новой CVE состоит из двух шагов.

1. Напишите функцию-триггер, которая принимает полный текст конфигурации (вывод nginx -T) и возвращает (triggered: bool, evidence: str):

root@kitploit:~
def _trigger_my_cve(conf):
    hits = [l for l in conf.splitlines() if re.search(r'risky_directive', l)]
    if hits:
        return True, "Найдено: " + hits[0]
    return False, "Шаблон не найден"

2. Добавьте запись в NGINX_CVES (или APACHE_CVES):

root@kitploit:~
{
    "id": "CVE-XXXX-NNNNN",
    "name": "Описательное название",
    "severity": "HIGH",
    "affected": ("1.10.0", "1.25.0"),
    "fixed_in": ["1.25.1"],
    "trigger_desc": "Понятное человеку описание триггера",
    "trigger_fn": _trigger_my_cve,
},

Всё. Фреймворк автоматически обрабатывает классификацию, форматирование вывода, JSON, коды возврата и сводку.

Ограничения

  • Нет тестирования активной эксплуатации. Не отправляются PoC-запросы. Это чисто инструмент анализа конфигурации и версий.
  • База CVE встроена и поддерживается вручную; нет онлайн-синхронизации. Поддержание списка в актуальном состоянии — обязанность пользователя.
  • Детекторы триггеров эвристические. Сложные конфигурации с глубоко вложенными include или нестандартными кавычками могут давать ложные срабатывания или пропуски. Используйте --verbose для просмотра деталей, если сомневаетесь.
  • Протестировано на Ubuntu 18.04, 20.04, 22.04 и 24.04. Инструмент, вероятно, будет работать и на других дистрибутивах Linux, но обнаружение источника пакета (ESM/PPA) специфично для Ubuntu.

Участие в разработке

Приветствуются pull request'ы, issue'ы, новые детекторы CVE и поддержка других веб-серверов (lighttpd, Caddy, HAProxy и т.д.).

При предложении нового детектора CVE, пожалуйста, включите:

  • Ссылку на запись CVE (NVD, уведомление вендора или журнал изменений вышестоящего проекта)
  • Минимальный фрагмент конфигурации, который активирует детектор
  • Контрпример, который не должен его активировать

Лицензия

Выпущено под лицензией MIT.

Copyright (c) 2026 SiberSAN

Скачать инструмент