A página GitHub do vm2 descreve a biblioteca como “uma sandbox que pode executar código não confiável com módulos integrados do Node na lista de permissões. Com segurança! ” No entanto, o CISPA Helmholtz Center for Information Security, um grupo de pesquisa de cibersegurança da Alemanha, descobriu que a biblioteca está aberta a protótipos de ataques de poluição. Poluição de protótipo é um tipo de vulnerabilidade em JavaScript e outras linguagens baseadas em objeto que permite que invasores executem código arbitrário injetando propriedades dinamicamente em objetos confidenciais.
Uma prova de conceito (PoC) no Snyk mostra como algumas linhas de código podem explorar a vulnerabilidade em vm2 para realizar uma poluição de protótipo e um ataque RCE no host. Embora o bug tenha sido registrado como ‘poluição de protótipo’, Cristian-Alexandru Staicu, um dos pesquisadores que ajudou a descobrir e relatar o bug, disse ao The Daily Swig que um título melhor seria “fuga da caixa de areia”.
“No PoC publicado pela Snyk, mostramos um protótipo de carga útil de poluição e uma execução arbitrária de código. Ambos são o resultado da quebra da caixa de areia ”, disse Staicu. “O vm2 deve impedir o acesso ao objeto global / operações privilegiadas (por exemplo, exigir) e mostramos como um invasor pode contornar esse controle de segurança.”
Embora a vulnerabilidade não forneça acesso root ao dispositivo host, ela dá acesso completo à API Node.js, algo que o vm2 está tentando restringir, explicou Staicu.
Em março, eles relataram um bug de quebra de sandbox em isolated-vm, outro sandbox, que permitiu que os invasores obtivessem uma referência para o objeto “função” do contexto Node.js.
Eles encontraram bugs semelhantes em pelo menos três outras bibliotecas sandbox, disse Staicu, embora ele não pudesse compartilhar detalhes, uma vez que o processo de divulgação com os desenvolvedores relevantes continua em andamento e os patches ainda não foram lançados.
“Nossos resultados até agora mostram que o código JavaScript de sandbox com proxies ES6 é difícil”, disse ele. “Encontramos falhas na maioria dos sistemas que analisamos, portanto, deve-se ter muito cuidado ao executar código malicioso usando essas bibliotecas.”
Fonte: https://portswigger.net/
Falha permite que invasores manipulem o agente de um usuário por meio de um problema…
Um exploit de dia zero, dirigido aos firewalls FortiGate da Fortinet, foi descoberto à venda…
A família SHELBY mostra um exemplo preocupante de malware moderno com design modular, sofisticado e…
Hackers estão explorando o diretório mu-plugins do WordPress para injetar códigos maliciosos que não aparecem…
O Google implementou uma nova funcionalidade de "Detecção de Golpes" com inteligência artificial no aplicativo…
O grupo APT28, ligado à Rússia, está utilizando técnicas avançadas de ofuscação em seus ataques…