问题所在
隐藏在 README 文件中的一条隐秘指令诱骗 GitHub Copilot 授予自己运行 shell 命令、下载恶意软件并构建僵尸网络的权限。这并非假设情景。它于 2025 年 8 月真实发生——安全研究人员披露了 CVE-2025-53773,一个严重程度高达 10 分制 7.8 分的严重漏洞。
它的可怕之处在于:开发人员只是让 Copilot“审查代码”或“解释一下这个项目”。AI 就读到了藏在项目文件里的一条被投毒的指令。随后,它悄悄修改了一个设置文件,启用了研究人员所称的“YOLO 模式”。在这种模式下,AI 无需任何人工批准即可在您开发人员的机器上执行命令。它可以下载恶意软件。它可以窃取凭证。它可以把工作站变成僵尸网络中的一个节点。
这并非唯一的入侵事件。同一年,微软的 Bing 缓存暴露了来自 16,000 多个组织的私有代码库——其中包括 IBM、谷歌和 PayPal。还有一名黑客向安装量超过 950,000 的 Amazon Q 官方 VS Code 扩展注入了破坏性命令。三起独立事件。三种不同的攻击方法。一条共同的主线:您的 AI 工具拥有的权力远超您的想象,而攻击者知道如何利用这一点。
这对您的业务为何重要
这些并非埋在研究论文里的理论风险。它们打击的是生产系统、真实的公司和真实的开发人员。以下数字能告诉您:
- 16,000 多个组织的私有代码库通过微软 Copilot 的 Bing 缓存遭到暴露,其中包括专有源代码和内部文档。
- 超过 300 个私有令牌和 API 密钥被窃取——这些密钥可以解锁对 AWS、Google Cloud、OpenAI 和 Hugging Face 环境的访问。
- 950,000 多名开发人员在恶意代码被发现之前就已经安装了遭到入侵的 Amazon Q 扩展。
- 20,000 多个代码库在组织一直视为私有档案库的地方遭到抓取。
想一想贵公司的代码库里此刻存放着什么。数据库凭证。API 密钥。内部架构文档。客户数据处理逻辑。如果您开发人员使用的 AI 编程助手连接着外部服务,那么贵公司可能早已身处暴露风险之中。
监管层面的态势让问题雪上加霜。2025 年 OWASP 大语言模型应用十大风险已将“过度代理”和“供应链”攻击列为顶级风险。审计师和监管机构正在迅速跟进。如果您的 AI 工具能够在没有人工批准的情况下执行命令,这就是您的董事会需要知情的合规缺口。而如果您的数据在被删除之后出现在第三方缓存中,您可能会面临自己此前根本不知道存在的数据保护违规。
底层究竟在发生什么
核心问题很简单:大多数 AI 编程工具是构建在通用语言模型之上的薄封装层。它们基于模式预测下一个最可能出现的词。它们不理解真相——只理解似是而非。而它们对您的系统拥有过大的访问权限。
不妨把它想象成雇用了一名热情过头的实习生:他能流利地说每一种语言,却毫无判断力。您把管理员凭证交到他手上,让他“搭把手”。谁提要求他都照做——包括把一张字条悄悄塞进他阅读堆里的陌生人。
Copilot 漏洞的发生机理正是如此。AI 继承了您开发人员的全部权限。一次隐藏的提示注入——一组伪装成代码注释或 README 文本的指令——指示 AI 更改它自己的配置文件。一旦它扳动那个开关,就可以在这台机器上执行任意命令。传统访问控制无能为力,因为 AI 是“代表”用户在行事。
Bing 缓存问题的运作方式不同,但根源相同。当您的 AI 工具依赖外部搜索引擎获取上下文时,您就失去了对数据生命周期的控制。Bing 抓取了您的公开代码库。您把它们设为了私有。缓存的副本却留了下来。您的 AI 继续把它们提供给任何一个发问的人。白皮书将此称为“僵尸数据”(Zombie Data)——在您自以为早已销毁它很久之后,仍在 AI 检索系统中存活的信息。
在这两个案例中,架构本身就是漏洞。再多的口头告诫——要 AI“注意安全”——也修不好一个从未设计过硬边界的系统。
什么有效(什么无效)
先从无效的做法说起。
**告诫 AI 要小心。**如今的 AI 安全大多依赖语言指令——本质上就是请求模型“乐于助人且不造成伤害”。2025 年的入侵事件证明,攻击者可以通过提示注入和越狱绕开这些指令。言语挡不住代码执行。
**依赖传统访问控制。**您的防火墙和基于角色的权限并非为继承用户特权的 AI 智能体而设计。Copilot 漏洞利用并没有攻破防火墙——它说服 AI 修改了自己的设置文件。
**把数据托付给第三方 AI 提供商。**当您的 AI 依赖外部搜索缓存或第三方 API 时,您就交出了对数据生命周期的控制权。“僵尸数据”危机表明,已被删除的数据可以在您无法控制的系统中无限期存续。
那么什么才真正有效?您需要架构级护栏——固化到系统运行时中的硬性限制,而不只是提示词里的指令。
**1. 输入隔离。**把 AI 读到的每一个提示——包括 README 文件、代码注释和项目文档——都视为潜在恶意的输入。在 AI 可以读取的内容与其可以执行的内容之间强制划定严格边界。某些配置文件和系统调用应当让 AI 引擎在物理上无法访问,无论提示词怎么说。
**2. 确定性逻辑门。**让您的语言模型搭配一个充当检查点的基于规则的系统。AI 提出一个动作。一个独立的逻辑引擎对照硬编码规则检查该动作——例如“未经人工批准绝不执行 shell 命令”或“绝不在生产环境中删除资源”。如果该动作违反某条规则,系统会在执行前予以否决。这就是所谓的神经符号(neuro-symbolic)方法的核心——将 AI 的语言能力与一个执行您规则的独立推理系统相结合。
**3. 闭环数据检索。**将您的 AI 模型完全部署在您自己的环境之内。上下文检索完全不使用任何外部搜索缓存或第三方 API。当您的 检索系统运行在您自己的基础设施上时,“僵尸数据”暴露在技术上就变得不可能,因为从未有任何外部系统触及您的数据。
审计踪迹优势对您的合规团队最为关键。当每一个 AI 动作都要通过一个确定性逻辑门时,您会得到一份关于 AI 做了什么以及为什么这样做的完整、可验证的记录。每一个提议的动作、每一次规则检查、每一次否决——全部留痕。当您的 安全评估与加固流程 纳入这一架构时,您就可以向监管机构和审计师准确展示您的 AI 是如何做出决策的。这正是“祈祷 AI 规矩行事”与“拿出证据”之间的区别。
2025 年的入侵周期还证明,提示文件已成为新的攻击面。贵组织应当把提示模板当作可执行代码来对待。这意味着加密签名、版本控制,以及在任何提示模板能够影响 AI 智能体行为之前进行安全审查。Amazon Q 入侵之所以得手,是因为一个名为“cleaner.md”的恶意提示文件被直接提交进了源码树——而且在它发布给 近一百万名开发人员。
您的 AI 工具应该为您效力,而不是与您作对。但这要求架构从地基开始就为安全而设计——而不是把安全当作事后追加的东西硬装上去。
阅读完整技术分析 ,深入了解每一起入侵事件以及防范这些事件的具体架构模式。您还可以 探索交互式版本 ,获取引导式的逐步讲解。
关键要点
- README 文件中隐藏的提示让 GitHub Copilot 获得权限,可在开发人员工作站上执行 shell 命令并下载恶意软件(CVE-2025-53773,严重程度 7.8/10)。
- 超过 16,000 个组织——包括 IBM、谷歌和 PayPal——的私有代码库通过 Bing 的 AI 缓存被曝光,即使在仓库被删除或设为私有之后依然如此。
- 一个遭黑客攻击、安装量超 950,000 的 Amazon Q 扩展包含了伪装成 AI 提示模板的破坏性命令,证明提示文件是一种新的攻击向量。
- 告诫 AI“注意安全”并不奏效——您需要能在物理层面阻止危险动作的架构级护栏,而不只是语言层面的指令。
- 在自有基础设施内结合确定性逻辑门部署 AI,可以创造可审计、可证明的安全性,同时满足安全团队和监管机构的要求。
总结
2025 年的 AI 入侵周期证明,权限不受约束的编程助手对您的基础设施、数据和合规态势构成直接威胁。解决之道不是更好的提示词,而是能在物理层面阻止危险动作并生成完整审计踪迹的架构。问问您的 AI 供应商:如果一条恶意指令藏在代码注释里,您的系统能否证明它拦截了由此产生的动作——并出示背后的逻辑链条?