Agent Security · 智能体与 MCP 工具链安全防护

竞赛项目:在模型之外检查工具权限,串起提示注入检测、动作决策、结果回扫与跨 Agent 溯源。

本文目录

竞赛项目 · 根据标注为 2026 年 8 月 23 日的架构与能力覆盖文档整理

对应赛题 5:面向大模型智能体与 MCP 工具链的提示注入与工具滥用检测防御技术

当 Agent 可以读文件、运行命令、访问网络和派发子任务时,「不要执行危险操作」不能只是一句提示词。项目想解决的是:即使模型提出了一个不合适的动作,实际执行之前,仍有一道独立、可解释的检查。

核心链路

输入与外部内容 → 来源标记与注入检测 → 工具动作解析 → 策略决策 → 执行前授权 → 工具返回回扫 → 事件记录与溯源。

模型负责提出动作,模型外的策略组件负责决定是否允许。决策分为三类:允许、需要确认、阻止。需要确认的动作由独立批准流程处理,不能让 Agent 自己提交一句「已经批准」就放行。

工具名称也不足以描述风险。同一个工具可能读取普通文件,也可能访问敏感目录;真正需要检查的是目标、动作和当前任务的关系。

系统形态

方案支持 SDK、Sidecar 网关、MCP 中间代理与宿主 Hook 四种可组合入口,复用同一套策略与审计核心。

已有文档与代码包括 PydanticAI 参考链路、MCP 代理,以及 Claude Code、Codex、Cursor 的宿主适配探索。不同宿主能提供的事件与身份信息不同,覆盖范围需要分别说明。

原稿记录的实现进度

能力2026-08-23 文档标注仍需完善的部分
多源注入识别部分覆盖更多真实内容入口与语义检测
任务意图与工具动作对齐部分覆盖完整计划序列和跨步骤研判
细粒度工具策略MVP更多工具类型与策略治理
跨 MCP、跨 Agent 溯源MVP真实部署验收与宿主身份边界
对抗鲁棒性MVP更大样本、真实模型任务效用与完整评测

这些状态来自已有项目材料;本次网站整理没有重新运行项目测试。固定样本的结果也不代表能覆盖未知攻击。

想保留下来的工程经验

  • 把权限放在模型外。 检测器可以提供风险证据,但不自行授予执行权限。
  • 保存来源与动作关系。 不仅知道某一步失败,还要能沿事件找回它读取了什么、提出了什么、为什么被允许或阻止。
  • 让失败状态可见。 策略服务不可用、来源缺失或身份不明确时,要有明确处理,不能悄悄继续高风险执行。
  • 把记忆也当成输入。 过去保存的内容并不会因为时间更久就自动可信。

最后一点与 Memory Agent 系列 中的来源和推断边界相通。DeepSeek Harness 的事件日志 则提供了理解运行轨迹的另一个视角。

展示边界

当前以竞赛方向的本地工程与 MVP 记录展示。现有材料没有提供可核实的获奖或生产部署结论,因此这里不列奖项,也不将方案描述为已经完成全部赛题能力。

资料依据:项目 README、原始赛题说明、总体架构与五项核心能力覆盖矩阵。日期取自架构和覆盖矩阵中的明确标注,不作为项目开始时间推断。