让 AI 查代码,先问一句:关掉的功能还在跑吗?
有个挺适合交给 AI 追代码的问题:配置里关掉了某个功能,相关代码是不是就真的碰不到外部输入了?
Anthropic 10 月 20 日发的研究,关注的就是这种不必要的代码暴露。它让 Claude 检查默认配置、配置之间的组合,以及鉴权等检查之前就会执行的代码。这里的发现不能直接等同于一批可利用漏洞,但能帮助确定哪些复杂代码其实没必要暴露在外面。
一个具体案例是 OpenSSH。10.6 的官方发布说明写了:在解析密钥时,尽早按允许列表检查公钥和 CA 签名算法,减少被禁用算法暴露的代码路径。注意 10.6 是 10 月 6 日发布的,昨天发布的是 Anthropic 对这项工作的介绍。
换成普通业务系统,可以想象一个被关闭的文件导入功能:
接收文件 → 解压和解析 → 检查功能开关 → 拒绝
最终虽然返回了拒绝,解压和解析却已经发生了。如果开关本来就能提前判断,就值得检查能否在进入这些处理之前结束请求。这个例子只是审查思路,不是在说本站存在这个问题。
让 AI 找到一个最后会返回 403 的分支还不够,我更想让它指出:入口在哪、开关在哪检查,以及怎么证明被关闭的解析器没有被调用。回归测试除了断言返回码,再断言那段处理根本没执行,验收会扎实不少。
来源:Anthropic《Using Claude to reduce the attack surface of code》,2026 年 10 月 20 日;OpenSSH 10.6 官方发布说明,2026 年 10 月 6 日。