GitHub anuncia exigência por 2FA para publicação de pacotes no npm

O GitHub anunciou nesta semana um pacote de medidas de segurança para reforçar a proteção do npm, seu gerenciador de pacotes para Node.js, após o ataque cibernético conhecido como Shai-Hulud. As mudanças incluem a exigência de autenticação em duas etapas (2FA) e o fim do suporte a métodos de autenticação considerados ultrapassados.

O ataque Shai-Hulud, registrado na semana passada, injetou um worm autorreplicante em centenas de pacotes do npm. O código malicioso foi capaz de varrer dispositivos comprometidos em busca de informações sensíveis, transmitindo os dados coletados para um servidor controlado pelo invasor.

Confira: Cloudflare bloqueia novo maior ataque DDoS de 22,2 Tbps

A ofensiva escancarou a vulnerabilidade da cadeia de suprimentos de software e acelerou a resposta do GitHub.

O npm é o gerenciador de pacotes de Node.JS do GitHub. (Fonte: npm/Reprodução)

Novas exigências de segurança

Segundo a companhia, os novos mecanismos de segurança serão implementados em diferentes etapas. Entre os principais pontos, estão:

Fim do suporte para tokens legado;Fim da autenticação multifatorial via senhas de uso único, exigindo agora autenticação baseada em FIDO;Limitação de tokens granulares com permissões de publicação válidas por apenas sete dias;Desativação da permissão de publicação por padrão, incentivando o uso de publicadores confiáveis e publicação local com 2FA;Expansão dos provedores elegíveis para publicação confiável.

“Reconhecemos que algumas das mudanças de segurança que estamos implementando podem exigir atualizações em seus fluxos de trabalho”, pontuou o GitHub. Por conta disso, a implementação das mudanças acontecerá de forma gradativa para garantir a minimização de interrupções e “fortalecer a postura de segurança do npm”. “Estamos comprometidos em oferecer suporte durante essa transição e forneceremos atualizações futuras com cronogramas claros, documentação, guias de migração e canais de suporte”, continuou.

O que é npm?

O npm, ou Node Package Manager, é o gerenciador de pacotes padrão do ambiente de tempo de execução Node.js. A plataforma, subsidiária do GitHub (e parte da Microsoft), serve para hospedar pacotes, bibliotecas e ferramentas utilizadas por desenvolvedores em projetos de software. Além da hospedagem, o npm também permite executar instruções e conjuntos de instruções dentro do ambiente de desenvolvimento.

Leia mais: Europol usa IA para identificar vítimas de exploração sexual infantil na internet

Acompanhe nossas atualizações para entender os impactos de ataques como o Shai-Hulud e como empresas como o GitHub estão tentando proteger o ecossistema de software global.