En bref
Que s'est-il passé ?
Le 30 avril 2026, le paquet PyPI lightning (Lightning AI, ex-PyTorch Lightning, framework deep learning très répandu) est compromis en versions 2.6.2 et 2.6.3.
À l'import, un thread démon télécharge silencieusement le runtime Bun depuis GitHub et exécute router_runtime.js (11 Mo obfusqué), caché dans un répertoire _runtime/.
Le malware vole jetons, credentials, variables d'env et secrets cloud, abuse l'API GitHub pour committer les données volées avec les identifiants de la victime, et infecte les tarballs npm présents sur la machine. Les environnements lightning détiennent souvent des secrets de clusters GPU et IAM cloud.
Épingler par version et hash, rotation des secrets, confiner l'exécution au import (sandbox), filtrer l'egress, et scanner les répertoires et fichiers cachés ajoutés.
Chronologie de l'attaque
lightning 2.6.1 est publié ; ce sera la dernière release propre avant la compromission.
Les versions 2.6.2 et 2.6.3 embarquent un voleur de credentials déclenché à l'import via le runtime Bun.
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
Pas de secrets en clair ; scan de secrets ; rotation et détection de fuite ; jetons courts.
Les exigences SOCLE qui auraient limité cet incident
Cet incident se rattache à 18 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 :