Linux内核负责人表示,AI漏洞报告一夜之间从垃圾变成了合法报告——格雷格·克罗阿-哈特曼无法解释这个转折点,但这种趋势并没放缓或消失
Steven J. Vaughan-Nichols

本周在 KubeCon Europe 的新闻午餐会上,出乎意料的是,坐在我旁边的竟然是 Linux 内核的长期维护者 Greg Kroah-Hartman。Greg 目前居住在荷兰,他此行的目的是就人工智能、Linux 和安全发表一些简短的评论。我们谈到,在过去一个月里,围绕 Linux 安全和代码审查的人工智能驱动活动“突飞猛进”,其发展速度之快,是开源界任何人都始料未及的。
“几个月前,我们收到了一些所谓的‘AI垃圾’,也就是AI生成的那些明显错误或质量低劣的安全报告,”他说。“这有点滑稽,我们当时也没太在意。” 当然,Linux内核维护者众多,对他们来说,AI垃圾报告的负担远没有对cURL的创始人兼首席开发者Daniel Stenberg那么沉重。在Stenberg看来,AI垃圾报告甚至导致cURL团队停止支付漏洞赏金。
克罗阿-哈特曼说,情况已经发生了变化。“一个月前发生了一些事,世界格局就此改变。现在我们有了真实的安全报告。”他继续说道,这不仅仅发生在Linux上。“所有开源项目都有由人工智能生成的真实报告,这些报告质量很高,而且是真实的。”他指出,各大开源项目的安全团队经常进行非正式交流,每个人都看到了同样的转变。“所有开源安全团队目前都面临着这个问题。”
没人确切知道背后的原因。当被问及发生了什么变化时,克罗-哈特曼直言不讳:“我们不知道。似乎没人知道为什么。要么是很多工具变得更好了,要么是人们开始说,‘嘿,我们来研究一下这个问题吧。’看起来很多不同的团队、不同的公司都在参与其中。” 显而易见的是规模。“就内核而言,我们能够应对,”他说。
“我们团队规模更大,分布更广,而且增长势头强劲,丝毫没有放缓的迹象。这些都是些小问题,并非什么大事,但所有开源项目都需要这方面的帮助。” 他暗示,规模较小的项目应对突如其来的大量看似合理的AI生成的漏洞报告和安全发现的能力要弱得多——至少现在这些是真正的漏洞,而不是无意义的垃圾信息。
幕后,安保团队正在交流经验。“我们经常非正式地聚在一起讨论,因为我们都面临着同样的问题,”他说。“工具方面肯定经历了一些转折点。是本地工具改进了?还是人们找到了什么解决办法?说实话,我也不知道。”
目前,人工智能更多地扮演着审校者和助手的角色,而非Linux内核代码的完整作者,但这条界限正变得越来越模糊。Kroah-Hartman已经用人工智能生成的补丁进行过自己的实验。
“我当时输入了一个很蠢的提示,”他回忆道,“我说,‘给我这个’,结果它吐出了60个:‘这是我找到的60个问题,以及它们的修复方案。’大约三分之一是错的,但它们仍然指出了一个相对真实的问题,而且三分之二的补丁是正确的。” 需要注意的是,这些有效的补丁仍然需要人工清理、改进变更日志和进行集成工作,但它们远非一无是处。“这些工具很好,”他说,“我们不能忽视这些问题。它们正在出现,而且情况正在好转。”
开发者们开始意识到人工智能在实际提交中的作用。“我们看到一些补丁程序正在生成,”克罗阿-哈特曼说。“现在这些补丁程序会有一个共同开发标签。我们看到一些新功能的补丁程序,但人工智能主要用于代码审查。”
当被问及他是否能想象在不久的将来,大部分简单的修改工作都将由人工智能完成时,他表示,对于“简单的小错误情况,正确检测错误情况”,人工智能现在就已经可以生成几十个可用的补丁。
人工智能生成的报告和人工智能辅助工作的激增,也促使人们将人工智能融入内核自身的审查基础设施。其中的关键工具是 Sashiko,它最初由谷歌开发,现已捐赠给 Linux 基金会。
“我们需要一种简便的方法来审查这些以减轻我们工作量的方式提交的补丁。” 他说,这个工具“已经发布,几乎可以用于所有内核补丁。你可以公开查看。我们正在将其集成到我们的审查工具中。任何人都可以使用它。”
这项工作建立在特定子系统内部早期工作的基础上。“网络和 BPF 团队已经对 LLM 生成的代码进行审查一段时间了,”Kroah-Hartman 说。“直接渲染管理器 (DRM) 团队以及现在的谷歌工具正在将所有这些代码整合到一个通用界面中,”他解释道。“不同的子系统正在添加更好的技能或提示——例如,对于存储,提示你需要检查的内容;对于图形,提示你需要检查的内容。人们正在公共平台上为此做出贡献,这才是正确的做法。这非常好。”
Kroah-Hartman 称赞长期担任内核开发者的 Chris Mason(现就职于 Meta 公司)是人工智能代码审查工作流程的先驱。Mason 长期以来一直致力于 eBPF 和网络代码的人工智能审查。systemd 项目也在其全 C 代码库中使用了同类工具。
他强调,人工智能审稿人的作用是补充而非权威。“就审稿而言,它确实生成了一些不错的评论。它并不能面面俱到,有些地方仍然有误。但它确实指出了很多显而易见的问题。”他说。
其中最直接的优势之一是响应速度。当AI审查员标记出明显的问题时,提交者会在人工维护人员实际阅读补丁之前很久就收到反馈。“如果我看到它对某些问题做出响应,它能比维护人员更快地向提交者提供反馈,这很棒,”Kroah-Hartman说道。“我们已经运行了一些机器人来审查补丁。如果我看到这些机器人失败,我就知道作为维护人员我甚至不需要再去看它了。这会让开发者知道,‘哦,我明天可以再做一个版本’,这有助于更好地提高反馈效率。”
然而,随着人工智能生成的报告和补丁越来越多,审查工作也随之增加。“审查工作更多了;我们需要审查的内核内容也更多了,”他说道。正因如此,与 OpenSSF 及其 Alpha-Omega 项目合作才显得尤为重要。“我们正在努力开发工具,帮助维护者更轻松地处理这些涌入的报告和补丁。”
Kroah-Hartman反复强调的一个主题是机会均等。直到最近,只有资源充足的子系统才能大规模运行复杂的AI工具。将谷歌的评论系统转变为Linux基金会的项目旨在改变这种现状。
“这是我们用于审查的工具之一,”他说。“它只是一个例子,说明现在作为 LF 项目,我们如何向所有人开放访问权限。以前,只有那些拥有后端资源运行它的子系统才能使用。现在,我们把它提供给所有人。”目前,相关工作已经在进行中,旨在使其能够在内核自身基础设施之外使用。
这一点很重要,因为正如克罗阿-哈特曼一直强调的那样,人工智能浪潮不仅仅是内核问题。“所有开源项目都有用人工智能生成的真实报告,”他说。“我们的增长是实实在在的,而且势头并未放缓。这些虽然不是什么大事,但我们需要所有开源项目在这方面获得帮助。”
对于 Linux 而言,人工智能与 Linux 的关系已经从理论走向实践。这既是好事也是坏事。人工智能一方面带来了新的安全漏洞,给负责处理这些漏洞的人工审核人员带来了压力;另一方面,它也有助于缓解这种压力。
克罗阿-哈特曼及其同行的难点在于,如何在不拖垮开源维护者的前提下,保持人工智能作为倍增器的作用。
theregister.com