文章总结: 该报告分析了LiteLLM在PyPI发布的1.82.7和1.82.8版本遭供应链投毒事件。攻击者利用Python.pth文件在解释器启动阶段自动执行恶意载荷,窃取主机环境变量、SSH密钥、云凭据等敏感信息,并通过AES-256与RSA-4096加密后外传至攻击者服务器。恶意代码还具备持久化、Kubernetes横向扩展等能力。攻击被归因于TeamPCP组织,与此前Trivy和CheckmarxKICS事件属于同一攻击链。建议立即排查受影响版本、隔离主机、卸载恶意包、轮换所有凭据并恢复至安全版本1.82.6。 综合评分: 78 文章分类: 供应链安全,漏洞分析,应急响应,AI安全,WEB安全
对LiteLLM供应链投毒安全事件的分析报告
原创
佚名 佚名
星宇Sec
2026年4月9日 16:41 山东
近期,开源 AI API 网关 LiteLLM 在 PyPI 发布的 1.82.7 和 1.82.8 版本被植入恶意代码,时间约为 2026 年 3 月 24 日 18:40。攻击者利用 Python .pth 文件在解释器启动阶段自动执行的机制,使恶意载荷无需显式导入 LiteLLM 即可运行,从而收集并外传敏感信息。LiteLLM 官方已在 GitHub Issue #24512 和 #24518(研究员 isfinne 最先发布)中确认该事件属于供应链投毒攻击。
01
从公开信息看,本次事件影响面较大。LiteLLM 具备较高社区使用度,月下载量约为 9500 万次,GitHub Star 数超过 4 万。关于攻击者身份,多家安全媒体和研究机构已明确将该事件与 TeamPCP 组织关联,并普遍认为其与此前 Trivy、Checkmarx KICS 等供应链事件属于同一攻击链条。现有分析显示,攻击链与上游 CI/CD 发布环节被入侵有关,恶意样本中包含 litellm_init.pth 文件,说明攻击者并非仅篡改源码,而是直接对最终发布包进行了投毒。
就影响面而言,任何通过 pip 安装 litellm==1.82.8 的 Linux 环境,其环境变量、SSH 密钥、云凭据等敏感信息均存在被收集并发送至攻击者控制服务器的风险。受影响场景主要包括本地开发机器、CI/CD 流水线、Docker 容器和生产服务器。基于当前公开样本,尚未看到针对 Windows 的专门窃密逻辑或路径设计。
攻击时间线
| 时间 | 事件 | 详细说明 |
| — | — | — |
| 2026/3/19 | Trivy 漏洞扫描器被入侵 | 公开情报显示该阶段与 TeamPCP 供应链攻击活动存在关联,并导致发布凭据被窃取 |
| 2026/3/23 | Checkmarx KICS GitHub Action 被入侵 | 攻击者继续利用已获取凭据扩展攻击链 |
| 2026/3/24 18:39 | LiteLLM 1.82.7 发布 | 恶意代码被注入 litellm/proxy/proxy_server.py |
| 2026/3/24 18:52 | LiteLLM 1.82.8 发布 | 发布包中新增恶意 litellm_init.pth 文件,且未同步 GitHub tag |
| 2026/3/24 19:48 | 社区发现并报告 | 安全研究人员在 GitHub Issue #24512 中披露异常 |
| 2026/3/24 晚 | 恶意版本下架 | 恶意版本在发布约 3 小时后从 PyPI 下架 |
| 2026/3/25 | 官方发布安全说明 | LiteLLM 维护者公开确认事件并发布安全通告 |
| 2026/3/25 | 多家安全厂商跟进分析 | 相关机构发布技术分析和检测建议 |
技术特征与攻击行为
根据 LiteLLM 官方 GitHub Issue #24512 的描述,litellm==1.82.8 的 PyPI wheel 中包含恶意 .pth 文件 litellm_init.pth,文件大小为 34,628 字节,并且该文件已经出现在发布包自身的 RECORD 清单中。这意味着恶意内容并非下载链路偶发污染,而是实际进入了最终分发的软件包。官方 issue 给出的复现方式表明,在解压 wheel 后可以直接看到该 .pth 文件,文件内容会通过 subprocess.Popen 调起 Python,并执行双重 base64 编码后的恶意载荷。
按照 Python 的 site-packages 处理逻辑,.pth 文件会在解释器启动阶段被自动执行,因此在安装受影响版本后,即使业务代码没有显式 import litellm,只要启动 Python 进程,就可能触发恶意逻辑。官方 issue 指出,这是 1.82.8 相较于前一恶意版本更具破坏性的原因。社区后续分析还发现,1.82.7 版本同样受影响,但其主要是将恶意载荷注入 litellm/proxy/proxy_server.py,通常需要在导入相关模块时触发;而 1.82.8 则在此基础上进一步增加了 .pth 自动执行机制。
按照官方 issue 中披露的行为分析,恶意载荷经过双重 base64 编码,解码后首先执行信息收集。其目标范围覆盖较广,包括主机信息与环境变量,诸如 hostname、whoami、uname -a、ip addr、ip route 和 printenv;同时还会遍历常见敏感文件路径,重点收集 SSH 密钥、Git 凭据、AWS/GCP/Azure 云平台凭据、Kubernetes 配置与服务账号令牌、Docker 配置、包管理器配置、Shell 历史、数据库认证信息、TLS 私钥、CI/CD 配置文件以及业务目录中的 .env 文件。官方说明中还特别提到,攻击者会查找 Slack 和 Discord 的 webhook URL,这说明其窃取目标不仅限于基础设施访问凭据,也包括可用于后续横向利用或进一步社会工程攻击的应用层敏感信息。
02
03
在数据处理与外传阶段,恶意程序会先将收集内容写入临时文件,再通过 openssl rand 生成随机 32 字节 AES-256 会话密钥,随后使用 openssl enc -aes-256-cbc -pbkdf2 对数据进行加密,并利用硬编码的 4096 位 RSA 公钥通过 openssl pkeyutl -encrypt -pkeyopt rsa_padding_mode:oaep 对会话密钥再加密。完成后,相关文件会被打包为 tpcp.tar.gz,再通过 curl 发送至 https://models.litellm.cloud/。
结合社区公开分析,相关样本除信息窃取外,还包含持久化和集群环境利用能力。例如恶意逻辑可能在 ~/.config/sysmon/ 下写入后门脚本,创建伪装为 “System Telemetry Service” 的用户级 systemd 服务,并通过 /tmp/.pg_state、/tmp/pglog 等文件维持状态;同时还可能与 checkmarx.zone 建立周期性通信。对于存在 Kubernetes 服务账号令牌的环境,公开样本还显示其具备通过创建特权 Pod 进行横向扩展的能力。综合上述行为可见,这并非单纯的依赖包篡改事件,而是一条集供应链投毒、凭据窃取、持久化与潜在横向移动于一体的完整攻击链。
初步检测
如业务环境存在安装受影响版本的可能,建议优先在 Linux 主机上完成版本、恶意 .pth 文件及持久化痕迹核查。可参考以下命令:
pip show litellm | grep Version
find "$(python3 -c 'import site; print(site.getsitepackages()[0])')" -name "litellm_init.pth" 2>/dev/null
ls -la ~/.config/sysmon/ 2>/dev/null
处置建议
一旦确认安装过受影响版本,应立即隔离相关主机网络连接,防止敏感数据继续外传;随后卸载恶意版本、删除残留文件并恢复到已知安全版本,同时对主机中使用的各类凭证进行更换,特别是 LLM API Keys、SSH 密钥对、云平台访问密钥等。公开样本未显示面向 Windows 的专门窃密配置,因此以下命令仅适用于 Linux 环境:
pip uninstall litellm -y
find "$(python3 -c 'import site; print(site.getsitepackages()[0])')" -name "litellm_init.pth" -delete 2>/dev/null
rm -rf ~/.config/sysmon/
rm -f /tmp/.pg_state /tmp/pglog
pip cache purge
pip install litellm==1.82.6
参考链接
- https://github.com/BerriAI/litellm/issues/24512
- https://www.bleepingcomputer.com/news/security/popular-litellm-pypi-package-compromised-in-teampcp-supply-chain-attack/
PDF版:
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:星宇Sec 佚名 佚名《对LiteLLM供应链投毒安全事件的分析报告》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。







评论