AI 在开源软件项目中发现了 26 个新漏洞,包括 OpenSSL 中的一个漏洞。
Google开始利用AI 程序发现软件错误,包括最近发现的在过去二十年中一直存在于一个开源软件项目中的漏洞。该软件漏洞是谷歌最近在类似 ChatGPT 的 AI 工具的帮助下发现的 26个漏洞之一。
谷歌通过一种被称为“模糊测试”的方法发现了这些漏洞。该模糊测试方法涉及向软件程序提供随机数据,以查看它是否会崩溃,然后诊断问题。2023年,该公司开始使用大型语言模型LMM来编写模糊测试代码,从而减轻了以前必须手动执行模糊测试的人工工作。
谷歌的开源安全团队称,“我们的方法是使用 LLM 的编码功能来生成更多的模糊测试目标。事实证明,LLM 在模拟典型开发人员编写、测试和迭代模糊测试目标的整个工作流程以及分类发现的崩溃方面非常有效。”
从那时起,Google在272个软件项目中应用了AI工具进行模糊测试,发现了26个软件漏洞,其中包括在OpenSSL中发现的一个 20 年前的错误,该漏洞广泛用于为互联网连接提供加密和服务器身份验证。
“我们在 9 月 16 日报告了此漏洞,并于 10 月 16 日发布了修复程序。据我们所知,这种漏洞可能已经存在了20年,并且无法通过人类编写的现有模糊目标被发现。”研究人员补充道。
这个 20 年前的错误被称为 CVE-2024-9143,涉及软件触发“越界内存访问”,可能导致程序崩溃或在极少数情况下执行流氓计算机代码。幸运的是,该 bug 的严重性较低,因为越界内存访问执行危险进程的风险最小。
尽管如此,谷歌推测该错误未被发现,是因为特定代码已经过彻底测试和审查。研究人员说,代码覆盖率作为一个指标无法衡量所有可能的代码路径和状态,不同的标志和配置可能会触发不同的行为,从而发现不同的错误。这些示例强调了继续生成新种类的模糊测试目标的必要性,即使对于已经模糊测试的代码也是如此。
今后,Google 的开源安全团队正在努力让 LLM 为模糊测试过程中发现的任何错误提供补丁建议。另一个目标是达到我们有信心不需要人工审核的地步,将有助于自动向项目维护者报告新的漏洞。”
这项工作加入了另一个被称为“Big Sleep”的 Google AI 项目,该项目还涉及通过使用 LLM 来模拟人类安全研究人员的工作流程来查找安全漏洞。Big Sleep 足够聪明,在开源数据库引擎 SQLite 中发现了一个以前未知且可利用的错误。
4000520066 欢迎批评指正
All Rights Reserved 新浪公司 版权所有