AI Agent 安全审计范围:测试项目与证据交付指南

AI Agent 安全审计不应只审查一份制度文件,或者运行几个提示注入示例。生产环境中的 Agent 可以检索数据、调用工具、操作浏览器、记忆历史交互,并在原本面向人工操作的系统中产生真实副作用。因此,审计必须覆盖从决策到执行的完整链路。

本文为产品团队、安全审查人员和采购方定义一套可执行的 AI Agent 安全审计范围,说明应该检查什么、哪些测试能够形成有效证据,以及最终报告应该交付什么。审计的目标不是承诺 Agent 永远不会失败,而是证明重要失效模式已经被识别、测试、约束、监控并落实到责任人。

首先定义 Agent 的运行边界

先写清楚准确的生产范围:用户、数据类别、工具、外部目的地、可执行动作、模型、检索来源、审批节点和部署环境。同时明确 Agent 禁止执行的操作。

例如,客服 Agent 可以检索已批准的知识、总结工单并生成回复草稿,但不能直接发送消息、修改账户权限、执行退款或导出客户记录。这样的边界可以把抽象的安全讨论转化为可验证的声明。

审计人员还应记录假设和排除项。如果浏览器自动化、长期记忆或尚未上线的集成不在本次范围内,报告必须明确说明。后续不能在没有重新审查的情况下,让排除项悄悄进入生产范围。

1. 架构与信任边界

绘制完整请求路径,包括用户界面、编排层、模型供应商、检索系统、记忆、工具、审批服务、日志管道和外部目的地,并标出指令与数据跨越信任边界的位置。

审计必须区分系统指令、开发者指令、用户输入、检索内容、工具输出和外部网页。这些信息不应拥有相同的权威等级。测试应验证不可信内容无法静默修改 Agent 的目标或安全策略。

有效证据包括架构图、组件清单、数据流图、部署边界和责任人。用“AI 层”之类的模糊方框隐藏权限或数据移动,无法满足安全审查要求。

2. 身份、认证与授权

确认 Agent 每次操作使用谁的身份。权限过大的共享服务账号,会把一个小的模型错误放大成严重事件。应优先采用短期凭证、用户范围授权、租户隔离和最小权限服务角色。

测试横向和纵向权限边界:一个租户能否检索另一个租户的文档?普通用户能否触发管理员工具?Agent 能否复用属于其他用户的浏览器会话或对象 ID?能否通过间接工具参数绕过授权?

报告应同时展示允许和拒绝的请求,并记录执行控制时使用的身份上下文和策略判断。

3. 工具清单与操作控制

每个工具都应记录用途、读写属性、权限范围、参数限制、目的地规则、审批要求、速率限制、日志行为和责任人。审计应检查真实实现,而不只是模型看到的工具描述。

需要测试错误参数、隐藏的高影响参数、连续工具调用、重试、重复执行,以及在预期流程之外调用工具的尝试。写操作应尽量具备幂等性,并在模型生成不完整输入时安全失败。

高影响动作必须由模型之外的确定性机制约束,例如允许列表、交易限额、Schema 校验、策略引擎、审批关卡和隔离执行环境。

4. 提示注入与指令层级

同时测试来自用户的直接攻击,以及嵌入文档、邮件、工单、网页、工具返回、文件元数据和检索片段中的间接攻击。测试样例应尽量接近真实工作流,并把正常任务与恶意指令组合起来。

不能只用 Agent 是否回答“拒绝”来评分。根据业务场景,正确行为可能是忽略不可信指令、继续处理安全数据、请求澄清、脱敏、发起审批或停止并升级人工处理。

每项测试应记录测试夹具、预期结果、实际 Trace、涉及的控制、严重程度和可复现性。只有截图而没有底层调用记录,属于较弱的审计证据。

5. 敏感数据与数据外发

识别 Agent 能访问的敏感数据:个人信息、凭证、内部文档、客户记录、受监管数据、源代码、财务信息以及模型或应用密钥。随后绘制这些信息可能离开系统的所有路径。

