Verificação de vulnerabilidades CVE no GLPI

O módulo CVE Scan do NexTool cruza a versão do GLPI instalada com o NVD e o GitHub Advisory e audita 17 pontos do ambiente (PHP, headers, permissões), gerando um Security Score de 0 a 100. Veja como funciona, como ativar e os erros de configuração que mais reprovam em campo.

A sua instância do GLPI está exposta a vulnerabilidades já catalogadas e você não sabe? Na maioria dos parques que assumimos para sustentação, ninguém consegue responder de imediato qual CVE afeta a versão em produção nem se o PHP está com as flags de segurança corretas. O módulo CVE Scan Vulnerabilidades do NexTool cruza a versão instalada com bases públicas de CVE e audita 17 pontos críticos do ambiente em segundos, gerando um Security Score visual.

O problema

Equipes de service desk que operam o GLPI raramente têm um processo formal para rastrear vulnerabilidades associadas à versão em produção. O NVD (NIST) e o GitHub Advisory Database publicam CVEs continuamente, mas acompanhar isso manualmente, versão a versão, é inviável para quem também abre e fecha chamado o dia inteiro.

Pior: a versão do software é só metade do risco. O ambiente PHP e a configuração do servidor introduzem falhas silenciosas - display_errors ligado em produção vazando caminho e stack trace, cookie de sessão sem HttpOnly, ausência de Content-Security-Policy ou de Strict-Transport-Security. Cada um desses detalhes é uma superfície de ataque que só costuma aparecer depois do incidente, quando já é tarde.

Como o CVE Scan funciona

Ao rodar o scan, o módulo detecta a versão pela constante GLPI_VERSION e cruza com uma base dinâmica de CVEs montada a partir de três fontes:

  • NVD / NIST - fonte autoritativa para a pontuação CVSS e os metadados oficiais de cada falha.
  • GitHub Advisory Database - links de advisory e o detalhamento das falhas reportadas pela comunidade.
  • Base estática de fallback - garante cobertura mesmo quando as APIs externas estão indisponíveis ou com o limite de requisição estourado.

O merge é feito por CVE ID: o NVD prevalece para o CVSS, o GitHub entra com os links de advisory. Um cache local é atualizado diariamente por cron e sob demanda a cada execução manual. Em paralelo ao cruzamento de CVEs, o módulo roda 17 verificações de segurança do ambiente, agrupadas em quatro categorias: configuração do PHP (8 checks), verificações específicas do GLPI (3), headers HTTP (3) e outras (3), como PHP em fim de vida. O resultado vira um Security Score de 0 a 100, com faixa de cor - vermelho para crítico, amarelo para moderado e verde para saudável - e cada item traz o status, a versão que corrige a falha e a instrução de correção.

O que ele vê que o GLPI nativo não mostra

Ponto auditadoGLPI nativoMódulo CVE Scan
CVEs da versão instaladaNão avisaCruza a GLPI_VERSION com NVD e GitHub Advisory
Diretório install/ esquecidoAviso na tela de loginConsolidado no score, com instrução de remoção
display_errors em produçãoNão verificaCheck dedicado
Headers CSP / HSTS / X-Frame-OptionsNão verificaTrês checks de header HTTP
Permissão do config_db.phpNão avisaCheck dedicado
Evolução do risco ao longo do tempoInexistenteSecurity Score registrado a cada scan

O que aprendemos rodando isso em campo

Na sustentação, o check que mais reprova em ambiente de cliente é o session.cookie_secure - e quase sempre é um falso-alarme mal interpretado. O GLPI está atrás de um proxy reverso que termina o TLS, então o PHP enxerga a conexão como http e não marca o cookie como seguro. A correção não é no GLPI: é acertar o cabeçalho X-Forwarded-Proto no proxy e forçar HSTS na borda. O segundo campeão é o diretório install/ esquecido depois do setup. O GLPI até avisa disso na tela de login, mas em parque com dezenas de instâncias esse aviso passa batido - o score consolidado é o que obriga o time a olhar. Por isso tratamos o CVE Scan como termômetro, não como veredito: ele aponta o ponto, mas a decisão de corrigir na origem certa continua sendo de quem sustenta.

