Parallax:把智能体安全放进架构,而非提示词
一篇 2026 年 4 月 14 日发布的立场论文指出,一旦智能体的推理被攻破,提示词层面的护栏便随之失效,并提出在结构上把『思考』与『执行』分离。
这是什么?
Parallax 是一篇立场论文提出的防御范式,标题为 《Parallax: Why AI Agents That Think Must Never Act》,于 2026 年 4 月 14 日 发布在 arXiv 上(arXiv:2604.12986,作者为独立研究者 Joel Fokou)。其论点直截了当:主流的智能体安全做法——把安全指令写进系统提示词——与它试图阻止的攻击处于同一抽象层级,因此一旦模型被操纵便不再成立。作者主张把安全边界从自然语言中移出,放进系统架构,并提供了一个开源参考实现(OpenParallax,用 Go 编写)来展示这在实践中是什么样子。
这是单一作者的提案,带有一个原型和作者自行进行的评估,而非经独立复现的结果。我们之所以报道它,是因为它清晰地点出了几乎所有智能体事件中反复出现的缺口:当推理组件被攻破时,存在于该组件内部的各种控制也随之消失。
工作原理
Parallax 从一个被论文称为”性质之别、而非程度之别”的区分出发。会话式 LLM 产出的是内容;智能体产出的是动作——写文件、执行 shell 命令、调用 API、修改数据库。安全训练回答的是”模型是否在产出正确的东西?“,而智能体安全必须回答”系统是否在做正确的事?“——即便模型已经被说服去做错误的事。
对提示词层护栏的三点批评值得复述,因为每一点都对应我们记录过的攻击:
- 与威胁同处一个基底。 指令与不可信数据流经同一个注意力机制,没有结构上的分离——这正是 提示词注入 得以成立的根本条件。
- 在长上下文中退化。 累积的历史会移动约束的有效边界,而 记忆投毒 可植入跨会话持续存在的指令。
- 无法在多智能体传播中存活。 一旦一个模型的输出成为另一个的输入,单次注入便会穿过其后的每一层。
针对这些,Parallax 提出四条原则,全部借自历史悠久的系统安全实践,而非为 AI 凭空发明:
- 认知—执行分离。 对动作进行推理的组件在结构上被设计为无法执行该动作,而执行动作的组件则无法推理。这是把权限分离(Provos 等人)应用于智能体:边界存在于进程隔离之中,而非模型的自我克制。
- 带分级确定性的对抗式校验。 一个独立的、多层级的校验器介于推理与执行之间,决定某个被提议的动作是否被允许。关键在于:该校验器相对于其所校验的对象是不可变的——与 TPM 或 HSM 的信任锚逻辑相同。
- 信息流控制。 数据敏感度标签在工作流中传播(类似 Bell-LaPadula 策略),从而能够检测依赖上下文的威胁,例如”读取这个私有文件,然后发出一个对外请求”——即以流规则形式表达的 致命三要素。
- 可逆执行。 在任何破坏性动作之前先捕获状态,以便在校验失败时回滚。
论文中的一句话版本是:对动作进行推理的系统必须在结构上无法执行它们,执行动作的系统必须在结构上无法推理,并在两者之间插入一个独立且不可变的校验器。 此处不复现任何漏洞利用——其贡献是一种架构,而非一种攻击。
为什么重要
论文中最有用的想法是其评估方法——假设已被攻破的评估(Assume-Compromise Evaluation):作者不去测试模型能否被越狱,而是假设它已经被越狱,完全绕过推理系统,把恶意的工具调用直接注入到执行边界。对于生产环境中的智能体而言,这才是正确的问题,因为它不再去评估那个人人都已知道不可靠的部分,而开始评估那个本应遏制损害的部分。
在该测试下——九类攻击中的 280 个对抗性用例——所报告的参考实现在默认配置下拦截了 98.9% 的攻击且零误报,在最高安全配置下拦截 100%。请将这些视为原型的自报数据,而非已确立的基准。其下更持久的是支撑它们的结构性论断:当推理系统被攻破时,提示词层护栏提供的保护为零,因为它只存在于那个已被攻破的系统之内;而架构边界则无论模型被诱导去尝试什么都依然成立。
这恰逢业界已公开承认提示词注入或许无法在模型层面被彻底解决——这一结论也由截然不同的路径得出:包括论证 智能体终将屈服于提示词注入 的工作,以及把智能体安全视为 系统问题 的视角。Parallax 是对同一转向投下的又一票:不再试图让模型变得完全可信,而是设计成即便一个不可信的模型也无法造成不可逆的损害。它与 智能体的二选一规则 以及 基于任务的工具授权 直接呼应。
防御
Parallax 本身就是一份防御提案,因此其要点是一些架构模式,无需采用其具体实现即可应用:
- 将规划者与执行者分离。 不要让摄入不可信内容的组件同时持有执行权限。在”决策”与”执行”之间设置进程或信任边界。
- 插入一个智能体无法修改的独立校验器。 检查动作的东西不得与推理回路共享状态、提示词或记忆——否则攻破推理者就等于攻破检查。这正是 可证明有界护栏 背后的逻辑。
- 让破坏性动作可逆。 在写入、删除和配置更改之前做快照,使一次错误动作成为可回滚的事件,而非日后才发现的破坏。
- 追踪数据流,而不仅是孤立的调用。 给敏感数据打标签,并阻断将私有读取与对外通道结合的流——三要素是路径的属性,而非任何单一步骤的属性。
- 测试时假设已被攻破。 通过把动作注入到模型之外来评估你的边界,而不仅是尝试越狱模型。如果你的安全叙事在假设模型怀有恶意时就崩塌,那么这套叙事本身就是那个模型。
论文自身也提出一点保留:架构层面的强制会增加延迟与工程成本,而过于粗糙的校验器会阻断合法工作。要点不在于 Parallax 的数字是否最终,而在于这条边界理应归属于架构。
状态
| 项目 | 值 |
|---|---|
| 来源 | arXiv:2604.12986v1,《Parallax: Why AI Agents That Think Must Never Act》 |
| 作者 | Joel Fokou(独立研究者) |
| 发布 | 2026 年 4 月 14 日 |
| 类型 | 立场论文 + 开源参考实现(OpenParallax,Go) |
| 核心主张 | 智能体安全必须在架构层强制实现;在推理者被攻破时,提示词层护栏失效 |
| 报告结果 | 280 个对抗性用例中拦截 98.9%,零误报(默认);100%(最高安全)——原型,自报 |
| 成熟度 | 单一作者提案;尚未经独立复现 |