测试通过普通回答、工具参数、URL、Webhook、邮件、浏览器表单、文件、日志、分析系统、记忆和第三方模型调用进行的数据外泄。除明文泄露外,还应覆盖编码、拆分、转换和多步骤外传。

有效证据包括目的地允许列表、脱敏示例、保留策略、供应商设置、删除行为和被阻止的外发 Trace。

6. 检索、记忆与知识完整性

审查谁能够添加或修改知识,来源如何认证,租户边界如何保持,以及 Agent 能否提供支撑答案的真实证据。检索内容应被视为数据,而不是可信策略。

测试被污染的文档、互相冲突的来源、过期制度、受权限控制的文档、恶意元数据和无法支持答案的引用。对于记忆系统,需要测试未授权召回、跨用户污染、敏感值持久化、删除机制和早期对话中植入的指令。

报告应区分回答质量问题和安全问题,同时说明质量缺陷在什么情况下会转化为安全风险。

7. 人工审批与有效控制

一个审批按钮并不天然等于安全控制。审批者必须看到具体操作、目标、关键参数、外部目的地、将披露的数据以及升级原因。审批结果必须绑定到该次操作,防止 Agent 在批准后修改 Payload。

测试绕过审批、过期审批、重放、Payload 修改、批量操作歧义和误导性摘要。同时测试拒绝与超时行为,确保系统能够干净停止并保留审计记录。

8. 沙箱、浏览器自动化与外部副作用

能够执行代码、操作文件或控制浏览器的 Agent 需要强隔离。审计网络访问、文件系统访问、密钥暴露、进程限制、下载处理、域名限制、会话隔离和清理机制。

浏览器测试应包括恶意网页、误导按钮、弹窗、下载、跨域跳转、已认证会话,以及诱导 Agent 泄露数据或确认交易的指令。模型层提示不能替代浏览器和网络层的强制控制。

9. 日志、监控与事件还原

验证团队能够还原重要事件,同时避免在日志中保存不必要的密钥。关键字段包括请求身份、模型与提示版本、检索来源 ID、信任标签、工具调用、校验后的参数、策略判断、审批、最终副作用和错误状态。

测试高风险操作被拒绝、异常导出量、重复注入攻击、权限失败和工具行为突然变化时是否能够告警。日志应对普通用户隔离,并配置合适的保留策略。

一种实用的审计练习是选取一个失败场景,要求团队解释发生了什么、影响了谁、哪个控制阻止或限制了事件,以及后续应该如何改进。

10. 变更管理与回归测试

模型、提示、检索索引、工具、权限和用户界面都会改变 Agent 的行为。应审查发布流程,并明确哪些变更必须触发安全回归测试或新的风险评审。

最低回归测试集应覆盖提示注入、工具权限、数据外发、租户隔离、审批绑定、日志以及历史高危问题。测试结果必须关联具体发布版本和责任人。

如何确定问题优先级

严重程度应综合考虑影响、可利用性、所需权限、影响范围、可检测性和恢复难度。仅仅改变无关紧要的回答格式,与通过写工具导出客户数据的提示注入,不应被评为同一级别。

每个问题都应记录受影响流程、证据、复现步骤、业务影响、建议控制、责任人、目标日期和复测状态,并区分已确认漏洞、设计风险和一般改进建议。

最终审计报告应交付什么

  • 包含明确就绪结论和主要条件的管理层摘要。
  • 审计范围、排除项、假设、架构和数据流。
  • 与真实用户、工具、数据和外部系统关联的威胁模型。
  • 测试计划、测试夹具、预期结果、实际结果和 Trace。
  • 按优先级排列的问题、责任人和修复建议。
  • 已移除敏感值的证据附件。
  • 复测结果和残余风险决策。

一份有用的报告必须能够支持决策:批准当前范围、附条件批准、限制范围,或推迟上线。通用最佳实践清单无法替代这个决策。

相关资源

如果希望在正式审计前找出最高优先级缺口,可以先完成 AI Agent 就绪度自测。如果需要对生产范围进行独立审查,可申请 AI Agent 就绪度审计

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部