A campanha Glassworm continua evoluindo e explorando a confiança em marketplaces de extensões VS Code, agora com uma terceira leva de pacotes maliciosos que usam implantes em Rust e código “invisível” para furtar credenciais e dar acesso remoto a desenvolvedores.
O que é o Glassworm e como se espalha
Glassworm é um malware distribuído via extensões maliciosas em repositórios de VS Code–compatíveis, como o Microsoft Visual Studio Marketplace (oficial) e o OpenVSX (alternativo e aberto). A campanha começou em outubro com extensões aparentemente legítimas que incluíam JavaScript ofuscado usando caracteres Unicode invisíveis, dificultando a detecção em revisões manuais e estáticas.
Uma vez instalado, o Glassworm tenta roubar contas GitHub, npm e OpenVSX, além de dados de carteiras de criptomoeda associados a dezenas de extensões populares. Ele também instala um proxy SOCKS no host comprometido e um cliente HVNC (hidden VNC), permitindo que atacantes usem a máquina do desenvolvedor como pivô de rede e mantenham acesso remoto furtivo.
Terceira onda e novos pacotes maliciosos
A terceira onda, detalhada por John Tuckner (Secure Annex) e BleepingComputer, adiciona 24 novos pacotes maliciosos ou imitadores de projetos legítimos, cobrindo stacks usados em massa como Flutter, Vim, YAML, Tailwind, Svelte, React Native, Vue e Solidity. Entre os pacotes listados no VS Marketplace estão, por exemplo, ícones/material theme falsos, “prettier” trojanizado, extensões de Flutter, Vim, YAML, React Native e um “claude-devsce”, enquanto no OpenVSX há variantes de Flutter, YAML, Tailwind/React e Solidity com publishers suspeitos.
A técnica operacional é sempre similar:
- Publica-se uma extensão aparentemente limpa, às vezes clonando nome e descrição de projetos populares.
- Após aprovação, o publisher empurra uma atualização que injeta o código malicioso.
- Em seguida, inflaciona-se artificialmente o número de downloads e avaliações para aumentar a confiança e o ranking nas buscas, posicionando a extensão maliciosa ao lado da legítima.
Evolução técnica: implantes em Rust e C2 resiliente
Pesquisadores observaram que a nova geração do Glassworm embute implantes em Rust dentro dos pacotes de extensão, além dos scripts JS ofuscados por Unicode. Esses binários Rust atuam como loaders e backdoors, e o comando‑e‑controle usa múltiplas camadas: payloads cifrados (tipicamente AES‑256‑CBC) com chaves fornecidas dinamicamente em cabeçalhos HTTP, e canais alternativos como Solana blockchain, IPs diretos e até eventos em Google Calendar para maior resiliência.
O malware usa tokens npm para publicar novos pacotes maliciosos, credenciais Git/GitHub para comprometer repositórios legítimos e credenciais de OpenVSX para subir mais extensões infectadas, criando um efeito “verme” na cadeia de suprimentos de software. Relatórios indicam ainda uma pivotagem para o GitHub, onde os mesmos truques de Unicode esteganográfico estão sendo usados para esconder payloads em projetos JavaScript.
Riscos para desenvolvedores e supply chain
Ao comprometer máquinas de desenvolvimento, o Glassworm obtém:
- Credenciais de plataformas de código (GitHub, Git, OpenVSX), registries (npm) e wallets.
- Acesso interno contínuo via proxy SOCKS, permitindo que atacantes usem o host para chegar a serviços internos atrás de firewalls.
- Capacidade de inserir backdoors em bibliotecas, extensões e projetos open source amplamente consumidos, amplificando o impacto na supply chain.
Essa combinação torna a campanha especialmente perigosa para equipes que confiam em extensões VS Code pouco auditadas, IDEs alternativos que usam OpenVSX (como forks com IA) e fluxos CI/CD integrados a repositórios comprometidos.
Medidas recomendadas para desenvolvedores e empresas
- Auditar imediatamente as extensões VS Code instaladas, comparando nomes/publishers com listas de IOCs divulgadas (Koi Security, Secure Annex, Truesec, BleepingComputer) e removendo qualquer pacote suspeito ou imitador.
- Considerar desativar auto‑atualização de extensões e adotar um processo manual de review para novos updates, ao menos em estações sensíveis (devs core, CI/CD, release engineering).
- Implementar allowlist corporativa de extensões e bloquear instalações não autorizadas via políticas de gestão (GPO, MDM, VS Code Settings Sync gerenciado, etc.).
- Monitorar endpoints de desenvolvimento em busca de tráfego anômalo (C2, Solana, Google Calendar incomum, domínios de Glassworm) e processos relacionados a proxies SOCKS ou HVNC.
- Rotacionar imediatamente tokens npm, GitHub/Git, OpenVSX e chaves de API se houver suspeita de instalação de extensões ligadas ao Glassworm.
Enquanto marketplaces de extensões ainda se ajustam para bloquear esse tipo de operação, a seleção criteriosa de extensões e o endurecimento de estações de desenvolvimento tornam‑se uma peça crítica de defesa na supply chain.






