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 tracing. Aujourd'hui, ce site ne couvre même pas mes frais d'hébergement, d'électricité, de matériel, de logiciels, mais surtout de cafés.

Un soutien régulier, même symbolique, m'aide à garder ces ressources gratuites et à continuer de produire des guides de qualité. Merci pour votre appui.

Abonnez-vous et suivez mon actualité DevSecOps sur LinkedIn