OpenAI 构建智能体的安全实践

2026-11-06 17:56 更新

使用Agent Builder构建、部署智能体时,应了解相关风险及多智能体工作流的缓解方法。

Agent Builder正在弃用,现有用户可在过渡期继续使用,产品计划于2026年11月30日关闭。ChatKit继续可用,当前时间表见弃用公告。

风险类型

某些工作流模式更容易受到攻击。聊天工作流尤其要保护用户输入,并谨慎处理MCP工具调用。

提示词注入

提示词注入是常见且危险的攻击:不可信文本或数据进入AI系统,其中的恶意内容试图覆盖原有指令。攻击目标可能包括通过下游工具调用外传私有数据、执行偏离目标的操作,或以其他非预期方式改变模型行为。例如,本应返回摘要的数据查询智能体被诱导发送原始客户记录。具体场景见Codex互联网访问文档。

私有数据泄漏

模型也可能在没有攻击者介入时意外分享私有数据,例如向MCP发送超出用户预期的数据。护栏可以更好地限制上下文中的信息,但无法完全控制模型选择向已连接MCP分享的内容。

下面的建议有助于缩小攻击面、缓解风险。即便采用这些措施,智能体仍可能出错或受骗,因此应理解风险,谨慎决定授予的访问权限与应用方式。

不在开发者消息中放入不可信变量

开发者消息优先于用户和助手消息,把不可信输入直接插入开发者消息,会给攻击者更强控制。应通过用户消息传入不可信输入,限制其影响;输入会进入敏感工具或高权限上下文时尤其如此。

用结构化输出约束数据流

注入往往依赖模型生成非预期文本或命令,再传播到下游。节点之间使用枚举、固定schema和必需字段名等结构化输出,可移除被利用来夹带指令或数据的自由文本通道。

用清晰指引和示例引导智能体

幻觉、误解及模糊输入可能让工作流执行非预期操作,例如提供不允许的退款或删除不应删除的信息。应在提示词中清楚说明目标策略并给出示例,预想意外场景,让智能体知道如何处理。

使用GPT-5或GPT-5-mini

这些模型在遵循开发者指令方面更有约束性,对越狱及间接提示词注入也更稳健。可在智能体节点配置这些模型,为较高风险工作流提供更有韧性的默认选择。

保持工具批准开启

使用MCP工具时,始终启用工具批准,让最终用户审查并确认每次操作,包括读取和写入。Agent Builder中使用人工批准节点。

为用户输入使用护栏

使用内置护栏清理输入、脱敏个人身份信息(PII)并检测越狱尝试。单靠Agent Builder护栏节点并非万无一失,但可作为第一层保护。

运行追踪评分器与评测

了解模型实际行为有助于发现和预防错误。使用评测衡量并改善表现。追踪评分会为决策、工具调用或推理步骤等具体部分提供分数与批注,识别表现良好和出错之处。

组合多种技术

组合这些方法并加固关键步骤,可明显降低提示词注入、恶意工具使用和非预期行为的风险。

设计工作流时,不应让不可信数据直接驱动行为。只从外部输入提取明确的结构化字段,例如枚举或经验证的JSON,限制注入在节点间流动;用护栏、工具确认及通过用户消息传递的变量验证输入。

任意文本能够影响工具调用时风险上升。结构化输出和隔离能显著降低风险,但不能完全消除。

以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号