返回首页
最新
提示注入主要是一个控制问题,而不仅仅是过滤问题。
现代人工智能代理具有执行权限——可以执行工具、访问凭证并与外部系统交互。许多防御措施专注于检测恶意输入。而MVAR则在执行终端处强制实施确定性的安全边界,在这些地方发生特权操作。
核心设计原则:将影响与权威分开。
不可信的数据可能影响推理;特权执行则由政策不变性所支配。
MVAR实现了三个强制执行层次:
1. 基于来源的信息流控制
所有数据都携带完整性和保密性标签,并进行保守传播。政策决策源于数据沿袭,而非有效载荷检查。
2. 基于能力的运行时约束
没有环境权限。工具在明确声明的权限内执行。目标是单独强制执行的(例如,api.gmail.com ≠ 任意域名)。
3. 确定性终端政策评估
特权操作根据严格的不变性进行评估:
不可信 + 关键 → 阻止
决策是确定性的,并产生评估追踪。
启用时,决策可以进行加密签名(QSEAL Ed25519),以实现防篡改的审计能力。
验证
评估针对一个可重复的50个向量对抗语料库,涵盖九个攻击类别(命令注入、编码/混淆、多阶段执行、凭证窃取等)。
验证套件在本地运行约2分钟。
范围、假设和限制在THREAT_MODEL.md中明确记录。
此版本代表第一阶段,专注于确定性强制执行,而非检测或行为评分。组合攻击和自动终端发现是未来的工作。
开源(Apache 2.0)。
代码库: [https://github.com/mvar-security/mvar](https://github.com/mvar-security/mvar)
网站: [https://mvar.io](https://mvar.io)
作者之一。在进行这些实验时,有一些事情让我们感到惊讶:
这些任务来自于vLLM和SGLang中实际合并的PR,因此每个任务都有一个已知的良好人类解决方案。代理可以访问完整的代码库、问题描述和测试框架。这种设置相当慷慨。
我们没有预料到的是:代理在<i>诊断</i>问题方面表现得非常出色。它们能够阅读代码,找到瓶颈,并描述正确的修复方案。但生成的代码却存在微妙的错误,比如内核索引的越界、错误的张量形状以及缺失的同步屏障。这些问题在初步代码审查时可能会通过,但在负载下会导致段错误。
另一个奇怪的结果是:不同代码库之间的代理排名完全颠倒。Claude Code在vLLM中表现最佳(46%),但在SGLang中表现最差(27%)。而使用GPT-5的TRADE则呈现出相反的模式。尽管使用的是相同的基础模型,但代理的框架却不同。这表明,模型周围的框架至少与模型本身一样重要。
我们还尝试了三个开源模型,但没有一个能产生有效的优化。其中一个(MiniMax-M2.1)陷入了一个循环,打印了2412次“我现在需要真正使用工具”,却从未调用过工具。
基准测试、所有代理的记录和评估代码都是公开的:<a href="https://ayushnangia.github.io/iso-bench-website/" rel="nofollow">https://ayushnangia.github.io/iso-bench-website/</a>
我们对其他人对框架结果的看法感到好奇,特别是这个领域似乎尚未被充分探讨。