Logo TecMundo
Segurança

Família de vírus Shai-Hulud volta ao ataque, compromete GitHub e dezenas de pacotes npm

Pesquisadores identificaram nova campanha da família Mini Shai-Hulud, Miasma e Hades que contaminou 23 pacotes npm, abusou de workflows do GitHub Actions e chegou ao ecossistema Go pela primeira vez.

Avatar do(a) autor(a): Cecilia Ferraz

schedule26/06/2026, às 18:45

Pesquisadores de segurança identificaram uma nova onda de ataques da família de malware Mini Shai-Hulud, Miasma e Hades, que comprometeu dezenas de pacotes npm e chegou ao ecossistema Go pela primeira vez. A campanha foi detectada em 24 de junho de 2026 e tem o GitHub como eixo central de propagação, afetando pipelines de CI/CD, repositórios e ferramentas de desenvolvimento automatizado.

O objetivo continua o mesmo das ondas anteriores. Os atacantes roubam credenciais de desenvolvedores para se propagar por registros de pacotes, repositórios e ambientes de integração contínua.

smart_display

Nossos vídeos em destaque

Conta comprometida permitiu publicação maliciosa em seis segundos

A suspeita é que os atacantes obtiveram acesso a uma conta npm associada ao LeoPlatform, identificada pelo nome de usuário "czirker". Com o token dessa conta em mãos, eles publicaram versões contaminadas de múltiplos pacotes em uma janela de apenas seis segundos.

Ao todo, 23 pacotes foram afetados, incluindo leo-sdk, leo-aws, leo-cli, rstreams-metrics e serverless-leo. Três outros pacotes foram publicados por um segundo usuário comprometido, identificado como "llxlr".

Miasma Mini Shai-Hulud (4).png
Scanner da Socket flagra o módulo Go github.com/verana-labs/verana-blockchain como malware confirmado, identificando o arquivo .claude/index.js como um loader JavaScript de alto risco que reconstrói e executa código oculto via eval() — padrão característico da família Miasma. Imagem: Socket.

Como o malware é ativado durante a instalação

Os pacotes maliciosos usam uma técnica chamada "Phantom Gyp". Em vez de adicionar scripts visíveis no arquivo package.json, os atacantes incluem um arquivo chamado binding[.]gyp. O npm executa esse arquivo automaticamente durante a instalação, o que permite rodar código arbitrário sem levantar suspeitas imediatas.

O loader resultante baixa e instala o runtime Bun caso ele não esteja presente, e então executa o payload principal. O uso do Bun é estratégico, isso porque muitos sistemas de segurança focados em Node.js não monitoram execuções via Bun com a mesma profundidade.

Miasma Mini Shai-Hulud (3).png
Diff do workflow validate.yml do repositório codfish/semantic-release-action após a correção do ataque: a mudança de pull_request_target para pull_request eliminou uma vulnerabilidade do tipo "pwn request", que permitia a execução de código não confiável de pull requests em um contexto privilegiado do repositório base. Imagem: Socket.

GitHub Actions é alvo prioritário da campanha

Os GitHub Actions são o principal vetor de persistência nessa onda. O malware implanta um workflow chamado "Run Copilot" — nome escolhido para se misturar com ferramentas de IA — e o usa para capturar segredos diretamente da memória do runner de CI/CD. As informações coletadas são enviadas a repositórios públicos no GitHub.

O malware também varre o ambiente em busca de tokens do npm e PyPI, chaves SSH, configurações do Kubernetes, credenciais de AWS, Azure e GCP, além de histórico do shell. Ele verifica a presença de ferramentas de segurança como CrowdStrike e Microsoft Defender, e inclui uma verificação de idioma russo para encerrar a execução caso detecte esse ambiente.

Marcador único conecta ataques a um mesmo grupo

Uma das evidências que vinculam todas as atividades a um mesmo grupo operacional é o marcador "RevokeAndItGoesKaboom". Esse identificador aparece tanto nos pacotes maliciosos do LeoPlatform quanto em um ataque separado ao GitHub Action "codfish/semantic-release-action", documentado pela empresa StepSecurity.

Miasma Mini Shai-Hulud (2).png
Fluxo de execução da campanha Miasma Mini Shai-Hulud, da instalação silenciosa via binding.gyp até a exfiltração criptografada de credenciais pelo GitHub API, passando pelo abuso de GitHub Actions e pela persistência em assistentes de IA como Claude e VS Code. Imagem: Socket.

Nesse incidente, também ocorrido em 24 de junho, os atacantes forçaram commits maliciosos no repositório e redirecionaram tags de versão para o código comprometido. Qualquer pipeline que executasse esses workflows depois do ataque rodava diretamente o código dos atacantes. Mais de 1.400 repositórios no GitHub dependem desse Action, o que amplia o potencial de impacto.

Expansão para o Go marca novidade na campanha

Pela primeira vez, a campanha se estendeu além do npm. Pesquisadores da Socket identificaram o mesmo payload no módulo Go “github[.]com/verana-labs/verana-blockchain”. Nesse caso, a execução não depende do mecanismo padrão de instalação de módulos Go. O gatilho observado é uma tarefa configurada no VS Code que roda automaticamente ao abrir a pasta do projeto.

Isso significa que um desenvolvedor pode clonar o repositório, abrir no editor e disparar o malware sem instalar nada via gerenciador de pacotes.

Miasma Mini Shai-Hulud (1).png
Plataforma Socket exibe alerta de malware confirmado para o pacote leo-aws na versão 2.0.4, vinculando a versão comprometida ao ataque em cadeia "Miasma Mini Shai-Hulud Supply Chain Attack" e registrando pontuação zero em segurança de cadeia de suprimentos. Imagem: Socket.

Hooks em assistentes de IA ampliam superfície de ataque

A família Miasma também planta ganchos de execução em ferramentas como Claude, Cursor, Copilot e Gemini. Isso transforma um repositório comprometido em uma armadilha de execução tardia. Um desenvolvedor que clonar o repositório depois da remoção dos pacotes maliciosos ainda pode ativar o payload ao abrir o projeto em um assistente de código com IA.

Por isso, a recomendação dos pesquisadores vai além de remover as versões comprometidas. É necessário auditar repositórios em busca de workflows injetados, hooks de agentes de IA e arquivos como .github/setup.js, além de rotacionar todas as credenciais expostas a partir de uma máquina limpa.

Acompanhe o TecMundo nas redes sociais. Inscreva-se em nossa newsletter e canal do YouTube.

star

Continue por aqui