Ataque à extensão Ethcode expõe falhas na segurança da cadeia de suprimentos

Imagem do autor do SempreUpdate Jardeson Márcio
Escrito por
Jardeson Márcio
Jardeson Márcio é Jornalista e Mestre em Tecnologia Agroalimentar pela Universidade Federal da Paraíba. Com 8 anos de experiência escrevendo no SempreUpdate, Jardeson é um especialista...

Em um cenário onde ferramentas de desenvolvimento se tornaram alvos cada vez mais frequentes de ameaças cibernéticas, um novo alerta chama a atenção de toda a comunidade de desenvolvedores: um ataque à cadeia de suprimentos atingiu diretamente a extensão Ethcode do Visual Studio Code (VS Code), comprometendo a integridade de ambientes utilizados na criação de aplicações blockchain.

Este incidente expõe um dos maiores desafios da atualidade para desenvolvedores e profissionais de segurança da informação: a segurança da cadeia de suprimentos. O caso da extensão Ethcode demonstra como ameaças sofisticadas podem se infiltrar de forma silenciosa em ferramentas confiáveis, colocando em risco chaves privadas, contratos inteligentes e ativos digitais.

Ao longo deste artigo, vamos detalhar como o ataque ocorreu, explorar suas implicações, contextualizar o crescente número de ameaças voltadas a ambientes de desenvolvimento e projetos de código aberto, e oferecer recomendações práticas para fortalecer a segurança em sua rotina de desenvolvimento.

Ethcode VSCode

Detalhamento do ataque à extensão Ethcode

A extensão Ethcode foi projetada para facilitar a vida de desenvolvedores que trabalham com contratos inteligentes Ethereum no VS Code. Ela permite compilar, testar e implantar contratos diretamente no ambiente de desenvolvimento, tornando o fluxo de trabalho mais fluido e integrado.

Contudo, esse facilitador se tornou vetor de risco quando um código malicioso foi inserido de forma discreta por meio de uma solicitação de pull no repositório oficial da extensão.

A solicitação de pull maliciosa e a inserção do código

O ataque começou com uma solicitação de pull (pull request) feita por um usuário com o nome Airez299. À primeira vista, a modificação parecia inofensiva: poucas linhas de código foram alteradas, adicionando uma dependência chamada keythereum-utils ao projeto.

No entanto, essa biblioteca era maliciosa. Por estar minimamente documentada, com aparência de ferramenta legítima relacionada à criptografia Ethereum, ela passou despercebida pelos revisores. O código foi aceito e incorporado à extensão, tornando todos os seus usuários potenciais vítimas.

O malware keythereum-utils e seus riscos

A dependência keythereum-utils continha código ofuscado e um payload de segundo estágio projetado para roubar informações sensíveis. Uma vez instalada junto à extensão Ethcode, ela era capaz de:

  • Capturar chaves privadas utilizadas por contratos inteligentes;
  • Exfiltrar arquivos de configuração de carteiras criptográficas locais;
  • Envenenar contratos inteligentes, alterando endereços de destino;
  • Conectar-se a servidores de comando e controle (C2) para download de cargas adicionais.

Com isso, os desenvolvedores afetados poderiam ter seus ativos criptográficos comprometidos, além de contribuir involuntariamente para o espalhamento de código malicioso em redes de desenvolvimento blockchain.

A resposta e a importância da divulgação responsável

Após a descoberta da ameaça, a extensão Ethcode foi removida da Visual Studio Marketplace pela Microsoft como medida preventiva. A comunidade de código aberto reagiu rapidamente, promovendo uma revisão detalhada do código e removendo a dependência maliciosa.

A extensão foi posteriormente reinstaurada, mas a confiança foi abalada. O caso evidenciou a importância da divulgação responsável de vulnerabilidades e da transparência por parte dos mantenedores ao lidar com incidentes que afetam seus usuários.

Além disso, o episódio reforça o papel das grandes plataformas, como a Microsoft, na curadoria de extensões e na promoção de melhores práticas de segurança para repositórios e marketplaces.

