如果你的项目用了 litellm 或依赖它的任何包,这条来自 Karpathy 的深度分析值得立即阅读——一个 pip install 就能泄露你所有的凭证。
软件恐怖故事:litellm PyPI 供应链攻击。
简单的 pip install litellm 就足以窃取 SSH 密钥、AWS/GCP/Azure 凭证、Kubernetes 配置、git 凭证、环境变量(所有 API key)、shell 历史、加密货币钱包、SSL 私钥、CI/CD 密钥、数据库密码。
liteLLM 本身每月有 9700 万次下载,这已经够糟糕了。但更严重的是,感染会传播到任何依赖 litellm 的项目。例如,如果你执行了 pip install dspy(它依赖 litellm>=1.64.0),你也会中招。任何其他依赖 litellm 的大型项目同理。
据我所知,被投毒的版本只上线了不到约 1 小时。攻击中有一个 bug 导致了它被发现——Callum McMahon 在 Cursor 中使用了一个 MCP 插件,该插件将 litellm 作为传递依赖拉入。当 litellm 1.82.8 安装时,他们的机器内存耗尽崩溃了。
所以如果攻击者没有“氛围编程”(vibe code)这次攻击,它可能在数天或数周内不被发现。
这样的供应链攻击基本上是现代软件中能想象到的最可怕的事情。每次你安装任何依赖,都可能在其整个依赖树的深处拉入一个被投毒的包。这对于可能有大量依赖的大型项目来说尤其危险。每次攻击中被窃取的凭证可以被用来接管更多账户和污染更多包。
传统软件工程会让你相信依赖是好的(我们在用砖块建金字塔),但在我看来这需要重新评估。这就是为什么我越来越排斥依赖,更倾向于使用 LLM 来“抽取”(yoink)功能——当它足够简单且可行的时候。
Karpathy 详细分析了 litellm 的 PyPI 供应链攻击:一个简单的 pip install 就能窃取 SSH 密钥、云凭证等几乎所有敏感信息。litellm 每月 9700 万下载,感染还会传播到所有依赖它的项目。他认为传统的依赖管理思路需要重新评估,更倾向于用 LLM 直接抽取功能。
litellm 是 LLM API 的统一接口层,每月 9700 万下载。投毒版本能窃取 SSH 密钥、云凭证、API key 等几乎所有敏感信息。感染还通过依赖树传播到 dspy 等大型项目。
简单的 pip install litellm 就足以窃取几乎所有敏感信息。
攻击只上线约 1 小时就被发现——因为恶意代码有内存泄漏导致机器崩溃。Karpathy 指出如果攻击者没有这个 bug,可能数天甚至数周不被发现。AI 工具链可能是最脆弱的攻击面。
如果攻击者没有 vibe code 这次攻击,它可能在数天或数周内不被发现。
Karpathy 提出了一个激进建议:对于简单功能,用 LLM 直接生成代码而非引入依赖。这可以避免拉入整个依赖树带来的供应链风险。传统的依赖管理思路需要在 AI 时代重新评估。
我越来越排斥依赖,更倾向于使用 LLM 来抽取功能。
简单的 pip install litellm 就足以窃取几乎所有敏感信息。
相关知识页
代码代理从辅助生成转向任务闭环。
相关知识页
前 Tesla AI 总监、OpenAI 早期核心研究者,长期拆解模型与代码代理实践。
继续阅读
Swyx 指出“用 ChatGPT 登录”(OAuth)功能已经通过 Codex app server 存在了好几个月——只是大部分人没读文档。
继续阅读
Andrej Karpathy 报告了 npm axios(每周 3 亿下载)的新供应链攻击。他自己差点中招——依赖未锁版本号,如果安装时机稍早就会命中恶意版本。他认为包管理工具的默认行为必须从根本上改变,不能让未 pin 的依赖成为大规模传播感染的渠道。
继续阅读
Zara Zhang 的 Codebase-to-course 更新:2.6k GitHub 星,优化了 token 效率。最初为 vibe coder 设计,也适合开发者 onboarding。
继续阅读
Swyx 感叹最有趣的 AI 应用被搁置,资源都投向了编码和企业 SaaS——更赚钱但更无聊的方向。