Conferindo os mesmos pontos na mão

Antes de instalar qualquer coisa, você consegue reproduzir parte do diagnóstico direto no servidor. Estes são exatamente alguns dos pontos que o módulo audita no PHP e no sistema de arquivos:

# Flags de PHP que o CVE Scan audita (rodar no servidor do GLPI)
php -i | grep -Ei 'display_errors|expose_php|allow_url_include|cookie_httponly|cookie_secure'

# Permissao do arquivo de credenciais do banco: deve ser 400 ou 440, nunca 644
stat -c '%a %n' /var/www/glpi/config/config_db.php

# Diretorio de instalacao que deveria ter sido removido apos o setup
test -f /var/www/glpi/install/install.php && echo 'ALERTA: install/ ainda presente - remover'

# Versao do PHP: alertar se estiver em fim de vida (EOL)
php -r 'echo PHP_VERSION, PHP_EOL;'

O módulo automatiza isso, adiciona o cruzamento com as bases de CVE e guarda o histórico - mas rodar os comandos acima já mostra por que a auditoria manual não escala em mais de duas ou três instâncias.

Como ativar

  1. Instale o plugin NexTool no seu GLPI.
  2. Acesse Configuração > NexTool > Módulos.
  3. Localize o card CVE Scan Vulnerabilidades, clique em Instalar e depois em Ativar.
  4. Abra o módulo e clique em Executar Scan na aba de funcionalidades.
  5. Opcional: informe um token do GitHub e uma API Key do NVD na aba de configurações para elevar os limites de requisição das bases externas.

Para quem é indicado (e quando não)

É indicado para administradores de GLPI que precisam de uma auditoria de segurança rápida e recorrente, times que passam por auditoria interna ou externa e precisam de evidência do estado do ambiente, e gestores que querem acompanhar a evolução do posicionamento de segurança pelo histórico de scans. Não é uma bala de prata: ele não substitui um pentest, não corrige nada sozinho e não deve virar desculpa para adiar a atualização do GLPI. Se o seu ambiente já tem um scanner corporativo (Nessus, Qualys) apontando para o mesmo host, o CVE Scan é complemento leve e específico do GLPI, não concorrente.

Compatibilidade

  • GLPI: 10.x e 11.x
  • Plano: FREE
  • Plugin: NexTool 3.x ou superior

Próximo passo

O CVE Scan Vulnerabilidades faz parte do NexTool, plugin modular para GLPI. Conheça os demais módulos ou fale com a equipe para uma avaliação de segurança completa do seu ambiente.


Este conteúdo foi produzido com auxílio de inteligência artificial e revisado pela equipe NexTool Solutions.

Perguntas Frequentes

O módulo CVE Scan do NexTool detecta a versão via constante GLPI_VERSION e cruza com o NVD (NIST) e o GitHub Advisory Database, além de rodar 17 checks de segurança do ambiente e gerar um Security Score de 0 a 100.

Os dois. Além das CVEs da versão instalada, ele audita 17 pontos do ambiente: 8 flags de configuração do PHP, 3 verificações do GLPI (como o diretório install/ e a permissão do config_db.php), 3 headers HTTP (CSP, HSTS, X-Frame-Options) e outras 3, como PHP em fim de vida.

Sim, com cobertura reduzida. Quando o NVD e o GitHub Advisory estão indisponíveis ou com o limite de requisição estourado, o módulo usa uma base estática de fallback para não deixar o scan sem resultado.

Depois de cada atualização do GLPI e de forma periódica (mensal é um bom ritmo). O cache de CVEs é atualizado diariamente por cron, então o histórico de scans mostra a evolução do Security Score ao longo do tempo.

Não. É um módulo FREE do NexTool, compatível com GLPI 10 e 11.

Precisa de ajuda?