Mini Shai-Hulud: ataque ao npm atinge OpenAI e IA
Worm Mini Shai-Hulud derrubou TanStack e pegou a OpenAI. Veja o que muda na prática se você usa Claude Code, Cursor, Codex ou ChatGPT desktop.
A OpenAI confirmou essa semana que dois computadores de funcionários foram comprometidos no ataque “Mini Shai-Hulud”, uma onda de invasão que começou contaminando pacotes do TanStack no npm e foi se espalhando pelo ecossistema todo de bibliotecas open-source.
Esse artigo é uma leitura do que aconteceu, com nosso recorte do que isso muda na prática pra quem cria com IA usando Claude Code, Cursor, Codex e qualquer outra ferramenta que dependa do npm.
O que aconteceu, em ordem

No dia 11 de maio de 2026, um grupo chamado TeamPCP injetou código malicioso no TanStack, a biblioteca por trás do TanStack Router e do TanStack Query. Em poucas horas, 42 pacotes do ecossistema TanStack foram publicados em 84 versões contaminadas.
A partir dali, o worm se replicou. No total foram mais de 170 pacotes comprometidos entre npm e PyPI, somando mais de 518 milhões de downloads acumulados. Caíram bibliotecas usadas todo dia por desenvolvedor, criador e empresa de IA: mistralai, guardrails-ai, @opensearch-project/opensearch, entre outras.
A vulnerabilidade no TanStack recebeu CVE oficial (CVE-2026-45321) com CVSS 9.6 de 10. Critical.
Dois dias depois, no dia 13 de maio, a OpenAI publicou comunicado confirmando que dois computadores internos baixaram o pacote envenenado antes da empresa terminar de subir uma nova camada de proteção contra esse tipo de ataque. Os atacantes conseguiram extrair “material de credenciais limitado” de alguns repositórios de código internos. A própria OpenAI fala que não tem evidência de que sistemas de produção, dados de cliente ou código de modelo tenham sido tocados, mas a empresa está rotacionando os certificados de assinatura de quatro produtos macOS: ChatGPT Desktop, Codex App, Codex CLI e Atlas.
Quem usa esses apps no Mac precisa atualizar até 12 de junho de 2026 ou eles vão parar de validar.
Por que esse worm é diferente de tudo que veio antes

Ataque a pacote npm não é novidade. O que torna o Mini Shai-Hulud um caso novo é que ele foi o primeiro worm documentado a publicar pacotes maliciosos com selo de origem válido (SLSA provenance), usando a própria infraestrutura de release do projeto vítima.
Como? O TanStack usa GitHub Actions pra publicar no npm. Os atacantes encontraram um jeito de envenenar o cache do GitHub Actions, extrair na memória o token OIDC do runner durante a execução, e usar esse token pra publicar pacotes assinados pelo próprio pipeline oficial. Tudo dentro do que aparece como “release legítimo do TanStack” pra quem olha de fora.
Depois de instalado, o worm:
- Procura tokens npm com bypass de 2FA habilitado, que abrem a porta pra publicar em outros pacotes do mesmo mantenedor.
- Cria hooks dentro do Claude Code e do VS Code pra continuar exfiltrando credencial mesmo depois.
- Sobe um serviço chamado gh-token-monitor que fica reescaneando tokens GitHub e mandando pra fora.
- Tem um “switch do morto”: se o desenvolvedor revoga o token no painel do npm, o script dispara um
rm -rf ~/no computador da vítima.
A coleta inclui credenciais de provedor de nuvem, carteira de cripto, ferramenta de IA, app de mensagem e pipeline de CI/CD. Tudo que tiver token na máquina.
O que isso significa pra quem cria com IA

