CEVIU Logo
Voltar

Ataque à cadeia de suprimentos do VS Code expõe falhas críticas nos bloqueios de extensões

Aprofundamento CEVIU

Aprofundamento

O ataque à cadeia de suprimentos do VS Code não é um evento isolado, é o ponto mais recente de uma campanha coordenada do TeamPCP que já comprometeu Nx Console, Checkmarx KICS, Trivy e GitHub Actions em menos de dois meses. A extensão maliciosa da Nx Console (18.95.0), distribuída por apenas 18 minutos no Marketplace, foi capaz de exfiltrar 3.800 repositórios internos do GitHub porque o VS Code executa extensões sem sandboxing e com privilégios completos do usuário. Isso significa que qualquer código carregado, seja via marketplace, CDN ou cópia direta para .vscode/extensions, tem acesso irrestrito a chaves SSH, tokens OAuth, variáveis de ambiente e pipelines de CI/CD.

A falha crítica aqui não está no VS Code como produto, mas na falsa segurança gerada por políticas superficiais: bloquear o domínio marketplace.visualstudio.com ignora que as extensões são servidas via CDN com URLs previsíveis (ex: vscode.blob.core.windows.net), e que o diretório .vscode/extensions é gravável por qualquer processo local. O CVE-2026-48027, atribuído pela CISA, confirma que a atualização automática do VS Code pode instalar binários sem interação humana, o que torna inútil qualquer política baseada em 'não instalar extensões'. A defesa real começa com validação de assinatura obrigatória (não só do marketplace, mas de cada arquivo .vsix antes da extração) e monitoramento contínuo de escrita nesse diretório, algo que ferramentas como Sysmon ou EDRs empresariais conseguem detectar, mas raramente estão configuradas para isso.

O que mudou

Em 3 de junho, o CEVIU já havia reportado o roubo de tokens GitHub via bug no webview do VS Code, mas era uma vulnerabilidade pontual de renderização. Agora, a ameaça evoluiu para um ataque estrutural à cadeia de suprimentos: não depende de bug no código-fonte, mas explora o modelo de implantação do VS Code por design. Antes, o foco estava em *como* as extensões eram injetadas (ex: GitHub Actions inseguras). Hoje, o ataque acontece *após* a instalação, porque o próprio mecanismo de atualização automática é usado como vetor. A diferença prática é que, em abril, bastava auditar workflows; agora, é preciso bloquear gravação em .vscode/extensions, validar assinaturas criptográficas de todos os arquivos .vsix e isolar o ambiente de desenvolvimento como se fosse produção.

Por que isso importa

Desenvolvedores não são usuários finais, são porteiros da infraestrutura. Uma extensão maliciosa no VS Code pode ler ~/.aws/credentials, acessar repositórios privados via SSH, injetar credenciais em pipelines do GitHub Actions e até modificar artefatos Docker antes do push. Isso transforma máquinas de desenvolvimento em pivôs para ataques de movimento lateral. Empresas que tratam IDEs como ferramentas neutras estão expostas: o ataque ao GitHub não veio por um servidor desatualizado, mas por um laptop com VS Code e uma única extensão trojanizada. A consequência imediata é que políticas de segurança devem migrar de 'bloquear acesso à internet' para 'controlar execução local', com WDAC no Windows, seccomp-bpf no Linux e listas de permissão rigorosas para extensões, não apenas no marketplace, mas em todo ciclo de vida do arquivo.

Linha do tempo

  1. CEVIU alerta que dependências abertas são superfície de ataque de terceiros

  2. GitHub Actions identificado como elo mais fraco na cadeia de suprimentos

  3. GitHub confirma exfiltração de 3.800 repositórios via extensão maliciosa do VS Code

  4. Ataque ao Checkmarx KICS compromete extensões e imagens Docker com mcpAddon.js

  5. Divulgação de vulnerabilidade de dia zero no github.dev para roubo de tokens com um clique

  6. Ataque à cadeia de suprimentos do VS Code expõe falhas críticas nos bloqueios de extensões

Perguntas frequentes

Por que bloquear marketplace.visualstudio.com não protege contra esse tipo de ataque?

Porque as extensões são baixadas via CDN com URLs previsíveis (ex: vsco.de/...), que não passam pelo domínio do marketplace. Atacantes recriam essas URLs manualmente ou copiam o arquivo .vsix diretamente para o diretório .vscode/extensions, contornando totalmente o bloqueio de rede.

Qual é a diferença entre o ataque da Nx Console e os anteriores do TeamPCP?

O ataque da Nx Console usou atualização automática do VS Code para implantar malware sem interação do usuário, diferente dos casos anteriores, que dependiam de instalação manual ou de workflows maliciosos no GitHub Actions. Isso reduz o tempo de detecção para minutos e elimina a necessidade de engenharia social.

Como validar assinatura de uma extensão VS Code antes de instalá-la?

Extensões oficiais do marketplace têm assinatura Microsoft, mas ela só é verificada durante a instalação via UI. Para validação proativa, use ferramentas como sigstore/cosign para assinar seus próprios .vsix ou integre verificações com o VS Code Extension API. Em ambientes corporativos, exija que todas as extensões passem por um pipeline de verificação de hash e assinatura antes de entrar no repositório interno.

É possível impedir que extensões escrevam em diretórios sensíveis do sistema?

Sim, com políticas de aplicativo. No Windows, use Windows Defender Application Control (WDAC) para bloquear execução de binários não assinados em .vscode/extensions. No Linux, use AppArmor ou SELinux para restringir permissões de escrita e execução nesse diretório. Ferramentas como Sysmon podem alertar sobre criação ou modificação de arquivos nessa pasta.

Fontes

Avalie este artigo:
Compartilhar:
Categoria
CEVIU Segurança da Informação
Publicado
16 de junho de 2026
Editoria
CEVIU Segurança da Informação

Quer receber mais sobre CEVIU Segurança da Informação?

Conteúdo curado diariamente, direto no seu e-mail.

Conteúdo curado diariamenteDiversas categoriasCancele quando quiser