2023年,一位名叫Bar Lanyado的安全研究员悄悄地做了一个实验。他注意到,人工智能编码助手不断推荐一个名为“python”的Python包。 拥抱脸-cli他创建了一个并不存在的软件包:一个空的占位符,上传时使用了模型开发者们正在创造的那个名字。他没有添加任何功能,也没有添加任何有效载荷。他只是静静地等待着。
三个月内,该软件包的下载量超过 30,000 万次。这条虚构的安装命令甚至出现在一家大型科技公司的公共代码库 README 文件中。Lanyado 的软件包本身并无害处。但这项实验揭示了一个令人不安的事实:攻击者可以预测人工智能将要开发的东西,抢先注册,然后让开发者自行安装。这种技术现在有了个名字。 蹲坑它是软件供应链中增长最快的威胁之一。
什么是蹲式露营?
懒散地蹲坐 供应链攻击 攻击者使用人工智能编码助手可以预见地臆想出的名称注册恶意软件程序包。 当开发者向 AI 工具寻求帮助,而该工具建议安装一个听起来合理但实际上不存在的依赖项时,攻击者已经在公共注册表中认领了该名称,因此这个“有帮助的”建议实际上安装的是恶意软件,而不是什么都不安装。
这个词是 由塞思·拉尔森于2025年4月创造他是 Python 软件基金会的驻场安全开发人员。这是对……的戏仿。 注册近似域名较早的攻击方式是犯罪分子注册热门包裹名称的错误拼写(请求 而不是 要求区别在于错误的根源:拼写错误抢注利用的是人类的拼写错误,而拼写错误抢注利用的是人工智能的“错误”:大型语言模型产生的自信、流畅但错误的输出。
为什么蹲姿真的有效
你或许会认为人工智能产生的幻觉只是随机噪音:每次都用不同的假名,根本不可能被利用。但研究表明并非如此,而这正是关键所在。
一项经同行评审的研究成果发表于 USENIX 安全 2025(Spracklen 等人) 研究人员使用 16 个大型语言模型,对 576,000 个生成的代码样本进行了测试。结果发现,19.7% 的推荐软件包并不存在:总共产生了 205,474 个独特的虚构名称。关键在于,这些虚构名称是 可重复的43% 的虚假名称在重复提示中再次出现,58% 的虚假名称在同一查询的十次运行中反复出现。开源模型有 21.7% 的概率会错误地输入软件包名称;即使是像 GPT-4 这样的商业模型,也有 5.2% 的概率出现这种情况:即每 20 人中就有 1 人。
正是可重复性将一个怪癖转化为攻击。攻击者无需猜测。他们可以运行常用的搜索命令,记录模型不断推荐的不存在的软件包,并将这些名称注册为恶意软件。人工智能会替他们进行目标定位。
一次蹲踞式袭击是如何展开的
攻击链很短,这也是它危险的原因之一:
- 观察。 攻击者向 AI 编码助手发出常见开发任务的提示,并记录这些工具创建的但注册表中不存在的软件包名称。
- 认证。 他们以其中一个虚构的名字发布恶意软件包,附带一个干净的 README 文件、看似合理的元数据,以及隐藏在安装脚本中的有效载荷。
- 等待。 开发者(或自主编码代理)向人工智能工具提出类似问题,得到相同的虚假建议,然后运行 安装.
- 执行。 该软件包的安装钩子会触发,窃取秘密信息、打开反向 shell 或植入后门,并且这种破坏会向下渗透到构建和生产环境中。
自主编码代理大大提高了第三步的成功率。无需人工审核即可安装依赖项的代理,消除了开发人员可能停下来思考“我从来没听说过这个软件包”的唯一检查点。
情况到底有多糟糕?
情况越来越糟,而不是好转。USENIX 的研究测试了 16 个模型,仍然发现近五分之一的推荐软件包并不存在,因此这并非仅限于较旧或功能较弱的工具。仅凭训练数据进行编码的助手无法判断它刚刚建议的软件包名称是安全的、虚构的,还是已被标记为恶意软件:它无法实时查看注册表。这并非实验室里的奇特现象,而是开发人员现在每天都要数十次依赖的实际操作。
随着供应链安全状况的全面恶化,域名抢注现象也日益猖獗。正如 Xygeni 发布的《2026 年应用安全攻击新趋势》报告所述,到 2025 年,大规模恶意软件攻击活动将成为供应链攻击的基本运作模式:攻击者大量发布恶意软件,接受快速下架,并依赖概率,而人工智能的“幻觉”则为他们提供了源源不断的高转化率域名。
如何防范邋遢蹲坐
令人不安的事实是,基于特征码的工具无法检测到这种攻击。被恶意占用的软件包是全新的;没有 CVE 编号,也没有特征码,它可能只存在几个小时就会被下架,但足以积累数千次的安装量。有效的防御措施依赖于以下四点:
- 切勿在未验证其是否存在且合法的情况下安装人工智能推荐的软件包。 要查看真实的下载历史记录、维护者和存储库,而不仅仅是名称听起来对不对。
- 通过行为而非特征码来检测恶意软件。 在发布时根据软件包的安装时操作、网络调用和评分对其进行评分。 混淆模式因此,恶意软件包会在出现的第一时间被标记出来,而不是在被发现之后才被标记出来。
- 在开发人员和注册表之间设置依赖防火墙。 在可疑或全新的软件包到达构建环境之前,自动对其进行隔离,而不是默认信任公共注册表。
- 清点一下你的电脑里正在运行哪些人工智能。 pipeline. 安装依赖项的编码助手和自主代理也是攻击面的一部分。 AI物料清单(AI-BOM) 使之可见。
随意占用公共空间是更大转变的一个征兆。
“Slopsquatting”(非法占位)是更广泛趋势的最典型例证:人工智能如今既是编写代码的工具,也是攻击者在供应链中瞄准的目标。孤立地防御人工智能是不够的;它需要纳入更广泛的战略之中。欲了解全貌,请参阅我们的指南。 人工智能供应链安全涵盖恶意软件包, MCP风险以及人工智能生成的代码和应对它们的防御措施。
别再蹲着了,否则你的身材会垮掉。
阻止恶意软件包入侵最有效的方法是在开发者尝试安装它的时候,也就是在安装脚本运行之前。就是这样。 Xygeni Shield 确实如此。Shield 是开发者终端上的一个轻量级代理,它会在安装时阻止恶意软件包。 恶意软件预警 (MEW) 在任何签名存在之前就已生效的判决。当人工智能助手建议一种虚构的依赖关系,而开发者运行 安装Shield 会在获取软件包时对其进行评估并阻止它:恶意安装后脚本永远不会执行,安全团队可以看到完整的上下文信息。
由于 MEW 会在软件包发布后立即对其进行行为评分(安装时操作、网络调用、混淆模式),Shield 可以精准地捕获那些尚未签名的全新软件包,这些软件包正是 slopsquatting 所依赖的,此外还包括 typosquatting、依赖项混乱和维护者妥协等问题。所有数据块都会与代码、构建和运行时发现的结果一起显示在同一个 Xygeni 控制台中,因此不会产生任何新的问题。 dashboard 而且无需建立新的供应商关系,Shield 与您现有的 EDR 并行运行,而不是与之对抗。
免费开始。 Xygeni 的开发者计划是 0 欧元:10 个存储库,每月 200 次扫描,最多 5 个贡献者,无需信用卡。 Sign up with GitHub使用 GitLab 或 Google,并在 10 分钟内运行首次扫描;Shield 端点保护功能即将加入开发者计划。
常见问题解答
非法占用房屋是现实存在的威胁,还是仅仅停留在理论上?
这是真的。研究员 Bar Lanyado 在 2023 年进行的一项概念验证中,发现了一个以虚构名称命名的占位符包装(拥抱脸-cli)在三个月内下载量超过 30,000 次。USENIX Security 2025 的一项研究发现,19.7% 的 AI 推荐软件包并不存在,而这些虚构的名称中有 43% 在不同的提示中重复出现,这意味着攻击者可以预测并注册它们。
slopsquatting 和 typosquatting 有什么区别?
域名抢注利用人为拼写错误,注册热门软件包名称(请求 HPMC胶囊 要求恶意抢注软件包地址(Slopsquatting)利用人工智能的错觉,注册大型语言模型生成的看似可靠但实则错误的软件包名称。两者都旨在诱骗开发者安装恶意软件,但它们利用的错误却截然不同。
我可以信任人工智能编码助手来建议依赖关系吗?
未经核实,切勿轻信。即使是主流商业软件,也有大约 5% 的概率会错误地推荐不存在的软件包。而最新的分析发现,当前某款软件推荐的依赖项升级建议中,近 28% 都是错误的。因此,在安装任何软件包之前,务必确认其真实存在且合法。
如何防止我的代码库被恶意占用?
在安装前验证 AI 建议的软件包,在发布时通过行为检测恶意软件(而不是等待签名),在开发者和公共注册表之间设置依赖防火墙,并维护一份 AI 工具和代理的 AI-BOM 清单。 pipeline.




