Banco de Dados de Ameaças Malware Mini Shai-Hulud Worm

Mini Shai-Hulud Worm

O grupo de ameaças conhecido como TeamPCP foi associado a uma sofisticada campanha de ataques à cadeia de suprimentos, visando pacotes npm e PyPI amplamente utilizados e associados a empresas como TanStack, UiPath, Mistral AI, OpenSearch, Guardrails AI e diversos outros ecossistemas. A operação, vinculada à campanha de malware Mini Shai-Hulud, demonstra uma escalada significativa no abuso da cadeia de suprimentos de software e em técnicas de comprometimento de identidade.

Pesquisadores identificaram que pacotes npm maliciosos foram modificados para incluir um componente JavaScript ofuscado chamado router_init.js. Essa carga maliciosa cria perfis de ambientes infectados e implanta um avançado programa de roubo de credenciais, visando provedores de nuvem, carteiras de criptomoedas, ferramentas de desenvolvimento de IA, plataformas de mensagens, sistemas de CI/CD e ambientes do GitHub Actions. Os dados exfiltrados são transmitidos principalmente para o domínio filev2.getsession.org.

O uso da infraestrutura do Protocolo de Sessão evidencia uma tentativa deliberada de burlar os controles de segurança corporativos. Como o domínio pertence a uma plataforma de mensagens descentralizada e focada em privacidade, é menos provável que seja bloqueado pelas defesas de rede tradicionais. Como método secundário de exfiltração, os dados criptografados são enviados para repositórios controlados pelo atacante por meio da API GraphQL do GitHub, utilizando tokens de autenticação do GitHub roubados, sob a identidade do autor claude@users.noreply.github.com.

Mecanismos de persistência e expansão do roubo de credenciais

O malware introduz diversas funcionalidades de persistência e vigilância, concebidas para manter o acesso a longo prazo a ambientes de desenvolvimento comprometidos. Ganchos de persistência são estabelecidos no Claude Code e no Microsoft Visual Studio Code, permitindo que o malware sobreviva a reinicializações do sistema e seja reiniciado automaticamente sempre que as IDEs forem abertas.

Além disso, um serviço gh-token-monitor é implantado para monitorar e reexfiltrar continuamente tokens do GitHub. Dois fluxos de trabalho maliciosos do GitHub Actions também são injetados em repositórios comprometidos. Esses fluxos de trabalho serializam segredos do repositório em formato JSON e enviam os dados para o endpoint externo api.masscan.cloud.

A mais recente violação de segurança do TanStack difere significativamente de incidentes anteriores na cadeia de suprimentos. Em vez de depender de um gancho de pré-instalação, os atacantes incorporaram um arquivo JavaScript malicioso diretamente nos arquivos tar de pacotes, introduzindo uma dependência opcional vinculada a um pacote hospedado no GitHub. Essa dependência contém um gancho de ciclo de vida de preparação que executa o payload por meio do ambiente de execução Bun.

Os pacotes do Mistral AI infectados por um trojan adotaram uma estratégia de infecção mais antiga, modificando o arquivo package.json com um gancho de pré-instalação que invoca o arquivo node setup.mjs. Esse processo baixa o Bun e executa o mesmo malware de roubo de credenciais.

CVE-2026-45321 e o abuso da publicação confiável

A vulnerabilidade no TanStack foi oficialmente identificada como CVE-2026-45321 e recebeu uma pontuação CVSS crítica de 9,6. Os investigadores confirmaram que 42 pacotes e 84 versões dentro do ecossistema TanStack foram afetados.

A análise revelou que a vulnerabilidade teve origem em um ataque encadeado ao GitHub Actions, explorando o gatilho `pull_request_target`, o envenenamento do cache do GitHub Actions e a extração em tempo de execução de tokens OIDC dos executores do GitHub Actions. Os atacantes supostamente inseriram payloads maliciosos por meio de commits órfãos em forks do GitHub antes de injetá-los em arquivos tar.gz de pacotes npm. Em seguida, os atacantes sequestraram fluxos de trabalho legítimos do TanStack/router para publicar pacotes comprometidos com atestados de proveniência SLSA válidos.

Este desenvolvimento marca uma escalada histórica nos ataques à cadeia de suprimentos de software. Os pacotes maliciosos continham assinaturas de procedência SLSA Build Level 3 válidas, tornando este o primeiro worm npm documentado capaz de distribuir pacotes maliciosos com atestados de compilação autênticos. A campanha de malware posteriormente se expandiu para além do TanStack e se espalhou para ecossistemas mantidos pela UiPath, DraftLab e outros desenvolvedores.

A operação explorou gravemente fluxos de trabalho de publicação confiáveis. Em vez de roubar credenciais do npm diretamente, o código controlado pelo atacante, executado dentro de pipelines de CI/CD confiáveis, utilizou permissões OIDC para gerar tokens de publicação de curta duração durante o processo de compilação. Isso permitiu que pacotes maliciosos fossem publicados por meio de pipelines de lançamento legítimos, burlando as medidas de segurança de autenticação convencionais.

Comportamento de autopropagação de vermes gera alarme

