Uma extensão falsa do Material Icon Theme para Visual Studio Code foi distribuída via marketplace e transformada em um backdoor capaz de executar código nativo em Windows e macOS.
Descoberta e panorama
Pesquisadores da Nextron Systems identificaram uma versão maliciosa (indicada na análise como a versão 5.29.1) que incluía arquivos backdoored e um script loader, tornando a extensão aparentemente legítima enquanto entregava implantes nativos em Rust.
Abordagem técnica / Vetor e exploração
Segundo o relatório analisado pelas fontes, o pacote malicioso replicava a árvore de diretórios da extensão legítima e colocava um arquivo loader chamado extension.js em dist/extension/desktop, ao lado de payloads nativos nomeados os.node (Windows) e darwin.node (macOS).
Quando ativada no VS Code, a função de ativação carrega o binário correto para a plataforma atual e delega execução ao código nativo. A lógica simplificada mostrada pela fonte é:
function activate() {
const bin = process.platform === "win32" ? "os.node" : "darwin.node";
const native = require(__dirname + "/desktop/" + bin);
native.run();
}
Os binários em Rust não fazem requisições a uma URL fixa. Em vez disso, as implantações leem dados armazenados em um endereço de carteira na blockchain Solana, decodificam esse conteúdo (base64) e, a partir dele, obtêm instruções para contatar um servidor de comando e controle (C2).
Fases e redundância no C2
Como etapa posterior, os binários baixam um grande blob em base64 que, segundo a fonte, é um arquivo JavaScript cifrado com AES-256-CBC. A cadeia de comando mencionada inclui um fallback: as mesmas instruções podem ser recuperadas a partir de um evento do Google Calendar com o URL do payload embutido de forma oculta (técnicas com caracteres Unicode invisíveis), dificultando o bloqueio das comunicações.
Impacto e alcance
A exploração transforma um addon aparentemente inofensivo em um loader para estágios adicionais totalmente controlados por remoto. Isso amplia o risco a estações de trabalho de desenvolvedores que confiam em extensões do marketplace; a fonte demonstra que, após a ativação, o comportamento da extensão passa a ser o de um implantador de código nativo.
As fontes não quantificam o número de instalações afetadas nem indicam vetores de distribuição além do marketplace, nem fazem atribuições a grupos específicos.
Mitigações e recomendações (informadas pela análise)
- Auditar extensões instaladas em estações de desenvolvimento e verificar assinaturas/autoridade das publicações no marketplace.
- Isolar estações de desenvolvimento com controles de execução de binários nativos e monitoramento de cargas nativas carregadas por extensões.
- Aplicar regras de egress para identificar e bloquear canais atípicos de C2 — embora a dependência em dados na blockchain e fallback por Google Calendar torne bloqueios por URL menos eficazes.
Limites das informações
As fontes descrevem a presença dos implantes, o mecanismo de loader e os vetores de recuperação do estágio seguinte, mas não fornecem métricas sobre alcance, número de vítimas ou atribuição definitiva a atores específicos. As análises técnicas citadas indicam uso de Rust para implantes nativos e de armazenamento em Solana como canal de controle.
Relevância operacional
Para equipes de segurança, este caso ressalta dois vetores críticos: a cadeia de fornecimento de extensões e o uso de control channels não convencionais (blockchain e artefatos legítimos reutilizados). As defesas devem combinar detecção de comportamento (execução de binários nativos a partir de extensões) com práticas de gestão de extensões e restrições de execução.