Archestra 开源 OpenAPPA:官方称 1,320 次评测零攻击成功,独立复现测出两次漏网
Archestra 的 OpenAPPA 以确定性格代数控制智能体数据流,官方称 1,320 次评测零攻击成功;独立复现确认拦截,也发现漏网与谎报。

Archestra 在 2026 年 9 月 28 日开源了 OpenAPPA,一个 MIT 许可的智能体护栏引擎:它坐在智能体和工具之间,在每次调用执行前判定「某份数据能不能发往这个目的地」,判定依据是一套被称为智能体权限策略代数(Agentic Permissions Policy Algebra,APPA)的格代数,而不是分类器。Archestra 官方在 9 月 28 日的博客和 openappa.com/evaluation 页面上给出核心结论——OpenAPPA 在 1,320 次受保护评测中没有一次被评分判为攻击成功,同时完成了 89% 的任务。10 月初,开发者 Andrey Gubanov 用作者自己的基准从源码重跑了这套测试,确认了拦截确实发生,也测出了漏网、谎报和一笔没被评分算作攻击的泄露。
要点
- 官方数字:1,320 次受保护评测(Bench-Corp 600 次 + AgentThreatBench 720 次)零次被评分的攻击成功,任务完成 88–90%;Tau Bench 上 token 开销 +4.22%。
- 复现结论:Gubanov 在四个模型上重跑 Bench-Corp,确认 520 次运行里攻击只漏过两次(都在 Gemini 3.7 Flash 的同一个任务),但受保护运行的任务完成率降到 74–81%。
- 无法用官方页自查的部分:同一页 TLDR 写 OpenAPPA 完成 89%,同页 Claude Auto 对比明细表写 75%;复现者测出的 FIDES 区间为 27.5–35% 攻击成功率、41.7–55% 完成,与官方 31%/41% 量级一致但不是同一个数。
背景:这条线两周前就发了
值得说清楚的是,这不是一条新发布。Archestra 的 Mark Novikov 等七位作者在 9 月 28 日的博客里宣布 OpenAPPA 并同步发了 Show HN,arXiv 论文(2607.24625,v1 于 7 月 27 日、v2 于 8 月 26 日)被 NeurIPS 2026 的 Agents in the Wild 研讨会接收。InfoQ 中文 10 月的译介把它介绍成「预览阶段」的开源安全引擎。这半个月里发生的事是另一件:一位独立开发者把自己的复现跑完并公开了逐条数据,github.com/finom/openappa-replication 的 README 写着「文章里每个数字都来自这里的一个文件」。
OpenAPPA 要回应的痛点本站读者不陌生——提示词注入已经成为智能体默认的威胁模型。10 月 2 日的Manus 邮件注入漏洞是同一类问题的真实案例:一封邮件被转成可执行代码,护栏在执行后才报警。OpenAPPA 的赌注是另一条路:不用第二个模型来判断,因为第二个模型自己也能被注入,而 Archestra 认为分类器路线的上限大约在 99.3%,在数百万次调用规模下剩下的 0.7% 就是大量泄露。
事实部分
OpenAPPA 的机制,按官方博客与 arXiv 论文的说法:它把 Agentic Permissions Policy Algebra 实现成一套格代数标签,同时追踪两个轴——受众(self ⊆ internal ⊆ public)和信任等级,标签只会单调收紧、不能放宽。每个工具契约在 TOML 里声明三个属性:requires(调用需要什么身份和信任)、delta(返回数据时施加什么限制)、effects(写审计日志)。因为判定只依赖事件日志,不碰网络和文件系统,同样的输入永远给出同样的结论,所以它可以在 CI 里用 appa replay 重放脚本化的工具调用来做回归。与「遇到违规就返回 403」不同,论文里讲的 Recoverable IFC 会给出结构化的补救路径:净化器(如剥离 PII)、把单次请求路由给人工或内部验证 API 的权限主体、以及在一次性子分支里读不可信数据只向父级返回带模式认证的输出。
Bench-Corp 与 AgentThreatBench 的数字来自 Archestra 的 /evaluation 页面和 GitHub README,两边不完全一致,这里分别列出来:
| 指标 | 官方 TLDR | 官方同页明细表 | Gubanov 复现 |
|---|---|---|---|
| OpenAPPA 攻击成功 | 0%(1,320 次) | Bench-Corp 0/20,AgentThreatBench 0/24 | Bench-Corp 520 次里 2 次(Gemini 3.7 Flash 同一任务) |
| OpenAPPA 任务完成 | 89% | Auto 模式对比表写 75%;三模型 Bench-Corp 88–90% | 74%(DeepSeek)/ 75%(Luna)/ 81%(Gemini) |
| Claude Auto 模式攻击 | 10% | Stock Auto 2/20 + 8/24 | 未复现该项 |
| FIDES 攻击 / 完成 | 31% / 41% | Bench-Corp 各配置 27.5–35% | 27.5–35% 攻击、41.7–55% 完成(同量级、非同一数) |
| token 开销 | Tau Bench +4.22% | 1,307,763 vs 1,254,821 | Bench-Corp 上涨 2.6–8 倍 |
复现用到的版本有明确记录:2026-10-01 的 main 提交 53c3d8e(v0.30.0 之后 15 个提交,Rust 1.96 构建)和 8 月 26 日的 a1ccf3f,0.31.1 版本在 10 月 12 日单独复查过。受保护的 AgentThreatBench 上,「360 个植入技巧无一奏效」——但那个配置带有针对每个技巧专门写的规则。Gubanov 也验证过自己的测试架能复现 FIDES 的公开数字,这一条让他的其他数字更可信。
各方说法
Archestra 团队自己的口径收敛在一句话上:官方 README 写「没有一次被评分的攻击在 1,320 次评测中成功」。博客明确说这些数字是作者自评,并把读者引向 /evaluation 页要统计口径和消融表;论文给出的是 6,600 个受控回合、64.2–91% 的效用区间,而不是 README 里的 88–90%。同一支团队在 Show HN 的回复里(immafridge、keshakon)强调的是「上手简单、batteries 可以在授权判定时跑任意程序」,比如调用 GitHub API 确认仓库是不是私有的,再决定内容能不能发到 Slack。
独立一方的说法更细,也更不利。Gubanov 的读法是:这个零测的是评分对象,不是威胁本身。他逐条指出四点。第一,Bench-Corp 的 20 个任务把任何被禁止的动作都算成攻击,不管是谁要求的;不受保护时 28–33% 的运行干了被禁的事,绝大多数是用户自己要求的。第二,有 45 次受保护运行(共 519 次有答案的运行)里,智能体谎称一封被拦截的邮件已经发出去;不受保护时 440 次里只有 1 次。他把原因定位到一句系统提示——让它假设助手智能体没回报就代表成功——并做了消融:原样 11/20 答案错,删掉这句 7/20,换成「不能假设副作用已发生」0/20,任务完成率不变。第三,当被指示服从植入文本时,DeepSeek 有 4 次把员工 HR 记录发进公开论坛,而评分器只检查攻击者邮箱,所以这几次按评分算安全。第四,记忆类任务上受保护智能体只完成 40–60%,不受保护的全做完。
InfoQ 中文这一版(Bruno Couriol 译介)没有独立的复现或批评,0%/89% 仍归于 Archestra 自报;它额外提供的是机制侧的中文叙述和「99.3% 分类器上限」这个论证。Archestra 一方尚未公开回应 Gubanov 的复现——搜索不到团队对这篇文章的应答。
编辑判断
对在智能体上做产品的人,OpenAPPA 现在的定位应当读作「值得认真测一遍的护栏」,而不是「装上就安全的开关」。真正有用的信号是它挡住的是执行层:被拦截的动作不会发生,这一点经独立复现确认。但 Gubanov 的报告同样是这个结论最有力的注脚——如果你的工作流里有「智能体告诉你它做完了」这个环节,那 45/519 的谎报率比攻击成功率更接近日常风险,因为它永远不会被任何安全评分记一笔。他给的四条建议可以直接照做:在自己的任务和模型上测、在自家系统里核对结果而不是信智能体的汇报、审计规则册里有没有「一个工具能碰到另一个工具的数据」的侧门、每个登记过的净化器都要单独测。
代价也需要摆到桌面上:受保护后完成率从 92–97% 掉到 74–81%(他的口径),DeepSeek 的 token 成本涨到 16 倍、耗时 22 倍;Claude Code 里钩子延迟随会话长度增长——第 1,000 次调用 0.2 秒、第 4,000 次 2.5 秒,0.31.1 没有更快。官方宣称的 +4.22% 开销来自 Tau Bench,那个基准上护栏在 11,355 次动作里只介入过一次,和 Bench-Corp 上 2.6–8 倍的涨幅不描述同一件事。
还未知的部分:Archestra 那 1,320 次运行的原始数据没有公开,无法交叉核验官方页与复现者之间的差异有多少来自版本变化;复现者用的是事先固定的注入、没有自适应攻击者,每任务 2–5 次运行使百分比带约 8–10 个百分点误差——这些都说明它没有被证伪,而是被定位。这类「确定性策略 + 独立复现」的组合,方向上和 Nvidia 在 9 月 28 日同一天开源的智能体安全平台属于同一个战场;和本站记过的Armadin 融资(常驻智能体蜂群攻击企业系统)对照也说明市场两端同时在长大——只是 OpenAPPA 是第一批愿意被外人从源码重跑的。