借助人工智能工具,发现开源软件中的潜在漏洞变得更加容易,但发现一个疑似问题,并不意味着它是真实且可利用的漏洞。因此,项目维护者正面临大量冗长、不准确或重复的报告,耗费了原本可以用于修复缺陷和开发软件的时间。
Linux基金会于6月宣布的Akrites倡议,试图通过一个联合安全事件响应团队(SIRT)来弥合这一差距。该团队的任务是汇总和验证漏洞报告,并与原始项目的维护者协调修复工作。在布拉格举行的Open Source Summit Europe期间接受The New Stack采访时,Akrites技术负责人兼Open Source Security Foundation(OpenSSF)首席安全架构师Christopher Robinson,以及Linux基金会人工智能与代理系统安全架构师Laura Guazzelli,解释了这一问题的性质和该倡议的运作机制。
从“随兴研究”到运营负担
Robinson表示,如今只需一个价值20美元的付费账户,就足以开始寻找漏洞,这反映出非专业人士进入这一领域的门槛正在降低。OpenSSF高级员工Adrianne Marcum用“vibe researching”这一略带讽刺的说法描述了这种模式,指的是使用人工智能工具扫描代码并提交结果,却不具备验证这些结果所需的安全背景或专业经验。
Robinson估计,审查一份安全报告可能耗费工程师最多8小时。按照他的描述,自动化报告往往极其详细,却通常不够准确,会夸大问题的严重程度,而且并不总是提供编写补丁或了解利用方式所需的数据。
为什么仅发现可疑代码还不够?
主要限制之一在于,模型可能看到一段可疑代码,却不了解项目完整的安全架构。其他位置可能存在能够阻止漏洞被利用的额外控制措施,这会使报告成为误报,或降低问题的实际严重性。此外,类似的模型往往会发现相同的缺陷,导致维护者收到多份针对同一问题的报告。
不过,Akrites并不认为忽略人工智能生成的报告是可行的选择。Robinson表示,过去一年中结果质量有所提高,尤其是在成本更高的付费模型中;这些工具有时还能够将多个低严重性问题关联起来,转化为更大的利用链,而这项工作可能需要人工研究人员数月或一年的时间。
报告到达项目之前进行人工审核
Akrites使用人工智能评估收到的报告并发现重复内容,然后由借调工程师在转交给维护者之前进行审核。他们的职责不仅是判断漏洞是否存在,还包括压缩报告、添加测试用例、概念验证和补丁,使项目能够更快地依据证据作出决定。
该倡议的创始成员包括Anthropic、OpenAI、Google、Microsoft、AWS、NVIDIA、Cisco、IBM、Red Hat、Citi和JPMorganChase。Robinson表示,成员除了提供资金外,还需要提供工程资源,每名成员的投入可能达到10名全职工程师。他说,目前约有200名借调工程师,其中许多人本来就是开源项目的贡献者或维护者。
实际发生了什么变化?
Akrites在漏洞发现工具与项目维护者之间增加了一层筛选和验证机制,而不是将每一条自动化结果直接转交给代码所有者。这可能减少噪声并提高报告的可执行性,但并不会消除对人类专业知识或持续资金的需求,因为基础设施和语言模型的使用都会消耗大量资源。
Linux基金会旗下的另一项相关倡议open source Cyber Reasoning System(OSS-CRS),正在开发帮助项目自行调查漏洞并提出修复方案的工具。Akrites侧重于协调项目之间的报告流程,而OSS-CRS则致力于让维护者能够完成更多工作。拟议补丁的有效性仍是一个开放问题,因为必须验证它们确实解决了根本原因,没有引入新的漏洞,也没有破坏现有功能。
新闻来源
The New Stack - Software Development
查看原始来源 ↗