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.

Recent Posts

Agentes de código escrevem os próprios jogadores e vencem

Em vez de jogar turno a turno, o agente escreve um programa que joga sozinho.…

3 dias ago

Google troca raciocínio por difusão para acelerar busca com IA

Em vez de gastar centenas de tokens de raciocínio a cada consulta, o Google treina…

3 dias ago

Cisco Secure Email Gateway: falha 9.8 sob exploração ativa

Um e-mail comum, processado por um appliance desatualizado, basta para executar comandos como root. A…

3 dias ago

Infostealer AMOS mira credenciais de nuvem no macOS

Análise da Unit 42 mostra o AMOS instalado por páginas que prometem um kit para…

3 dias ago

ClickFix no navegador usa Google Sheets como C2 para roubar cripto

A Cisco Talos rastreou por meses uma operação que convence a própria vítima a injetar…

1 semana ago

Rootkit PoisonedRefresh injeta web shell na memória do BIG-IP

A Sophos X-Ops dissecou um implante Linux que altera como o Apache enxerga arquivos PHP…

1 semana ago