Pesquisadores descobrem falha no VS Code
28 de Agosto de 2025

Pesquisadores em cybersecurity descobriram uma brecha no Visual Studio Code Marketplace que permite que agentes mal-intencionados reutilizem nomes de extensões previamente removidas.

A empresa especializada em software supply chain security, ReversingLabs, informou que a descoberta foi feita após identificar uma extensão maliciosa chamada "ahbanC.shiba", que funcionava de maneira semelhante a outras duas extensões – ahban.shiba e ahban.cychelloworld – que haviam sido sinalizadas ainda em março deste ano.

As três bibliotecas foram criadas para agir como downloaders que recuperam um payload em PowerShell de um servidor externo, o qual criptografa arquivos em uma pasta chamada "testShiba" na área de trabalho do Windows da vítima e exige um token Shiba Inu mediante o depósito dos ativos em uma carteira não especificada.

Esses indícios apontam para tentativas contínuas de desenvolvimento pelo agente de ameaça.

A empresa decidiu aprofundar a investigação devido ao fato de que o nome da nova extensão ("ahbanC.shiba") era praticamente igual ao de uma das outras duas já identificadas ("ahban.shiba").

Vale destacar que cada extensão precisa ter um ID único, que é uma combinação do nome do publisher e do nome da extensão (ou seja, <publisher>.<name>).

No caso analisado pela ReversingLabs, ambas as extensões diferem apenas pelo nome do publisher, enquanto o nome real da extensão permanece o mesmo.

No entanto, segundo a documentação do Visual Studio Code, o campo <name> especificado no manifest da extensão "deve ser todo em lowercase e sem espaços" e "precisa ser único no Marketplace".

"Então, como as extensões ahban.shiba e ahbanC.shiba acabaram tendo o mesmo nome, apesar das regras oficiais de publicação?," questionou a pesquisadora de segurança Lucija Valentić, que descobriu que isso é possível após a extensão ser removida do repositório.

Mas esse comportamento não se aplica a cenários em que o autor simplesmente despublica a extensão.

É importante mencionar que a possibilidade de reutilizar nomes de bibliotecas deletadas também ocorre no repositório Python Package Index (PyPI), conforme demonstrado pela ReversingLabs no início de 2023.

Na ocasião, foi constatado que deletar um pacote torna o nome do projeto "disponível para qualquer outro usuário do PyPI" desde que os nomes dos arquivos de distribuição (combinação do nome do projeto, número da versão e tipo de distribuição) sejam diferentes daqueles usados na distribuição removida.

Entretanto, o PyPI estabeleceu uma exceção em que nomes de pacotes podem ser tornados indisponíveis caso tenham sido usados por pacotes maliciosos.

Parece que o Visual Studio Code não possui uma restrição semelhante para impedir a reutilização de nomes de extensões maliciosas.

Esse desenvolvimento, observado em conversas vazadas do grupo Black Basta, mostra como agentes de ameaça estão tentando envenenar registros open-source com bibliotecas de ransomware que exigem resgates de vítimas desprevenidas que podem acabar instalando esses pacotes.

Isso reforça a importância de organizações e desenvolvedores adotarem práticas seguras de desenvolvimento e monitorarem proativamente esses ecossistemas para detectar ameaças na software supply chain.

"A descoberta dessa brecha expõe uma nova ameaça: o nome de qualquer extensão removida pode ser reutilizado, e por qualquer pessoa," afirmou Valentić.

Isso significa que, se alguma extensão legítima e muito popular for removida, seu nome estará disponível para ser utilizado.

As descobertas seguem a identificação de oito pacotes npm maliciosos que entregam um information stealer voltado para o browser Google Chrome em sistemas Windows, capaz de transmitir senhas, dados de cartões de crédito, carteiras de criptomoedas e cookies de usuários para um URL railway[.]app ou, como mecanismo alternativo, para um webhook do Discord.

Os pacotes, publicados por usuários com os nomes ruer e npjun, são os seguintes:

- toolkdvv (versões 1.1.0, 1.0.0)
- react-sxt (versão 2.4.1)
- react-typex (versão 0.1.0)
- react-typexs (versão 0.1.0)
- react-sdk-solana (versão 2.4.1)
- react-native-control (versão 2.4.1)
- revshare-sdk-api (versão 2.4.1)
- revshare-sdk-apii (versão 2.4.1)

O que chama atenção nesses pacotes é o uso de 70 camadas de código obfuscado para desempacotar um payload em Python projetado para facilitar o roubo e exfiltração de dados.

"Repositórios de software open-source se tornaram um dos principais pontos de entrada para atacantes em ataques à supply chain, com ondas crescentes de typosquatting e mascaramento, fingindo serem legítimos," declarou o pesquisador de segurança da JFrog, Guy Korolevski.

O impacto de campanhas sofisticadas multilayer, projetadas para burlar as defesas tradicionais e roubar dados sensíveis, destaca a importância de ter visibilidade em toda a supply chain de software, com varreduras automatizadas rigorosas e uma fonte única de verdade para todos os componentes de software.

Publicidade

Proteja sua empresa contra hackers através de um Pentest

Tenha acesso aos melhores hackers éticos do mercado através de um serviço personalizado, especializado e adaptado para o seu negócio. Qualidade, confiança e especialidade em segurança ofensiva de quem já protegeu centenas de empresas. Saiba mais...