
Pipeline de inteligencia de CVE que compara CVEs públicos con plantillas de Nuclei para identificar cobertura de vulnerabilidades faltante, clasificar tipos y priorizar riesgos.
Una herramienta CLI rápida para analizar la cobertura de CVE en plantillas de Nuclei.
Nuclei CVE Analyzer toma una lista de IDs de CVE, escanea un repositorio local de plantillas de Nuclei y determina qué CVE ya tienen plantillas coincidentes y cuáles representan posibles brechas de cobertura de plantillas.
Diseñada para investigadores de seguridad, cazadores de vulnerabilidades y colaboradores de Nuclei que desean una forma rápida de identificar la cobertura de CVE faltante.
El proyecto se centra deliberadamente en la cobertura de plantillas en lugar de servicios externos de puntuación o enriquecimiento de vulnerabilidades.
Entrada:
CVE-2021-44228
CVE-2021-45046
CVE-2022-26134
CVE-2023-21840
CVE-2023-22809
Ejemplo de salida:
CVE STATUS
CVE-2021-44228 FOUND
CVE-2021-45046 FOUND
CVE-2022-26134 FOUND
CVE-2023-21840 MISSING
CVE-2023-22809 MISSING
Esto facilita la identificación de CVE que pueden ser candidatos para nuevas plantillas de Nuclei.
Clona el repositorio:
git clone https://github.com/YOUR_USERNAME/nuclei-cve-analyzer.git
cd nuclei-cve-analyzer
Cree un entorno virtual:
python3 -m venv .venv
source .venv/bin/activate
Instalar dependencias:
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
| Argumento | Descripción |
|---|---|
-f, --file | Archivo de entrada que contiene los ID de CVE |
-n, --nuclei-path | Ruta al directorio de plantillas de Nuclei |
-c, --cve-path | Directorio de la base de datos local de CVE |
-t, --threads | Número de hilos de trabajo de análisis |
-o, --output | Archivo de salida JSON combinado |
--scan-system | Busca ID de CVE en ubicaciones comunes del sistema |
-v, --verbose | Habilita el registro detallado |
--log-level | Establece el nivel de registro |
El analizador genera varios informes dentro del directorio de salida.
Contiene el análisis completo:
output/results_YYYYMMDD_HHMMSS.json
CVE del conjunto de entrada que tienen plantillas de Nuclei coincidentes:
output/found_cves.json
CVEs del conjunto de entrada sin plantillas coincidentes:
output/missing_templates.json
Todos los CVE referenciados por las plantillas de Nuclei escaneadas:
output/used_cves.json
Una lista enfocada de CVE que actualmente carecen de plantillas:
output/priority_report.json
Una versión de los resultados compatible con hojas de cálculo:
output/results.csv
Un flujo de trabajo típico para identificar brechas en las plantillas:
# 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
A continuación, el analizador informa qué CVE ya están cubiertos y cuáles no tienen actualmente plantillas coincidentes.
Identificar CVE que puedan necesitar nuevas plantillas de detección.
Comparar rápidamente listas de vulnerabilidades con la cobertura existente de Nuclei.
Determinar qué vulnerabilidades de un conjunto de datos ya pueden detectarse usando Nuclei.
Usar los informes JSON o CSV generados como entrada para otras canalizaciones de análisis.
Este proyecto está enfocado activamente en el análisis de cobertura de plantillas CVE-to-Nuclei.
El objetivo es mantener la herramienta ligera, rápida y enfocada, en lugar de convertirla en una plataforma de enriquecimiento de vulnerabilidades de propósito general.
Las mejoras previstas incluyen:
Instala las dependencias con:
pip install -r requirements.txt
Las contribuciones, informes de errores y mejoras son bienvenidos.
Al enviar una pull request:
Este proyecto está destinado a la investigación de seguridad, el análisis de vulnerabilidades y las pruebas autorizadas.
Úsalo únicamente contra sistemas, repositorios y conjuntos de datos que estés autorizado a analizar.
Añade aquí la licencia de tu proyecto.
Nuclei CVE Analyzer
Análisis de cobertura de CVE para plantillas de Nuclei