
Em uma iniciativa estratégica para fortalecer a proteção da cadeia de suprimentos de software, o GitHub anunciou mudanças significativas em suas políticas de autenticação e publicação no ecossistema npm. As novas diretrizes, que entrarão em vigor “em um futuro próximo”, buscam reduzir vulnerabilidades e restaurar a confiança dos desenvolvedores, especialmente após incidentes recentes como o ataque “Shai-Hulud”.
A decisão do GitHub, que pertence à Microsoft, responde diretamente ao uso indevido de tokens de acesso e ao crescimento de malwares autorreplicantes. Entre as principais medidas estão a autenticação de dois fatores (2FA) obrigatória para publicações locais, a introdução de tokens granulares com validade limitada a sete dias e a implementação da chamada “publicação confiável” (trusted publishing), considerada uma das maiores inovações no processo de distribuição de pacotes.
Publicação confiável e atestados de procedência
A publicação confiável elimina a necessidade de tokens npm tradicionais ao estabelecer um sistema de confiança criptográfica. Cada pacote publicado será autenticado com credenciais temporárias e específicas de cada fluxo de trabalho, impossíveis de serem reutilizadas por invasores. Além disso, a CLI do npm passará a gerar automaticamente atestados de procedência, permitindo que os usuários verifiquem a origem e o ambiente de construção de cada pacote.
Segundo o GitHub, “todo pacote publicado incluirá prova criptográfica de sua origem e ambiente de construção”, oferecendo mais transparência e dificultando a disseminação de pacotes maliciosos.
Mudanças adicionais no ecossistema npm
Para viabilizar as alterações, o GitHub descontinuará tokens legados, migrará usuários da 2FA baseada em TOTP para a versão mais segura baseada em FIDO e limitará a expiração de tokens granulares. Também será removida a opção de ignorar o 2FA para publicações locais, além da expansão da lista de provedores qualificados para a publicação confiável.
Essas mudanças acontecem poucos dias após o ataque “Shai-Hulud”, que injetou um worm autorreplicante em centenas de pacotes npm, projetado para roubar segredos confidenciais das máquinas dos desenvolvedores. O episódio expôs a gravidade dos riscos e reforçou a necessidade de respostas rápidas.
Ameaças criativas e vigilância contínua
Paralelamente, a empresa de segurança Socket identificou o pacote malicioso “fezbox”, que se apresentava como utilitário JavaScript, mas usava esteganografia em um código QR para roubar senhas armazenadas em navegadores. A técnica, descrita pela pesquisadora Olivia Brown como “criativa e perigosa”, foi rapidamente neutralizada com a remoção do pacote.
Tendência global de reforço da segurança
O movimento do GitHub acompanha uma tendência internacional. Poucos dias antes, o repositório NuGet .NET adicionou suporte para publicação confiável, enquanto a Ruby Central anunciou novas restrições administrativas no RubyGems.org, limitando acessos apenas a engenheiros da organização.
Essas iniciativas, aliadas à vigilância de empresas de segurança, são fundamentais para proteger a comunidade global de desenvolvedores. A batalha contra ataques à cadeia de suprimentos continua em evolução, exigindo que plataformas e profissionais de tecnologia fortaleçam constantemente suas defesas.