AI帮你写代码,也帮黑客开门:Slopsquatting攻击5分钟就能得手,20%的AI包推荐是假的

AI编程工具的普及速度超出了所有人的预期。JetBrains开发者生态调研显示,Claude Code的采用率从2025年4月的3%飙到2026年1月的18%,九个月翻了六倍。GitHub Copilot、Cursor、Claude Code加起来有数百万日活开发者。

效率的代价随之而来。安全公司Socket的威胁情报显示,2026年上半年软件供应链攻击的活动量是2025年全年的2.6倍,被投毒包的数量是去年的4.5倍。其中一类新攻击专门盯上AI的幻觉,安全圈给它起了个名字:Slopsquatting(幻觉包抢注)。

什么是Slopsquatting

原理拆开看非常简单。

大模型不查包管理器。它根据训练数据的统计规律”编”出一个听起来合理的包名,比如`requests-enhanced`、`fastapi-middleware`、`aws-helper-sdk`。这些包在PyPI或npm上根本不存在。

USENIX Security 2025的一项研究测试了16个大模型、57.6万个样本,结果约19.7%的AI包推荐指向不存在的包。Socket.dev的测试数据更高:涉及第三方库的提示词里,20%到30%的回复包含虚构包名。

攻击者做的事只有两步:批量向AI编程助手发送真实场景的提示词,收集它反复”梦”出来的包名;抢在这些名字被人发现之前去PyPI、npm注册,塞进恶意载荷。

注册成本为零,PyPI和npm上传都不收钱。攻击者的成本接近零,收益却可能覆盖成千上万个开发者。

幻觉是可预测的,这才是最危险的地方

单次幻觉像随机错误,批量幻觉就成了攻击者的情报。

研究人员把同样的提示词重跑十次,43%的幻觉包名每次都一模一样。攻击者只需要对着热门模型跑几十个提示词,找出那些稳定出现的名字,抢先注册即可。

Aikido Security的研究员Charlie Eriksen做过一个演示。2026年1月,他发现某个大模型总把两个真实工具jscodeshift和react-codemod”融合”成一个不存在的包`react-codeshift`。他防御性地抢注了这个npm包名,结果令他后背发凉:

这个幻觉名已经通过AI生成的Agent技能文件扩散到237个GitHub仓库,注册当天就记录到来自自主Agent的真实下载请求。Eriksen的原话是:”这本来就是一次幻觉,它扩散到了237个仓库,产生了真实下载。它没变成攻击武器的唯一原因是我先到了。”

不止幻觉:攻击者已经开始给AI”投喂”恶意包

Slopsquatting利用的是AI犯错。更进阶的攻击直接操纵AI的判断。

ReversingLabs披露的PromptMink攻击活动值得所有团队警惕。朝鲜威胁组织Famous Chollima制作了诱饵包`@solana-launchpad/sdk`,它的README不是写给人看的,是写给大模型看的:文档措辞经过专门设计,让AI在解析依赖时认为这个包”权威且合适”。这种手法被称为LLM优化(LLMO)滥用加知识注入。

后果很具体:一个参加Solana Graveyard黑客松的合法项目把该包写进了依赖,仓库历史显示,那笔提交的co-author是Claude Opus。也就是说,AI自己把恶意包推荐进了人类的项目。

2026年2月披露的Clinejection事件把风险又推高一级。Cline AI编程工具的GitHub仓库配置了AI issue分诊工作流,权限过宽。攻击者在issue标题里嵌入指令,诱导Agent执行来自攻击者提交的npm install,再通过GitHub Actions缓存投毒,最终窃取了nightly发布管线的npm、VS Code Marketplace和OpenVSX发布凭证——影响面覆盖500万开发者。

四道防线,今天就能落地

2026年5月,CISA联合NSA和五眼联盟发布联合指南,核心态度很明确:把AI编程Agent当作”默认不可信的组件”,管好它。

具体到开发团队,四件事优先做:

1. 装包前花30秒验证。 AI推荐的任何包,先去PyPI或npm确认存在、看发布日期和维护者。发布不到一周、星标几十个、README明显机器生成的包,直接跳过。这一步成本极低,收益最大。

2. 锁文件必须进版本库。 `requirements.txt`、`package-lock.json`、`cargo.lock`提交到仓库,版本锁定,并在代码评审中重点检查新增依赖。幻觉包在评审环节会露出马脚。

3. CI/CD接入行为分析扫描。 Socket、Snyk、Aikido这类工具会分析包的安装钩子、混淆代码和可疑网络请求,能在载荷执行前拦下来。传统CVE库查不到新注册的投毒包,行为分析是关键。

4. 收紧Agent权限。 CISA指南要求:维护一份预审批的第三方组件白名单,限制Agent只能从中选;任何高影响操作(比如在生产管线装新依赖)必须人工批准;给Agent最小工具权限;审计所有Agent的install日志——那些没有人类评审记录的安装最危险。

写在最后

传统供应链防御的假设是”人会犯错”,防的是手滑装错包。AI时代的前提变了:AI不但会错,还会稳定地错同一个地方。

npm针对相近名称的碰撞检测对幻觉包完全失效,因为幻觉名是全新的字符串。防线上没补丁,防线只在习惯里——把”验证AI推荐的每个依赖”变成和”写测试”一样的肌肉记忆,你的项目就甩开了大多数团队。


评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

苏ICP备2025163703号-2   警徽苏公网安备32010502011527号