- A campanha de autopropagação "Shai-Hulud" comprometeu pelo menos 187 pacotes npm e ainda está sob investigação.
- Os invasores abusaram de contas de editores confiáveis, injetaram uma carga útil do bundle.js e usaram o TruffleHog para coletar segredos.
- Scripts maliciosos de pós-instalação tinham como alvo CI/CD para exfiltrar variáveis de ambiente, credenciais de nuvem e tokens.
- O ReversingLabs vincula o surto a um lançamento malicioso de rxnt-authentication em 14 de setembro de 2025; o npm e os fornecedores estão eliminando pacotes contaminados.

Em meio a um maior escrutínio do risco de código aberto, uma grande escala ataque à cadeia de suprimento do npm apelidado de “Shai-Hulud” está abalando o ecossistema JavaScript, com centenas de pacotes implicados e limpeza ativa em andamento. Pesquisadores dizem que a operação combina comprometimento de contas, publicação automatizada e roubo de segredos de maneiras que a tornam extremamente difícil de conter.
As primeiras análises apontam para invasores que abusam de contas de editores confiáveis para enviar atualizações com armadilhas, enquanto a automação propagou rapidamente lançamentos maliciosos para projetos populares. Como os pacotes npm são amplamente reutilizados, o impacto em cascata por meio de árvores de dependência é particularmente preocupante para equipes que dependem de pipelines de CI/CD.
Como a campanha foi identificada
Os pesquisadores de segurança notaram pela primeira vez atividades suspeitas vinculadas a projetos que faziam referência a pacotes relacionados ao CrowdStrike, o que levou a uma varredura mais ampla do registro em busca de anomalias e uploads não autorizados de contas aparentemente legítimas. Vários alvos parecem ser comuns em ambientes corporativos, aumentando o raio de explosão.
O desenvolvedor Daniel Pereira alertou publicamente sobre um ataque em larga escala à cadeia de suprimentos após ter dificuldade para acessar canais de segurança privados, pedindo aos desenvolvedores que evitem lançamentos recentes de @ctrl/tinycolor, um pacote com milhões de downloads semanais. Seu alerta desencadeou uma investigação coordenada por diversas equipes de segurança.
O que o malware tenta roubar
Uma vez instalados, os pacotes contaminados podem executar scripts pós-instalação projetados para exfiltrar variáveis de ambiente, tokens e outros segredos. Isso coloca os servidores de compilação e as estações de trabalho do desenvolvedor em risco se as versões maliciosas forem extraídas durante a instalação ou execuções de CI.
Ao visar especificamente os sistemas CI/CD, os operadores procuraram capturar material de autenticação, como chaves do provedor de nuvem, tokens de acesso privado e credenciais de serviço. Com isso em mãos, os adversários poderiam se mover lateralmente, reentrar nas redes e potencialmente adulterar pipelines ou aplicativos confidenciais.
Como o worm se espalha entre pacotes
As investigações indicam que a campanha inclui um componente de autopropagação que baixou cada pacote de propriedade de um mantenedor comprometido, alterou seu package.json, injetou um pacote.js carga útil, reempacotou-a e republicou-a, automatizando a trojanização de versões subsequentes.
O malware também abusou da ferramenta legítima de verificação de segredos TruffleHog para procurar credenciais expostas e arquivos de configuração referenciados chamados shai-hulud.yaml— uma referência aos vermes da areia de Duna que inspiraram o nome da operação. Essa combinação de reutilização e automação ajudou a ameaça a se mover rapidamente.
Escopo e pacotes afetados até agora
Pesquisadores do Socket e do Aikido identificaram pelo menos 187 pacotes npm comprometidos até o momento, com a expectativa de que o número aumente à medida que as revisões prosseguem. Como até mesmo uma única dependência contaminada pode afetar muitos projetos, a exposição efetiva pode ser substancial.
Entre os afetados estavam pacotes associados ao CrowdStrike, como crowdstrike-sdk, crowdstrike-client e crowdstrike-api— juntamente com outros módulos populares. A ênfase em bibliotecas referenciadas pela empresa sugere que as operadoras buscavam a máxima alavancagem operacional.
Pistas sobre origem e linha do tempo
O ReversingLabs relata que o surto provavelmente remonta a um lançamento malicioso de autenticação rxnt publicado em 14 de setembro de 2025, com a conta npm suporte técnico rxnt considerado um potencial paciente zero. Ainda não está claro como essa conta foi invadida, com hipóteses que vão desde phishing até o abuso de uma ação vulnerável do GitHub.
Várias empresas descrevem o Shai-Hulud como um evento sem precedentes, worm de pacote npm auto-replicante que também rouba tokens de nuvem. Embora a atribuição esteja em andamento, o perfil técnico destaca como a automação controlada pelo invasor pode transformar gerenciadores de pacotes em poderosos canais de distribuição.
Resposta e limpeza da indústria
O registro npm e os parceiros de segurança foram transferidos para remover pacotes maliciosos, notificar os editores e emitir orientações para auditar dependências. Desenvolvedores são incentivados a verificar arquivos de bloqueio e históricos de versões, especialmente em meados de setembro de 2025.
A CrowdStrike declarou que eliminou rapidamente os pacotes desonestos do npm público, girou as chaves proativamente e confirmou que seu sensor Falcon não usa esses módulos e as proteções ao cliente permanecem em vigorA empresa está colaborando com a npm e conduzindo uma revisão abrangente.
Passos práticos para equipes
As organizações devem auditar imediatamente os projetos em busca de indicadores conhecidos, priorizando listas de dependências, arquivos de bloqueio e logs de construção de CI. Gire quaisquer tokens e credenciais potencialmente expostos, incluindo tokens npm, PATs do GitHub e chaves de nuvem.
- Remova ou fixe os pacotes afetados e volte para versões seguras; reconstrua a partir de ambientes limpos.
- Habilite 2FA obrigatório para contas de editores npm e imponha tokens de privilégios mínimos em CI/CD.
- Verifique continuamente dependências e artefatos em busca de adulteração; monitore comportamentos anômalos após a instalação.
- Configure alertas para publicações inesperadas da sua organização e verifique a integridade do pacote antes da promoção.
Para reduzir a exposição futura, introduza verificações automatizadas que bloqueiem scripts suspeitos durante a instalação e verificar a procedência de dependências novas ou atualizadas antes que cheguem à produção. Revisar o acesso do mantenedor, as proteções do repositório e as políticas de assinatura pode fortalecer ainda mais a cadeia.
A campanha Shai-Hulud revelou a rapidez com que um ator determinado pode transformar a confiança em registros populares em armas, usando contas comprometidas, propagação semelhante a worms e coleta de segredos para ampliar o impacto; vigilância, correção rápida e controles mais fortes dos editores agora são prioridades imediatas para equipes em todo o ecossistema.