PyPI LiteLLM 1.107.0 投毒,.pth 持久化窃取密钥 + 定时RCE


【供应链高危预警】PyPI LiteLLM 1.107.0 投毒,.pth 持久化窃取密钥 + 定时RCE

预警时间:2026-10-21
事件:PyPI Supply Chain Attack — LiteLLM 1.107.0 Package Poisoning
风险等级:严重高危
参考来源:JFrog Security Research、StepSecurity、SafeDep 威胁分析报告

事件概述

LiteLLM 是广泛使用的 LLM 网关代理,用于统一对接上百家大模型服务商,在开发者、AI 项目、CI/CD 流水线、AI 生产网关中大量部署。
10月21日安全研究团队披露:PyPI 上发布的 litellm==1.107.0 的全部7个 wheel 二进制包被投毒,源码压缩包(sdist)不含恶意文件,只检查源码/Git tag 的审计会直接漏过该威胁。

恶意 wheel 包释放3个文件到  site-packages :

  •  cook.pth :Python 启动自动加载钩子
  •  cook.py :凭证窃取程序(InfoStealer)
  •  sitecustomize.py :后台常驻守护,定时拉取远程代码执行

核心特性:不需要 import litellm,只要启动任意 Python 解释器,恶意载荷就自动运行。

攻击链路与危害

1. 凭证窃取(cook.py)
窃取范围:环境变量、SSH密钥、云服务商凭证、CI/CD secret、浏览器保存密码、LiteLLM 内部数据库里全部 LLM API Key(OpenAI、Anthropic、DeepSeek、Azure 等),加密后回传攻击者控制域名  www.litellm.dev 。
API Key 泄露会直接造成盗刷、高额账单、业务数据泄露。
2. 定时远程代码执行 RCE(sitecustomize.py)
植入后台常驻进程,每小时一次从攻击者指定地址加载并执行任意代码;支持后续横向渗透、植入更多后门、持久化控制主机。锁文件标记: /tmp/remote_code_loader.lock 。
3. 隐蔽性极强
 .pth  是 Python 原生加载机制,很多依赖扫描工具默认不检测;且仅在 wheel 里投毒,源码干净,常规代码评审失效。
4. 扩散风险高
开发机、本地笔记本、Docker 镜像、CI 构建机只要装过这个版本,镜像、流水线会批量带毒,上线后污染生产环境。

补充背景:这是 LiteLLM 在2026年内第二次发生 PyPI 账号劫持投毒事件(3月曾出现 litellm_init.pth 投毒)

受影响范围

✅ 受影响: litellm==1.107.0 ,所有平台 wheel(Linux / musl / macOS / Windows)
❌ 不受影响:同版本 source sdist 源码包、其他版本(1.106.2 等)

IOC 入侵指标

恶意文件:

  •  site-packages/cook.pth 
  •  site-packages/cook.py 
  •  site-packages/sitecustomize.py 

运行标记文件:

  •  /tmp/remote_code_loader.lock 

恶意外发域名:

  •  www.litellm.dev 

紧急处置步骤

  1. 批量排查所有环境(开发机、服务器、CI、容器)

bash

查看已安装版本

pip list | grep litellm
pip freeze | grep litellm

查找恶意pth文件

find /usr/local/lib/python -name "cook.pth"
find ~/.local/lib/python
-name "cook.pth"
 

  1. 隔离、查杀载荷

一旦发现存在 1.107.0 wheel,判定主机已被攻陷:

1. 先隔离主机,断开外网;
2. 停止远程加载进程:查找持有  /tmp/remote_code_loader.lock  的进程并 kill;
3. 卸载包,并且手动核验删除三个恶意文件(部分情况下卸载脚本清理不全)

bash

pip uninstall litellm -y
rm -f site-packages/cook.pth site-packages/cook.py site-packages/sitecustomize.py
rm -f /tmp/remote_code_loader.lock
 

  1. 【最高优先级:全部密钥轮换】

只要安装过该 wheel,默认所有密钥已经外泄:

  • 所有 LLM 平台 API Key 立即重置
  • SSH密钥、云账号AK/SK、数据库密码、Redis密码、Webhook Token、CI密钥全部轮换
  1. 恢复安全版本

回退至可信版本,例如  litellm==1.106.2 ,锁定版本号,禁止无限制拉取 latest:

bash

pip install litellm==1.106.2
 

等待官方后续公告确认安全新版本。

长期加固建议

1. 区分 sdist / wheel 风险:二进制 wheel 是供应链投毒高频载体,不能只审计源码;
2. CI/CD 流水线使用依赖锁定(requirements.txt / pyproject.toml + hash 校验),开启 pip hash 校验;
3. 接入供应链扫描:Snyk、Safety、chaincanary(专门检测 .pth 恶意钩子);
4. 构建/CI 环境遵循最小权限,禁止存放生产密钥;
5. 网络侧监控出站访问  www.litellm.dev  等陌生恶意域名;
6. 私有 PyPI 镜像做包准入校验,不直接裸拉公网 PyPI wheel。

总结

本次攻击的狡猾之处在于源码干净、只污染二进制wheel,依靠 .pth 实现无差别自启动,哪怕你的业务代码从来没有 import litellm,环境依然中招。大量AI网关、Agent、本地开发脚本、自动化流水线在使用 LiteLLM,波及面极大。
请运维、AI开发团队立刻全环境扫描,优先轮换密钥,避免盗刷与服务器失陷。


手机扫码阅读

微信或手机浏览器扫一扫,随时随地随心阅读与分享

CVE-2026-109618 补丁存在绕过:8.2.35 / 8.5.12 环境下POC依然可触发RCE

野草云 - 运营十余年老牌香港VPS,站长高性价比建站选择

评 论
更换验证码