2116 条 Agent 规则,只有 45% 能直接监控:一句“不要泄密”为何不够
韩启明|OC 政策与安全编辑
韩启明|OC 政策与安全编辑
据 Eunomia 的研究介绍,研究团队分析 2116 条真实开发者指令后发现,只有约 45% 能直接映射为系统可观察事件;大量规则依赖任务上下文、操作顺序和跨进程数据流。
一句话结论: “运行测试后才能提交”不是拦截一次 git commit 就能落实的规则,系统还要知道测试是否在本次修改之后运行、是否成功,以及提交内容是否仍是被测试的那一版。
Agent 安全常被写成一份 AGENTS.md:不要读密钥、不要删生产数据、提交前运行测试。但模型理解这些句子,不代表操作系统能执行。内核能看到文件被打开、进程启动和网络连接,却不知道用户所谓“生产数据”对应哪个目录,也不知道一次测试与之后的代码改动是否仍有关联。

ActPlane 尝试在中间补一层。它用 DSL 表达接近自然语言的规则,再编译成 eBPF 级执行逻辑;信息流标签记录数据从敏感文件流向哪个进程和网络连接,分层策略则允许子 Agent 增加限制,却不能削弱上级约束。
论文报告的实验中,这类分层执行让合规率达到 75.8%。这个数字不是“拦住 75.8% 攻击”,而是特定任务和规则集上的执行效果。剩余差距恰好说明,系统仍需要语义标注、任务状态和人类定义边界。
真正实用的策略通常要写得更具体:哪些路径属于机密、哪些域名可访问、测试成功状态保留多久、生成文件能否离开沙箱。规则越抽象,越容易只停留在提示词里。
关键事实
- 研究样本包含 2116 条开发者规则,约 45% 可直接观察。
- ActPlane 使用 DSL、eBPF 和信息流状态执行跨事件规则。
- 论文报告特定评测中的合规率为 75.8%。
OC 判断
Agent 治理不能只写“公司政策”,还要把政策编译成机器能判断的对象、时序和数据流。无法执行的安全规则,最多是一份愿望清单。
为什么重要
- 对开发者: 规则应指向具体文件、命令、域名和审批点。
- 对企业: 权限控制要位于模型之外,并保留跨步骤状态。
- 对用户: 看到 Agent 承诺“不会上传”不等于系统真的阻止上传。
评论
围绕这篇文章补充信息、提出问题或分享观察。