AI 推荐的包五个里有一个根本不存在,而攻击者早就知道是哪些
来源:dev.to — 2026-09-30
📋 概述
你让 AI 助手写代码,它给出干净自信的实现,顶部一行 pip install,包名却是模型编出来的——而已经有人把这个名字注册到 PyPI,里面塞着恶意代码,因为他知道模型会推荐它。这就是 slopsquatting,一个为 AI 编码时代量身定做的供应链攻击。它和域名抢注式的拼写攻击不同的是:你不需要打错字,错误由模型替你犯,而且犯得稳定。USENIX Security 2025 的论文在 16 个模型上生成 57.6 万个代码样本,19.7% 推荐的包并不存在,共记录 20 万多个虚构包名;把触发过虚构包的 500 个提示各重跑十次,43% 的虚构名字每次都复现,2026 年的跨模型研究还找出 127 个被五个前沿模型一致编出的包名。可预测性就是漏洞:攻击者不必猜,只要跑热门模型收集稳定的幻觉名并提前抢注。而基于字符串相似度的既有检测基本抓不到它,因为它防的是上一个时代的攻击。
🔑 核心要点
- 这项攻击被命名为 slopsquatting:模型编出不存在的依赖名,攻击者提前注册并投放恶意代码。
- USENIX Security 2025 的研究生成了 57.6 万个代码样本,发现 19.7% 的推荐包是虚构的,共记录 20 万多个不存在的包名。
- 幻觉率并不随机:同一批提示重跑十次,43% 的虚构包名每次都会出现,2026 年还发现 127 个被五个前沿模型一致编出的名字。
- 开源模型表现更差(最高约 22%),商业模型更好,GPT-4 Turbo 曾以 3.59% 最佳;2026 年重测新模型已收窄到约 4.6%–6.1%,但远非零。
- 既有供应链工具大多基于字符串相似度检测拼写变体,对「模型原创但被抢注」的名字结构性失效。
- 作者的结论是风险位置发生了转移:漏洞从你的粗心搬到了你的信任上。
💡 金句
漏洞从「你的粗心」搬到了「你的信任」上——你什么都没做错,只是相信了工具,而工具编出了一个陌生人早已占住的依赖。
👍 0
👎 0
← 返回 dev.to 首页