Source: SentinelOne (Flash Report, 25 novembre 2025) — Ce rapport Wayfinder TLP:Green analyse une nouvelle vague de compromission de paquets NPM baptisée « Sha1-Hulud » (démarrée autour du 21 novembre 2025), présentant des capacités accrues par rapport à l’attaque « Shai Hulud » précédente.

🚨 Nature de l’attaque et vecteur

  • Type d’attaque: attaque supply chain NPM avec exécution en phase preinstall (au lieu de postinstall).
  • Composants: téléchargement du runtime légitime Bun (curl/PowerShell) puis exécution de bun_environment.js (JavaScript obfusqué ajouté aux paquets compromis).
  • Packages affectés: plusieurs projets populaires, dont Postman, Zapier, AsyncAPI (liste complète référencée par SentinelOne).

🧠 Exécution, persistance et exfiltration

  • Fichiers créés pour l’exfiltration: cloud.json, contents.json, environment.json, truffleSecrets.json.
  • Persistance: ajout d’un workflow .github/workflows/discussion.yaml contenant une vulnérabilité d’injection; un message dans les Discussions GitHub peut déclencher l’exécution de code sur l’hôte infecté.
  • Mécanisme d’implantation: enregistrement d’un runner GitHub Actions self-hosted baptisé SHA1HULUD (Linux/Windows/macOS), lancé en mode non interactif.

🎯 Impact et objectifs

  • Vol de secrets cloud: collecte de secrets AWS, GCP et Azure (stockés notamment dans cloud.json — le fichier peut être vide selon les cas).
  • Vol de secrets de développement: usage de Trufflehog pour extraire des secrets et tokens (GitHub, NPM), comme dans l’attaque « Shai-Hulud » précédente.
  • Conséquences: vol de propriété intellectuelle et de code privé, et potentielle mouvance latérale dans les environnements cloud; exécution de code sur des hôtes de développement.

🔍 Détection et chasse (posture SentinelOne)

  • EPP: détection comportementale d’exécutions de scripts/p paquets malveillants, modifications non autorisées CI/CD, abus d’identifiants/élévations, installations runtime suspectes et exécutions réseau.
  • Règles de détection:
    • Détection d’exécutions de paquets NPM malveillants liés à Shai-Hulud
    • Écriture non autorisée de workflows GitHub Actions et déploiement de payloads
    • Installation distante du runtime Bun
    • Enregistrement automatisé de runners GitHub --name SHA1HULUD en mode --unattended
  • Hunting queries: recherche de --name SHA1HULUD/--unattended --token, hash et taille anormale (>7 Mo) de bun_environment.js.

🧾 IOCs et TTPs

  • IOC (SHA1 de bun_environment.js):
    • 3d7570d14d34b0ba137d502f042b27b0f37a59fa
    • d60ec97eea19fffb4809bc35b91033b52490ca11
    • 8de87cf4fbdd1b490991a1ceb9c1198013d268c2
    • f37c6179739cf47e60280dd78cb1a86fd86a2dcf
    • 91429fbfef99fa52b6386d666e859707a07844b2
    • ba08d2fcc6cd1c16e4022c5b7af092a4034ceedc
  • TTPs (extraits):
    • Abus de scripts NPM preinstall
    • Téléchargement/installation de Bun via curl/PowerShell
    • Exécution de bun_environment.js obfusqué
    • Persistance via workflow .github/workflows/discussion.yaml avec injection
    • Enregistrement de runners self-hosted GitHub Actions (SHA1HULUD)
    • Exfiltration de secrets (AWS/Azure/GCP, GitHub/NPM) et usage de Trufflehog

🛠️ Recommandations (selon le rapport)

  • Activer les règles de détection de la plateforme et les mises à jour Live de l’agent.
  • Retirer/remplacer les paquets compromis; pinner les versions; désactiver les scripts postinstall en CI si possible.
  • Révoquer/régénérer les tokens NPM, secrets GitHub, clés SSH et identifiants cloud; appliquer MFA matérielle pour comptes dev/CI/CD.

Conclusion: Il s’agit d’une analyse de menace (Flash Report) détaillant une variante d’attaque supply chain NPM, ses mécanismes, son impact et les artefacts de détection/hunting associés, afin d’informer sur la détection et la mitigation.

🧠 TTPs et IOCs détectés

TTP

[‘Abus de scripts NPM preinstall’, ‘Téléchargement/installation de Bun via curl/PowerShell’, ‘Exécution de bun_environment.js obfusqué’, ‘Persistance via workflow .github/workflows/discussion.yaml avec injection’, ‘Enregistrement de runners self-hosted GitHub Actions (SHA1HULUD)’, ‘Exfiltration de secrets (AWS/Azure/GCP, GitHub/NPM) et usage de Trufflehog’]

IOC

[‘3d7570d14d34b0ba137d502f042b27b0f37a59fa’, ‘d60ec97eea19fffb4809bc35b91033b52490ca11’, ‘8de87cf4fbdd1b490991a1ceb9c1198013d268c2’, ‘f37c6179739cf47e60280dd78cb1a86fd86a2dcf’, ‘91429fbfef99fa52b6386d666e859707a07844b2’, ‘ba08d2fcc6cd1c16e4022c5b7af092a4034ceedc’]


🔗 Source originale : https://www.sentinelone.com/blog/defending-against-sha1-hulud-the-second-coming/