当前位置:首页>python>凌晨2点,这个Python库被投毒,1.8万Star的AI工具中招

凌晨2点,这个Python库被投毒,1.8万Star的AI工具中招

  • 2026-09-02 19:45:39
凌晨2点,这个Python库被投毒,1.8万Star的AI工具中招

凌晨2点,这个Python库被投毒,1.8万Star的AI工具中招

───

今天凌晨,一个在AI开发者圈子里几乎人手一个的Python库——Litellm,在PyPI上被植入恶意代码。

两个版本:1.82.7 和 1.82.8。

如果你昨晚到现在的项目里用过 Litellm,这篇文章值得认真看一遍。


发生了什么

Litellm 是一个流行的 LLM 抽象层库,GitHub 1.8万星。它的作用是:用统一的方式调用 OpenAI、Anthropic、Google、阿里等几十家大模型API,开发者不用改代码就能切换底层模型。

今天凌晨,PyPI 上突然出现了两个新版本:

  • 1.82.7 — 在 litellm/proxy/proxy_server.py 里埋了 payload
  • 1.82.8 — 更狠,加入了 litellm_init.pth 文件

pth 文件是什么?

它会在 Python 解释器启动时自动执行——连 import litellm 都不需要。

只要你的环境装了 1.82.8,你的所有环境变量、SSH密钥、云服务凭证,全部被偷。

攻击者控制的域名:models.litellm.cloud、checkmarx.zone。


怎么进去的

官方很快给了结论:

CI 里的 PyPI 发布令牌(API Token)泄露了。

就是开发者用来自动发布版本到 PyPI 的密钥。

这个密钥放在 GitHub Actions 的 secrets 或环境变量里,不知道怎么被攻击者拿到了。

然后攻击者以官方名义"发布"了两个恶意版本,任何信任 PyPI 自动更新的开发者都会中招。

这和之前的 Trivy 被黑事件是同一套手法。


你需要做什么

立刻执行:

第一步:检查是否安装了恶意版本

pip show litellm

如果版本是 1.82.7 或 1.82.8,立刻卸载:

pip uninstall litellm -ypip install litellm==1.82.6

第二步:检查 pth 文件

Mac/Linux:

find ~/.local/lib/python*/site-packages/ -name "litellm_init.pth" 2>/dev/null

Windows:

dir %APPDATA%\Python\*site-packages\litellm_init.pth

如果找到这个文件,说明中招了。

第三步:轮换所有密钥

不只是 GitHub token,所有在这个环境里出现过的密钥都换一遍:

  • 云服务密钥(AWS、GCP、阿里云)
  • 数据库密码
  • API 密钥
  • SSH 密钥

第四步:审查 CI/CD 流水线

检查 GitHub Actions 的 secrets 和环境变量,是否有 PyPI token 长期暴露。


为什么这件事值得警惕

很多人觉得"我只是个人开发,又不是大公司,谁来攻击我"。

但这件事说明:攻击者是自动化扫的。

只要你把包发布到 PyPI,不管你是个人还是企业,都可能成为目标。

而且 AI 领域的包有一个特殊风险——

一旦被污染,影响的不只是代码执行,还有可能泄露 API 密钥。

你的 OpenAI API Key、Claude Key、阿里的 DashScope Key……这些才是攻击者真正想要的东西。

今天他们拿到的是 litellm 用户环境里的凭证,明天可能是另一个包。


一个更根本的问题

PyPI 生态有一个长期矛盾:

PyPI 账户安全 ≠ 持续集成安全

大多数开发者用 API Token 在 CI 里自动发布,这个 token 如果泄露,就等于 PyPI 账户被攻破。而且很多老项目还在用旧的发布方式,token 长期有效,从不过期。

这次事件之后,建议所有在 PyPI 发包的开发者:

  • 开启两步验证
  • 给 CI 单独创建受限token,不要用主账号全局 token
  • 定期轮换 token
  • 考虑用 OIDC 做发布认证,根本不存长期 token

你有没有用过 Litellm?现在去检查一下。

希望你是 1.82.6 👀


关于作者: 持续关注AI开发工具链安全,欢迎交流。

最新文章

随机文章