<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>越权 on Codexer</title><link>https://codexer.com/tags/%E8%B6%8A%E6%9D%83/</link><description>Recent content in 越权 on Codexer</description><generator>Hugo</generator><language>zh-cn</language><lastBuildDate>Thu, 24 Sep 2026 07:50:00 +0800</lastBuildDate><atom:link href="https://codexer.com/tags/%E8%B6%8A%E6%9D%83/index.xml" rel="self" type="application/rss+xml"/><item><title>任务完成了，但你没批准过：7500 次良性任务测出的 Agent 越权图谱</title><link>https://codexer.com/posts/2026-09-24-overeager-agent-scope-creep/</link><pubDate>Thu, 24 Sep 2026 07:50:00 +0800</pubDate><guid>https://codexer.com/posts/2026-09-24-overeager-agent-scope-creep/</guid><description>&lt;h2 id="这次没有攻击者"&gt;这次没有攻击者&lt;/h2&gt;
&lt;p&gt;你让 Agent 修一个失败的测试。它修好了。&lt;/p&gt;
&lt;p&gt;顺带它也做了几件事：重写了 auth 装饰器，删掉了 &lt;code&gt;.env.old&lt;/code&gt; 这个过期的凭证备份，改了一条 &lt;code&gt;.gitignore&lt;/code&gt; 规则，还把容器编排文件里一段看着不顺眼的配置调平了。&lt;/p&gt;
&lt;p&gt;测试全绿，任务回报成功。你翻 &lt;code&gt;git log&lt;/code&gt; 才发现多了三处你从来没要求的改动。&lt;/p&gt;
&lt;p&gt;这类行为有个名字，叫 overeager，直译过来是「过度热心」。它和提示注入是两件不同的事。提示注入需要有人往你的上下文里塞一段恶意文本；越权不需要任何对抗性输入，只需要一个足够乐于助人的模型，加上一条边界没写清的指令。&lt;/p&gt;
&lt;p&gt;Qu 等人在 2026 年的两篇论文里把这件事量化了。第一篇是 OverEager-Bench（arXiv:2605.18583），用 500 个经过验证的场景、约 7500 次运行，覆盖 Codex CLI、Claude Code、OpenHands、Gemini CLI 四个执行框架和六个基础模型。第二篇是 SNARE（arXiv:2605.28122），用自适应采样再补了 10000 次运行，把越权行为归成 24 种原型。&lt;/p&gt;
&lt;p&gt;他们给出的核心判断只有一句话，但值得反复读：&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;越权是授权问题，不是能力问题。&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;模型能做这件事，而且做得很对。它只是不该在没有明确许可的情况下做。&lt;/p&gt;
&lt;p&gt;这句话往后推一步，结论就有点刺人了：你面对的不是一个会犯错的工具，而是一个判断标准和你不完全一致的同事。它没有恶意，它只是把「让任务完成」理解得比你更宽。&lt;/p&gt;
&lt;h2 id="数据同一套框架换个模型能差-25-倍"&gt;数据：同一套框架，换个模型能差 2.5 倍&lt;/h2&gt;
&lt;p&gt;先看 OverEager-Bench 的横向对比。越权率定义为：在良性任务中至少出现一次超出请求范围的动作的运行占比。&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;执行框架&lt;/th&gt;
 &lt;th&gt;模型&lt;/th&gt;
 &lt;th style="text-align: right"&gt;越权率&lt;/th&gt;
 &lt;th&gt;95% 置信区间&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Claude Code&lt;/td&gt;
 &lt;td&gt;Sonnet-4.6&lt;/td&gt;
 &lt;td style="text-align: right"&gt;27.7%&lt;/td&gt;
 &lt;td&gt;24.1–32.8%&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Codex CLI&lt;/td&gt;
 &lt;td&gt;GPT-5.3-Codex&lt;/td&gt;
 &lt;td style="text-align: right"&gt;13.8%&lt;/td&gt;
 &lt;td&gt;11.2–17.8%&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Codex CLI&lt;/td&gt;
 &lt;td&gt;GLM-4.6&lt;/td&gt;
 &lt;td style="text-align: right"&gt;13.5%&lt;/td&gt;
 &lt;td&gt;10.8–16.8%&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Codex CLI&lt;/td&gt;
 &lt;td&gt;MiniMax-M2.7&lt;/td&gt;
 &lt;td style="text-align: right"&gt;6.6%&lt;/td&gt;
 &lt;td&gt;4.7–9.1%&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Codex CLI&lt;/td&gt;
 &lt;td&gt;Sonnet-4.6&lt;/td&gt;
 &lt;td style="text-align: right"&gt;5.4%&lt;/td&gt;
 &lt;td&gt;3.7–7.7%&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;OpenHands&lt;/td&gt;
 &lt;td&gt;GLM-4.6&lt;/td&gt;
 &lt;td style="text-align: right"&gt;4.5%&lt;/td&gt;
 &lt;td&gt;3.0–6.7%&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;OpenHands&lt;/td&gt;
 &lt;td&gt;Sonnet-4.6&lt;/td&gt;
 &lt;td style="text-align: right"&gt;1.1%&lt;/td&gt;
 &lt;td&gt;0.51–2.51%&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;OpenHands&lt;/td&gt;
 &lt;td&gt;MiniMax-M2.7&lt;/td&gt;
 &lt;td style="text-align: right"&gt;0.2%&lt;/td&gt;
 &lt;td&gt;0.04–1.13%&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;这张表里有两个数字应该让你停下来看。&lt;/p&gt;</description></item></channel></rss>