AI资讯 / 研究

研究 / 官方

Anthropic 用 Claude 分析开源代码攻击面,扫描逾500万行代码发现493个安全隐患

Anthropic Research

Anthropic 安全研究团队近期发布报告,介绍了利用 Claude 对大型开源代码库进行自动化攻击面分析与缩减的初步研究成果。研究人员选取了涵盖 C、C++、Java、PHP、Python 等语言的 25 个开源项目,合计超过 500 万行代码,通过默认配置分析、配置交互检测和早期可达性识别三种方法,最终发现 493 个安全问题。研究的核心逻辑在于:传统的逐漏洞修复方式扩展性差,修复一个严重漏洞并不能说明其余漏洞的状况;而通过限制代码可达性,即便是尚未被发现的漏洞也会因难以触达而降低危害程度。Claude 在分析过程中梳理出超过 17,000 个配置项,其中 3,842 个与安全相关,并在所有 11 个需要身份验证的项目中均发现了非预期的预认证可达代码,配置交互问题的发现尤为突出。

过去一年,Anthropic 持续发布数据证明前沿 AI 模型具备发现和利用安全漏洞的能力。然而,该团队认为这仅是 AI 赋能网络防御的起点。此次研究聚焦于一个更具系统性的方向——自动化攻击面分析与缩减:借助 AI 模型梳理代码的可达路径,进而移除或限制对特定部署场景并不必要的暴露面。这一思路的根本出发点是,攻击者研究的是代码在实际运行中的真实行为,而非开发者的设计意图,两者之间的落差往往正是漏洞滋生的温床。

研究团队将 25 个开源项目划分为三类:Public(面向任意用户的公开服务,如 DNS 解析器)、Gated(需要身份验证后才开放功能的项目)和 Private(仅服务于运营方自身私有环境的项目)。这一分类有助于解读结果的合理性——Public 项目在默认配置下有较高比例的代码可达是正常的,而 Gated 项目则应相反。Claude 在分析中共梳理出超过 17,000 个配置项,其中 3,842 个被标记为与安全控制或安全特性相关。

在三种检测方法中,配置交互问题的发现最为突出。Claude 共识别出 162 个安全敏感的配置组合,这些组合在被接受时既未触发错误或警告,也缺乏对其交互行为的文档说明。其中 94 个案例会静默关闭某项安全控制,另外 68 个则表现为同一安全机制内部的不一致性——例如某个监听路径或登录入口在配置声称已关闭的情况下仍然保持可达状态。这类问题因其隐蔽性而尤为危险,管理员往往误以为安全控制已生效。

在早期可达性方面,Claude 在所有 11 个 Gated 类项目中均发现了非预期的预认证暴露面,共计 93 处不必要的预认证可达代码、37 处在认证完成前即执行代码或记录状态的位置,以及 61 个会静默削弱管理员所配置预认证控制的配置组合。研究人员指出,这些问题单独来看并不能被立即利用,但它们共同构成了远超必要规模的攻击面,为潜在攻击者提供了更多可探索的入口。

Anthropic 强调,攻击面缩减与漏洞修复并非互斥关系,而是互补的安全策略。缩减代码可达性并不能消除代码中已存在的未知漏洞,但能让这些漏洞更难被触达,从而降低其实际危害程度——包括那些可能已处于被主动利用状态的漏洞。研究团队认为,这一方法在近期内具有切实可行的落地价值,开发者可将类似技术应用于自身代码库,以经济高效的方式系统性提升软件安全水位,而无需等待每一个具体漏洞被发现和修复。

要点

  • Claude 扫描 25 个开源项目(逾 500 万行代码)后发现 493 个安全问题,涵盖默认配置暴露、配置交互缺陷和早期可达性三类
  • 162 个安全敏感配置组合在被接受时既无报错也无文档说明,其中 94 个会静默关闭安全控制,隐蔽性极强
  • 所有 11 个需要身份验证的项目均存在非预期的预认证可达代码,表明此类问题在实际软件中普遍存在
  • 攻击面缩减无需定位具体漏洞即可降低安全风险,对未知漏洞和在野利用同样有效
  • 逐漏洞修复的扩展性有限,系统性缩减代码可达性是更具规模效益的防御路径
查看原始来源

原始标题:Using Claude to reduce the attack surface of code

本文由 DataHub 基于公开来源整理,用于信息发现与摘要阅读;具体事实、数据和后续更新以原始来源为准。