GlassWASM: novo malware em WebAssembly ataca extensões do Open VSX com C2 dinâmico via Solana
Aprofundamento CEVIU
Aprofundamento
O GlassWASM não é um novo ator, é uma mutação tática do GlassWorm, que voltou à ativa menos de três semanas após sua suposta desativação. Enquanto a operação anterior dependia de extensões maliciosas com scripts JavaScript ofuscados e C2 centralizado (derrubado em 30/05), o GlassWASM elimina o ponto fraco: agora o estágio inicial é um módulo WebAssembly compilado com TinyGo, sem strings legíveis, sem URLs, sem chamadas de rede nativas, só lógica criptografada e uma ponte para JavaScript via syscall/js. Isso escapa de scanners de código-fonte, YARA baseado em texto e até de muitos EDRs que não inspecionam memória pós-descriptografia.
A inovação real está na cadeia de evasão: ChaCha20 embutido + execução em runtime + resolução de C2 via SPL Memo na Solana mainnet. O operador não precisa manter servidores ativos, basta assinar uma transação com novo domínio no campo Memo. O payload nunca toca disco, nunca carrega bibliotecas externas e se esconde atrás da legitimidade do ambiente Node.js dentro do VS Code. É um ataque de supply chain feito para passar por 'extensão inofensiva' até o momento exato em que o usuário abre o editor, e então, silenciosamente, liga-se à blockchain para receber ordens.
O que mudou
A GlassWorm foi declarada desativada em 30/05, mas o GlassWASM, publicado em 09/06 e confirmado em 15/06, mostra que a infraestrutura de comando não foi destruída, apenas reescrita. Antes, o C2 usava domínios controlados (como dodod.lat já aparecia em março) e APIs HTTP diretas. Agora, o único ponto fixo é uma carteira Solana (6ExrZayPZzMMSnszc42cH81DpuKT8FhCX9H6Sesn6rpz), que não pode ser bloqueada sem afetar tráfego legítimo. Também mudou a entrega: antes, o malware rodava como script JS com obfuscação pesada; agora, ele é um binário WASM com 478 funções, símbolos removidos e lógica totalmente isolada, exigindo análise dinâmica com wasm2c e sandboxing para extração de IOCs.
Por que isso importa
Desenvolvedores não são alvos secundários: são o vetor principal. O GlassWASM explora a confiança cega em extensões com nomes idênticos às originais do VS Code Marketplace, e isso funciona porque ferramentas como VSCodium e Cursor usam o Open VSX como repositório padrão, sem verificação cruzada de assinatura ou publisher ID. Um único clique em 'instalar' aciona uma cadeia que transforma o editor em um agente de execução remota, com acesso total ao sistema via child_process. Para empresas, isso significa que políticas de segurança que focam só em npm ou GitHub estão cegas para ameaças que entram pelo ecossistema de IDEs, e que podem roubar tokens de CI/CD, chaves SSH, credenciais de nuvem e carteiras de cripto em segundos.
Linha do tempo
Início da campanha GlassWorm, conforme relatos posteriores de atividade contínua
GlassWorm v2 ativo com 72 extensões maliciosas no Open VSX e rotação de carteiras Solana
Nova onda de 73 extensões 'sleeper' do GlassWorm v2 no Open VSX
Desativação oficial da botnet GlassWorm por CrowdStrike, Google e Shadowserver
Publicação da extensão trojanizada [email protected] no Open VSX pelo perfil zaitoona43
Publicação da extensão trojanizada noellee-doc/[email protected] no Open VSX
Descoberta e divulgação do GlassWASM pela Socket Threat Research
Alerta público CEVIU com detalhes técnicos e orientações de resposta
Perguntas frequentes
Por que o GlassWASM é mais difícil de detectar que outros malwares de extensão?
Porque ele não tem URLs, domínios ou comandos em texto claro. Tudo é criptografado com ChaCha20 e só descriptografado em memória durante execução. Scanners baseados em strings, YARA e até alguns EDRs que não monitoram chamadas syscall/js em tempo real não conseguem identificar o comportamento malicioso antes do estágio final.
O que torna o uso da Solana tão eficaz como C2 nesse caso?
A blockchain Solana é pública, imutável e acessível via JSON-RPC padrão. O atacante posta instruções em campos SPL Memo, dados visíveis a qualquer um, mas ignorados por firewalls e proxies. Não há servidor para derrubar, nenhum domínio para bloquear e nenhum tráfego suspeito: é simplesmente uma requisição legítima de leitura de estado da blockchain, misturada com tráfego normal de desenvolvedores que usam Solana.
Como posso saber se minha máquina já foi infectada?
Verifique se as extensões [email protected] ou noellee-doc/[email protected] estão instaladas no seu VS Code, VSCodium ou outro fork baseado em Open VSX. Em seguida, busque em logs de EDR ou processos em execução por chamadas de curl -fsSL ... | bash ou irm ... | iex originadas de node.exe ou code.exe, especialmente com a flag windowsHide:true.
Esse ataque afeta só quem usa VS Code?
Não. Ameaças como essa atingem qualquer ferramenta que use o Open VSX como repositório padrão: VSCodium, Gitpod, Cursor, Windsurf e até ambientes de CI/CD que instalam extensões automaticamente. O risco aumenta quando equipes adotam forks do VS Code por motivos de privacidade, mas deixam de aplicar políticas de verificação de extensões, justamente o que o GlassWASM explora.
Fontes
- socket.devfonte original
- Categoria
- CEVIU Segurança da Informação
- Publicado
- 19 de junho de 2026
- Editoria
- CEVIU Segurança da Informação
