{"id":183962,"date":"2026-10-22T17:40:40","date_gmt":"2026-10-22T15:40:40","guid":{"rendered":"https:\/\/prohoster.info\/blog\/news\/v-pypi-paket-i-docker-obraz-s-litellm-podstavleno-vredonosnoe-po"},"modified":"2026-10-22T17:40:45","modified_gmt":"2026-10-22T15:40:45","slug":"malware-injected-into-litellm-pypi-package-and-docker-image","status":"publish","type":"post","link":"https:\/\/prohoster.info\/fr\/blog\/news\/malware-injected-into-litellm-pypi-package-and-docker-image","title":{"rendered":"Un logiciel malveillant a \u00e9t\u00e9 ins\u00e9r\u00e9 dans le paquet PyPI et l'image Docker de LiteLLM","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Une publication malveillante de la biblioth\u00e8que LiteLLM, qui compte 23 millions de t\u00e9l\u00e9chargements par semaine, a \u00e9t\u00e9 d\u00e9tect\u00e9e dans le d\u00e9p\u00f4t PyPI, ainsi qu'une injection de code malveillant dans l'image Docker officielle du projet. Ce n'est pas le premier incident de ce type avec LiteLLM : en mars de cette ann\u00e9e, des attaquants avaient d\u00e9j\u00e0 publi\u00e9 des versions malveillantes apr\u00e8s avoir intercept\u00e9 les identifiants de l'\u00e9diteur. Cette fois, les attaquants ont mis en ligne la version LiteLLM 1.107.0, qui contenait du code malveillant permettant l'ex\u00e9cution \u00e0 distance de commandes, ainsi que la recherche et l'envoi d'identifiants, cl\u00e9s et jetons d'acc\u00e8s.<\/p>\n<p>Le code malveillant a \u00e9t\u00e9 inject\u00e9 lors du processus de construction sans compromettre le d\u00e9p\u00f4t git. Apr\u00e8s l'installation, le code malveillant s'active avant l'importation de LiteLLM via l'installation des fichiers cook.pth, cook.py et sitecustomize.py dans le r\u00e9pertoire des biblioth\u00e8ques Python. Ces fichiers sont ex\u00e9cut\u00e9s \u00e0 chaque invocation de Python dans le syst\u00e8me sans qu'aucune action ne soit requise de la part de l'utilisateur. <\/p>\n<p>Au d\u00e9but, Python ex\u00e9cute le fichier cook.pth, qui ne contient qu'une seule ligne \u00ab import cook \u00bb pour importer le script cook.py, qui collecte des identifiants. Ensuite, le script sitecustomize.py est import\u00e9, utilis\u00e9 pour t\u00e9l\u00e9charger en arri\u00e8re-plan du code externe (les param\u00e8tres de t\u00e9l\u00e9chargement sont d\u00e9termin\u00e9s par le lien \u00ab raw.githubusercontent.com\/letters9813\/pythonclient-test\/main\/domain.txt \u00bb). Le code malveillant dans les deux scripts est compress\u00e9 via zlib et encod\u00e9 en Base64. Un indicateur de compromission peut \u00eatre l'apparition dans le syst\u00e8me des fichiers \u00ab \/tmp\/.pc_once_* \u00bb et \u00ab \/tmp\/remote_code_loader.lock \u00bb.<\/p>\n<p>Apr\u00e8s activation, le fichier cook.py scanne les param\u00e8tres de connexion aux services cloud, d\u00e9p\u00f4ts et syst\u00e8mes d'int\u00e9gration continue (AWS, Azure, Google Cloud, Kubernetes, Docker, GitHub CLI, Vault, Terraform, Packer), comptes de d\u00e9veloppeurs, param\u00e8tres de connexion \u00e0 Git, configurations npm et PyPI, fichiers d'environnement, cl\u00e9s priv\u00e9es pour SSH, PGP et TLS, param\u00e8tres d'outils AI, bases de donn\u00e9es de navigateurs avec des cookies, donn\u00e9es stock\u00e9es et historique, ainsi que des informations sur les processus et les variables d'environnement. Les donn\u00e9es d\u00e9couvertes sont chiffr\u00e9es \u00e0 l'aide des algorithmes AES-256-CBC + RSA-4096 et sont envoy\u00e9es sous forme de requ\u00eate de v\u00e9rification au site litellm.dev, cr\u00e9\u00e9 par les malfaiteurs.<br \/>\n<br \/>Source : <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=66525\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0417\u0430\u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0430 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044f \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 PyPI \u0432\u0440\u0435\u0434\u043e\u043d\u043e\u0441\u043d\u043e\u0433\u043e \u0432\u044b\u043f\u0443\u0441\u043a\u0430 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 LiteLLM, \u043d\u0430\u0441\u0447\u0438\u0442\u044b\u0432\u0430\u044e\u0449\u0435\u0439 23 \u043c\u043b\u043d \u0437\u0430\u0433\u0440\u0443\u0437\u043e\u043a \u0432 \u043d\u0435\u0434\u0435\u043b\u044e, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0434\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0432\u0440\u0435\u0434\u043e\u043d\u043e\u0441\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u0432 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 Docker-\u043e\u0431\u0440\u0430\u0437 \u043f\u0440\u043e\u0435\u043a\u0442\u0430. \u042d\u0442\u043e \u043d\u0435 \u043f\u0435\u0440\u0432\u044b\u0439 \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0439 \u0438\u043d\u0446\u0438\u0434\u0435\u043d\u0442 \u0441 LiteLLM &#8212; \u0432 \u043c\u0430\u0440\u0442\u0435 \u044d\u0442\u043e\u0433\u043e \u0433\u043e\u0434\u0430 \u0430\u0442\u0430\u043a\u0443\u044e\u0449\u0438\u0435 \u0443\u0436\u0435 \u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0438 \u0432\u0440\u0435\u0434\u043e\u043d\u043e\u0441\u043d\u044b\u0435 \u0432\u044b\u043f\u0443\u0441\u043a\u0438 \u043f\u043e\u0441\u043b\u0435 \u043f\u0435\u0440\u0435\u0445\u0432\u0430\u0442\u0430 \u0443\u0447\u0451\u0442\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0441\u043e\u043f\u0440\u043e\u0432\u043e\u0436\u0434\u0430\u044e\u0449\u0435\u0433\u043e. \u041d\u0430 \u044d\u0442\u043e\u0442 \u0440\u0430\u0437 \u0430\u0442\u0430\u043a\u0443\u044e\u0449\u0438\u0435 \u0440\u0430\u0437\u043c\u0435\u0441\u0442\u0438\u043b\u0438 \u0432\u0435\u0440\u0441\u0438\u044e LiteLLM 1.107.0, \u0432 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":10,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-183962","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0417\u0430\u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0430 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044f \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 PyPI \u0432\u0440\u0435\u0434\u043e\u043d\u043e\u0441\u043d\u043e\u0433\u043e \u0432\u044b\u043f\u0443\u0441\u043a\u0430 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 LiteLLM, \u043d\u0430\u0441\u0447\u0438\u0442\u044b\u0432\u0430\u044e\u0449\u0435\u0439 23 \u043c\u043b\u043d \u0437\u0430\u0433\u0440\u0443\u0437\u043e\u043a \u0432 \u043d\u0435\u0434\u0435\u043b\u044e, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0434\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0432\u0440\u0435\u0434\u043e\u043d\u043e\u0441\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u0432 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 Docker-\u043e\u0431\u0440\u0430\u0437 \u043f\u0440\u043e\u0435\u043a\u0442\u0430.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Alexander Kovalev\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/fr\/blog\/news\/malware-injected-into-litellm-pypi-package-and-docker-image\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"fr_FR\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0412 PyPI-\u043f\u0430\u043a\u0435\u0442 \u0438 Docker-\u043e\u0431\u0440\u0430\u0437 \u0441 LiteLLM \u043f\u043e\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043e \u0432\u0440\u0435\u0434\u043e\u043d\u043e\u0441\u043d\u043e\u0435 \u041f\u041e | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0417\u0430\u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0430 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044f \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 PyPI \u0432\u0440\u0435\u0434\u043e\u043d\u043e\u0441\u043d\u043e\u0433\u043e \u0432\u044b\u043f\u0443\u0441\u043a\u0430 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 LiteLLM, \u043d\u0430\u0441\u0447\u0438\u0442\u044b\u0432\u0430\u044e\u0449\u0435\u0439 23 \u043c\u043b\u043d \u0437\u0430\u0433\u0440\u0443\u0437\u043e\u043a \u0432 \u043d\u0435\u0434\u0435\u043b\u044e, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0434\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0432\u0440\u0435\u0434\u043e\u043d\u043e\u0441\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u0432 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 Docker-\u043e\u0431\u0440\u0430\u0437 \u043f\u0440\u043e\u0435\u043a\u0442\u0430.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/fr\/blog\/news\/malware-injected-into-litellm-pypi-package-and-docker-image\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-10-22T15:40:40+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-10-22T15:40:45+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Malware ins\u00e9r\u00e9 dans le package PyPI et l\u2019image Docker de LiteLLM | ProHoster","description":"Une publication malveillante de la biblioth\u00e8que LiteLLM a \u00e9t\u00e9 d\u00e9tect\u00e9e dans le d\u00e9p\u00f4t PyPI, avec 23 millions de t\u00e9l\u00e9chargements par semaine, ainsi qu'une insertion de code malveillant dans l'image Docker officielle du projet.","canonical_url":"https:\/\/prohoster.info\/fr\/blog\/news\/malware-injected-into-litellm-pypi-package-and-docker-image","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"fr_FR","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0412 PyPI-\u043f\u0430\u043a\u0435\u0442 \u0438 Docker-\u043e\u0431\u0440\u0430\u0437 \u0441 LiteLLM \u043f\u043e\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043e \u0432\u0440\u0435\u0434\u043e\u043d\u043e\u0441\u043d\u043e\u0435 \u041f\u041e | ProHoster","og:description":"\u0417\u0430\u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0430 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044f \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 PyPI \u0432\u0440\u0435\u0434\u043e\u043d\u043e\u0441\u043d\u043e\u0433\u043e \u0432\u044b\u043f\u0443\u0441\u043a\u0430 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 LiteLLM, \u043d\u0430\u0441\u0447\u0438\u0442\u044b\u0432\u0430\u044e\u0449\u0435\u0439 23 \u043c\u043b\u043d \u0437\u0430\u0433\u0440\u0443\u0437\u043e\u043a \u0432 \u043d\u0435\u0434\u0435\u043b\u044e, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0434\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0432\u0440\u0435\u0434\u043e\u043d\u043e\u0441\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u0432 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 Docker-\u043e\u0431\u0440\u0430\u0437 \u043f\u0440\u043e\u0435\u043a\u0442\u0430.","og:url":"https:\/\/prohoster.info\/fr\/blog\/news\/malware-injected-into-litellm-pypi-package-and-docker-image","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2026-10-22T15:40:40+00:00","article:modified_time":"2026-10-22T15:40:45+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":[],"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/183962","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/comments?post=183962"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/183962\/revisions"}],"predecessor-version":[{"id":183963,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/183962\/revisions\/183963"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media?parent=183962"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/categories?post=183962"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/tags?post=183962"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}