Litellm再次被投毒,恶意代码窃取大量敏感信息"

admin 2026-10-24 15:25:56 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

Litellm再次被投毒,恶意代码窃取大量敏感信息

墨菲安全实验室
墨菲安全实验室

墨菲安全实验室

2026年10月22日 01:06
北京

去阅读

一、事件概述

1

事件简述

2026年10月21日,墨菲安全实验室检测到开源AI网关组件Litellm发生第二次供应链投毒事件。恶意版本 1.107.0 被上传至PyPI、Dockerhub,安装后植入持久化恶意载荷,窃取本机各类密钥、AI服务商API凭证、云账号凭据,加密后外传至攻击者控制的C2域名www.litellm.dev。

历史攻击:2026-03-24 litellm 曾遭遇同类投毒(1.82.7/1.82.8),攻击手法一致,均利用 .pth 实现 Python 解释器启动即执行恶意代码。

2

关键基础信息

项目 内容
受影响包 litellm(PyPI)
恶意版本 1.107.0(全部wheel包)
安全版本 1.106.2
恶意载体 cook.pth、cook.py、sitecustomize.py
C2外传域名 www.litellm.dev(非官方域名,官方域为litellm.ai)
持久化方式 Python .pth机制,卸载包不会自动清除恶意文件
泄露数据类型 LLM服务商API Key、SSH密钥、云凭据、数据库URL、Docker配置、环境变量密钥、GitHub配置、本地各类token
加密方式 AES‑256‑CBC + RSA‑OAEP加密窃取数据外传
投毒者基础设施 GitHub账号:letters9813; 仓库:pythonclient‑test(domain.txt作为动态C2配置文件)

二、攻击技术链路分析

攻击前置:制品伪造与二次封包。

攻击者基于该版本官方源码基线,抢先伪造出并不存在的正式版本号 1.107.0;在正常的 maturin 构建完成 wheel 之后,对包进行二次注入并重新封包:

  1. 向 wheel 的 litellm-1.107.0.data/purelib/ 目录植入三件恶意文件 cook.pth、cook.py、sitecustomize.py;

  2. 篡改 wheel 内的 RECORD 清单,不登记新增的恶意文件,同时破坏全部条目的哈希校验,使包完整性校验失效,为后续“卸载后恶意文件无法清除”埋下伏笔;

  3. 同步污染多组官方 Docker 镜像,覆盖浮动标签 latest / main-latest / main-stable 与固定标签 v1.107.0,未锁定 Digest 的部署会在镜像重建、调度时自动拉取被污染的镜像。

1

阶段1:安装落盘,植入持久化触发载体

受害者执行 pip install litellm==1.107.0 或拉取对应被污染的 Docker 镜像后,恶意文件便会直接写入 Python 环境的 site-packages 目录。

该攻击不依赖 setup.py 安装钩子,而是依托 Python 原生的两个自动加载通道实现冗余部署:

通道A:cook.pth,内容仅一行 import cook;Python 解释器启动时,site.py 会自动扫描并解析 .pth 文件,识别 import 语句后立即执行;

通道B:sitecustomize.py,Python 的 site 模块在解释器启动时默认自动加载该文件,作为备用触发入口。

关键风险:恶意文件不在 RECORD 清单内,pip uninstall litellm 不会将其删除;触发逻辑与业务是否导入、是否运行 litellm 代码完全解耦,任意 Python 进程(pip、业务服务、定时任务、CI 任务)启动时均可触发载荷。

2

阶段2:载荷自解压,释放主窃取器框架

载荷采用双层混淆封装:

  1. 外层装载器(cook.py / sitecustomize.py,混淆后约 22KB)的核心执行逻辑仅一行:exec(zlib.decompress(base64.b64decode(xxx))),无外联、无反分析代码,仅负责解码;

  1. 解码后释放内层主窃取器(61KB,基于 Python 标准库与 cryptography 实现),读取内置的硬编码配置:C2 地址 http://www.litellm.dev/healthcheck、批次标识 PC\_TOKEN、RSA-4096 公钥 PC\_PUBKEY;

  1. 根据内置模块列表 PC\_MODULES,启动多维度敏感信息采集。

3

阶段3:多维度敏感资产采集

窃取器共启用 16 个采集模块,分为通用信息采集与定向专项采集两类:

通用采集:系统信息、网络信息、浏览器存储的账号密码、浏览器历史、Shell 历史、SSH 私钥、GPG 密钥、TLS 私钥、环境变量、容器凭据、CI/CD 密钥,并访问 169.254.169.254 IMDS 拉取云实例临时角色凭证;其中浏览器密码模块采用双重兜底,优先使用 cryptography 解密,失败后自动调用 openssl 子进程解密,提升兼容成功率;

定向专项采集:db\_litellm 模块,专门读取 litellm 代理数据库,批量导出租户配置下的全部 LLM 服务商 API 密钥,是本次攻击的核心目标。

4

阶段4:数据加密上传

