Verificación de vulnerabilidades CVE en GLPI

El módulo CVE Scan de NexTool cruza tu versión de GLPI con el NVD y la GitHub Advisory Database y audita 17 puntos del entorno (PHP, cabeceras, permisos), generando un Security Score de 0 a 100. Mira cómo funciona, cómo activarlo y los errores de configuración que más fallan en campo.

¿Tu instancia de GLPI está expuesta a vulnerabilidades ya catalogadas sin que lo sepas? En la mayoría de los entornos que asumimos para mantenimiento, nadie puede decir de inmediato qué CVE afecta a la versión en producción ni si PHP tiene las banderas de seguridad correctas. El módulo CVE Scan Vulnerabilidades de NexTool cruza la versión instalada con bases públicas de CVE y audita 17 puntos críticos del entorno en segundos, generando un Security Score visual.

El problema

Los equipos de service desk que operan GLPI rara vez tienen un proceso formal para rastrear las vulnerabilidades asociadas a la versión en producción. El NVD (NIST) y la GitHub Advisory Database publican CVEs continuamente, pero seguir eso a mano, versión por versión, es inviable para quien también abre y cierra tickets todo el día.

Peor: la versión del software es solo la mitad del riesgo. El entorno PHP y la configuración del servidor introducen fallos silenciosos - display_errors activo en producción filtrando rutas y stack traces, una cookie de sesión sin HttpOnly, la ausencia de Content-Security-Policy o de Strict-Transport-Security. Cada uno de esos detalles es una superficie de ataque que suele aparecer solo después del incidente, cuando ya es tarde.

Cómo funciona CVE Scan

Al ejecutar el escaneo, el módulo detecta la versión mediante la constante GLPI_VERSION y la cruza con una base dinámica de CVEs armada a partir de tres fuentes:

  • NVD / NIST - la fuente autoritativa para la puntuación CVSS y los metadatos oficiales de cada fallo.
  • GitHub Advisory Database - enlaces de advisory y el detalle de los fallos reportados por la comunidad.
  • Base estática de reserva - garantiza cobertura incluso cuando las APIs externas no están disponibles o se ha superado el límite de peticiones.

La combinación se hace por CVE ID: el NVD prevalece para el CVSS, GitHub aporta los enlaces de advisory. Una caché local se actualiza a diario por cron y bajo demanda en cada ejecución manual. En paralelo al cruce de CVEs, el módulo ejecuta 17 verificaciones de seguridad del entorno, agrupadas en cuatro categorías: configuración de PHP (8 checks), verificaciones específicas de GLPI (3), cabeceras HTTP (3) y otras (3), como PHP en fin de vida. El resultado se convierte en un Security Score de 0 a 100, con una banda de color - rojo para crítico, amarillo para moderado y verde para saludable - y cada ítem muestra su estado, la versión que corrige el fallo y la instrucción de corrección.

Lo que ve que GLPI nativo no muestra

Punto auditadoGLPI nativoMódulo CVE Scan
CVEs de la versión instaladaNo avisaCruza GLPI_VERSION con NVD y GitHub Advisory
Directorio install/ olvidadoAviso en la pantalla de loginConsolidado en el score, con instrucción de eliminación
display_errors en producciónNo verificaCheck dedicado
Cabeceras CSP / HSTS / X-Frame-OptionsNo verificaTres checks de cabecera HTTP
Permiso de config_db.phpNo avisaCheck dedicado
Evolución del riesgo en el tiempoInexistenteSecurity Score registrado en cada escaneo

Lo que aprendimos ejecutándolo en campo

En el mantenimiento, el check que más falla en un entorno de cliente es session.cookie_secure - y casi siempre es una falsa alarma mal interpretada. GLPI está detrás de un proxy inverso que termina el TLS, así que PHP ve la conexión como http y no marca la cookie como segura. La corrección no está en GLPI: es acertar la cabecera X-Forwarded-Proto en el proxy y forzar HSTS en el borde. El segundo campeón es el directorio install/ olvidado tras el setup. GLPI avisa de eso en la pantalla de login, pero en un parque de decenas de instancias ese aviso pasa desapercibido - el score consolidado es lo que obliga al equipo a mirar. Por eso tratamos CVE Scan como termómetro, no como veredicto: señala el punto, pero la decisión de corregir en el origen correcto sigue siendo de quien mantiene el entorno.

