LEAVE-BEHIND / 上线前检查CHENGDU, CN / 2026
上线前,
先问完这三十个问题。
这是一份可带走的检查清单,不是白皮书,也不是客户报告。安全部门不必先成为提示词工程师:把即将上线的 Agent 放在桌上,逐项看证据。答不清的题目,就是上线阻塞项。页面正文可以独立阅读;需要打印或会签时,再下载 PDF。
谁应该用这张清单
- 要决定某个 Copilot、知识库机器人或业务 Agent 能不能接生产数据的 CISO / 安全负责人
- 平台、应用或数据团队里真正挂工具、MCP 和账号的人
- 准备把报销、客服、代码或运营 Agent 从试验推进到生产的业务负责人
- 需要把“我们已经注意了”翻译成可复核证据的评估与审计人员
01AI Agent 和聊天机器人不是同一类系统
AI Agent 和聊天机器人不是同一类系统
模型安全要回答:它会不会生成违禁内容、会不会被一套固定句子套出系统提示。这些工作有价值,但不够给 Agent 发上线许可。Agent 在模型之外还多了目标、工具和状态。它可以把“帮我处理发票”翻译成一串对内部系统的调用。调用成功时,业务已经改了。
01评估对象是行动,不是礼貌
文本问题关心拒答和编造。行动问题关心:是否调用了当前任务不该出现的工具,是否用错身份,是否把检索到的数据送到了不该去的地方,是否在无人确认时执行了不可逆操作。
02护栏拦的是话,拦不住工具
把敏感词过滤接在模型出口,对聊天机器人有效。对会调用 MCP 的 Agent,行动可能在过滤之前就已经发出。或者行动通过工具完成,模型只输出一句“已帮你处理”。
03“用了安全对齐的模型”不是结论
要对齐的是任务范围、工具表、身份、审批和日志。子集做满分,全集仍可能在第一周把内部数据送出边界。
02上线前最常见的几条走错门路径
上线前最常见的几条走错门路径
传统渗透测试看见的是闯入:攻击者没有合法身份,或绕过了鉴权。Agent 评估看见的是走错门:系统承认这次调用,但调用不该由当前任务发出。下面几条路径在实验室里反复出现,而且很少需要夸张的漏洞利用句子。
01间接提示注入
邮件、附件、网页、工单描述进入工作上下文后,作者就获得了对本轮任务的发言权。一份版式正常的差旅 PDF,足以把“预审”改写成“外发核对”。
02RAG 与 Memory 越权
检索只用语义分数、记忆跨用户复用,邻部门文件和“以后都要……”的偏好就会变成正式策略。模型没有“决定泄密”,它只是总结了被允许看见的东西。
03工具误用与 MCP 供应链
摘要任务和特权接口放在同一个工具箱里,一句话就能换轨。MCP 只认名字不钉版本时,同名服务器可以在运行时多注册一个导出接口。
04过量权限与不可逆动作
查询进度的 Agent 同时能导出全表、发邮件、改供应商,它已经不是查询助手。发送、删除、转账、改权限、执行命令,一旦无人确认即可发生,提示词里的“请谨慎”没有约束力。
03怎么用:没有证据的“是”,不能算通过
怎么用:没有证据的“是”,不能算通过
不要把清单当成问卷发给业务队勾“是”。每一题都要看到证据:账号、工具表、一次短演示、一段日志。演示可以短。没有证据的“我们已经注意了”,不能算通过。
- 01
选定一个真实 Agent
写清它代表谁行动、服务哪条业务、接了哪些数据和工具。抽象的“我们的 AI”无法检查。
- 02
先画边界,再打勾
模型、Agent、知识库、MCP、账号、外部输入、Memory 画在一张图上。未参与搭建的人要能看懂数据从哪进来、从哪出去。
- 03
三项阻塞即停
十个关键问题里若有三题答成“开发账号共用、工具以后再收、日志还没接好”,这个 Agent 可以继续内部试验,不应接生产数据。
- 04
修复必须能复测
只改提示词、不留回归项,等于没修。发现的路径要变成可以再走一遍的测试。
04上线前三十项检查
上线前三十项检查
AI Agent 和传统 LLM 应用有什么不同
- 它会在无人确认时调用工具、改数据或发消息,而不只是生成一段文字。
- 评估标准看行动轨迹(调了什么、以谁的身份、把数据送到哪里),而不是只看模型拒答。
- 失败之后它会停下来问人,而不是自行换成更强的工具把任务做完。
- “使用了安全对齐的模型”没有被写成这个 Agent 的风险结论。
Agent 的资产与信任边界
- 模型、Agent、知识库、MCP、账号、外部输入已画在同一张图上。
- 未参与搭建的人能看懂数据从哪进来、从哪出去。
- Memory 被画成独立节点,而不是模型旁边的装饰。
- 能上网或能读附件的 Agent,与能碰内部名单的 Agent 没有共用一个全能运行时。
Prompt Injection
- 邮件、附件、网页、工单描述、外部 API 已被列为不可信输入。
- 不可信文本不能直接改写当前目标,也不能直接填进高权限工具参数。
- 浏览或解析结果带有来源标记,且不能自动变成内部检索词或发送内容。
- 系统提示中的保密要求从未被当作唯一控制措施。
RAG / Memory
- 检索请求携带调用者身份,并在取片段时过滤;不是全库混检后再让模型“注意保密”。
- 向量库按租户或部门分库 / 分命名空间。
- 回答引用的文档编号与权限标签能打开复核。
- Memory 按用户和任务隔离,有过期、撤销和审计;跨用户复用默认视为越权通道。
Identity & Permission
- 一次工具调用能回溯到具体的人、团队和任务,而不是只看见“助手”。
- 发起者、授权范围、执行身份、工具自身凭证四层已拆开,没有一把“Agent 专用账号”打通所有工具。
- 执行身份独立于开发 / 调试账号,且不与其他业务队共用。
- 完成主任务最少需要的权限已写下来;多出来的每一项都有人认领,否则拿掉。
Tool / MCP
- 当前任务真正需要的工具已列出,多余的默认拿掉。
- MCP / 插件的维护方、来源、版本钉死方式和更新审批可以出示;来源说不清的按未授权软件处理。
- 启动后的实际工具表已存档;增减一项都按权限变更评审,而不是热更新后靠模型自己适应。
- 给 MCP 的凭证按任务裁剪:搜索令牌不具备导出、删除或管理权限。
Sensitive Action
- 发送、删除、转账、改权限、执行命令在无人确认时不能发生。
- 不可逆动作有独立审批,而不是模型“觉得有必要”即可执行。
- 主任务范围以外的写操作已经摘除。
- 记忆或网页内容不能直接填进高权限参数。
Logging & Evidence
- 输入、检索片段、工具请求、返回值和人审记录能拼成一次任务的证据链。
- 应用日志、网关日志、模型会话、MCP 名称能对上同一个人 / 任务。
- 出了问题能切断工具、吊销令牌、冻结记忆,而不只是关掉模型。
- 发现的路径已写成可回归的测试项;修复后用同一条路径再走一遍。
上线前 30 项检查
- 01 工具调用可回溯到人与任务:日志能否从一次调用追到具体的人、团队和任务,而不是只看见“助手”?
- 02 执行身份与开发账号分离:生产任务是否还在使用开发、调试或个人笔记本上的会话?
- 03 四层身份拆开记录:发起者、授权范围、执行身份、工具自身凭证是否分别可查?
- 04 五分钟内可切断写权限:有没有人能在五分钟内关掉写操作、吊销令牌并冻结记忆?
- 05 检索按调用者身份过滤:知识库 / 工单 / 客户库是否按身份取片段,而不是万能服务账号?
- 06 知识库按租户或部门隔离:向量库是否分库或分命名空间,而不是全员混检?
- 07 回答引用可打开复核:用到的文档编号与权限标签能否当场打开?
- 08 Memory 按用户和任务隔离:是否禁止跨用户复用,并有过期、撤销和审计?
- 09 外部输入已标记为不可信:邮件、附件、网页、工单、外部 API 是否进入不可信通道?
- 10 不可信文本不能改写目标:外部内容是否无法直接改写当前任务目标?
- 11 浏览结果不能自动变工具参数:抓取或解析文本是否禁止直接填入检索词、收件人或命令?
- 12 提示词保密要求不是唯一控制:是否还有工具裁剪、审批或检索过滤,而不是只靠系统提示?
- 13 当前任务工具表已裁剪:是否只挂主任务需要的工具,多出来的已默认拿掉?
- 14 MCP 来源、版本与审批可出示:维护方、镜像或仓库、版本钉死、更新谁批准,能否拿出记录?
- 15 实际工具表已存档并受变更评审:启动后注册出来的函数是否已存档,增减是否当权限变更?
- 16 MCP 凭证按任务最小授权:搜索服务器是否只持有检索令牌,而不持有导出或删除权限?
- 17 失败后禁止自行升级工具:报错后是否必须停下来问人,而不是改调更强接口?
- 18 终端 / 命令执行有沙箱与人审:编码或运维 Agent 是否在隔离工作区,命令是否有允许列表?
- 19 不可逆动作默认需要人确认:发送、删除、转账、改权限、执行命令能否在无人确认时发生?
- 20 发送 / 删除 / 改权限不能由模型自行决定:高影响工具的接收人、对象、范围是否绑定既定目录?
- 21 主任务以外的写操作已摘除:只负责查询的 Agent 是否仍能导出全表、发邮件或改供应商?
- 22 记忆或网页不能填入高权限参数:Memory 与外部正文是否被禁止直接写入特权工具入参?
- 23 一次任务能拼出完整证据链:输入、检索片段、工具请求、返回值、人审是否在一起?
- 24 应用、网关、模型、MCP 日志可对齐:四份记录能否对上同一次任务、同一个人?
- 25 已发现路径写成回归测试:这条路径是否成为固定测试项,而不是口头说过?
- 26 修复后用同一路径复测:已修项是否用同一输入再走一遍,而不是只改了提示词?
- 27 出事有切断工具与冻结记忆的开关:能否在不关闭整个模型服务的情况下停掉行动面?
- 28 资产与信任边界图已画清:模型、Agent、知识库、MCP、账号、外部输入和数据进出是否在一张图上?
- 29 隔离环境已用只读工具跑通:身份、工具表、数据和退出方式是否在写操作之前讲得清?
- 30 三项以上“以后再收”则不接生产数据:共用开发账号、工具以后再收、日志还没接好——出现三项是否明确不得接生产数据?
安全评估模板
- 资产与信任边界图:未参与搭建的人能看懂数据进出。
- 风险清单:每条有对象、前提、影响、目前是否可利用。
- 攻击路径:输入 → 检索或工具调用 → 结果,短且可复述。
- 验证证据:输入摘要、关键上下文、工具请求与返回、策略是否拦截,第三人可核对。
- 风险等级与业务含义:谁的数据、什么操作、停机还是泄露、是否不可逆。
- 修复建议:裁工具、加审批、检索过滤、拆分身份;不把“加强提示词”当唯一措施。
- 复测结果:已修复项用同一条路径再走一遍。
- 管理层摘要:两页内写清测了什么、最重要的三件事、建议的上线条件。
下载检查清单 PDF05一次评估应当留下什么
一次评估应当留下什么
如果一次所谓评估只留下“整体风险较高”和一页产品截图,管理层无法决策,研发也无法修复。下面是默认交付包。缺哪一项,就还不能称为评估完成。
01资产与信任边界图
模型、Agent、知识库、MCP、账号、外部输入画在一张图上。
02风险清单
每条有对象、前提、影响、目前是否可利用。避免把“提示注入”写成没有系统名字的抽象词。
03攻击路径
何种输入,经过哪次检索或哪次工具调用,到达何种结果。路径要短,要可复述。
04验证证据
输入摘要、关键上下文、工具请求与返回、策略是否拦截。第三人要能核对。
05风险等级与业务含义
翻译成谁的数据、什么操作、停机还是泄露、是否不可逆。
06修复建议与复测
按可执行性写:裁工具、加审批、检索过滤、拆分身份。已修复项用同一条路径再走一遍。
07管理层摘要
两页内说清:测了什么、最重要的三件事、建议的上线条件。
06建议的走查顺序
建议的走查顺序
- 01选定一个即将上线的 Agent,写清任务、数据和工具,不要从“公司的 AI 战略”开始。
- 02画出资产与信任边界,把 Memory 和 MCP 当成独立节点。
- 03按八组问题核对机制,再落到第三十项可打勾的检查。
- 04每项只接受“是 + 证据”。是但无证据、否、以后再收,都记为阻塞。
- 05把阻塞项收成上线条件。需要第三人核对时,预约一次 30 分钟架构 Review。
查看 KUROSHIO 工作台
在交互演示中切换范围、探索、验证和报告四个阶段,了解授权范围、任务编排、关联证据与报告摘要如何组织在同一工作台。内容使用示例数据,展示通用评估流程。
查看工作台演示07常见问题
开始之前。
01这和每年一次的渗透测试是一回事吗?
不是。渗透测试擅长找暴露面、弱口令和接口鉴权漏洞。Agent 的许多事故走的是已经授权的调用,只是目标被改写了。渗透通过、上线第二周把邻部门文件摘要给提问者,两边都可以没说错——测的不是同一件事。
02没有 MCP、只是内部 Copilot,还需要过这张清单吗?
需要。只要它能检索知识库、调用内部接口、写记忆或发消息,它就已经不是问答窗口。MCP 只是让工具发现更快,风险在行动本身。
03系统提示里已经写了“不要越权、不要泄密”,还要这些控制吗?
要。系统提示是建议,不是内核强制。当文档里的指令更具体、更像当前任务时,模型会顺着更具体的那条走。能不能外发,取决于工具表和审批,而不取决于它有没有答应保密。
04三十项都勾“是”就可以上线了吗?
还要看证据和范围。勾“是”但拿不出账号、工具表、演示或日志,仍算未通过。清单帮你发现阻塞项;接生产数据的决定,还要对照业务不可逆动作和退出开关。
0530 分钟架构 Review 会做什么?
对着你的一个真实 Agent 走这张清单:身份、工具表、不可信输入、敏感动作和日志能否对齐。输出是明显的阻塞项,以及是否值得做一次带证据包的正式评估。不是产品演示,也不是口头保证。
想验证你的 Agent 是否能够通过这些检查?
带上一个即将上线的 Agent、它的工具表和一张边界草图。我们用三十分钟把明显的阻塞项收口,并判断是否需要一次可复核的安全评估。