Copilot被诱导泄露内部架构图,比泄露system prompt危害更大。核心教训:context window等同于网络分段,受限信息不该进入AI可见范围,需对chat box本身执行最小权限。
一个 AI Assistant 被陌生人诱骗描述了它自身的架构和安全态势。此事被命名为 CoSnitch,对于任何已在内部基础设施上接入 LLM 的人来说,读起来不觉得陌生——这是一堂被遗忘的 least privilege 课。
根据原文分析,CoSnitch 诱骗 Copilot "mapping out architecture"——即挖出底层架构和安全状况的细节,而不仅仅是泄露一个 system prompt 模板。作者明确指出了其中的区别:"A leaked system prompt is embarrassing. A leaked architecture map is a target list."
作者也就其"新"意程度直言不讳。文章认为,将此定性为"meta-hacking"略显过头:这"is prompt injection with a research name attached",与安全社区自 RAG 和 copilot 开始接入内部系统以来就一直在警告的机制相同。作者认为被轻描淡写的一点是:为什么模型一开始就能接触到那些信息。
将 context window 视为网络分段。 建议来源:如果一样东西不应该暴露在外,那么它也不应该处于外部用户正在聊天的 assistant 可触及的范围内——"full stop"。将 least privilege 应用于聊天框本身,而不仅仅是 API endpoint。
将 LLM 的输出视为不可信输入。 你(希望如此)已经不再信任用户输入;现在你也不能完全信任 assistant 说出的话,因为攻击者可以通过同一段对话来篡改输出。
用社会工程学的方式做 red team。 作者论证道,探询内部 assistant 的行为应该被视为针对 help desk 的社会工程活动——因为从功能上讲,现在它确实就是如此。
作者提出了一个值得深思的观点:prompt injection "isn't solved, it's arguably not solvable in the current architecture",因为这是模型的基本属性——无法可靠地区分什么是指令、什么是数据。这是作者的观点,并非定论,但它与安全团队一整年所看到的相符:攻击者不再试图破解模型,而是开始"采访"它。
对于正在尝试将 Copilot 接入内部文档的普通办公室人员或开发者,信息很简单:不要把任何你不愿意让陌生人看到的东西放入 assistant 的 context 中。Guardrail 有帮助,但模型能触及范围的硬边界才是真正保护你的东西。
本文最初发表于 NextFuture。关注我们以获取更多 fullstack 和 AI 工程内容。