Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
tanscript-exploit-check — Verificador de IOC para o ataque à cadeia de suprimentos npm TanStack/Mini Shai-Hulud (CVE-2026-45321) | Kitploit
Ferramentas/GitHubGitHub/nkopylov/tanscript-exploit-check
Gerenciamento de Indicadores de Comprometimento (IOC)Análise de VulnerabilidadesAnálise ForenseInteligência de AmeaçasSegurança da Cadeia de SuprimentosResposta a Incidentes
GitHubnkopylov/tanscript-exploit-check

tanscript-exploit-check

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →

Verificador de IOC para o ataque à cadeia de suprimentos npm TanStack/Mini Shai-Hulud (CVE-2026-45321)

Ver Repositório
117há 4 mesesAinda não revisado
Compartilhar

Ataque à Cadeia de Suprimentos Mini Shai-Hulud — Verificador de IOC

curl -fsSL https://raw.githubusercontent.com/nkopylov/tanscript-exploit-check/main/check-tanstack-exploit.sh | bash

Ou clone e execute localmente:

git clone https://github.com/nkopylov/tanscript-exploit-check.git
cd tanscript-exploit-check
./check-tanstack-exploit.sh [project_dir ...]

O que aconteceu

Este verificador cobre duas ondas da campanha de ataque à cadeia de suprimentos Mini Shai-Hulud pela TeamPCP:

Onda 1: Comprometimento do CI/CD do TanStack (11 de maio de 2026)

