CVE-2025-32756
Priorize a correção. Ela está sob exploração confirmada pelo CISA e tem prova de conceito pública.
Apply mitigations per vendor instructions, follow applicable BOD 22-01 guidance for cloud services, or discontinue use of the product if mitigations are unavailable.
Resumo
Estouro de pilha (stack-based buffer overflow) explorável remotamente e sem autenticação em FortiVoice, FortiMail, FortiNDR, FortiRecorder e FortiCamera, acionado via cookie 'hash' malformado em requisições HTTP para a interface administrativa/portal. A Fortinet confirmou exploração ativa em ambientes FortiVoice antes da divulgação, com um conjunto de ferramentas pós-exploração documentado (backdoor, captura de credenciais SSH, limpeza de logs) — isso não é uma falha teórica, é uma campanha real já mapeada.
Detalhamento técnico
A vulnerabilidade [CWE-121] está no processamento de um cookie de hash em requisições HTTP recebidas pela interface administrativa e de portal (componente fcgi/httpd dos produtos afetados). O valor do cookie é copiado para um buffer de tamanho fixo na pilha sem validação adequada de tamanho, permitindo que um atacante sobrescreva a região de controle da pilha com dados arbitrários enviados na requisição.
O campo que o atacante controla é o próprio conteúdo do cookie 'hash' — não há necessidade de sessão válida, token CSRF ou qualquer autenticação prévia, já que o parsing ocorre em camada exposta antes de qualquer checagem de credenciais. Os logs de crash citados pela Fortinet (mod_fcgid recebendo signal 11 em processos como admin.fe) indicam o ponto onde o overflow corrompe o processo fcgi e trava ou é sequestrado.
A CISA classifica a falha como CWE-124 (bounds overwrite) em vez do CWE-121 usado pela Fortinet — divergência de categorização entre as duas fontes, mas ambas descrevem o mesmo mecanismo de corrupção de memória na pilha via requisição HTTP manipulada.
O vetor de rede exposto é a interface administrativa/portal HTTP(S) do produto, que em muitas instalações fica acessível diretamente na internet — combinação que explica o CVSS 9.6 com AV:N/AC:L/PR:N/UI:N.
Como é explorada
Pré-requisito real e único: acesso de rede à interface administrativa ou de portal HTTP/HTTPS do dispositivo. Não exige conta, não exige interação do usuário, não exige configuração não padrão além de a própria interface estar exposta — o que é bastante comum em VoIP gateways e appliances de e-mail/segurança expostos para gestão remota.
A Fortinet documentou exploração no mundo real contra FortiVoice antes da divulgação pública. As ações observadas do ator de ameaça incluíram varredura da rede interna a partir do dispositivo comprometido, apagamento de crashlogs do sistema, ativação de debug do fcgi para capturar credenciais de login (do próprio sistema e de tentativas SSH) e instalação de biblioteca PAM maliciosa (libfmlogin.so) para logar credenciais SSH em texto claro. Havia também scripts de scan de rede (fmtest) e persistência via crontab que periodicamente extrai e limpa arquivos de debug contendo credenciais.
A CISA confirma exploração ativa ao incluir a CVE no catálogo KEV com prazo de mitigação de 04/06/2025 (20 dias após publicação), reforçando que não se trata de risco hipotético — há campanha ativa usando esse vetor para comprometimento inicial seguido de coleta de credenciais e movimento lateral.
Versões
Como se proteger
Atualizar para as versões corrigidas por linha de produto: FortiCamera 2.1 para 2.1.4+ (2.0 e 1.1 não têm patch — migrar para release corrigida); FortiMail 7.6 para 7.6.3+, 7.4 para 7.4.5+, 7.2 para 7.2.8+, 7.0 para 7.0.9+; FortiNDR 7.6 para 7.6.1+, 7.4 para 7.4.8+, 7.2 para 7.2.5+, 7.0 para 7.0.7+; FortiRecorder 7.2 para 7.2.4+, 7.0 para 7.0.6+, 6.4 para 6.4.6+; FortiVoice 7.2 para 7.2.1+, 7.0 para 7.0.7+, 6.4 para 6.4.11+.
Se a atualização imediata não for possível, o paliativo publicado pela Fortinet é desabilitar completamente a interface administrativa e de portal HTTP/HTTPS — não há flag de mitigação parcial documentada; o workaround é remover a superfície de ataque, o que custa acesso remoto de gestão até a atualização.
Mesmo com patch aplicado, dado o histórico de exploração ativa antes da divulgação, vale checar indicadores de comprometimento retroativo: presença dos arquivos /bin/wpad_ac_helper, /bin/busybox (hashes MD5 específicos publicados pela Fortinet), /lib/libfmlogin.so, /bin/fmtest, e verificar se o fcgi debugging foi habilitado (comando 'diag debug application fcgi' mostrando 'general to-file ENABLED' é indício de comprometimento, já que não é padrão de fábrica). Aplicar apenas o patch sem investigar esses artefatos não remove um comprometimento pré-existente.
Como detectar
Verificar logs do httpd/fcgid por travamentos anômalos: entradas 'mod_fcgid: error reading data, FastCGI server closed connection' e 'mod_fcgid: process ... exit(communication error), get unexpected signal 11' em processos como admin.fe indicam tentativa de exploração que corrompeu o processo. Checar 'diag debug application fcgi' — saída com 'general to-file ENABLED' é indicador forte de comprometimento, pois debugging fcgi não vem habilitado por padrão.
Buscar no sistema de arquivos os artefatos específicos documentados pela Fortinet (com hashes MD5): /bin/wpad_ac_helper, /bin/busybox (hashes adicionais), /lib/libfmlogin.so, /bin/fmtest, /var/spool/.sync, e linhas adicionadas em /data/etc/crontab, /var/spool/cron/crontabs/root, /etc/pam.d/sshd e /etc/httpd.conf (carregamento de mod_socks5.so). Tráfego de rede originado do dispositivo para os IPs publicados pela Fortinet (198.105.127.124, 43.228.217.173, 43.228.217.82, 156.236.76.90, 218.187.69.244, 218.187.69.59) é indicador de comunicação com infraestrutura do ator de ameaça observado.