AI圈炸了:一个被投毒的Python库,差点让整个行业密码全丢
上周,AI领域最受尊敬的科学家之一Andrej Karpathy在X上发了一条简短但令人脊背发凉的帖子:“别用litellm 1.82.7和1.82.8。你装上的那一刻,你的密钥已经不在你手里了。”
这句话让无数开发者瞬间从电脑前跳起来——因为litellm不是什么小众工具。它是GitHub上4万星、每月近1亿次下载的“AI调用万能桥”。无论是OpenAI、Claude、Gemini,还是本地大模型,开发者都靠它统一接口。你用的Cursor、LangChain、DSPy、MLflow、Open Interpreter……背后几乎都有它的影子。
问题来了:你装它,它就偷你。
你没写一行代码,黑客已经进了你的系统
攻击者没用什么高深技术。他们只是在litellm的PyPI安装包里,偷偷塞进了一个叫.pth的文件——这本来是Python用来自动加载模块的合法机制。
但这次,这个文件里藏着一段恶意代码。你只要执行了:
pip install litellm==1.82.7
——哪怕你之后完全没导入这个库,没写一行AI代码,只要你的Python环境重启一次(比如开个终端、跑个脚本、甚至只是打开VS Code),这段代码就会自动运行。
它不声不响地:
- 扫描你家电脑里的
~/.ssh/,偷走你的SSH私钥 - 翻遍环境变量,抓走你的
OPENAI_API_KEY、ANTHROPIC_API_KEY、AWS_ACCESS_KEY_ID - 搜寻Kubernetes配置文件、Docker凭证、加密货币钱包(MetaMask、Ledger等)
- 把所有数据打包加密,发到攻击者控制的服务器
你甚至不知道它什么时候偷的。没有弹窗,没有警告,连杀毒软件都难发现——因为这根本不是病毒,是“合法的Python行为”。
黑客自己毁了自己:一个Bug救了上万人
这场攻击原本可能悄无声息持续数月。直到一位开发者在用Cursor编辑器时,电脑突然卡死、风扇狂转、内存直接爆到100%。
他查了进程,发现成百上千个Python进程在疯狂创建子进程——这就是传说中的“Fork Bomb”(进程炸弹)。恶意代码里有个致命逻辑错误:它在每次执行时,不是静默发送数据,而是不断复制自身,直到系统崩溃。
这一“作死”行为,让安全研究员顺着进程树一路追踪,最终挖出了这个藏在PyPI包里的定时炸弹。
Karpathy后来在帖子里说:“如果黑客稍微懂点编程,这次攻击可能不会被发现。我们差点就集体中招了。”
供应链崩塌:一个漏洞,击穿了整个AI生态
调查发现,攻击者团伙“TeamPCP”并没有直接黑进litellm的GitHub仓库。他们先攻破了开源安全工具Trivy的发布系统,盗取了litellm的PyPI发布令牌——这个令牌能让他们像官方一样上传包。
他们绕过了所有代码审查,直接上传了带毒版本。而PyPI的审核机制,对这类“合法文件”几乎不查。
受影响的不只是litellm用户。根据开源依赖图谱,至少2000多个AI项目直接或间接依赖它,包括:
- DSPy —— 微软推出的AI编程框架
- MLflow —— Meta和Databricks的模型管理工具
- Open Interpreter —— 能在本地执行代码的AI助手
- LangGraph、AutoGen、LlamaIndex……
换句话说,你用的任何一个AI工具,只要它能“调用API”,就可能在不知不觉中,成了攻击者的跳板。
你现在该做什么?别等了,立刻行动
这不是“可能有风险”,这是已经发生的数据泄露。
第一步:检查你装了哪个版本
pip show litellm
如果版本是1.82.7或1.82.8——立刻卸载:
pip uninstall litellm
然后安装安全版本:
pip install litellm==1.82.6
第二步:重置所有可能泄露的凭证
- 你的OpenAI、Anthropic、Gemini、Claude API Key
- AWS、GCP、Azure云账号密钥
- Kubernetes集群的kubeconfig文件
- 任何存了API密钥的.env文件、Docker配置、CI/CD流水线变量
- 如果你用过SSH连接过云服务器,重新生成密钥对
第三步:检查你的云账单
攻击者拿到API Key后,很可能用你的额度疯狂调用大模型——有人已发现每小时耗掉数百美元的OpenAI费用。立即登录云平台查看使用记录。
这不是终点,而是警钟
这次事件暴露的,不只是一个库的漏洞,而是整个开源生态的脆弱性:我们依赖成千上万个无人审计的包,却以为“开源=安全”。
PyPI没有强制代码签名,GitHub Actions的令牌管理混乱,很多项目连CI/CD流程都没有双人审核。
你可能觉得“我只是写个脚本玩玩”,但你的一个API Key,可能就是攻击者入侵公司服务器的钥匙。
别再觉得“我没什么好偷的”。你的密钥,值钱得很。
现在,去检查你的环境。别等黑客发邮件要赎金。
