◄ 所有文章
AI Security

AI 供应链的新风险:六个入口

NW Nils Weiser •11 OCT 2026 •—

2026 年 3 月 24 日,PyPI 上出现了两个会窃取凭据的 LiteLLM 版本,存在了大约 40 分钟。LiteLLM 既不是模型,也不是提示词,而是许多应用用来调用模型的那个库。这就是 AI 供应链:位于外部来源和你的应用之间的一切。

传统的供应链攻击打的是你没有亲手写的代码。到了 AI 这里,还多了几样东西:没人读得懂的组成部分,不发版本就会改变的组成部分,以及会自己行动的组成部分。这篇文章是概览:六个入口,每个入口一个有据可查的事件,以及应该先做什么。关于模型文件的深入篇见《开源模型及其风险》。

AI 供应链包括什么

凡不是你自己构建、却仍然决定你的应用做什么的东西,都属于供应链。对一个 AI 系统来说,它有六个组成部分:

来源 你的应用 1 ! 数据 数据被投毒 2 ! 模型 文件里藏代码 3 ! 软件包 软件包被掉包 4 ! 基础设施 构建被劫持 5 ! 供应商与 API 模型被悄悄更换 6 ! 智能体工具 工具被篡改

从来源到你的应用的路线。六个站点中的任何一个,都可能有人做了替换,而终点处毫无察觉。

这种划分并非本文自创。OWASP 把供应链列为 LLM 应用的一项独立风险(LLM03)。MITRE ATLAS 收录了 AI Supply Chain Compromise 这一技术,并为硬件、软件、数据、模型、容器镜像仓库和智能体工具分别设了子技术。

新在哪里

其中很多内容在软件领域早已为人熟知。有四点不一样。

1 // 没人读得懂的组成部分

源代码可以评审,diff 会显示每一处改动。权重则是数百万到数十亿个数字,没人能从中看出被训练进去了什么。OWASP 把模型称为二进制黑盒,认为静态检查几乎提供不了安全保证,并指出目前已发布的模型没有可靠的来源证明。

模型背后的数据也是如此。2025 年,Anthropic 与英国 AI 安全研究所、艾伦·图灵研究所共同证明,250 份投毒文档就足以植入后门,受测模型的规模从 6 亿到 130 亿参数不等。他们测试的后门刻意设计得很简单。如果你通过 RAG 给系统接入自己的知识,这个问题就会延续到运行时:在 PoisonedRAG 研究中,面对一个包含数百万条文本的知识库,针对每个目标问题只需注入五条文本,攻击成功率就达到 90%。

2 // 不发版本就会改变的组成部分

软件包只有在有人发布新版本时才会改变。API 背后的模型却可以在你的调用毫无变化的情况下改变。斯坦福和伯克利的研究人员在 2023 年比较了同一服务的两个时间点:3 月时 GPT-4 判断质数的正确率为 84%,6 月只有 51%。他们的结论是:“同一个”服务的行为可能在很短时间内发生显著变化,因此需要持续监控。

变的甚至不一定是模型。2025 年 9 月,Anthropic 披露有三个基础设施缺陷在数周内间歇性地降低了 Claude 的回答质量。最严重的一个小时里,其中一个模型有 16% 的请求受到影响(事后分析)。Anthropic 强调自己从不故意降低质量。但对作为客户的你来说,效果是一样的:结果变了,你的代码没变。

应对的办法是使用固定的模型版本。OpenAI 称之为快照(snapshot),在 Anthropic,每个模型 ID 都对应一个固定版本,旧模型的别名除外。

3 // 语言成了载体

在传统软件里,注释是无害的。在 AI 系统里,文本就是控制:提示词模板、规则文件和工具描述决定了模型做什么,却很少有人像评审代码那样评审它们。2025 年,Invariant Labs 描述了工具投毒(Tool Poisoning):藏在 MCP 工具描述里的指令,用户看不到,模型却会读到。此外还有“Rug Pull”:服务器在描述获得批准之后再把它改掉。Pillar Security 在编程助手的规则文件上演示了同样的手法,指令用不可见的 Unicode 字符隐藏起来。

这两项都是研究成果。真实环境中的第一次尝试由 Pillar 在 2026 年 8 月记录:一个账号在 74 分钟内向他人的项目提交了 23 个 Pull Request,其中大多数想要接入一个做过手脚的 MCP 服务器(Deadbugz)。这个服务器在前三次调用中表现正常,随后把智能体引向 SSH 密钥和云凭据。截至分析时,这些 Pull Request 没有一个被合并,还有四个仍处于打开状态。

4 // 会自己行动的组成部分

包管理器只安装文件里写明的东西。智能体则自己决定安装什么、调用哪个工具。这带来两个后果。第一,出现了没有任何人挑选过的依赖:在一项覆盖 16 个 LLM 的研究中,19.7% 的推荐软件包并不存在。2026 年初,Aikido 在 237 个 GitHub 仓库里发现了同一个被编造出来的包名,它随着被复制的智能体 Skills 四处扩散;Aikido 抢先把这个名字注册了下来。

第二,智能体本身成了攻击者的工具。据 Wiz 分析,在 2025 年 8 月的 Nx 事件中,攻击者调用了受害机器上已安装的 AI 命令行工具来读取文件系统。一年之后,一个 npm 蠕虫把恶意钩子写进了 .claude/settings.json 和 .vscode/tasks.json,让自己的代码在下次启动时自动运行,并把提交记录伪装成编程助手所为(Aikido)。

