AI智能体安全:团队最容易忽视的攻击面

AI智能体安全不应只防提示注入,更该追问被骗后能触达什么。
文章指出,当前AI安全讨论过度聚焦提示注入和越狱清单,但越狱只测试智能体“被说服去做什么”,真正关键的是“被说服之后能触达什么”。作者提出三个被忽视的问题:第一,智能体被允许做什么,即权限边界与最小权限原则;第二,它记住了什么,即长期记忆带来的记忆投毒风险,恶意笔记可在数天后仍操控智能体且不触发实时告警;第三,它信任什么,即多智能体管道中每次交接都是未验证的信任边界,模型输出应视为不可信输入。这三个问题覆盖了更完整的攻击生命周期,也正是采购方安全团队会问的问题。文章建议开发者限制运行权限、审查记忆读写、在每次交接处做输入校验,从而缩小被攻击后的影响范围。
大多数AI安全讨论都聚焦在提示注入(prompt injection)上。这确实是攻击智能体的一扇门,但往往不是最关键的那扇。\n\n一篇越狱清单测试的是智能体被说服去做什么。而另外三个问题测试的是它被说服之后会发生什么——后者能发现更多问题。这正是团队最容易忽视的攻击面。\n\n
\n\n## 被忽视的攻击面:提示注入只是冰山一角\n\n当前行业对AI智能体安全的关注,过度集中在提示注入和越狱攻击上。安全团队花费大量精力构建越狱测试清单,试图穷举各种花式提示词,验证模型会不会被诱导输出有害内容。\n\n但这种思路存在根本性的盲区。一篇越狱清单测的是「智能体可以被说服去做什么」,而真正危险的是「它被说服之后能触达什么」。前者是输入端的问题,后者是权限、记忆与信任链的问题——后者往往才是造成实际损失的关键。\n\n本文提出的框架来自安全评估机构stonepathit的分析,核心观点是:不要只问「它会不会被骗」,而要假设它一定会被骗,然后追问三个更深层的问题。\n\n## 问题一:它被允许做什么?\n\n第一个问题不是「智能体会不会被欺骗」,而是「一个被欺骗的智能体能触达什么」。\n\n考虑一个拥有shell工具的智能体。它运行在承载它的进程之上,用户的操作系统权限并不会随之而来。如果模型因为糟糕的提示词、被投毒文档或纯粹的错误而「犯糊涂」,爆炸半径就是那个进程能触及的一切。\n\n这个视角的转换至关重要。传统安全思维问的是「能否被欺骗」,而更有效的问法是假设欺骗必然发生,然后评估被骗后智能体能够触达的资源和系统边界。\n\n如果一个拥有shell权限的智能体运行在过高的权限之下,一次成功的提示注入就可能导致数据泄露、系统破坏甚至横向移动。权限最小化原则在AI智能体时代同样适用,甚至更加重要。\n\n## 问题二:它记住了什么?\n\n记忆让智能体变得有用,但也让注入变得持久。\n\n一个会话中写入的笔记,在下一个会话中被读取回来时,本质上就是来自过去的输入。如果没有任何机制在笔记回读时进行检查,那么上周写下这条笔记的人,今天依然在操纵这个智能体。原始对话早已消失,当时发现问题的机会也已经丧失。\n\n这是一个被严重低估的风险向量。传统Web应用的安全模型假设每次请求都是独立的,或者至少会话边界是清晰的。但具备长期记忆的智能体打破了这种假设——昨天的恶意输入可能成为今天的隐藏指令。\n\n记忆投毒(memory poisoning)的隐蔽性在于:它不发生在实时对话中,因此不会触发任何实时安全告警。一条看似无害的笔记可能携带注入指令,在数天甚至数周后才被触发。\n\n## 问题三:它信任什么?\n\n当智能体之间相互交接工作,或者一个步骤的输出成为下一步骤的输入时,每一次跳转都是一个无人验证的信任缺口。\n\n管道(pipeline)往往会在边缘——也就是用户输入到达的地方——进行验证,然后信任内部的一切。但一个模型的输出就是不可信文本,无论它来自哪个模型。每一次交接都是一个输入边界,不管有没有人明确划出这条边界。\n\n多智能体系统(multi-agent system)的流行让这个问题更加突出。当Agent A调用Agent B,再由Agent B调用工具C时,中间环节的信任假设往往从未被审视。每一跳都可能成为攻击者注入指令的通道。\n\n安全的做法是将每一次智能体之间的交接都视为不可信输入,就像对待来自互联网的用户输入一样。\n\n## 为什么这三个问题比越狱清单更有效\n\n这三个问题能比越狱清单发现更多问题,原因在于它们覆盖了更完整的攻击生命周期。\n\n越狱清单只覆盖了「入口」这一个环节,而权限、记忆和信任链的问题贯穿智能体的整个运行周期。更关键的是,这三个问题正是采购方安全团队会问的问题——与其等别人来质疑你的智能体安全,不如自己先回答。\n\n从实践角度看,这三个问题提供了一个结构化的安全评估框架:\n\n- 权限层面:智能体运行在什么权限上下文?最小权限原则是否已应用?\n- 记忆层面:记忆写入和读取是否有验证机制?跨会话的持久化数据如何审查?\n- 信任层面:智能体之间、步骤之间的数据流动是否存在隐性信任?\n\n如果希望由专门尝试突破这些答案的人来测试你的智能体安全,可以考虑预约一次范围评估。\n\n## 对开发者和安全团队的建议\n\n智能体安全不能只依赖提示词层面的防御。构建AI应用时,需要从系统架构层面考虑权限边界、记忆安全和信任模型。\n\n具体而言:限制智能体运行权限至最小必要范围;对持久化记忆实施写入审查和读取验证;在智能体间的每一次交接处进行输入校验。这些措施无法完全消除风险,但能显著缩小被攻击后的影响范围。\n\n归根结底,安全问题不在于智能体是否会被欺骗——它会。问题在于被骗之后,它能走多远。
背景补充
提示注入(prompt injection)指攻击者通过精心构造的输入,让模型把其中的内容当作指令而非数据来执行,从而绕过原有约束。它通常分为两类:直接注入,即用户在对话里直接写恶意指令;间接注入,即恶意内容藏在模型会读取的外部数据中,例如网页、文档、邮件或工具返回结果,模型在不知情的情况下将其当作指令执行。越狱(jailbreak)则更侧重于绕过模型自身的安全对齐,让模型输出本应被拒绝的内容。二者的共同点是把问题定位在“输入端”,试图靠过滤提示词或强化对齐来解决。但智能体一旦拥有工具调用和持久化状态,攻击面就不再局限于输入,而是延伸到它被允许调用的工具、能读写的记忆以及对外部数据的默认信任。
最小权限原则(principle of least privilege)是安全领域的经典原则,要求每个主体只被授予完成其任务所必需的最小权限,且只在必要时间内持有。在AI智能体场景中,这一原则需要落实到多个层面:操作系统层面的用户权限、容器或沙箱的限制、可调用工具的白名单、网络出站规则以及凭证的细粒度授权。许多智能体为了方便,被赋予过高权限,例如一个只负责整理文档的智能体却拥有读写整个文件系统或访问云资源的token。一旦该智能体被间接提示注入操控,攻击者就能借它的权限实施数据外泄或横向移动。因此,评估时应先绘制“权限地图”,明确它运行在哪个权限上下文、能触达哪些资源,再判断被骗后的爆炸半径是否可接受。
记忆投毒(memory poisoning)是指攻击者将恶意指令或虚假信息写入智能体的长期记忆,使其在后续会话或任务中被反复读取并当作可信上下文执行。相比实时提示注入,它更难发现,因为污染发生在过去,触发点可能在数天甚至数周之后,且不会出现在当前对话记录中。常见的写入渠道包括用户对话摘要、工具返回结果、网页抓取内容以及智能体自动生成的笔记。防御思路通常包括:对写入记忆的内容做来源标记和可信度分级;在读取时重新校验,而不是默认信任;对来自外部不可信源的内容做隔离存储,避免与系统指令或用户偏好混在一起;设置记忆过期与人工审查机制。核心是把记忆当作不可信数据对待,而不是当作可信指令。
多智能体系统(multi-agent system)指由多个智能体分工协作完成任务的架构,常见模式包括主管-工人(supervisor-worker)、流水线(pipeline)和辩论式(debate)。这类架构提升了复杂任务的处理能力,但也引入了新的信任边界:Agent A的输出会成为Agent B的输入,而B往往默认A的内容是可信指令。攻击者只需污染其中一环,例如让A抓取的网页包含隐藏指令,就能借助A的“可信身份”影响B的行为。安全的做法是把每一次智能体之间的交接都当作输入边界,对传递内容做来源标注、结构约束和必要校验,并限制下游智能体仅执行白名单内的动作。换言之,不能因为内容来自“自己人”就降低审查标准。
相关推荐

房产经纪人用AI提效的5个实操方法(2026版)
房产经纪人如何用AI提效?结合YouTube实操演示,拆解ChatGPT写房源描述、Canva做营销物料、表单管理开放日线索、Zapier自动跟进、卖家面谈准备5个方法,并提示公平住房法规、照片真实性与定价核实等风险边界。

Grok Bot vs ChatGPT Agent:两大AI代理谁更强?
Grok Bot 与 ChatGPT Agent 有何区别?本文对比两者的工作方式:Grok Bot 拥有云端计算机、可常驻工具内自动执行多步任务;ChatGPT Agent 在浏览器中操作网页,通用任务更成熟。附选型建议。

Walmart Agent Gateway:AI帮你自动购物,亚马逊为何反其道而行?
沃尔玛推出Agent Gateway,允许ChatGPT、Gemini等AI助手直接接入商品库替用户搜索比价加购,并设消费限额与逐笔审批三道安全阀。亚马逊则封堵外部AI代理,两大零售巨头走向相反路线。功能目前仅限美国,印度市场或随后跟进。