Verificando los mismos puntos a mano

Antes de instalar nada, puedes reproducir parte del diagnóstico directamente en el servidor. Estos son exactamente algunos de los puntos que el módulo audita en PHP y en el sistema de archivos:

# Banderas de PHP que CVE Scan audita (ejecutar en el servidor de GLPI)
php -i | grep -Ei 'display_errors|expose_php|allow_url_include|cookie_httponly|cookie_secure'

# Permiso del archivo de credenciales de la base: debe ser 400 o 440, nunca 644
stat -c '%a %n' /var/www/glpi/config/config_db.php

# Directorio de instalacion que deberia haberse eliminado tras el setup
test -f /var/www/glpi/install/install.php && echo 'ALERTA: install/ aun presente - eliminar'

# Version de PHP: avisar si esta en fin de vida (EOL)
php -r 'echo PHP_VERSION, PHP_EOL;'

El módulo automatiza esto, añade el cruce con las bases de CVE y guarda el historial - pero ejecutar los comandos de arriba ya muestra por qué la auditoría manual no escala más allá de dos o tres instancias.

Cómo activarlo

  1. Instala el plugin NexTool en tu GLPI.
  2. Accede a Configuración > NexTool > Módulos.
  3. Localiza la tarjeta CVE Scan Vulnerabilidades, pulsa Instalar y luego Activar.
  4. Abre el módulo y pulsa Ejecutar Escaneo en la pestaña de funcionalidades.
  5. Opcional: introduce un token de GitHub y una API Key del NVD en la pestaña de configuración para elevar los límites de petición de las bases externas.

Para quién es (y cuándo no)

Es para administradores de GLPI que necesitan una auditoría de seguridad rápida y recurrente, equipos que enfrentan auditorías internas o externas y necesitan evidencia del estado del entorno, y responsables que quieren seguir la postura de seguridad en el tiempo mediante el historial de escaneos. No es una bala de plata: no reemplaza un pentest, no corrige nada por sí solo y no debe ser excusa para posponer la actualización de GLPI. Si tu entorno ya tiene un escáner corporativo (Nessus, Qualys) apuntando al mismo host, CVE Scan es un complemento ligero y específico de GLPI, no un competidor.

Compatibilidad

  • GLPI: 10.x y 11.x
  • Plan: FREE
  • Plugin: NexTool 3.x o superior

Siguiente paso

CVE Scan Vulnerabilidades forma parte de NexTool, el plugin modular para GLPI. Conoce los demás módulos o habla con el equipo para una evaluación de seguridad completa de tu entorno.


Este contenido fue producido con ayuda de inteligencia artificial y revisado por el equipo de NexTool Solutions.

Preguntas Frecuentes

El módulo CVE Scan de NexTool detecta la versión mediante la constante GLPI_VERSION y la cruza con el NVD (NIST) y la GitHub Advisory Database, además de ejecutar 17 checks de seguridad del entorno y generar un Security Score de 0 a 100.

Ambos. Además de las CVEs de la versión instalada, audita 17 puntos del entorno: 8 banderas de configuración de PHP, 3 verificaciones de GLPI (como el directorio install/ y el permiso de config_db.php), 3 cabeceras HTTP (CSP, HSTS, X-Frame-Options) y otras 3, como PHP en fin de vida.

Sí, con cobertura reducida. Cuando el NVD y GitHub Advisory no están disponibles o se supera el límite de peticiones, el módulo usa una base estática de reserva para no dejar el escaneo sin resultado.

Tras cada actualización de GLPI y de forma periódica (mensual es una buena cadencia). La caché de CVEs se actualiza a diario por cron, así que el historial de escaneos muestra la evolución del Security Score en el tiempo.

No. Es un módulo FREE de NexTool, compatible con GLPI 10 y 11.

?Necesitas ayuda?