来源
- 原始链接:https://www.latent.space/p/gray-swan?utm_source=post-email-title&publication_id=1084089&post_id=202758604&utm_campaign=email-post-title&isFreemail=true&r=27lk8i&triedRedirect=true&utm_medium=email
- 来源类型:Latent Space 访谈正文与逐字稿
- 来源标题:AI 安全深度解析:从间接提示注入到灰天鹅事件的防御与挑战
AI 安全灰天鹅:Agent 时代的提示注入与身份边界
这篇 Latent Space 访谈的价值,不在于提醒大家 prompt injection 很危险,而在于它把 Agent 安全拆成了几个可以工程化处理的对象:模型自身是攻击面,外部上下文是指令通道,工具调用是风险落点,身份与权限是下一代平台层。
AI 安全的对象变了:模型本身就是攻击面
背景:很多人把 AI 安全理解成用 AI 做传统网络安全。Gray Swan 的切分更准确:AI 系统接入业务后,本身成为一种新的、需要被测试和防御的软件组件。
大语言模型也是软件。只要你要部署它们,或在它们之上构建应用,就必须理解其中的漏洞和可能出错的方式。这包括 agent 调错工具这样的日常错误,也包括攻击者诱导 agent 失控、泄露数据或盗取凭证的最坏情况。
AI 系统有自己的内在漏洞。它们会以人类会被骗的方式被诱导,所以需要一种不同的安全心智。
兴趣匹配度高。这里把风险从抽象伦理问题拉回工程对象:如果模型进入业务闭环,它就是需要威胁建模、红队、策略执行和边界隔离的软件部件。
少数基础模型带来的相关性失效
背景:传统软件漏洞常常分散在不同系统里,Agent 时代的风险可能更集中。因为大量产品共享少数基础模型,一类漏洞可以同时影响许多上层 agent。
问题不只是世界上有很多 AI 系统,而是大家都在使用少数几个模型。如果在 Codex、Claude Code 这类被广泛使用的 agent 中发现漏洞,就会形成一种新的可利用类别。
如果你运行一个 coding agent,它会抓取不可信内容,阅读你无法控制的文本。关键问题是:它能不能坚持原始目标,而不被这些外部文本劫持?
兴趣匹配度高。这个判断直接对应上下文工程:现代 agent 的上下文来自仓库、网页、issue、日志、邮件和文档。只要外部文本进入上下文,它就可能从数据通道变成指令通道。
红队不是技巧,而是输入空间里的优化问题
背景:访谈里最重要的机制解释之一,是把 red teaming 从黑客手艺还原为搜索问题。目标行为确定后,红队要找的是能触发该行为的输入。
安全不会因为模型变大就自然变好。你必须显式训练模型变安全;反过来,模型也不会默认更擅长红队。要让模型擅长红队,需要训练专门的红队模型。
自动红队系统 Shade 在一些实验中已经比人类红队更能突破模型。红队的本质是寻找模型分布外的东西,从而绕过模型的正常行为;这和普通模型能力提升很不一样。
兴趣匹配度高。这解释了为什么最强通用模型未必是最好的安全测试员。红队模型的目标函数不同,它要探索的是正常行为之外的边界,而不是完成用户给定任务。
鲁棒性是一种独立能力,不能靠 prompt 临时补
背景:企业最容易踩的坑,是把安全策略继续写进 system prompt,让基础模型一边处理复杂任务,一边记住一堆旁路政策。访谈的判断很直接:这种方式在对抗场景里会失效。
抵抗攻击本身也是一种能力。把模型做得越来越大,并不会天然让它更能抵抗 jailbreak。模型之所以变得更安全,是因为有显式训练;如果只是扩大模型,它不会自动变得更能抵抗对抗压力。
当任务困难、上下文很重,还要同时跟踪一套能做和不能做的政策时,基础模型很容易混淆。有效的 prompt injection 正是利用这种混淆:制造上下文和适用政策的歧义;一旦基础模型被绊倒,就结束了。
兴趣匹配度高。这是对 prompt engineering 边界的清晰描述。prompt 可以塑造倾向,但安全边界需要更强的执行层,例如专门的策略模型、工具调用拦截、访问控制和运行时隔离。
致命三要素:不可信输入、私有信息、外传能力
背景:Simon Willison 提出的 lethal trifecta 在这篇访谈里被讲得很工程化。prompt injection 的风险不是看到恶意文本就成立,而是三个条件同时出现时才变成真实事故。
真正形成风险的是三件事合在一起:摄入来自不可信来源的外部数据,能够访问内部私有信息,并且有能力把这些信息发送到别处。
问题不是证明性地完全消除这些风险,就像我们短期内不会拥有零 bug 软件一样。更现实的目标,是用很小的额外计算开销,把系统推到更好的可用性和安全性帕累托前沿。
兴趣匹配度高。这给了一个很可操作的威胁建模框架:可以限制外部输入,可以隔离私有数据,也可以控制外传能力。只说安全没有意义,拆掉三要素之一才是工程动作。
防御重点应该落在动作层,而不是只扫描输入
背景:许多防护方案会盯着输入里有没有注入文本。Gray Swan 的 Cygnal 更有意思的一点,是同时检查 agent 即将发出的工具调用。
Cygnal 可以双向工作:既检查进入系统的不可信内容,也检查系统发出的工具调用。对于出站请求,它会看系统是否把 API key 发到了错误或不可信的位置。
如果一个 agent 读到不可信内容并发现 prompt injection,你也许想知道,但不一定希望 Claude Code 工作三小时后立刻停掉。真正的问题是:agent 计划执行的动作是否违反策略。如果违反,就在那里拦下。
兴趣匹配度很高。这是 Agent 安全架构的关键转向:风险最终落在 action 上。文件写入、网络请求、数据库操作、密钥外传,这些动作比输入文本本身更接近事故现场。
Agent 的可用性和安全性是同一个设计问题
背景:Agent 越能做事,越需要权限;权限越大,风险越高。访谈里反复出现的判断是:不能简单把 agent 关进沙箱,也不能让它继承人的全部权限。
我不想把我的 agent 关进沙箱,因为那会限制它的能力。这里的核心权衡是:agent 的可用性和权力越大,安全风险也越高。目标不是牺牲一边,而是把可用性与安全性的帕累托边界往更好的方向推。
这正是 AI 部署的限制因素:我们知道它大概有能力做事,但我们不信任它,所以不会让它接触真实系统,也不会给它真实数据。结果它永远做不了真正有趣的事情。
兴趣匹配度高。这句话解释了 Agent 落地的真实瓶颈:未必是模型不够强,而是组织不敢交给它真实权限。安全层会成为 Agent adoption 的基础设施。
Agent 原生身份会从权限继承走向身份域切分
背景:今天很多 agent 的默认权限模型很粗糙:它代表你,所以拥有你的权限。访谈把这个默认称为灾难,并给出一个更自然的演化方向。
现在很多情况下,agent 默认拥有你的权限。这是非常常见的默认设置,也是一场灾难。即使你的权限被放进沙箱里,它仍然是你的权限。这个默认很快会改变,因为它必须改变。
我不认为它会首先变成每个 app 一个 agent。更自然的发展是人们拥有不同的 persona:工作生活、家庭邮箱、不同工作角色。人类很擅长分开这些生活,但现在的 agent 非常不擅长。
兴趣匹配度很高。这和上下文工程、人机共生、组织权限系统直接相关。未来 agent 平台的抽象可能不是按 app 切,而是按身份域、生活域和任务域切。
灰天鹅:看得见但还没制度化的事故
背景:文章标题里的 gray swan 是最后的产业判断。prompt injection 的重大事故不是没人想到的黑天鹅,而是每个做 Agent 的人都能看见、但行业尚未形成保险、合规和评估框架的灰天鹅。
如何评估一家公司 AI 部署的风险?可以用 Shade 或 Arena。如果风险太高、无法承保,就需要降低风险:在模型周围加安全系统,比如 Cygnal。
第一次重大的公开 prompt injection 事故,很可能会触发需求。灰天鹅指的是一种虽然不太可能、但你仍然看得见的事件。我们现在就在这个位置。它会发生,发生时不会让任何人震惊,所以最好提前行动。
兴趣匹配度高。这里把技术工具、红队评估、企业采购、保险和合规连成了一条未来产业链。Agent 安全会从工程实践扩展成组织治理问题。
整体评价
这篇最值得带走的判断是:Agent 安全不是给模型加一句更严厉的系统提示,而是重构整条执行链。输入侧要区分可信与不可信上下文,中间层要有专门训练的策略与红队模型,动作侧要拦截工具调用,权限侧要发展 agent-native identity。真正的分水岭不是模型能不能回答安全问题,而是它能不能在真实权限、真实数据、真实工具中持续保持目标一致。