Vulnerabilidades em Extensões do Visual Studio Code Expostas: Um Risco para Desenvolvedores e Empresas

O ecossistema de desenvolvimento de software, impulsionado pela colaboração e extensibilidade, enfrenta um novo desafio: a proliferação de vulnerabilidades em extensões de ambientes de desenvolvimento integrado (IDEs), como o Visual Studio Code (VS Code). Recentemente, pesquisadores da Wiz descobriram brechas de segurança significativas em extensões disponíveis em marketplaces abertos, como o VSCode Marketplace e o OpenVSX, expondo dados sensíveis e abrindo portas para ataques de supply chain.

O Problema: Segredos Vazados e Códigos Maliciosos

A investigação da Wiz revelou que desenvolvedores desatentos frequentemente incluem em suas extensões dados confidenciais, como tokens de acesso e credenciais, que podem ser explorados por agentes maliciosos. Foram identificados mais de 550 segredos validados, distribuídos em mais de 500 extensões de diversas fontes. Entre os segredos expostos, encontravam-se:

  • Segredos de provedores de IA para plataformas como OpenAI, Gemini e HuggingFace.
  • Credenciais de plataformas de alto risco como AWS, GitHub, Stripe, Auth0 e Google Cloud Platform.
  • Segredos de bancos de dados como MongoDB, Postgres e Supabase.
  • Tokens de acesso pessoal do Azure DevOps.
  • Tokens de acesso do OpenVSX.

A principal causa do vazamento de segredos foi a inclusão de arquivos ocultos (.dotfiles) e arquivos .env contendo informações confidenciais. Além disso, credenciais codificadas diretamente no código-fonte das extensões também foram encontradas.

Não bastasse a negligência dos desenvolvedores, a Wiz também identificou casos em que agentes maliciosos tentaram introduzir malware no VSCode Marketplace, em um ataque clássico de supply chain. Essa tática visa comprometer a cadeia de fornecimento de software, infectando um componente utilizado por diversos projetos e, consequentemente, atingindo um grande número de usuários.

A Resposta: Ações da Microsoft e OpenVSX

Em resposta à descoberta, a Microsoft e a Wiz lançaram uma campanha de notificação para alertar os desenvolvedores afetados e ajudá-los a corrigir as vulnerabilidades. A Microsoft também integrou recursos de varredura de segredos antes da publicação de extensões em seu marketplace, bloqueando a publicação de extensões com segredos verificados e notificando os proprietários quando segredos são detectados.

O OpenVSX também está adicionando um prefixo (ovsxp_) aos seus tokens para mitigar os riscos.

O Alerta: Desenvolvedores como Alvos Primários

Johannes Ullrich, do SANS Institute, alerta que desenvolvedores são alvos primários de ataques, pois muitas vezes não percebem que as extensões que instalam, mesmo as aparentemente inofensivas, têm total acesso ao seu código e podem fazer modificações sem o seu conhecimento. Os marketplaces de extensões sofrem da mesma falta de supervisão e revisão que outros repositórios de código, como npm e pip.

David Shipley, da Beauceron Security, destaca que criminosos cibernéticos e Estados-nação encontraram um novo elo fraco na cadeia de segurança: o ecossistema de fornecedores de software. Ele defende mudanças na legislação, na cultura de segurança e na educação dos desenvolvedores em princípios de segurança.

Recomendações para Desenvolvedores e Empresas

A Wiz recomenda que os usuários do VS Code:

  • Limitem o número de extensões instaladas.
  • Revisem os critérios de confiança das extensões, considerando a prevalência da instalação, avaliações, histórico da extensão e reputação do editor.
  • Considerem os prós e contras das atualizações automáticas, que podem trazer correções de segurança, mas também o risco de uma extensão comprometida injetar malware.

Para as equipes de segurança corporativa, a Wiz sugere:

  • Desenvolver um inventário de extensões IDE.
  • Criar uma allowlist centralizada para extensões do VS Code.
  • Priorizar extensões do VSCode Marketplace, que possui controles e rigor de revisão mais elevados.

A adoção de ferramentas de gerenciamento de dispositivos e segurança de endpoints para inventariar e aplicar allowlists de extensões também é recomendada.

Conclusão: Segurança como Responsabilidade Compartilhada

A vulnerabilidade nas extensões do VS Code serve como um lembrete crítico de que a segurança no desenvolvimento de software é uma responsabilidade compartilhada. Desenvolvedores devem ser diligentes na higienização de seu código, removendo informações confidenciais antes de publicá-lo. As plataformas devem implementar mecanismos de segurança robustos para detectar e prevenir a disseminação de código malicioso. E as empresas devem adotar políticas e ferramentas para gerenciar o uso de extensões e proteger seus ambientes de desenvolvimento.

A negligência com a segurança das extensões pode ter consequências desastrosas, desde o roubo de dados confidenciais até a propagação de malware em larga escala. É imperativo que todos os envolvidos no ecossistema de desenvolvimento de software priorizem a segurança e trabalhem juntos para mitigar os riscos.

Este incidente destaca a importância de uma abordagem de “segurança por design” e da educação contínua dos desenvolvedores em práticas de codificação seguras. Afinal, a segurança de um sistema é tão forte quanto seu elo mais fraco, e, neste caso, as extensões se mostraram um ponto vulnerável que precisa de atenção redobrada.

Compartilhe:

Descubra mais sobre MicroGmx

Assine agora mesmo para continuar lendo e ter acesso ao arquivo completo.

Continue reading