Falha crítica no sandbox vm2 permite execução remota de código em servidores hosts
7 de Maio de 2026

Uma vulnerabilidade crítica na popular biblioteca de sandboxing vm2, usada no ecossistema Node.js, permite escapar do ambiente isolado e executar código arbitrário no sistema hospedeiro.

O problema de segurança foi identificado como CVE-2026-26956 e já foi confirmado na versão 3.10.4 do vm2, embora versões anteriores também possam estar vulneráveis.

Um código de exploração de prova de conceito, o PoC, já foi publicado.

Em comunicado de segurança, o mantenedor informou que a falha afeta apenas ambientes com Node.js 25, com confirmação no Node.js 25.6.1, desde que o suporte a tratamento de exceções do WebAssembly e o JSTag estejam ativados.

O vm2 é uma biblioteca open source para Node.js usada para executar código JavaScript não confiável dentro de um ambiente restrito e isolado.

Ela é comum em plataformas de programação online, ferramentas de automação e aplicativos SaaS que executam scripts enviados por usuários.

A biblioteca tenta separar o código executado na sandbox do sistema hospedeiro e bloquear o acesso a APIs sensíveis do Node.js, como process e o sistema de arquivos.

O vm2 é amplamente utilizado e supera 1,3 milhão de downloads semanais no npm, o gerenciador de pacotes padrão em linha de comando do Node.js.

A CVE-2026-26956 decorre do tratamento incorreto de exceções que atravessam a fronteira entre o ambiente isolado e o sistema hospedeiro.

Segundo o aviso, o vm2 normalmente depende de proteções em nível de JavaScript para impedir falhas vindas do host e usa Proxies de ponte para encapsular objetos entre contextos, tudo operando inteiramente em JavaScript.

No entanto, o tratamento de exceções do WebAssembly consegue interceptar erros de JavaScript em um nível mais baixo dentro do mecanismo V8 do Google, contornando as defesas de segurança baseadas em JavaScript do vm2.

Ao acionar um TypeError especialmente elaborado por meio de uma conversão de Symbol para string, um atacante pode fazer com que um objeto de erro do lado do host vaze de volta para a sandbox sem passar pela sanitização do vm2.

Como esse objeto vazado se origina no ambiente hospedeiro, o atacante pode abusar da cadeia de construtores para recuperar o acesso a componentes internos do Node.js, como o objeto process, o que pode levar à execução arbitrária de comandos no sistema hospedeiro.

O comunicado de segurança do mantenedor também inclui um PoC de exploração que demonstra execução remota de código na máquina hospedeira.

Usuários do vm2 são orientados a atualizar o pacote para a versão 3.10.5 ou posterior, atualmente a 3.11.2, o mais rápido possível para reduzir o risco de exploração da CVE-2026-26956 .

No início do ano, o vm2 já havia sido afetado por outra falha crítica de escape da sandbox, que também podia resultar em execução arbitrária de código no sistema hospedeiro subjacente, identificada como CVE-2026-22709 .

Entre as falhas anteriores que afetaram a mesma biblioteca estão CVE-2023-30547 , CVE-2023-29017 e CVE-2022-36067 , o que evidencia como é difícil isolar com segurança código não confiável em ambientes de sandbox para JavaScript.

Publicidade

Anuncie no CaveiraTech e coloque sua marca na frente de milhares de profissionais de cybersecurity

Nossa audiência é formada por analistas, pentesters, decisores e entusiastas que consomem nossas notícias todo dia pelo Site, Newsletter e Instagram. Fale com quem realmente importa para o seu negócio. Anuncie aqui. Saiba mais...