
CVE-конвейер разведки, который сопоставляет публичные CVE с шаблонами Nuclei для выявления пробелов в покрытии уязвимостей, классификации типов и ранжирования приоритетов.
Быстрый CLI-инструмент для анализа покрытия CVE в шаблонах Nuclei.
Nuclei CVE Analyzer принимает список идентификаторов CVE, сканирует локальный репозиторий шаблонов Nuclei и определяет, для каких CVE уже есть подходящие шаблоны, а какие представляют собой потенциальные пробелы в покрытии шаблонами.
Создан для исследователей безопасности, охотников за уязвимостями и контрибьюторов Nuclei, которым нужен быстрый способ выявить отсутствующее покрытие CVE.
Проект намеренно сосредоточен на покрытии шаблонами, а не на внешних сервисах оценки или обогащения уязвимостей.
Входные данные:
CVE-2021-44228
CVE-2021-45046
CVE-2022-26134
CVE-2023-21840
CVE-2023-22809
Пример вывода:
CVE STATUS
CVE-2021-44228 FOUND
CVE-2021-45046 FOUND
CVE-2022-26134 FOUND
CVE-2023-21840 MISSING
CVE-2023-22809 MISSING
Это упрощает выявление CVE, которые могут стать кандидатами для новых шаблонов Nuclei.
Клонируйте репозиторий:
git clone https://github.com/YOUR_USERNAME/nuclei-cve-analyzer.git
cd nuclei-cve-analyzer
Создайте виртуальное окружение:
python3 -m venv .venv
source .venv/bin/activate
Установите зависимости:
pip install -r requirements.txt
python3 nuclei_analyzer.py \
-f example_cves.txt \
-n /path/to/nuclei-templates
python3 nuclei_analyzer.py \
-f example_cves.txt \
-t 16 \
-n /path/to/nuclei-templates
python3 nuclei_analyzer.py \
-f example_cves.txt \
-t 16 \
-o output/results.json \
-n /path/to/nuclei-templates
python3 nuclei_analyzer.py \
--scan-system \
-n /path/to/nuclei-templates
python3 nuclei_analyzer.py --help
| Аргумент | Описание |
|---|---|
-f, --file | Входной файл, содержащий идентификаторы CVE |
-n, --nuclei-path | Путь к каталогу шаблонов Nuclei |
-c, --cve-path | Каталог локальной базы данных CVE |
-t, --threads | Количество рабочих потоков анализа |
-o, --output | Объединённый файл вывода JSON |
--scan-system | Поиск идентификаторов CVE в стандартных системных расположениях |
-v, --verbose | Включить подробное журналирование |
--log-level | Установить уровень журналирования |
Анализатор создаёт несколько отчётов в каталоге вывода.
Содержит полный анализ:
output/results_YYYYMMDD_HHMMSS.json
CVE из входного набора, для которых есть соответствующие шаблоны Nuclei:
output/found_cves.json
CVE из входного набора без соответствующих шаблонов:
output/missing_templates.json
Все CVE, на которые ссылаются просканированные шаблоны Nuclei:
output/used_cves.json
Сфокусированный список CVE, для которых в настоящее время отсутствуют шаблоны:
output/priority_report.json
Версия результатов, удобная для работы с электронными таблицами:
output/results.csv
Типичный рабочий процесс для выявления пробелов в шаблонах:
# Prepare a list of CVEs
cat example_cves.txt
# Scan the Nuclei repository
python3 nuclei_analyzer.py \
-f example_cves.txt \
-t 16 \
-n ~/nuclei-templates
Затем анализатор сообщает, какие CVE уже покрыты, а для каких в настоящее время нет соответствующих шаблонов.
Определяйте CVE, для которых могут потребоваться новые шаблоны обнаружения.
Быстро сравнивайте списки уязвимостей с существующим покрытием Nuclei.
Определяйте, какие уязвимости в наборе данных уже можно обнаружить с помощью Nuclei.
Используйте сгенерированные отчёты JSON или CSV в качестве входных данных для других конвейеров анализа.
Этот проект активно сосредоточен на анализе покрытия CVE шаблонами Nuclei.
Цель — сохранять инструмент лёгким, быстрым и сфокусированным, а не превращать его в универсальную платформу обогащения данных об уязвимостях.
Планируемые улучшения включают:
Установите зависимости с помощью:
pip install -r requirements.txt
Вклад, сообщения об ошибках и улучшения приветствуются.
При отправке pull request:
Этот проект предназначен для исследования безопасности, анализа уязвимостей и авторизованного тестирования.
Используйте его только против систем, репозиториев и наборов данных, которые вы уполномочены анализировать.
Добавьте лицензию вашего проекта здесь.
Nuclei CVE Analyzer
Анализ покрытия CVE для шаблонов Nuclei