---
title: "Ataque ao NPM com Worm Shai-Hulud: O Futuro da Segurança Open Source em Jogo"
author: "André Iglesias"
date: "2026-08-11 15:32:00-03"
category: "Segurança & Privacidade"
url: "http://desbugados.scale.press/portal/desbugados/post/2026/08/11/ataque-ao-npm-com-worm-shai-hulud-o-futuro-da-seguranca-open-source-em-jogo/md"
---

## Resumo
- O ataque começou em 04/08/2026 com o comprometimento do mantenedor de keyv.
- Mais de 400 pacotes e 1.3 bilhão de downloads afetados.
- Payload coleta credenciais de ferramentas de IA como Claude e nuvens como AWS.
- C2 via contrato Ethereum 0xE1f2395ee43e45A1556EC6438a88c31B83493103.
- Recomendações: remover versões, revogar credenciais e limpar caches.
- O worm usa fallbacks para GitHub com referências a Dune.

---

Em agosto de 2026, um ataque cibernético de grandes proporções ao repositório npm comprometeu contas de mantenedores e injetou um worm malicioso em mais de 400 pacotes populares, com mais de dois bilhões de instalações mensais, o que levanta questões sobre como a segurança no desenvolvimento de software open source pode evoluir nos próximos anos de forma semelhante a enredos de séries futurísticas como Black Mirror.

## O Detalhe do Comprometimento Inicial

No dia 04 de agosto de 2026, a conta GitHub do mantenedor do pacote **keyv** foi invadida, o que permitiu a publicação de versões maliciosas não apenas para keyv, que tem mais de 600 milhões de downloads no mês anterior, mas também para pacotes relacionados como **flat-cache** com cerca de 580 milhões de downloads mensais e cacheable-request com mais de 137 milhões, totalizando mais de 400 pacotes únicos comprometidos em uma campanha coordenada que usa a variante do worm Mini Shai-Hulud identificada por especialistas da Microsoft e outras empresas de segurança.

O mecanismo de infecção ocorre durante o processo de instalação via npm, onde o gancho de ciclo de vida preinstall no package.json dispara o download de um arquivo tarball modificado que contém o dropper setup.mjs, o qual configura o ambiente e executa o payload obfuscado de aproximadamente 711KB, que pode baixar o bun v1.3.13 do GitHub se não estiver presente, extrair e rodar o código para coletar dados confidenciais de forma silenciosa antes de se propagar para outros pacotes no ecossistema, como visto em [nossa análise anterior sobre o worm autorreplicante](https://desbugados.com.br/post/2025/09/17/panico-no-npm-worm-autorreplicante-compromete-mais-de-180-pacotes-incluindo-da-crowdstrike).

## A Propagação como um Fenômeno Autônomo

Uma vez ativo, o payload varre o sistema em busca de mais de 300 padrões de credenciais, incluindo aquelas de ferramentas de inteligência artificial como Anthropic, Claude, OpenAI e Gemini, além de configurações de nuvens como AWS, GCP e Azure, chaves SSH, tokens npm e até memórias de runners em GitHub Actions, coletando tudo em formato JSON que é comprimido e criptografado com AES-256-GCM usando uma chave aleatória protegida por RSA antes de ser enviado para um endpoint HTTPS controlado pelo atacante.

A propagação depende de encontrar tokens npm com permissão de escrita e bypass de 2FA, permitindo que o worm enumere pacotes acessíveis, baixe o tarball atual, injete o payload, substitua os scripts com o hook de preinstall, incremente a versão de patch e publique a nova versão, o que transforma o ataque em um worm que se espalha de forma autônoma, semelhante ao que vemos em jogos de estratégia onde uma infecção se alastra pelo mapa sem controle humano direto.

## Implicações para o Futuro do Desenvolvimento

Com o uso de contratos inteligentes em blockchain para atualizar endereços de comando à distância e fallbacks para commits assinados no GitHub, este ataque demonstra uma sofisticação que pode indicar o caminho para ataques futuros mais avançados, onde a integração com tecnologias emergentes como blockchain e ferramentas de IA pode tornar a defesa ainda mais desafiadora para a comunidade de desenvolvedores que dependem do código aberto para construir suas aplicações.

Além disso, o payload mira especificamente configurações de VS Code e Claude para persistência, instalando componentes que monitoram credenciais roubadas, o que sugere que no futuro próximo os ataques podem se tornar mais direcionados a ambientes de desenvolvimento integrados, exigindo que os profissionais adotem uma abordagem mais proativa para proteger seus fluxos de trabalho.

## Caixa de Ferramentas para Mitigar os Riscos

Para lidar com este incidente, é essencial identificar e remover as versões afetadas dos ambientes de desenvolvimento, reconstruir todos os sistemas que foram atingidos, trocar imediatamente todas as senhas e chaves de acesso que possam ter sido expostas durante o ataque, auditar rigorosamente os servidores em busca de sinais de comprometimento e substituir qualquer dado que possa ter sido acessado pelos criminosos, além de limpar os caches de npm e Yarn para evitar que dependências infectadas sejam reutilizadas em novos builds.