Aller au contenu
Sécurité medium

Shai-Hulud (écosystème AntV)

3 min de lecture
Point de compromission dans la chaîne Rupture · étape Registres
Source
amont
Dépendances
deps
Build & CI
ci
Packaging
artefact
Release
provenance
Registres
Registres
Déploiement
admission
Runtime
exécution
Rayon d'explosion — compromission à l'étape Registres, propagation possible aux consommateurs. Domaines : Orchestration, Poste de travail, Source, Intégration, Release, Secrets
Gravité critique
Nouvelle vague du ver Shai-Hulud frappant l'écosystème npm AntV : vol de credentials puis republication automatique en chaîne.
1,5 M/sem
dl de timeago.js
130+
chemins de secrets
2 200+
dépôts créés (tokens)
@antv
namespace compromis

En bref

Date
19/05/2026
Gravité
Critique
Étape de la chaîne
Registres
Domaines SOCLE
Orchestration+ Poste de travail, Source, Intégration, Release, Secrets

Que s'est-il passé ?

Contexte

Une vague du ver Mini Shai-Hulud frappe l'écosystème de visualisation AntV d'Alibaba : le compte npm compromis atool (qui publie timeago.js, 1,5 M dl/sem, et maintient @antv) pousse des versions malveillantes en cartographie, graphes et utilitaires JS.

Mécanisme

Chaque paquet lit la mémoire du runner GitHub Actions pour extraire les secrets CI/CD en clair, moissonne 130+ chemins (AWS, GCP, Azure, Kubernetes, Vault, wallets), puis exfiltre via un dead-drop dans le dépôt antvis/G2 et un C2 de repli (t.m-kosche.com, déguisé en collecteur OpenTelemetry).

Impact

Le ver exploite les jetons volés : plus de 2 200 dépôts GitHub publics déjà créés (noms tirés de Dune, mention « Shai-Hulud: Here We Go Again »), rendant le rayon d'explosion visible en temps réel. L'une des plus grandes campagnes npm documentées.

Parades

Identités de publication courtes (OIDC), détection de republication à l'échelle d'un namespace, filtrage de l'egress (dead-drop et C2), permissions minimales des runners, et rotation immédiate des secrets exposés.

Comment l'attaquant a procédé

Cet incident met en jeu les vecteurs d'attaque suivants du catalogue SOCLE ; chacun renvoie à sa fiche, où l'on trouve les exigences qui le neutralisent :

La leçon à en tirer

Ce qu'il faut retenir

Trusted publishing ; rotation d'urgence des secrets ; détection de republication anormale.

Les exigences SOCLE qui auraient limité cet incident

Cet incident se rattache à 23 exigences du référentiel, par domaine. Les satisfaire n'aurait pas forcément tout empêché, mais aurait réduit la probabilité de l'attaque, limité son impact ou accéléré sa détection :

Pour aller plus loin

Ce site vous est utile ?

Sachez que moins de 1% des lecteurs soutiennent ce site.

Je maintiens +700 guides gratuits, sans pub ni tracking. Un soutien, même symbolique, m'aide à couvrir l'hébergement et à garder ces ressources gratuites. Merci pour votre appui.

Le formulaire ne s'affiche pas ? Ouvrir Ko-fi dans un onglet.

Abonnez-vous et suivez mon actualité DevSecOps sur LinkedIn