InfoQ 中文 · 2026/10/15 17:45:57
Archestra 开源 OpenAPPA:确定性规则引擎阻断智能体数据外泄,基准测试攻击成功率归零
Archestra 发布开源安全引擎 OpenAPPA,通过在智能体执行循环外部署确定性规则强制执行数据访问控制,有效防范提示词注入与模型幻觉导致的数据泄露。在 Bench-Corp 和 AgentThreatBench 基准测试中,其攻击成功率为 0%,显著优于 Claude Auto-Mode(10%)和微软 FIDES(31%)。该方案以形式化代数替代概率化分类器,解决了自动审核模型在审批疲劳场景下的策略失效问题。
报道全文原始报道全文
OpenAPPA 是一款开源安全引擎,运行于智能体提示词与执行循环之外,通过确定性规则强制执行数据访问控制,显著降低提示词注入与幻觉导致的数据外泄风险。
基于 Bench-Corp 与 AgentThreatBench 测试,其攻击成功率归零,显著优于 Claude Auto-Mode(10%)和微软 FIDES(31%)。
确定性规则替代概率化分类器,避免因模型不可靠或数据遮蔽导致的策略失效;支持跨工具调用的数据流追踪;直击审批疲劳下自动审核模型的固有缺陷。
适合 AI 安全工程师、大模型平台架构师、企业级智能体系统负责人阅读。

Archestra 发布 OpenAPPA,这是一款开源的安全引擎,旨在阻止由提示词注入或模型幻觉引发的数据外泄。OpenAPPA 在智能体的提示词与执行循环之外运行。其配置定义了数据源、访问对象、信任等级、权限主体等概念,以及与之相关的确定性安全强制执行规则。团队在安全基准测试 Bench-Corp(20 项多步骤企业工作流)和 AgentThreatBench 中测得攻击成功率为 0,https://code.claude.com/docs/en/auto-mode-config 的攻击成功率为 10%,微软 FIDES 为 31%。
OpenAPPA 的文档解释了为什么随机方法在自动化策略强制执行中会失败:
业界应对审批疲劳的办法是用第二个模型来判断每次工具调用:Claude Code 的自动模式、Codex 的自动审核,以及其他自动模式。 从设计上看,它们无法跨工具调用追踪数据流。由于分类器本身可能遭受提示词注入,Harness 会对分类器隐藏工具输出,因此判断模型根本看不到数据。 由于这种概率化的设计,即使是最优秀的模型也止步于 99.3%:在数百万次调用场景中,0.7% 的概率就意味着大量的数据泄露事件。 规则集最终要么限制过严导致智能体无法正常工作,要么逻辑过于复杂,没人能审计它到底允许哪些操作。
一方面,智能体很擅长绕开简单但常用的防护手段,例如工具白名单/黑名单:被禁止的 rm -rf 命令可能会被等效的 Python 脚本替代。另一方面,为防范激进的智能体而不断扩充黑名单、采用过度严苛的策略会降低可用性(例如,智能体虽然没有泄露数据,但受限制而无法成功完成任务)。OpenAPPA 的 GitHub 仓库提醒开发者:
智能体安全存在两个维度:允许非授权数据流的智能体是不安全的,而拒绝合法任务的智能体则毫无用处。
Archestra 希望通过其提出的智能体权限策略代数(Agentic Permissions Policy Algebra,APPA)来解决严格强制执行与运营实用性之间的矛盾,相关内容在论文中进行了阐述,论文作者为 Arseny Kravchenko、Vadim Liventsev、Innokentii Konstantinov、Ildar Iskhakov 和 Matvey Kukuy,论文地址:[https://arxiv.org/abs/2607.24625](https://arxiv.org/abs/2607.24625)。。)
OpenAPPA 通过一个可插拔引擎实现了这个方案,引擎在智能体循环之外执行,阻止底层大语言模型查看、协商或绕过策略规则。安全策略采用单个 配置文件的形式,详细定义了数据源、访问对象、信任等级、权限主体。
OpenAPPA 会同时标记并监控访问对象(被授权的数据消费方集合)与信任等级(数据可信核验程度)。标签基于格代数实现单调组合:标签只会变得更加严格;读取受限记录会缩小可访问对象范围;读取未经核验的外部网页会降低信任等级。
每个工具契约定义了三个主要运行属性:requires(运行该工具所需的访问对象身份与信任等级)、delta(工具返回数据时施加的限制变更)、effects(成功操作的审计日志)。
下面这个例子通过 get_ticket_from_crm 读取工单,会将这条执行链路的访问对象限制为 internal(内部)。后续调用 process_internal_data,就要求访问对象必须属于 internal。
[[policy.tool]]name = "get_ticket_from_crm"delta = { audience = ["internal"] }[[policy.tool]]name = "publish_update"requires = { audience = { contains = ["public"] } }[[policy.tool]]name = "process_internal_data"requires = { audience = { within = ["internal"] } }复制代码
下面这个例子,read_web_page 工具返回的结果会被标记为 suspicious(可疑)。OpenAPPA 在收到 read_web_page 的返回结果后会阻止执行 apply_db_migration,因为该操作要求数据必须为 trusted(可信)。
[policy]version = 2trust_chain = ["suspicious", "trusted"][[policy.tool]]name = "read_web_page"delta = { trust = "suspicious" }[[policy.tool]]name = "apply_db_migration"requires = { trust = "trusted" }复制代码
OpenAPPA 还有显式的恢复语义。当智能体尝试非法操作时,引擎会停止调度并提供结构化的处理路径。*净化器(Sanitizers)*可以修改有效载荷,例如剥离个人身份信息,安全地扩大可访问对象范围。*权限主体(Authorities)*将请求路由给人工操作员或内部验证 API,实现单次操作审批。*一次性子分支(Disposable Child Branches)*支持按需隔离:当智能体必须摄取不受信任的数据时,引擎会在一个临时的子智能体分支中隔离读取操作,仅向父级返回经过模式认证的净化后的输出。
Bench-Corp 和 OWASP AgentThreatBench基准测试表明,OpenAPPA 在严格的安全约束下保持了高实用性,攻击成功率为 0%,任务完成率为 89%。Claude Code 的原生自动模式攻击成功率 10%,任务完成率 90%。微软 FIDES 的攻击成功率 31%,任务完成率仅 41%。研究团队报告称,消融实验验证了恢复策略的价值:当完全禁用补救方案后,任务完成率下降至 35.0%。
Bench-Corp 和 AgentThreatBench 用于测试显式策略违规:敏感数据共享、提示词注入、审批与执行顺序、租户隔离。Bench-Corp 是一个高度专用化的企业助手测试基准,用于评估安全策略在复杂多步骤企业工作流中的表现。AgentThreatBench 将 OWASP 2026 智能体应用十大安全风险转化为可执行的测试任务。该基准最近已合并进入英国人工智能安全研究所官方 仓库。AgentThreatBench 采用双指标评分体系,同时评估可用性与安全性。OpenAPPA 在该基准上取得满分安全成绩,攻击全部失败。
OpenAPPA 目前处于预览阶段。形式化代数和恢复保证已发布在 arXiv(APPA:面向真实世界 LLM 智能体的可恢复信息流控制)上。读者可以阅读该论文和官方文档,两者都包含大量额外的技术细节、随附插图和实验结果。
查看英文原文:https://www.infoq.com/news/2026/10/open-APPA-zero-security-breach/