← volver
CVE-2025-31324criticalbajo ataqueransomwareCWE-434

Missing Authorization check in SAP NetWeaver (Visual Composer development server)

100Vexday Risk Score

Corrige ahora. Ella está bajo explotación confirmada por CISA y tiene exploit funcional público.

ssvc Actcvss 10epss 100%
de la publicación al arma1 días
Publicada en NVD24 abr
1ª PoC+1d
CISA KEV+5d
probabilidad de explotación
100%top 1% de las CVE
explotación observada
CISA + VulnCheck
33 exploit(s) público(s)
Acción exigida por CISAplazo federal: 2025-05-20

Apply mitigations per vendor instructions, follow applicable BOD 22-01 guidance for cloud services, or discontinue use of the product if mitigations are unavailable.

Resumen

Falha de upload de arquivo sem restrição (CWE-434) no componente Visual Composer do SAP NetWeaver, especificamente no endpoint /developmentserver/metadatauploader, que aceita uploads sem qualquer verificação de autenticação. Um atacante remoto sem credenciais pode depositar um webshell JSP executável e obter execução de código completa no servidor. É crítica de verdade: CVSS 10.0, está na KEV da CISA com exploração confirmada em massa desde pelo menos março de 2025, e afeta um componente historicamente habilitado em muitos ambientes SAP mesmo sem uso ativo.

Detalle técnico

O Visual Composer é um framework do NetWeaver usado por especialistas de processo de negócio para montar componentes de aplicação sem programar. Parte dessa funcionalidade é o Metadata Uploader, um servlet exposto no path /developmentserver/metadatauploader, que deveria exigir autenticação e autorização antes de aceitar arquivos. O problema é que essa verificação simplesmente não existe (ou é insuficiente) nessa versão do componente — qualquer requisição HTTP não autenticada consegue enviar um arquivo para o servidor.

O atacante controla o conteúdo e, em grande medida, o caminho de destino do arquivo enviado. Na exploração observada, o payload é um webshell JSP colocado em um diretório publicamente acessível do servidor de aplicação Java. Como o servidor de aplicação interpreta arquivos .jsp automaticamente, basta uma requisição GET subsequente para o arquivo enviado para disparar execução de código arbitrário no contexto do processo NetWeaver — sem exploit de memória, sem bypass de autenticação elaborado, só abuso de uma funcionalidade legítima de upload que não checa quem está chamando.

Em 13 de maio de 2025, pesquisa da Onapsis levou a SAP a publicar a Nota de Segurança 3604119, referente à CVE-2025-42999 (CVSS 9.1, deserialização insegura), que a fabricante descreve como a correção da causa raiz por trás da exploração de CVE-2025-31324. Ou seja: o problema de autorização ausente no upload é a porta de entrada, mas a cadeia completa de comprometimento observada em campo envolve também esse segundo componente, corrigido separadamente.

O Visual Composer não vem instalado por padrão em toda instalação NetWeaver, mas historicamente foi habilitado com frequência porque era peça central do desenvolvimento low-code de componentes de aplicação — daí a superfície de exposição real ser maior do que o nome do componente sugere.

Cómo se explota

O vetor é HTTP direto contra o endpoint exposto: nenhuma autenticação, nenhuma interação de usuário, nenhuma configuração fora do padrão além de ter o Visual Composer habilitado e acessível na rede (incluindo, em muitos casos, exposto à internet). A ReliaQuest documentou múltiplos clientes comprometidos via upload não autorizado de arquivos, com os atacantes depositando webshells JSP em diretórios públicos e então executando comandos via requisições GET simples ao navegador — sem exigir ferramentas sofisticadas na etapa inicial.

A Onapsis, analisando amostras capturadas em sua rede de sensores, reconstruiu ataques mostrando execução remota de comando completa: comandos RCE foram usados na fase de reconhecimento e os webshells vieram depois, via RCE, não como primeiro passo. Na fase pós-exploração, atores foram vistos usando a ferramenta de red team Brute Ratel, a técnica de evasão Heaven's Gate e injeção de código compilado com MSBuild dentro de dllhost.exe para persistência furtiva — sinal de operador com conhecimento avançado de ambientes SAP, não script kiddie.

Houve exploração massiva e sustentada: reconhecimento identificado entre 20/jan e 10/fev de 2025, exploração ativa relatada por múltiplas IR firms a partir de meados de março, divulgação pública em 22/abr pela ReliaQuest, patch de emergência da SAP em 24/abr, e a CISA adicionou a falha ao catálogo KEV em 29/abr com prazo de correção em 20/mai. A partir de 30/abr, a Onapsis observou uma segunda onda de atacantes oportunistas reutilizando webshells deixados pelo grupo original, que havia sumido — ou seja, mesmo sistemas nunca diretamente alvo do ataque inicial ficaram expostos a quem reaproveitou o acesso já estabelecido.

Versiones

Afectadas
SAP NetWeaver Visual Composer Framework 7.50 (segundo BleepingComputer, citando o vetor confirmado no endpoint /developmentserver/metadatauploader). O advisory oficial completo da SAP (Nota 3594142) não é público; consulte o SAP for Me para a lista granular de Support Packages afetados.
Corregidas en
Corrigida pela SAP Security Note 3594142, publicada como patch de emergência em 24/04/2025 (fora do calendário regular de Patch Day, que havia ocorrido em 08/04/2025). Correção complementar da causa raiz da cadeia de exploração via SAP Security Note 3604119 (CVE-2025-42999), publicada em 13/05/2025.

