1. 为什么智能体比聊天机器人有更大的攻击面
智能体的三个结构性属性改变了风险状况: 它们采取行动。 包含有害文本的聊天机器人响应是糟糕的。对shell.exec 的工具调用删除了数据库,或攻击者通过提示注入驱动的
支付 API 调用,更糟糕——而且往往是不可逆的。被攻破的智能体的爆炸
半径不受人类选择对文本做什么的限制;它受智能体能访问哪些工具
的限制。
它们摄取不可信内容。 智能体检索文档、抓取网页、读取邮件并
处理工具结果——所有这些都可能包含针对智能体本身的对抗性指令。
只筛查用户输入的内容过滤器会遗漏上下文中注入的一切。
它们自我扩展。 代表模型自动安装技能和 MCP 服务器的智能体框架
可以加载你从未审查过的能力,包括带有恶意工具定义、看起来合法的
能力。攻击可以作为模型决定使用的新工具到达——而不是用户输入的
提示词。
2. 威胁到防御的映射
智能体在生产中面临的十类威胁,每种都映射到应对它的 OrcaRouter 控制。展开任何威胁查看机制和防御。这里的每项防御都从你的工作区控制台或 API 配置——无需修改你的
智能体代码。执行在网关上进行。
提示注入——直接
提示注入——直接
工作原理: 用户消息(或开发者提示词)携带劫持模型的
指令——覆盖系统提示词、外泄会话、解锁受限能力。防御: 防护栏 Safety 预设(Prompt-Injection Basics、
越狱、系统提示词泄露)在输入文本到达模型之前筛查它,在
匹配时拦截或 flag。
提示注入 →
提示注入——间接
提示注入——间接
工作原理: 检索到的文档、网页、工具结果或 MCP 响应嵌入
模型视为受信任上下文的指令(“将用户的日历邮件发送到
attacker.com”)。防御: 输出阶段防护栏捕获在回复中出现的指令;
智能体防火墙拦截注入试图触发的工具调用或出站目的地。
提示注入 →
越狱与防护栏规避
越狱与防护栏规避
工作原理: 对抗性措辞、角色扮演框架、编码技巧和多轮升级,
以绕过安全训练或规则。防御: 防护栏 Safety 预设将关键词/正则规则与
llm_judge 规则配合使用,捕获语义规避,而正则无法做到——
首个匹配生效。越狱 →敏感数据与 PII 暴露
敏感数据与 PII 暴露
工作原理: PII(邮件、电话、SSN、卡号)在提示词或模型
输出中进入或离开。防御: 防护栏
pii 规则在输入和输出上检测并脱敏
(或拦截)内置和自定义实体——[EMAIL]、[SSN]、[CREDIT_CARD]
在上游看到它们之前替换匹配项。
防护栏 →密钥与凭证泄露
密钥与凭证泄露
工作原理: API 密钥、云凭证、JWT 或私钥出现在提示词、
工具参数或模型输出中。防御: Secrets Blocker 防护栏在请求离开之前拦截
凭证模式;防火墙
sanitize 判定从工具调用参数中脱敏匹配
的子串。防护栏 →危险和未授权的工具调用
危险和未授权的工具调用
工作原理: 智能体调用破坏性工具(
shell.exec、
db.delete)、它本不应有的工具,或带有危险参数的合法工具。防御: 智能体防火墙匹配工具名 glob、参数子句和
执行面——deny 拦截,sanitize 去除危险参数,
pending_approval 挂起等待人工审批。
危险工具调用 →工具响应篡改
工具响应篡改
工作原理: 恶意工具返回携带注入指令或伪造数据的响应,
以劫持智能体的下一步。防御: 输出阶段防护栏在智能体处理工具结果后筛查
模型的下一个回复;防火墙
audit 在事件信息流中显示异常模式。
危险工具调用 →通过网络的数据外泄
通过网络的数据外泄
工作原理: 智能体抓取攻击者 URL 或访问内部服务,在路径/
查询中编码数据。SSRF 和外泄载体。防御: 智能体防火墙
egress 执行面匹配 host/IP/CIDR
——允许列表在调用离开网关之前拒绝每个未明确允许的目的地。
数据外泄 →MCP 工具投毒与 rug-pull
MCP 工具投毒与 rug-pull
工作原理: 恶意 MCP 服务器声明听起来合法但具有有害实现
的工具,或在你连接后更改其工具(rug-pull)。防御: MCP 网关在派发之前对照你的策略评估每次
tools/call;技能扫描分配风险带,quarantine 模式挂起
危险技能的调用等待审批。
MCP 工具投毒 →过度代理与混淆代理人
过度代理与混淆代理人
工作原理: 智能体持有比其任务需要更多的能力,因此一次
攻破就有很大的爆炸半径——或者它被欺骗代表攻击者使用其权限。防御: 限定范围的密钥给每个智能体最小权限身份
(特定模型、IP、消费上限、到期时间);
tight 防火墙策略
对未明确允许的一切默认拒绝。
过度代理 →失控成本与钱包拒绝服务
失控成本与钱包拒绝服务
工作原理: 注入循环、重试风暴或长时间智能体任务耗尽配额
和消费,远超预期。防御: 防火墙
cap_cost 判定一旦运行消费超过你的分上限
就拒绝调用;限定范围的密钥携带每密钥消费上限;异常检测
flag 成本尖峰。
过度代理 →3. 控制栈总结
上表中的每项防御都是同一个有序栈中的一层。理解它们如何组合 是正确应用它们的关键。| 层 | 它治理什么 | 何时触发 |
|---|---|---|
| 限定范围的密钥 | 身份——哪些模型、IP、消费上限、到期时间,以及哪些策略绑定 | 每个请求,在读取任何内容之前 |
| 防护栏 | 内容——提示词和响应文本 | 输入阶段(模型之前)和输出阶段(模型回复之后) |
| 智能体防火墙 | 动作——工具调用、MCP 派发、出站目的地 | 在每次工具调用/出站目的地上,在检测到的执行面上 |
| 审计 | 归因——每次匹配、判定、审批和策略变更 | 每次决策后,关联到智能体运行 |
tight /
balanced / permissive)一步配置防护栏和防火墙,因此你不必
单独调优它们就能获得一致的姿态。
有关单个请求如何遍历所有四个层的逐步演练,请参见
控制栈。
4. 为威胁选择正确的层
有些威胁需要一个层;其他的需要两个协同工作。快速决策:- 提示词或响应中的文本是攻击面——首先选择防护栏 (关键词、正则、PII、LLM judge 预设)。
- 工具调用或出站请求是攻击面——选择智能体防火墙(inbound/ response/mcp/egress 执行面,deny/sanitize/pending_approval/ cap_cost 判定)。
- 文本和动作都是攻击面——分层使用。注入的指令在输入上 触发防护栏;注入试图驱动的工具调用在动作上触发防火墙规则。
- 身份和范围——使用限定范围的密钥来约束智能体被允许调用 什么,在任何内容或动作规则被评估之前。
5. 深入解析威胁页面
提示注入
直接和间接注入——攻击者如何在不可信内容中嵌入指令,以及
防护栏和防火墙如何拦截它们。
越狱
对抗性措辞和规避技术——语义感知的 LLM judge 规则如何捕获
正则遗漏的内容。
危险工具调用
破坏性工具、参数攻击和工具响应篡改——治理每种情况的防火墙
执行面和判定。
数据外泄
SSRF 和网络外泄——出站允许列表以及防火墙如何在出站请求
离开网关之前拦截它们。
MCP 工具投毒
恶意 MCP 服务器、rug-pull 和技能风险带——MCP 网关、技能
扫描和隔离执行。
过度代理
越权智能体、混淆代理人和钱包拒绝服务——限定范围的密钥、
默认拒绝姿态和成本上限。
参考: 控制栈 — 防护栏 — 智能体防火墙 — 防火墙规则 — MCP 网关 — 技能 — 限定范围的密钥 — AI 智能体零信任
