Categories: NOTÍCIAS EM GERAL

Os sandboxes do Node.js estão abertos à “poluição do protótipo”

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.

Quebra do sandbox

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.

Bug recorrente

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/

Ninja

Na cena de cybersecurity a mais de 25 anos, Ninja trabalha como evangelizador de segurança da informação no Brasil. Preocupado com a conscientização de segurança cibernética, a ideia inicial é conseguir expor um pouco para o publico Brasileiro do que acontece no mundo.

Share
Published by
Ninja

Recent Posts

Vulnerabilidade crítica no servidor MCP do GitHub permite acesso não autorizado a repositórios privados

Falha permite que invasores manipulem o agente de um usuário por meio de um problema…

2 semanas ago

Suposto 0-Day da Fortinet está à venda em cantos obscuros da web

Um exploit de dia zero, dirigido aos firewalls FortiGate da Fortinet, foi descoberto à venda…

2 meses ago

Pesquisadores descobrem a família de malware Shelby que abusa do GitHub para comando e controle

A família SHELBY mostra um exemplo preocupante de malware moderno com design modular, sofisticado e…

2 meses ago

Hackers abusam de plugins MU do WordPress para esconder código malicioso

Hackers estão explorando o diretório mu-plugins do WordPress para injetar códigos maliciosos que não aparecem…

2 meses ago

Google lança duas novas ferramentas de IA para detectar golpes conversacionais em dispositivos Android

O Google implementou uma nova funcionalidade de "Detecção de Golpes" com inteligência artificial no aplicativo…

3 meses ago

APT28 aprimora técnicas de ofuscação com trojans HTA avançados

O grupo APT28, ligado à Rússia, está utilizando técnicas avançadas de ofuscação em seus ataques…

3 meses ago