六个入口,六项实证

六个组成部分中的每一个,都至少有一起记录在案的事件。

40 分钟
两个被篡改的 LiteLLM 版本在 PyPI 上存在的时间(LiteLLM,2026 年 3 月)
250
份投毒文档就足以植入后门,从 6 亿到 130 亿参数都是如此(Anthropic,2025 年)
19.7%
的 LLM 推荐软件包并不存在(Spracklen 等,USENIX Security 2025)
2,259
在 9,695 个受审计的 MCP 服务器中,确认存在安全问题的数量(TrendAI Research,2026 年)
组成部分 发生了什么 说明了什么
1 数据 2026 年 7 月:一个精心构造的数据集在 Hugging Face 的数据集处理环节触发了代码执行,攻击者得以访问内部数据集和凭据。 数据不只是内容,它本身就可以是攻击。
2 模型 2024 年 2 月:JFrog 在 Hugging Face 上发现约 100 个加载时会执行代码的模型。2026 年 5 月:一个仿冒仓库登上趋势榜第一(HiddenLayer)。 受欢迎不等于经过检验。详见深入篇。
3 软件包 2022 年 12 月:PyPI 上的 torchtriton 包与 PyTorch-nightly 的一个依赖同名,并窃取 SSH 密钥(PyTorch)。这种手法叫作依赖混淆// 依赖混淆公共仓库里的包与内部包同名,结果被安装的是它。例子内部有 acme-utils 1.2,攻击者在 PyPI 上发布 acme-utils 99.0,pip 会选择版本更高的那个。。 一个包名就够了。
4 基础设施 2026 年 3 月:攻击者覆盖了安全扫描器 Trivy 的 GitHub Action 77 个版本标签中的 76 个(Aqua Security)。LiteLLM 怀疑几天后自己的事件源于其 CI 中的这个 Trivy 依赖,但尚未证实。 本该保护你的工具,同样是供应链的一环。
5 供应商与 API 2025 年 1 月:Wiz 发现 DeepSeek 一个可公开访问的数据库,其中有一百多万行日志,包括聊天记录和密钥。2025 年 11 月:OpenAI 使用的分析服务商 Mixpanel 被导出了 API 用户的姓名、邮箱地址和组织 ID。聊天内容和密钥未受影响。 每个供应商背后都有一条你看不见的供应链。
6 智能体工具 2025 年 9 月:一个 npm 包冒充 Postmark 的 MCP 服务器,从 1.0.16 版起把邮件密送到外部服务器(Postmark)。2026 年 2 月:在 3,984 个受检的智能体 Skill 中,13.4% 存在严重级别的安全问题(Snyk)。 给智能体的一个工具,就是一个握有行动授权的依赖。

应该先做什么

没有人能在一天之内守住六个组成部分。下面五步收效最大,请按这个顺序来。

组成部分 第一项措施 工具
数据 记录来源,把数据集固定到某个修订版本,限制运行时检索的来源。 数据集修订版本、评审
模型 只允许 Safetensors,加载前扫描,按提交哈希加载。 ModelAudit、Fickling、ModelScan
软件包 只用一个软件包索引,安装时强制校验哈希,评审每一个新依赖,包括助手推荐的那些。 pip --require-hashes、uv、pip-audit
基础设施 令牌只给最小权限,Action 和镜像固定到提交而不是标签,凭据轮换要彻底。 zizmor、Syft、Grype
供应商与 API 使用固定的模型版本,记录模型 ID,把测试用例作为回归测试,每个服务使用单独的密钥。 promptfoo、garak
智能体工具 像对待依赖一样对待 MCP 服务器和 Skills:读源码,固定版本,限制权限。提示词放进自己的仓库。 Git、锁文件、评审

软件包方面的两个陷阱

pip-audit 找的是已知漏洞,不是恶意软件包,它的文档明确说明了这一点。另外,按照 pip 文档,对私有包使用 --extra-index-url 是不安全的,因为 pip 会在所有索引中挑选最佳版本。uv 默认会停在第一个包含该包的索引上。

监管怎么说

有三套规则涉及 AI 供应链,但没有哪一套能完整覆盖它。

简短版


来源:

OWASP LLM03:2025 Supply Chain OWASP Agentic Top 10: ASI04 MITRE ATLAS AML.T0010 LiteLLM: Security Update Aqua: Trivy attack PyTorch: torchtriton Hugging Face: Incident July 2026 JFrog: Malicious HF models Anthropic: 250 documents PoisonedRAG Chen, Zaharia, Zou 2023 Anthropic: Postmortem Wiz: DeepSeek database OpenAI: Mixpanel incident Invariant Labs: Tool Poisoning Pillar: Rules File Backdoor Pillar: Deadbugz Spracklen et al. 2025 Aikido: hallucinated npx Wiz: s1ngularity Aikido: keyv worm Postmark: malicious MCP package Snyk: ToxicSkills TrendAI: MCP ecosystem BSI / G7: SBOM for AI NIST SP 800-218A

想知道这六个入口里,你们有哪些还敞开着?我们聊聊。用 30 分钟,一起把你们的供应链逐个环节过一遍,没有任何义务。

NW
Nils WeiserAI 智能体专家 · 博登湖地区
与我合作 ▸

更多现场笔记

所有文章 ▸