A cadeia de suprimentos de software enfrenta nova onda massiva de malware Shai Hulud v2que comprometeu 834 pacotes nos ecossistemas npm e Maven, afetando projetos como PostHog, Zapier e AsyncAPI. O ataque usa fluxos de trabalho do GitHub Actions, explorando gatilhos pull_request_target para inserir código malicioso e roubar tokens de automação, propagando infecção em larga escala.
Como funciona o ataque
O malware usa um carregador duplo iniciado pelo script setupbun.js, que instala o runtime Bun para executar o payload ofuscado (bunenvironment.js), suprimindo logs para evitar detecção. Após comprometer pipelines CI/CD, o Shai Hulud coleta credenciais (GITHUB_TOKEN, NPM_TOKEN, AWS_ACCESS_KEY_ID) e usa TruffleHog para varrer sistemas locais e nuvens (AWS, GCP, Azure) em busca de segredos. Os dados são codificados em Base64 três vezes e enviados para repositórios GitHub criados com tokens roubados, identificados pela frase “Sha1-Hulud: The Second Coming”.
Propagação tipo worm e impacto
Uma vez dentro, o malware modifica código-fonte, incrementa versões de patch e republica pacotes infectados automaticamente — até 100 pacotes de uma vez — criando propagação exponencial. Pesquisadores do Socket.dev identificaram o mecanismo de persistência único: pesquisar no GitHub pela frase beacon para reinfectar endpoints limpos. O ataque escalou rapidamente, passando de 608 para 690 pacotes comprometidos em apenas um dia (25 de novembro), afetando 37 organizações.
“Interruptor do homem morto” destrutivo
Se o malware não conseguir propagar ou exfiltrar dados, execute a função Wiper que tenta excluir o diretório inicial completo do usuário. GitLab confirmou esse “kill switch” embutido que os dados de vingança quando canais de propagação são cortados.
Recomendações urgentes
- Desative scripts pós-instalação em ambientes npm para reduzir riscos.
- Desinstale ou corrija versões conhecidas como seguras até confirmação de patches selecionados.
- Audite ambientes CI/CD e máquinas de desenvolvedores que instalaram versões afetadas.
- Revogue imediatamente tokens npm, GitHub e credenciais de nuvem expostas.
- Monitore logs em busca de publicações npm suspeitas ou modificações não autorizadas de pacotes.
- Busque repositórios com o nome “Shai-Hulud” ou “Sha1-Hulud The Second Coming” nas organizações.
Essa evolução representa um marco perigoso em ataques automatizados à cadeia de suprimentos, expondo coleções de milhares de repositórios e exigindo resposta coordenada da comunidade de segurança.
