PT-2026-36852 · Npm · Vm2
0X5T
·
Publicado
2026-05-01
·
Atualizado
2026-06-04
·
CVE-2026-26956
CVSS v2.0
10
Crítica
| Vetor | AV:N/AC:L/Au:N/C:C/I:C/A:C |
Nome do Software Vulnerável e Versões Afetadas
vm2 versões anteriores a 3.10.5
Descrição
Uma falha crítica de escape de sandbox existe na biblioteca vm2, utilizada para executar código JavaScript não confiável em aplicações Node.js. Este problema permite que um invasor saia do ambiente restrito e obtenha a execução de código arbitrário (RCE) no processo host do Node.js. A falha é observada especificamente na versão 25 do Node.js (confirmada na v25.6.1 executando em Linux x64) quando o tratamento de exceções WebAssembly e o suporte a JSTag estão habilitados.
Invasores podem explorar isso passando código especialmente elaborado para a função
VM.run(). A exploração envolve a manipulação do tratamento de exceções WebAssembly usando uma construção try table combinada com um manipulador de captura JSTag. Esse mecanismo intercepta exceções JavaScript no nível C++ do motor V8, ignorando os controles de segurança e o gerenciamento de erros em nível de JavaScript do vm2. Ao disparar um TypeError através da coerção de Símbolo para string, um invasor pode vazar um objeto de erro do reino host para dentro do sandbox. A cadeia de construtores desse objeto pode então ser usada para acessar o objeto de processo host e executar comandos do sistema.Este problema representa um risco significativo para ambientes multi-tenant, sistemas de execução de plugins, plataformas de integração contínua, ferramentas de automação e aplicativos SaaS que executam scripts fornecidos pelo usuário.
Recomendações
Atualize para a versão 3.10.5 ou posterior.
Como medida paliativa temporária, restrinja ou evite passar entradas não confiáveis para a função
VM.run().Exploit
Correção
RCE
LPE
Protection Mechanism Failure
Code Injection
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Identificadores relacionados
Produtos afetados
Vm2