Cómo protegerse

A correção definitiva é aplicar a SAP Security Note 3594142 (patch de emergência liberado em 24/04/2025, fora do ciclo normal de Patch Day — quem aplicou apenas a atualização regular de abril de 2025, de 08/04, continua vulnerável). A SAP recomenda também aplicar a Nota 3604119 (13/05/2025), referente à CVE-2025-42999, descrita como correção da causa raiz da cadeia de exploração observada em campo.

Se o patch não puder ser aplicado imediatamente, restrinja o acesso ao endpoint /developmentserver/metadatauploader (rede ou proxy reverso) e, se o Visual Composer não estiver em uso ativo, desative o componente inteiramente — esse é o paliativo mais robusto. Atenção: em 12/05/2025 a própria SAP deprecou as mitigações 1 e 2 da Nota 3593336, marcando-as explicitamente como 'Do Not Use' — quem aplicou esses workarounds anteriores precisa revisitar a postura de segurança desses sistemas e priorizar a Opção 0 (o patch real), porque as mitigações alternativas não são mais consideradas suficientes pelo fornecedor.

Antes ou depois de patchear, é essencial varrer o caminho do servlet por arquivos suspeitos (webshells JSP) e revisar logs de acesso a esse endpoint — sistemas já comprometidos continuam vulneráveis a reexploração e reaproveitamento por atores secundários mesmo após a correção do bug original, se o webshell não for removido.

Cómo detectar

Procure por requisições HTTP (GET/POST) direcionadas ao path /developmentserver/metadatauploader nos logs do servidor de aplicação Java do NetWeaver, especialmente originadas de IPs externos ou não corporativos. Varra os diretórios do servlet path por arquivos .jsp não reconhecidos ou recém-criados fora do processo normal de deploy — esse é o indicador mais direto de comprometimento, já que os webshells foram depositados em diretórios publicamente acessíveis. Em ambientes já comprometidos, procure também por indícios pós-exploração citados pela Onapsis: presença do Brute Ratel, uso da técnica Heaven's Gate, e código injetado via MSBuild dentro do processo dllhost.exe — sinais de que a exploração avançou além do upload inicial para persistência mais furtiva.

Investigado y redactado con IA a partir del advisory del fabricante y análisis públicos, con las fuentes citadas. Verifica siempre la versión corregida en el advisory oficial antes de actuar.
SAP NetWeaver Visual Composer Metadata Uploader is not protected with a proper authorization, allowing unauthenticated agent to upload potentially malicious executable binaries that could severely harm the host system. This could significantly affect the confidentiality, integrity, and availability of the targeted system.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
PoCs públicas encontradas33
githubgithub.com/redrays-io/CVE-2025-3132424githubgithub.com/antichainalysis/sap-netweaver-0day-CVE-2025-3132422githubgithub.com/Onapsis/Onapsis_CVE-2025-31324_Scanner_Tools12githubgithub.com/Onapsis/Onapsis-Mandiant-CVE-2025-31324-Vuln-Compromise-Assessment9githubgithub.com/NULLTRACE0X/CVE-2025-313248githubgithub.com/ODST-Forge/CVE-2025-31324_PoC6githubgithub.com/rf-peixoto/sap_netweaver_cve-2025-31324-5githubgithub.com/rxerium/CVE-2025-313244githubgithub.com/aristois913/CVE-2025-313243githubgithub.com/nullcult/CVE-2025-31324-File-Upload2githubgithub.com/abrewer251/CVE-2025-31324_PoC_SAP1githubgithub.com/moften/CVE-2025-31324-NUCLEI1githubgithub.com/nairuzabulhul/nuclei-template-cve-2025-31324-check1githubgithub.com/respondiq/jsp-webshell-scanner1githubgithub.com/JonathanStross/CVE-2025-313241githubgithub.com/sug4r-wr41th/CVE-2025-313240githubgithub.com/moften/CVE-2025-313240githubgithub.com/Alizngnc/SAP-CVE-2025-313240githubgithub.com/BlueOWL-overlord/Burp_CVE-2025-313240githubgithub.com/harshitvarma05/CVE-2025-31324-Exploits0vulncheckvulncheck.com/xdb/0c5b7577024ano verificadovulncheckvulncheck.com/xdb/1dbd462ef19fno verificadovulncheckvulncheck.com/xdb/9ed2a1a3a049no verificadovulncheckvulncheck.com/xdb/8e5d68f04c35no verificadovulncheckvulncheck.com/xdb/7f7dc0b252ebno verificadovulncheckvulncheck.com/xdb/3a18354253c2no verificadovulncheckvulncheck.com/xdb/d9d077bc2000no verificadovulncheckvulncheck.com/xdb/e19c182f0ca9no verificadovulncheckvulncheck.com/xdb/21140617b6aano verificadovulncheckvulncheck.com/xdb/aa7f5440b92eno verificadovulncheckvulncheck.com/xdb/6b35038ccd06no verificadovulncheckvulncheck.com/xdb/18c7f30cc438no verificadovulncheckvulncheck.com/xdb/29a2e7bc6c66no verificado
⚠ Recursos públicos, para evaluar la exposición de sistemas que controlas o estás autorizado a probar. Prueba solo con autorización.