Actualitésecuritysupply-chainlitellm

Attaque supply chain sur LiteLLM : ce qui s'est passé et comment s'en protéger

Le 24 mars 2026, litellm a été compromis sur PyPI par TeamPCP. Ce qui s'est passé, qui est concerné et les pratiques qui protègent une stack IA.

5 min de lecturePublié le 26 mars 2026Mis à jour le 30 octobre 2026

Geoffrey Harrazi

Directeur produit · Cofondateur Idun Group

En-tête : LiteLLM, téléchargé plus de 3 millions de fois par jour, a été compromis sur PyPI le 24 mars 2026.

Le 24 mars 2026, le package Python litellm, l'un des outils les plus utilisés de l'écosystème LLM avec plus de 3 millions de téléchargements par jour, a été compromis directement sur PyPI. L'attaque, attribuée au groupe TeamPCP, compte parmi les plus sophistiquées jamais observées dans l'univers de l'IA open source.

Dans cet article, nous revenons sur ce qui s'est passé, sur ce que cela implique et sur les pratiques de sécurité qui protègent une stack IA.

Ce qui s'est passé

Le 24 mars, entre 10h39 et 16h00 UTC, deux versions malveillantes de litellm ont été publiées sur PyPI : les versions 1.82.7 et 1.82.8. Elles contenaient une charge malveillante en plusieurs étapes, d'une sophistication extrême.

L'attaque a commencé par la compromission de Trivy, un scanner de sécurité très répandu dans les pipelines CI/CD. Les attaquants ont exploité une GitHub Action du pipeline CI/CD de LiteLLM pour dérober les identifiants PyPI du projet. Une fois ces identifiants en main, TeamPCP a publié directement des versions du package contenant une backdoor.

Une charge malveillante en trois étapes

Le malware embarqué dans les versions compromises n'avait rien d'un simple script malveillant. Il s'agissait d'une attaque en trois étapes, conçue pour maximiser l'exfiltration de données et la persistance.

Étape 1 : vol d'identifiants à grande échelle. Le malware scannait puis exfiltrait les clés SSH, les identifiants cloud (AWS, GCP, Azure), les secrets Kubernetes, les portefeuilles de cryptomonnaies et tous les fichiers .env présents sur la machine. Autrement dit, tout ce qui donne accès à des systèmes sensibles.

Étape 2 : mouvement latéral dans Kubernetes. Une fois les secrets Kubernetes récupérés, le malware déployait automatiquement des pods privilégiés sur chaque nœud du cluster. Objectif : étendre l'attaque à toute l'infrastructure.

Étape 3 : backdoor persistante. Un service systemd malveillant (sysmon.service) était installé et configuré pour interroger régulièrement un serveur de commande (checkmarx[.]zone/raw) afin de télécharger et d'exécuter des binaires supplémentaires. Même après la mise à jour du package, la backdoor restait active.

Qui est concerné ?

Toute personne ou organisation ayant exécuté pip install litellm ou pip install --upgrade litellm le 24 mars entre 10h39 et 16h00 UTC sans version épinglée est potentiellement compromise. Une dépendance épinglée sur 1.82.7 ou 1.82.8 l'est aussi. Avec 3 millions de téléchargements quotidiens, même une fenêtre de quelques heures représente des dizaines de milliers d'installations potentiellement touchées.

En revanche, les utilisateurs de l'image Docker officielle LiteLLM Proxy n'ont pas été touchés : cette image utilise des dépendances verrouillées dans un fichier requirements.txt.

Ce qui protège une stack qui embarque LiteLLM

Une stack peut embarquer LiteLLM sans avoir été exposée à cette attaque. Cinq pratiques font la différence.

Des versions de packages strictement épinglées

Chaque dépendance est épinglée à une version exacte dans les fichiers de configuration. On ne lance jamais pip install litellm sans préciser une version exacte et vérifiée. Résultat : même si une version malveillante est publiée sur PyPI, le pipeline ne la récupère jamais automatiquement.

Un audit de sécurité à chaque release

Avant chaque déploiement, un audit complet des dépendances : vérification des hashes des packages, détection des anomalies dans les mises à jour, recoupement avec les bases de vulnérabilités connues. Une mise à jour inattendue déclenche alors une alerte immédiate.

Des builds reproductibles et auditables

Des builds déterministes : pour une même configuration, le résultat est toujours identique. Toute altération de la chaîne de build se détecte, et ce qui est testé est exactement ce qui est déployé.

Aucune mise à jour automatique en production

Beaucoup d'organisations utilisent des plages de versions (>=1.82.0) ou des mises à jour automatiques. La règle inverse : aucune dépendance mise à jour en production sans validation manuelle préalable. C'est cette discipline qui protège des attaques supply chain.

L'isolation des environnements

Chaque composant est isolé. Même si un package compromis était installé, une séparation stricte des privilèges et des réseaux limite le rayon d'impact.

Ce qu'il faut retenir

Cette attaque n'est pas un incident isolé. Elle signale une tendance qui ne fera que s'accélérer. L'écosystème IA/LLM est devenu une cible de choix pour les attaquants, et les attaques supply chain en sont le vecteur le plus efficace.

Voici les pratiques que nous recommandons à toute organisation qui déploie des agents IA en production.

Épinglez systématiquement vos dépendances. Utilisez des versions exactes, pas des plages. Vérifiez les hashes. Ne faites jamais confiance à « la dernière version ».

Auditez vos dépendances avant chaque déploiement. Utilisez des outils comme pip-audit, Snyk ou Dependabot, sans vous reposer uniquement sur eux. Une revue manuelle des changements critiques reste indispensable.

Sécurisez vos pipelines CI/CD. L'attaque contre LiteLLM a commencé par la compromission de Trivy dans le pipeline CI/CD. Vos outils de sécurité peuvent eux-mêmes devenir le vecteur d'attaque. Appliquez le principe du moindre privilège à chaque étape de votre pipeline.

Isolez vos environnements. Ne donnez pas à vos agents IA un accès illimité au réseau ou aux secrets. Utilisez des sandboxes, des politiques réseau et une séparation stricte des rôles.

Surveillez en continu. Un package compromis peut avoir des effets persistants (comme la backdoor systemd de cette attaque). La détection en temps réel des comportements anormaux est essentielle.

Conclusion

L'open source est formidable, et LiteLLM est un excellent outil. Mais déployer des composants open source en production sans gouvernance, c'est jouer à la roulette russe avec vos données et celles de vos clients. La question n'est pas de savoir si une attaque supply chain touchera votre stack IA, mais quand.


Sources :

Cet article vous a-t-il été utile ?

À propos de l'auteur

Geoffrey Harrazi« geoffrey »

Directeur produit · Cofondateur Idun Group

Directeur produit et cofondateur d'Idun Group. Produit, business et ventes. Ancien LVMH. Porte Idun Cockpit, qui mesure l'usage réel de l'IA déjà déployée en entreprise : licences, assistants et agents.

LinkedInSite23 articles publiés

Recevez nos guides sur la valeur de l'IA chaque mois

Retours de terrain sur l'usage réel de l'IA en entreprise : adoption, coûts, ce qu'elle rapporte et quoi en faire. Pas de spam, jamais, promis.

1 email par mois. Pas plus.

Désinscription à tout moment, par le lien présent dans chaque envoi. Vos données : politique de confidentialité