
introducir
Cuando se trata de ciberseguridad, la velocidad y la privacidad son cruciales. Las bases de datos de vulnerabilidad pública como NVD y Mitre son valiosas, pero confiar directamente en ellas puede exponer consultas sensibles o crear latencia. Ahí es donde CVE-Search intervención.
CVE-Search es una herramienta de código abierto importada CVE (vulnerabilidades y exposiciones comunes) y CPE (enumeración de la plataforma pública) Agregue datos de datos a MongoDB. Esto te permite construir Base de datos de vulnerabilidad CVE localconsultará una preparación más rápida, privada y automatizada.
Incluye:
- uno Base de datos de backend Vulnerabilidad y metadatos relacionados
- uno Interfaz web intuitiva Se utiliza para buscar y administrar CVE
- Poderoso Herramientas de línea de comandos Utilizado para consultar
- uno API REST Integrarse en el flujo de trabajo
¿Por qué usar CVE-Search?
- Consulta más rápida: La búsqueda local de MongoDB es mucho más rápida que la búsqueda remota.
- Protección de la privacidad: Consultas sensibles nunca dejarán su red.
- Multifuncional: Elija entre interfaces CLI, web o API.
- Automatización amigable: Ideal para tuberías CI/CD o monitoreo continuo.
Instalar MongoDB
CVE-Search requiere Python 3.3+ y MongoDB 2.2+ (o actualizado). Instale MongoDB desde el Administrador de paquetes de su distribución o directamente desde MongoDB. No olvides incluir el título de desarrollo.
Para las instrucciones de instalación, consulte Manual de mongodb.
Uplica la base de datos
Después de ejecutar MongoDB, llene sus datos CVE y CPE:
./sbin/db_mgmt.py -p
./sbin/db_mgmt_cpe_dictionary.py
./sbin/db_updater.py -c
Esto obtendrá datos XML de las bases de datos CVE y CPE. La primera importación puede llevar tiempo, dependiendo de su sistema.
Agregue referencias cruzadas a NIST, Red Hat y otros proveedores:
./sbin/db_mgmt_ref.py
Mantenga la base de datos actualizada
Actualice regularmente la base de datos:
./sbin/db_updater.py -v
- Puede ser automáticamente
cron - Redacción de registros
syslogPor defecto
Reiniciar y rellenar completamente:
./sbin/db_updater.py -v -f
Ejemplo de uso
Utilice la base de datos, use search.py:
./bin/search.py -p cisco:ios:12.4
./bin/search.py -p cisco:ios:12.4 -o json
./bin/search.py -f nagios -n
./bin/search.py -p microsoft:windows_7 -o html
Ejemplo: encontró todas las vulnerabilidades de Cisco WebEx con referencia oficial:
./bin/search.py -p webex: -o csv -v "cisco"
Encuentra una CVE específica:
./bin/search.py -c CVE-2010-3333
Otras utilidades incluyen:
- Robot xmpp:
./bin/search_xmpp.py -j mybot@jabber.org -p strongpassword - Volcar la última CVE (RSS/Atom):
./bin/dump_last.py -f atom -l 2 - Interfaz web:
./web/index.py
Base de datos de clasificación
CVE Search permite clasificar vulnerabilidades para cada organización o departamento.
Ejemplo: Mark SAP Netweaver es esencial para la contabilidad:
./sbin/db_ranking.py -c "sap:netweaver" -g "accounting" -r 3
./bin/search.py -c CVE-2012-4341 -r -n
Uso avanzado
Dado que CVE-Search es modular, puede usarlo junto con las herramientas UNIX para el análisis.
Ejemplo: proveedor superior con vulnerabilidad «desconocida»
python3 bin/search_fulltext.py -q unknown -f \
| jq -c '.vulnerable_configuration[0]' \
| cut -f5 -d: | sort | uniq -c | sort -nr | head -10
Ejemplo: Comparación de puntajes CVSS (Oracle vs Sun JRE)
python3 bin/search.py -p oracle:java -o json | jq -r '.cvss' | Rscript -e 'summary(...)'
python3 bin/search.py -p sun:jre -o json | jq -r '.cvss' | Rscript -e 'summary(...)'
Indexación y visualización de texto completo
Índice CVE:
./sbin/db_fulltext.py
Busque el índice de texto completo:
./bin/search_fulltext.py -q NFS -q Linux
Genere Visual JSON (requerido NLTK):
./bin/search_fulltext.py -g -s > cve.json
Esto crea información de palabras clave y análisis de frecuencia para vulnerabilidades.
Interfaz web y API
CVE-Search incluye:
- UI web mínima: Consulte el último CVE y consulte la identificación. Corre en Flask + Flask.
- API JSON: Acceso programático a proveedores, productos y CVE.
Ejemplo:
curl # List vendors
curl zyxel # Zyxel products
curl
Las API públicas también se pueden encontrar en cve.circl.lu.
Ecosistemas e integración
Varios proyectos extienden CVE-Serearch:
- CVE-portal: Portal de notificación CVE
- CVE-Search-MT: Kit de herramientas de gestión
- CVe-scan: Escáner CVE basado en NMAP
Juntos, mejoran la automatización, el monitoreo y la gestión de vulnerabilidad agresiva.
Implementación de docker y arranque rápido
Una de las formas más fáciles de iniciar CVE-Search hoy es usar su oficial Configuración de Docker. Esto evita la necesidad de configurar manualmente MongoDB, Redis o Dependencias en el sistema de host.
Paso 1: Clonación del repositorio de cVe-Search Docker
git clone
cd CVE-Search-Docker
Paso 2: Inicie el contenedor
Use la combinación de Docker para proponer una pila completa (CVE-Search, MongoDB, Redis):
docker compose up -d
Esto comenzará todos los servicios requeridos en segundo plano.
Paso 3: acceder a la interfaz web
Después de ejecutar, la interfaz de red está disponible:
Desde aquí, puede explorar la CVE reciente, buscar a través del proveedor o producto, e interactuar con la API REST.
Paso 4: Mantenga los datos actualizados
Actualizar datos CVE y CPE en el contenedor, use:
docker compose exec cvesearch ./sbin/db_updater.py -v
Paso 5: Detente o retire el contenedor
Cerrar con gracia:
docker compose down
Elimine todos los contenedores y volúmenes (restablezca la base de datos):
docker compose down -v
¿Por qué usar Docker para CVE-Search?
- Configuración rápida: Corre en unos minutos sin depender de la gerencia manualmente
- Portátil y reproducible: Trabajar con la misma configuración en diferentes entornos
- Servicio aislado: MongoDB y Redis están preconfigurados en contenedores
- Restablecimiento simple: Reconstruir o actualizar rápidamente su base de datos de vulnerabilidad