载荷通过以下步骤将数据上传:

  1. 将全部采集结果打包为 tar 包;

  2. 使用内置 RSA-4096 公钥加密数据包;

  3. 构造 HTTP POST 请求,上报至 http://www.litellm.dev/healthcheck;

  4. C2 服务特征:仅允许 POST 方法,GET/HEAD 请求返回 405,该服务专门用于接收窃取数据。

5

阶段5:驻留持续威胁

载荷无 TTL、无自清理逻辑,只要三件恶意文件仍保留在 site-packages 中,每次 Python 进程启动都会重复执行全套采集与外传流程;即使受害者后续升级或卸载 litellm 包,残留文件依旧持续生效。

三、受影响范围评估

直接受影响:环境中执行过 pip install litellm==1.107.0;拉取过 Digest 匹配的 litellm/litellm v1.107.0 Docker 镜像;

间接风险:项目将 litellm 作为间接依赖,构建/CI 环境触发安装;波及开发者本地开发环境、容器、K8s Pod、CI 流水线;

业务危害:litellm 作为 AI 网关,其运行环境通常存放大量大模型服务商密钥;一旦沦陷,攻击者可直接调用付费 AI 接口、接管云资源、访问业务数据库。

⚠️ 风险提示:即便已经卸载该包,残留的 .pth 文件依旧会持续执行恶意代码。

四、应急处置方案

1

排查步骤

  1. 检查 pip 历史记录、requirements 与 lock 文件,确认是否引入版本 1.107.0;
  2. 扫描所有 Python 环境的 site-packages 目录,查找:cook.pth、cook.py、sitecustomize.py(非业务自带的陌生文件);
  3. 检查主机是否存在锁文件 /tmp/remote\_code\_loader.lock,若存在,说明主机曾触发过恶意载荷;
  4. 检查 Docker 镜像历史,确认是否拉取过被污染的 v1.107.0 镜像。

2

清除操作

  1. 卸载恶意版本:pip uninstall litellm;
  2. 手动删除上述 3 个恶意文件及其对应\\_pycache\\_缓存目录;

  3. 终止持有 /tmp/remote\_code\_loader.lock 的相关进程;

  4. 升级至安全版本:litellm==1.106.2。

3

密钥轮换

只要确认环境运行过恶意版本,必须立即全部轮换以下密钥:

OpenAI、Anthropic 等全部 LLM 服务商 API Key;

AWS/Azure/GCP 云账号密钥、IAM 临时凭证;

SSH 私钥、数据库连接密码、DATABASE\_URL;

GitHub/Gitlab 个人 token、CI 流水线密钥;

Docker Registry 凭证、各类业务系统 token。

4

网络层面处置

在边界防火墙/安全组阻断对域名 www.litellm.dev 的出站访问。

持续监控 IOC:letters9813/pythonclient-test 仓库的变化,该仓库可动态更新 C2 地址。

五、安全启示与防御建议

  1. 重视二进制投毒风险:开源仓库源码干净 ≠ 发布包安全,攻击者可直接篡改 wheel 包而无需改动 Git 仓库;

  2. 警惕 .pth 机制风险:PyPI 包写入 .pth 文件可实现无导入自动执行,卸载包无法清理残留,是供应链攻击的高频利用点。

六、IOC清单

1

文件IOC

cook.pth;

cook.py;

sitecustomize.py;

/tmp/remote\_code\_loader.lock;

2

网络IOC

www.litellm.dev

七、墨菲安全产品与能力支撑

墨菲安全针对投毒的感知-检测-阻断提供体系化的治理解决方案,已第一时间提供对应感知和识别能力。

客户可通过投毒情报预警服务快速感知当前正在发生的投毒风险,基于私有源安全网关对内部制品库中的投毒组件进行阻断,基于软件成分分析工具可对项目中引入的投毒组件进行识别检测。

墨菲安全部分典型客户

墨菲安全七大产品矩阵

Litellm再次被投毒,恶意代码窃取大量敏感信息" 网络安全文章

Litellm再次被投毒,恶意代码窃取大量敏感信息"

墨菲安全实验室披露开源AI网关Litellm于2026年10月21日遭第二次供应链投毒,恶意版本1.107.0被上传至PyPI与Dockerhub,通过植入cook.pth等恶意文件实现持久化,窃取LLM服务商API密钥、云凭据等敏感信息并加密外传至C2域名www.litellm.dev。建议立即排查并清除恶意文件、轮换全部相关密钥,升级至安全版本1.106.2,并在防火墙阻断C2域名通信。
未来20年什么是优质资产?" 网络安全文章

未来20年什么是优质资产?"

文章分析未来20年优质资产,指出人口减少、老龄化、债务高企及AI革命将改变资产价格逻辑。过去20年房产、股票、黄金等资产涨幅显著,但未来二三线房产、现金、存款及大部分A股股票可能表现不佳。建议关注美股、黄金、比特币及个人技能投资,并针对不同年龄段给出资产配置建议。
评论:0   参与:  0