Skip to content

Auditar software en sistemas Linux, MacOS y Windows. Correlacionar aplicaciones con CVEs de la NVD, aplicar mitigaciones automáticas estilo Blue Team mediante IA y generar reportes PDF profesionales con LaTeX.

License

Notifications You must be signed in to change notification settings

RtDevSec/OpenSVM

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OpenSVM – Open System Vulnerability Management

build-badge license-badge issues-badge nvd-badge weather-badge gemini-badge

OpenSVM es una herramienta web diseñada para la gestión de vulnerabilidades del software instalado en diversos sistemas operativos: Windows, macOS y Linux.

Cuenta con múltiples funciones, entre las que destaca el inventario automático de software mediante sondas en Python. Estas sondas verifican si los nodos están activos y recopilan información en tiempo real sobre el software instalado, asegurando que los reportes sean confiables.

La información recopilada se compara con la National Vulnerability Database (NVD) del NIST, obteniendo métricas detalladas y posibles vulnerabilidades identificadas con sus respectivos códigos CVE (CVE-XXXX-XXXX). Además, esta información puede ser utilizada para documentar y mitigar vulnerabilidades, siguiendo prácticas típicas de un analista Blue Team.

OpenSVM también facilita la exportación de los análisis a formato PDF, de manera rápida y sencilla, para generar reportes claros y profesionales.

API Key Configuration

Tecnologías utilizadas

Contenedores & despliegue

  • Docker / Docker Compose: ejecuta todos los servicios de OpenSVM de forma rápida y consistente.

Base de datos

  • PostgreSQL: guarda de manera segura toda la información.

Backend

  • Django, Python 3: lógica de la aplicación y API para comunicar frontend y base de datos.

Frontend

  • Vue.js + JavaScript: Web dinámica.
  • Vuetify, Pinia, Axios: componentes UI, gestión de estado y comunicación con backend.

IA / Mitigación

  • Google Gemini: Mitigación de vulnerabilidades proyeccion "Blue Team".

Gestión de datos

  • JSON y archivos: sondas, configuraciones y análisis.

Reportes

  • LaTeX: PDF profesionales y unicos.

Características principales

  • API REST completa: gestión de usuarios, hosts, eventos y reportes.
  • Inventario automático de software: sondas Python recopilan datos en tiempo real.
  • Correlación con NVD: identifica vulnerabilidades CVE y su criticidad.
  • Despliegue sencillo: todos los servicios con Docker Compose.
  • Exportación de reportes PDF: informes claros y personalizables con LaTeX.
  • Frontend moderno: panel web SPA para visualizar datos y reportes.
  • Generador de agentes: creación de scripts/ZIP para inventario remoto.
  • Mitigación con IA: recomendaciones estilo Blue Team usando Google Gemini.
  • Multiplataforma: compatible con Windows, Linux y macOS.

URLs y Endpoints

  • Frontend:

  • Backend API REST:

    • Local / Docker: http://localhost:8000
    • Todos los endpoints se encuentran definidos en: backend\svm_open\urls.py

Paso 0: Prerrequisitos

Antes de empezar, asegúrate de tener instalados los siguientes componentes:

  • Python 3 (preferiblemente 3.9 o superior) [Python]
  • Docker y Docker Compose [Docker]

Paso 1: Clonar el repositorio

Ubicarnos en la ruta raiz

\svm-open\

Configuración de .env

  1. Copiar la plantilla .env.example y renombrarla a .env:

cp .env.example .env


Paso 2: Configuración del entorno backend

Para que el frontend Vue 3 (Vite) sepa dónde está corriendo el backend Django, se utiliza la variable de entorno VITE_API_URL en el archivo .env.

Permite acceder al backend desde otros dispositivos en la misma red local (LAN) usando la IP de tu ordenador.

VITE_API_URL_Config


⚠️ El stack Necesita 3 API_TOKEN. Dos necesario para funcionalidad y otro como ADDON.

Paso 2.1: Obtener API Key de NVD

(National Vulnerability Database) es la base de datos oficial de vulnerabilidades de software mantenida por el gobierno de EE. UU. Contiene información detallada sobre CVEs (Common Vulnerabilities and Exposures), incluyendo su criticidad, descripción, referencias y métricas de impacto. OpenSVM usa esta base de datos para correlacionar el software instalado en tus hosts con vulnerabilidades conocidas.

  1. Accede a NVD Developers.
  2. Completa el formulario con tus datos:
    • Nombre completo
    • Correo electrónico
    • Propósito de uso (por ejemplo: "Academic / Personal project for vulnerability management")

Paso 2.2: Configuración del módulo de IA (Google Gemini)

OpenSVM incluye un módulo avanzado de mitigación de vulnerabilidades con IA, que permite generar recomendaciones operativas estilo Blue Team y análisis CVSS de forma automática.

Modelos Gemini utilizados

Modelo Descripción
gemini-2.5-flash-lite Rápido, suficiente para texto técnico breve
gemini-2.0-flash-lite Alternativa rápida y ligera
gemini-2.5-flash Mayor calidad en texto largo y análisis detallado
gemini-2.0-flash Último fallback, máxima calidad

Configuración de la API Key

Para usar este módulo, necesitas obtener tu Google Gemini API Key y añadirla a tu archivo .env como GEMINI_API_KEY.

  1. Accede a Google AI Studio – API Keys
  2. Crea una nueva API Key para tu proyecto
  3. Copia la clave en .env:

Paso 2.3: Obtener API Key de Weather - Addon para mostrar clima

  1. Accede a OpenWeatherMap.
  2. Crea una cuenta si no tienes.
  3. Genera una nueva API Key para tu proyecto.
  4. Guarda la clave de forma segura.

⚠️ La Weather API es opcional; si no se configura, la funcionalidad de clima no estará disponible.


API Key Configuration

Paso 3: Consultar el Manual de Usuario

Para un uso avanzado y detalles completos sobre la instalación, configuración y funcionalidades de OpenSVM, consulte el manual de usuario disponible en:

OpenSVM Manual (PDF)

⚠️ Recomendamos leerlo antes de desplegar el sistema en entornos de producción o en múltiples hosts. Contiene instrucciones detalladas sobre agentes, configuración de API_KEYS y buenas prácticas de seguridad.


Licencia

Este proyecto está publicado bajo la MIT License.

© 2025 Iñigo Retamero

Para consultas, propuestas de colaboración o networking profesional, puede contactarme a través de mi perfil de LinkedIn: https://www.linkedin.com/in/i%C3%B1igo-retamero-fernandez-732181238/?originalSubdomain=es

⚠️ Aviso adicional: OpenSVM se comparte como herramienta open source para fines educativos, de investigación y profesionales de ciberseguridad. El uso comercial está permitido bajo los términos de la MIT License, pero no nos hacemos responsables de un uso indebido o no autorizado del software.

About

Auditar software en sistemas Linux, MacOS y Windows. Correlacionar aplicaciones con CVEs de la NVD, aplicar mitigaciones automáticas estilo Blue Team mediante IA y generar reportes PDF profesionales con LaTeX.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published