攻击详情
在 2026 年 10 月 21 日,LiteLLM 1.107.0 版本遭遇了供应链攻击,恶意软件包通过 Python 软件包仓库 (PyPI) 以及官方容器渠道发布。此次攻击最令人担忧的是,恶意软件无需在应用程序中显式调用 LiteLLM 库即可运行,只要在包含受感染软件包的环境中启动 Python 解释器,它就会自动被激活。
工作机制与威胁
攻击者利用 Python 的启动文件(如 cook.pth 和 sitecustomize.py)在后台执行恶意代码。该代码会收集敏感凭证,包括:
- 人工智能模型提供商的 API 密钥(API Keys)。
- 云凭证以及持续集成/持续部署 (CI/CD) 环境的访问令牌。
- 浏览器数据和 Cookie。
- SSH 和 GPG 密钥。
收集到的数据在发送到攻击者控制的服务器之前,会使用 AES-256-CBC 算法进行加密。受感染的版本还包含一个针对 Unix 系统的专用“加载器”(Loader),该加载器能够远程获取并执行额外的 Python 代码,从而使攻击者能够在无需发布新软件包的情况下灵活更新其工具。
为什么这条新闻很重要?
这次漏洞具有极高的风险,因为 LiteLLM 被用作应用程序与人工智能模型之间的中间网关,这意味着它对底层基础设施拥有广泛的访问权限。由于激活发生在 Python 启动时,因此开发人员的工作站、持续集成/持续部署 (CI/CD) 客户端以及容器都面临风险,即使根本没有直接使用 LiteLLM 的功能也是如此。
响应与恢复措施
微软强调,仅仅删除该软件包并不足以净化环境。各机构必须采取以下步骤:
- 隔离与调查:不要在可疑环境中运行 python 或 pip,以避免触发恶意代码,并应使用外部扫描工具。
- 深度清理:确保从 Python 库路径中删除 cook.pth、cook.py 和 sitecustomize.py 文件。
- 轮换凭证:将被感染环境中可用的所有凭证视为已被入侵,并立即开始轮换 API 密钥、访问令牌和密码。
- 增强安全性:使用带有哈希锁定的锁文件(Lock files),并依靠容器摘要(Digests)而不是可变标签(Mutable tags)。