Falha no Brotli do Node.js permite execução remota de código
Prova de conceito pública mostrou que dados Brotli maliciosos executam código em imagem oficial; é preciso atualizar e reconstruir artefatos afetados
O Node.js liberou atualizações de segurança na quarta‑feira, 21 de outubro, com as versões 22.23.4, 24.22.1 e 26.12.1 corrigindo uma escrita fora dos limites no decodificador Brotli embutido (CVE‑2026‑111497).
A empresa Imperva publicou uma prova de conceito chamada ‘Node2Shell’ na sexta‑feira, 23 de outubro, que obteve execução remota de código contra uma imagem oficial Node.js 24.22.0 em Linux arm64 ao alimentar o decodificador embutido com dados Brotli especialmente criados.
Não existe uma solução alternativa (workaround) dentro do próprio Node.js em tempo de execução; portanto, operadores precisam atualizar e reconstruir quaisquer artefatos que incluam binários antigos do Node, como containers, builds de arquivo único, imagens de CI e pacotes serverless.
Firewalls de aplicação web e regras de fornecedores oferecem apenas mitigação parcial: podem bloquear alguns ataques por requisição de entrada, mas não impedem respostas Brotli buscadas em outros servidores nem todas as rotas de ataque.
A falha decorre de um erro de lógica no decodificador Brotli corrigido em um projeto upstream no início de 2026 e incorporado ao Node.js. As mesmas versões do decodificador são usadas por outros projetos, portanto Bun, pacotes Brotli do Python e qualquer software que empacote Brotli também devem ser atualizados ou reconstruídos.