O panorama crescente dos ataques à cadeia de suprimentos de software

O ataque à Ethcode não é um caso isolado. A segurança da cadeia de suprimentos de software tem sido alvo constante de ameaças sofisticadas, explorando justamente a confiança que os desenvolvedores depositam em ferramentas, bibliotecas e ambientes open source.

Segundo um relatório recente da Sonatype, mais de 245 mil pacotes maliciosos foram identificados em repositórios de código aberto somente no último ano — um crescimento exponencial que evidencia o tamanho do problema.

Exemplos notáveis de campanhas maliciosas

Grupos de ameaça avançada, como o Lazarus Group, têm realizado campanhas voltadas ao roubo de credenciais de desenvolvedores, ataques a build pipelines e à injeção de malwares em bibliotecas públicas.

Outro exemplo é o grupo Yeshen-Asia, que utilizou dependências corrompidas para comprometer sistemas de empresas do setor financeiro e tecnológico, com técnicas de exfiltração silenciosa de dados.

Esses casos ilustram como a cadeia de suprimentos digital tornou-se um dos principais campos de batalha da segurança cibernética.

Extensões de navegador como vetor de ataque

Além de ambientes de desenvolvimento, extensões de navegador também vêm sendo utilizadas como vetores de ataques à cadeia de suprimentos. Um caso recente envolveu extensões falsas do Firefox, que se disfarçavam de ferramentas de produtividade, mas injetavam:

  • Adwares persistentes;
  • Roubo de tokens de sessão;
  • Redirecionamentos para sites maliciosos;
  • Monitoramento silencioso do tráfego do usuário.

Estes ataques demonstram que qualquer ponto de confiança pode se tornar uma brecha, inclusive as ferramentas que usamos todos os dias.

Como se proteger contra ataques na cadeia de suprimentos

Diante desse cenário, é fundamental adotar medidas práticas para proteger seus projetos e sua infraestrutura contra ameaças à integridade do código e dependências comprometidas. Aqui estão algumas recomendações essenciais:

  • Auditoria de código: revise regularmente dependências e solicitações de pull, especialmente de colaboradores desconhecidos.
  • Verificação de integridade: utilize ferramentas como SLSA, Sigstore ou TUF para validar assinaturas de pacotes e builds.
  • Política de menor privilégio: limite permissões em ambientes de desenvolvimento e produção, evitando exposição desnecessária.
  • Ambientes isolados (sandboxing): evite executar código de terceiros em ambientes privilegiados ou com acesso a informações sensíveis.
  • Monitoramento contínuo: implemente alertas de segurança para mudanças inesperadas em repositórios e dependências.
  • Ferramentas de análise estática e dinâmica: automatize a detecção de padrões maliciosos no código com ferramentas como Semgrep, SonarQube ou Dependabot.
  • Educação constante: mantenha sua equipe atualizada sobre as últimas ameaças e boas práticas de segurança no desenvolvimento.

A segurança da cadeia de suprimentos não é uma responsabilidade apenas das empresas ou dos mantenedores de projetos — é uma missão coletiva da comunidade.

Conclusão: segurança colaborativa e vigilância constante

O ataque à extensão Ethcode deixa uma lição clara: não existe ferramenta imune a ameaças. Até mesmo os plugins que integram o nosso ambiente de desenvolvimento podem servir como porta de entrada para ataques silenciosos, furtivos e devastadores.

Neste contexto, a segurança da cadeia de suprimentos precisa se tornar uma prioridade nas práticas de desenvolvimento moderno. Somente com auditorias contínuas, validação rigorosa, educação e colaboração entre desenvolvedores e plataformas será possível construir um ecossistema mais seguro e confiável.

A vigilância precisa ser constante. Cada biblioteca importada, cada extensão instalada e cada pull request aceito pode representar um risco — ou uma brecha evitada.

Adote uma postura de segurança proativa. Revise seus processos. Avalie suas dependências. E acima de tudo, contribua para uma cultura de segurança em seu time e na comunidade open source.

Compartilhe este artigo