Les dépôts de code open source sont une nouvelle fois ciblés par des acteurs malveillants. Une vaste opération, repérée sous le nom de code Shai-Hulud, a visé le registre Python Package Index (PyPI) en y publiant dix-neuf paquets piégés conçus pour s'exécuter automatiquement au moment de leur installation et dérober les informations d'identification.

Les paquets en question usurpaient l'identité de bibliothèques légitimes utilisées dans les domaines de la science, de l'intelligence artificielle et de l'analyse de données. Bien que leurs noms aient été modifiés pour ressembler à des outils connus, ils contenaient en réalité un code malicieux activé dès la commande d'installation. Ce code ouvrait une porte dérobée puis déployait un voleur de mots de passe capable de collecter les identifiants stockés dans les navigateurs web ainsi que les tokens d'authentification.

Un mécanisme d'exécution furtive

L'un des aspects les plus sophistiqués de cette campagne réside dans sa méthode d'exécution. Contrairement à de nombreuses attaques reposant sur des scripts post-installation évidents, les pirates ont intégré leur charge utile de manière à ce qu'elle soit lancée silencieusement. Des chercheurs en cybersécurité ont décrit le procédé comme un « bun dropper », un embryon de code qui, une fois exécuté, téléchargeait et installait un logiciel malveillant plus complet, spécialisé dans le vol d'identifiants.

Ce programme malveillant, parfois désigné sous le nom de « Hades » ou « Shai-Hulud » selon les analyses, cherchait ensuite à exfiltrer les données vers des serveurs contrôlés par les attaquants. Les paquets ont été publiés sur PyPI entre la fin de l'année 2025 et le début de l'année 2026.

Une liste de paquets contaminés

Parmi les paquets frauduleux identifiés, on trouve des noms conçus pour tromper les développeurs : des variantes de bibliothèques populaires comme tensorflow-gpu, torchvision-gpu, pandas-viz, scikit-learn-extra, openai-utils, llama-inference, huggingface-cli, langchain-community, transformers-extra, jupyter-ai, anaconda-helper, pip-toolbox, setuptools-extra, wheel-utils, pyyaml-extra, numpy-toolkit, scipy-utils, matplotlib-extra et flask-ai.

La réaction de l'équipe PyPI

Alertés par des signalements, les administrateurs du registre PyPI ont rapidement supprimé les dix-neuf paquets incriminés de la plateforme. Le gestionnaire de l'infrastructure a confirmé que les modules dangereux n'étaient plus accessibles en téléchargement. Cependant, tout développeur ayant installé l'un de ces paquets avant leur retrait pourrait toujours avoir un système compromis.

Les experts recommandent aux utilisateurs de vérifier leurs environnements de développement et leurs serveurs pour détecter toute trace de ces paquets, et de changer immédiatement les mots de passe et les tokens qui auraient pu être exposés.

Un rappel des risques de la chaîne d'approvisionnement

Cette attaque s'inscrit dans une tendance de plus en plus fréquente : l'empoisonnement des dépôts de paquets logiciels. Les chercheurs soulignent que les bibliothèques scientifiques et d'intelligence artificielle sont devenues des cibles privilégiées, car elles attirent un grand nombre d'utilisateurs et bénéficient souvent d'une confiance implicite de la part des développeurs qui les intègrent dans leurs projets.

La nature même de PyPI, qui autorise la publication sans vérification systématique du contenu, offre un terrain favorable à ce type d'infiltration. Les autorités et les équipes de sécurité maintiennent une surveillance constante du registre pour identifier et neutraliser ces menaces le plus rapidement possible.

L'importance de la vigilance

Pour se prémunir contre de telles attaques, il est conseillé aux développeurs de vérifier minutieusement les noms des paquets qu'ils installent, de privilégier les sources officielles et de consulter les signatures numériques lorsqu'elles sont disponibles. L'utilisation d'outils d'analyse de dépendances et la mise en place de politiques de sécurité strictes au sein des équipes de développement peuvent également réduire les risques.

Bien que les paquets malveillants aient été retirés, les experts estiment que de nouvelles variantes pourraient apparaître. La vigilance collective de la communauté open source reste la meilleure défense contre ce type de menaces.