Em 11 de maio de 2026 (19:20-19:26 UTC), um atacante publicou 84 versões maliciosas em 42 pacotes npm @tanstack/* em uma janela de 6 minutos. O ataque também atingiu pacotes da Mistral AI, UiPath, OpenSearch e outros — mais de 170 pacotes no total entre npm e PyPI.

Nenhuma credencial de mantenedor foi roubada. O atacante explorou a própria cadeia de confiança do CI/CD por meio de um ataque em 3 estágios:

  1. Exploração de pull_request_target — Um fork descartável do GitHub abriu um PR que executou código do atacante no contexto de segurança do repositório base
  2. Envenenamento de cache do GitHub Actions — O código do fork envenenou o cache compartilhado do pnpm, que posteriormente infectou fluxos de trabalho de lançamento legítimos
  3. Extração de token OIDC da memória do processo — O código malicioso extraiu tokens de publicação npm diretamente da memória do runner do GitHub Actions, produzindo pacotes com atestados de proveniência SLSA Build Level 3 válidos

Onda 2: Invasão da conta npm "atool" (19 de maio de 2026)

Em 19 de maio de 2026 (01:39-02:06 UTC), a conta npm comprometida atool ([email protected]) publicou 637 versões maliciosas em 314 pacotes em duas ondas automatizadas. Alvos de alto impacto incluem:

  • size-sensor (4.2M downloads/mês)
  • echarts-for-react (3.8M downloads/mês)
  • @antv/scale (2.2M downloads/mês)
  • timeago.js (1.15M downloads/mês)

Esta onda usou um payload baseado em Bun (index.js de 498KB) acionado via "preinstall": "bun run index.js", com um payload de segundo estágio oculto em commits impostores enviados para o repositório GitHub antvis/G2 através da exploração de compartilhamento de objeto fork.

O que o código malicioso faz (ambas as ondas)

Ambas as ondas usam a mesma família de ferramentas "Mini Shai-Hulud":

  • Coleta de credenciais: Mais de 80 variáveis de ambiente, cadeia completa da AWS (env → config → IMDSv2 → ECS → Secrets Manager), PATs do GitHub, tokens npm, chaves SSH, tokens K8s, tokens Vault, gerenciadores de senhas (1Password, Bitwarden, pass, gopass)
  • Persistência: Daemons gh-token-monitor (Onda 1) e kitty-monitor (Onda 2) via LaunchAgent/systemd; hooks em .claude/settings.json e .vscode/tasks.json
  • Exfiltração: Redes P2P (Onda 1), API Git Data do GitHub + HTTPS disfarçado como traces OpenTelemetry (Onda 2)
  • Abuso de CI/CD: Injeção em workflow despejando toJSON(secrets), troca de token OIDC npm
  • Chave de homem morto: rm -rf ~/ se o token do GitHub for revogado enquanto o daemon estiver ativo
  • C2 via Dead-drop (Onda 2): Consulta a API de busca de commits do GitHub pela palavra-chave firedalazer, comandos assinados com RSA-PSS

O que este script verifica

#VerificaçãoDescrição
1Chave de homem mortoDaemons de persistência: gh-token-monitor (Onda 1), kitty-monitor (Onda 2)
2Processos maliciososNomes de processos conhecidos do atacante (ambas as ondas)
3Arquivos de payloadArquivos maliciosos conhecidos por nome e hash SHA-256 (4 hashes)
4Hooks do Claude CodeHooks injetados em .claude/settings.json + heurística genérica SessionStart
5Tarefas do VS CodeTarefas injetadas em .vscode/tasks.json + heurística genérica runOn: folderOpen
6GitHub ActionstoJSON(secrets) em qualquer workflow + aviso de pull_request_target
7Lockfiles npmVersões de pacotes comprometidas em lockfiles
8optionalDependencies@tanstack/setup e @antv/setup maliciosos + 4 SHAs de commit impostores
9Conexões de redeConexões ativas com infraestrutura C2 (5 domínios/IPs)
10Cache DNSResolução anterior de domínios do atacante (4 domínios)
11Branches GitPadrão de nomeação de branch do atacante com tema Dune
12Scripts de ciclo de vidaHeurística: bun run em preinstall/postinstall (pacotes instalados)
13C2 via Dead-dropPalavra-chave firedalazer e marcadores "Shai-Hulud" no histórico git
14Dependências GitHubHeurística: Dependências github: fixadas em SHA de commit em optionalDeps

Pacotes afetados

Onda 1: TanStack (42 pacotes)

Apenas @tanstack/router* e @tanstack/start* foram afetados. NÃO afetados: @tanstack/query*, @tanstack/table*, @tanstack/form*, @tanstack/virtual*, @tanstack/store.

PacoteVersões maliciosasPrimeira versão segura
@tanstack/react-router1.169.5, 1.169.81.169.9
@tanstack/router-core1.169.5, 1.169.81.169.9
@tanstack/vue-router1.169.5, 1.169.81.169.9
@tanstack/solid-router1.169.5, 1.169.81.169.9
@tanstack/react-start1.167.68, 1.167.711.167.72
@tanstack/router-plugin1.167.38, 1.167.411.167.42

Veja o aviso completo para todos os 42 pacotes.

Onda 2: Conta atool (314 pacotes)

Todos os pacotes publicados pelo usuário npm atool ([email protected]) receberam versões maliciosas em 19 de maio de 2026. Pacotes de alto impacto incluem:

PacoteDownloads mensais
size-sensor4.2M
echarts-for-react3.8M
@antv/scale2.2M
timeago.js1.15M

Além de 310+ pacotes principalmente no escopo @antv/* (@antv/g2, @antv/g6, @antv/l7, @antv/s2, @antv/x6, @antv/f2, etc.), ai-figure, timeago-react, jest-canvas-mock, jest-date-mock e outros.

Veja o artigo do SafeDep para a lista completa.

Remediação (se comprometido)

CRÍTICO: Desative a chave de homem morto ANTES de revogar qualquer token. O malware limpa $HOME se os tokens forem revogados enquanto o daemon estiver ativo.

  1. Elimine os daemons de persistência (gh-token-monitor E kitty-monitor) e remova os serviços LaunchAgent/systemd
  2. Remova os arquivos de persistência (.claude/router_runtime.js, .vscode/setup.mjs, ~/.local/share/kitty/cat.py, /var/tmp/.gh_update_state, etc.)
  3. Exclua node_modules e lockfiles, reinstale com --ignore-scripts
  4. Rotacione TODAS as credenciais (npm, GitHub, AWS, GCP, chaves SSH, tokens Vault, tokens de gerenciadores de senhas, etc.)
  5. Bloqueie domínios do atacante no nível de DNS/firewall (api.masscan.cloud, filev2.getsession.org, git-tanstack.com, t.m-kosche.com)
  6. Audite logs do provedor de nuvem para 11 a 19 de maio de 2026

Anúncios oficiais e referências

Onda 1: TanStack (11 de maio)

  • CVE-2026-45321 (CVSS 9.6 Crítico) — Registro CVE
  • GHSA-g7cv-rxg3-hmpx — Aviso GitHub
  • TanStack Postmortem — tanstack.com/blog/npm-supply-chain-compromise-postmortem
  • TanStack Hardening Follow-up — tanstack.com/blog/incident-followup
  • Issue de rastreamento GitHub — TanStack/router#7383

Onda 2: Invasão da conta atool (19 de maio)

Baixar ferramenta