Um dos aspectos mais perigosos da campanha Mini Shai-Hulud é seu modelo de propagação semelhante a um verme. O malware busca ativamente por tokens npm publicáveis configurados com bypass_2fa=true, enumera os pacotes mantidos pelo desenvolvedor comprometido e troca tokens OIDC do GitHub por tokens de publicação por pacote. Esse mecanismo permite que o malware se espalhe lateralmente pelos ecossistemas de pacotes sem depender de técnicas tradicionais de roubo de credenciais.

O ataque também explorou configurações de confiança em nível de repositório dentro do modelo de editor confiável OIDC do GitHub. Como a confiança era concedida amplamente em nível de repositório, em vez de ser restrita a branches protegidas e arquivos de fluxo de trabalho específicos, execuções maliciosas de fluxo de trabalho, acionadas por commits órfãos, conseguiam solicitar tokens legítimos de publicação do npm.

Outra funcionalidade preocupante envolve a implementação de um "interruptor de homem morto". O malware instala um script shell que consulta repetidamente o endpoint api.github.com/user a cada 60 segundos para determinar se os tokens npm criados pelo atacante permanecem ativos. Esses tokens contêm a descrição ameaçadora "IfYouRevokeThisTokenItWillWipeTheComputerOfTheOwner" (Se você revogar este token, ele apagará o computador do proprietário).

Se os defensores revogarem o token através do painel do npm, o malware inicia uma rotina destrutiva executando `rm -rf ~/`, transformando efetivamente a infecção em um malware de limpeza de dados. Esse comportamento agressivo indica uma evolução substancial nas táticas operacionais do TeamPCP e demonstra uma sofisticação crescente em seus métodos coercitivos de persistência. Portanto, recomenda-se que as equipes de segurança isolem e criem imagens dos sistemas infectados antes de revogar as credenciais comprometidas do npm.

Pacotes afetados e impacto crescente no ecossistema

A campanha afetou mais de 170 pacotes no npm e no PyPI, totalizando mais de 518 milhões de downloads. Os investigadores também identificaram pelo menos 400 repositórios criados com credenciais roubadas, todos contendo a frase "Shai-Hulud: Here We Go Again".

Os pacotes afetados incluem:

guardrails-ai@0.10.1 (PyPI)
mistralai@2.4.6 (PyPI)
@opensearch-project/opensearch@3.5.3, 3.6.2, 3.7.0, 3.8.0
@squawk/mcp@0.9.5
@squawk/weather@0.5.10
@squawk/plano de voo@0.5.6
@tallyui/connector-medusa@1.0.1, 1.0.2, 1.0.3
@tallyui/connector-vendure@1.0.1, 1.0.2, 1.0.3

O malware também emprega múltiplos canais de exfiltração redundantes. Além da infraestrutura do Protocolo de Sessão e dos pontos de entrega ocultos do GitHub, as credenciais roubadas são transmitidas através do domínio com erro de digitação git-tanstack.com.

O malware PyPI introduz lógica destrutiva com geolocalização.

As variantes de malware baseadas em Python associadas aos pacotes maliciosos Mistral AI e Guardrails AI diferem substancialmente das cargas úteis em JavaScript distribuídas via npm. O pacote mistralai comprometido do PyPI baixa um programa para roubo de credenciais do host remoto 83.142.209.194.

Pesquisadores descobriram que o malware em Python contém lógica que leva em consideração a localização geográfica, projetada para evitar a execução em ambientes em russo. Ele também inclui um mecanismo destrutivo com geolocalização que introduz uma probabilidade de um em seis de executar o comando `rm -rf /` se o sistema infectado parecer estar localizado em Israel ou no Irã.

Esse comportamento demonstra uma evolução preocupante em direção à implantação de cargas destrutivas com reconhecimento regional em ecossistemas de pacotes de código aberto.

A crescente ameaça de ataques à cadeia de suprimentos motivados por identidade.

A campanha Mini Shai-Hulud reflete uma transformação mais ampla nos ataques modernos à cadeia de suprimentos. Em vez de se concentrarem apenas na violação de pacotes, os agentes de ameaças estão cada vez mais visando identidades confiáveis de CI/CD, fluxos de trabalho de publicação e pipelines de automação baseados em nuvem.

Uma vez que os atacantes obtêm acesso à infraestrutura de publicação de software, o próprio pipeline de desenvolvimento se torna o mecanismo de distribuição de malware. Como muitas ações maliciosas ocorrem por meio de fluxos de trabalho legítimos, atestados confiáveis e sistemas de lançamento autênticos, os controles de segurança tradicionais podem falhar na identificação de comportamentos maliciosos.

As principais características que definem essa nova geração de ataques à cadeia de suprimentos incluem:

  • Abuso de mecanismos de publicação confiável e troca de tokens OIDC
  • Propagação por meio de fluxos de trabalho CI/CD legítimos e sistemas de compilação.
  • Utilização de atestados SLSA válidos para disfarçar pacotes maliciosos
  • Operações de exfiltração e persistência de credenciais multicanal
  • Mecanismos de retaliação destrutivos concebidos para intimidar os defensores.

A expansão da campanha para ferramentas de IA, automação empresarial, infraestrutura de busca, desenvolvimento front-end, ferramentas relacionadas à aviação e ecossistemas de CI/CD demonstra o quão profundamente interconectadas se tornaram as cadeias de suprimentos de software. O monitoramento comportamental durante a instalação de pacotes e a execução de builds é agora cada vez mais crucial para detectar ameaças que, à primeira vista, parecem legítimas.

Tendendo

Mais visto

Carregando...