Un package PyTorch Lightning compromis sur PyPI distribue un malware voleur d'identifiants
Une version malveillante du package **PyTorch Lightning**, version 2.6.3, a récemment été découverte sur le **Python Package Index (PyPI)**. Le package compromis livrait une charge utile de vol d'identifiants ciblant des données sensibles stockées dans les navigateurs, les fichiers d'environnement et les services cloud.
Une version malveillante du package **PyTorch Lightning** publiée sur le **Python Package Index (PyPI)** distribue une charge utile de vol d'identifiants ciblant les navigateurs, les fichiers d'environnement et les services cloud.
Le développeur a révélé l'attaque de la chaîne d'approvisionnement le 30 avril, indiquant que la version 2.6.3 du package incluait une chaîne d'exécution cachée qui télécharge et exécute une charge utile JavaScript.
**PyTorch Lightning** est un framework d'apprentissage profond utilisé pour le pré-entraînement et le réglage fin des modèles d'IA. C'est un package populaire, totalisant plus de [11 millions de téléchargements](http://pypistats.org/packages/pytorch-lightning) le mois dernier.
L'avis de sécurité du mainteneur note que la chaîne d'exécution malveillante se déclenche automatiquement à l'importation et lance silencieusement un processus d'arrière-plan.

Ce processus télécharge un runtime JavaScript ('Bun v1.3.13') depuis GitHub, et exécute une charge utile JavaScript lourdement obfusquée de 11,4 Mo ('router_runtime.js').
Dans un article publié ce week-end, **Microsoft** Threat Intelligence a rapporté que **Defender** a détecté et empêché la routine malveillante dans les environnements clients, et a notifié le mainteneur du package.
### ShaiWorm Information Stealer
La charge utile, que **Defender** détecte comme « ShaiWorm », est un malware voleur d'informations qui cible les fichiers .env, les clés API, les secrets, les jetons GitHub et les données stockées dans les navigateurs Chrome, Firefox et Brave.
Il interagit également avec les API des services cloud (**AWS**, **Azure**, **GCP**) pour voler des identifiants et prend en charge l'exécution de commandes système arbitraires.
« lightning==2.6.3 (publié sur PyPI sous forme de wheel py3-none-any) contient une chaîne d'exécution cachée qui télécharge silencieusement un runtime JavaScript (Bun) et exécute une charge utile JavaScript lourdement obfusquée de 11,4 Mo lors de l'importation de lightning », indique **Lightning AI** dans l'[avis de sécurité](https://github.com/Lightning-AI/pytorch-lightning/issues/21689).
« Cette charge utile contient des fonctionnalités de vol d'identifiants ciblant les fournisseurs de cloud, les navigateurs et les fichiers d'environnement. »
### Impact limité, action immédiate requise
Selon la télémétrie de **Microsoft**, l'activité malveillante a affecté « un petit nombre d'appareils » et semble avoir été « limitée à un ensemble restreint d'environnements ».
**Lightning AI** avertit que les utilisateurs qui ont exécuté « import lightning » avec la version 2.6.3 pourraient avoir vu leurs secrets, clés et jetons compromis. Dans ce cas, une rotation immédiate de tous les secrets est fortement recommandée.
Actuellement, **PyTorch Lightning** a été rétabli à la version 2.6.1 sur **PyPi**, qui est sûre à utiliser.
### Enquête en cours
À l'heure actuelle, il n'est pas clair exactement comment le compromis de la chaîne d'approvisionnement s'est produit, et les éditeurs du package enquêtent actuellement sur la manière dont le pipeline de construction/libération a été violé.
De plus, toutes les autres versions récentes seront auditées pour des charges utiles similaires, et les utilisateurs seront informés par tous les canaux disponibles.