Aqui é onde o ataque deixa de ser “problema de empresa grande” e vira coisa nossa.
A maioria dos criadores que trabalha com IA hoje depende de uma pilha parecida: editor (Cursor, VS Code, Claude Code), libs do ecossistema React/Node (incluindo TanStack), provedor de IA (OpenAI, Anthropic, Mistral, Google), conta GitHub conectada via OAuth, tokens de deploy guardados em algum env file.
Esse ataque mostrou que dá pra contaminar tudo isso de uma vez só, partindo de UMA lib que você instalou sem pensar duas vezes. E pior: o pacote contaminado tinha SLSA provenance válida, então até as ferramentas que checam autenticidade automaticamente passaram batido.
Outro ponto que vale destacar: o worm instala hook no Claude Code. Isso significa que mesmo depois de a pessoa remover o pacote malicioso, a coleta de credencial continua rodando por dentro do próprio ambiente de criação com IA. O atacante usa o agente que você confia pra coletar o que ele precisa.
E o “switch do morto” com rm -rf ~/ torna a revogação de token uma decisão de risco. Pessoa que descobre a infecção e tenta cortar o token do jeito óbvio tem chance de perder a pasta home inteira do computador.
O que dá pra fazer agora se você usa Claude Code, Cursor ou Codex

Lista do que dá pra fazer hoje, sem virar paranoico mas saindo da posição de alvo fácil.
Atualizar os apps da OpenAI no Mac. Se você usa ChatGPT Desktop, Codex App, Codex CLI ou Atlas no macOS, abre, atualiza, deixa o app puxar o novo certificado. Depois do dia 12 de junho de 2026 as versões antigas param de validar. Não dá pra deixar pra última hora.
Revisar os pacotes que você instalou nas últimas duas semanas. Especialmente se passou por algum projeto com TanStack Router, TanStack Query, mistralai, guardrails-ai ou OpenSearch. Conferir versão exata contra a lista de versões comprometidas (CVE-2026-45321 lista todas).
Não revogar token suspeito direto pelo painel. Se desconfiar que uma máquina foi tocada, primeiro tirar a máquina da rede, fazer backup do que importa, e SÓ DEPOIS mexer em token. Por causa do dead-man’s switch.
Tirar bypass de 2FA dos tokens npm de quem publica pacote. Se você publica lib no npm, esse campo é o que o worm procura primeiro. Vale a chatice extra de fazer 2FA toda vez.
Olhar os hooks do Claude Code e dos plugins do VS Code. Pasta ~/.claude/hooks/ no Mac/Linux e %USERPROFILE%\.claude\hooks\ no Windows. Qualquer hook que você não lembra de ter criado vai pro lixo.
Pensar em tokens com escopo mínimo. Token de GitHub Actions com permissão de publicar tudo é o sonho do atacante. Vale a pena gastar uma hora separando token por projeto, com escopo do que cada um precisa.
Nada disso protege 100%. Mas tira você da camada de alvo trivial, que é onde 80% dos comprometidos do Mini Shai-Hulud caíram.
A lição grande do episódio é que a pilha de criação com IA virou alvo de primeira linha. Não dá mais pra tratar dependência open-source como “infraestrutura que outra pessoa cuida”. Quem cria com IA hoje cuida da própria cadeia de fornecedor, do mesmo jeito que empresa cuida.
Fonte
The Register: OpenAI caught in TanStack npm supply chain chaos after employee devices compromised
The Hacker News: Mini Shai-Hulud Worm Compromises TanStack, Mistral AI, Guardrails AI & More Packages
Materiais Gratuitos
Crie um SaaS que paga suas contas
Aula gratuita: aprenda a criar aplicativos web e mobile com Vibe Coding e IA, sem saber programar. Nossos alunos publicam o primeiro app em menos de 7 dias.
Assistir Aula Gratuita →Fature R$12k/mês como Gestor de IA
Aula gratuita: descubra a profissão do Gestor de IA. Aprenda a criar agentes e automações com n8n e fature R$12 mil/mês trabalhando de casa, sem programar.
Assistir Aula Gratuita →Formações
Formação em Vibe Coding
Aprenda a criar Apps, SaaS e plataformas completas com Vibe Coding e IA.
Conhecer a Formação →Formação em Agentes IA e Automações
Domine Agentes IA e Automações para atender clientes no WhatsApp, otimizar processos e eliminar trabalho repetitivo.
Conhecer a Formação →Formação em IA para Negócios
Implemente IA em todos os departamentos da empresa: conteúdo, marketing, imagens, vídeos, gestão e análise de dados.
Conhecer a Formação →

