Fuzzing 升级:谷歌通过AI找到更多漏洞
2024-11-25 17:58:0 Author: mp.weixin.qq.com(查看原文) 阅读量:1 收藏

 聚焦源代码安全,网罗国内外最新资讯!

编译:代码卫士

谷歌的 OSS-Fuzz 项目使用大语言模型 (LLMs) 助力找到代码仓库中的漏洞,目前已识别出26个漏洞,包括在使用广泛的 OpenSSL 库中的一个严重漏洞。

该 OpenSSL 漏洞 (CVE-2024-9143) 在9月中旬报送,并在一个月之后修复。一些(并非所有)漏洞也已得到修复。谷歌认为其受AI驱动的fuzzing(模糊测试,将异常或随机数据注入软件中以捕获错误)工具找到了人类无法通过fuzzing找到的错误。

谷歌开源安全团队的研究员 Oliver Chang、Dongge Liu 和 Jonathan Metzman 在一份博客文章中提到,“就我们所知,这个漏洞可能已存在20年且以人类编写的现有fuzz目标而言是无法发现的。”如所言属实,那么安全研究真的应该纳入AI的使用,以免威胁人员已经这么做了,并找到人类无法找到的缺陷。谷歌还援引了另外一个案例,即位于 cJSON 项目中的一个 bug 据称也是由AI发现但被人类所编写的fuzzing测试错过的 bug。

因此,AI协助似乎对于安全专业人员而言价值巨大。谷歌本月早些时候宣布,另外一个基于LLM的捕获工具 Big Sleep 首次从真实软件中找到一个此前未知的可利用的内存安全缺陷。10月份,Protect AI 也发布了一款开源工具 Vulnhuntr,它利用 Anthropic 公司研发的 Claude LLM 从基于Python的项目中找到 0day漏洞。

OSS-Fuzz 团队在2023年8月引入基于AI的fuzzing,旨在fuzz 更大比例的代码库,以提升fuzzing覆盖率即所测试的代码数量。Fuzzing的流程涉及编写 fuzzing 目标,即“接受字节数组并使用在测的API与这些字节共同做一些有趣事情的函数”,之后处理潜在的编译问题和运行fuzzing目标查看其如何执行、修正和重复该流程,查看这些崩溃能否追溯到特定的漏洞。

OSS-Fuzz 最初处理了前两个步骤:(1)编写初始fuzz目标,和(2)修复引发的任何编译问题。之后在2024年开始,谷歌开源了 OSS-Fuzz 并尝试改进该软件处理后续步骤的方法:(3)运行 fuzz 目标以查看其如何执行并修复任何可引发运行时问题的明显错误;(4)在更长的时间内运行已修正的 fuzz 目标并对崩溃情况进行分类,判断其根因;以及(5)修复漏洞。

谷歌提到,其LLM目前可处理前四个fuzzing流程,计划不久后处理第5个步骤。Chang、Liu 和 Metzman 提到,“目标是通过LLM生成漏洞补丁建议,完全自动化整个工作流。虽然我们今天没有任何可以分享的内容,但我们正在与各个领域的研究员协作实现这一目标并期待不久可以分享结果。”

代码卫士试用地址:https://codesafe.qianxin.com
开源卫士试用地址:https://oss.qianxin.com


推荐阅读

从Naptime到Big Sleep:通过大语言模型捕获真实代码中的漏洞

DHS发布在关键基础设施安全开发部署AI的框架

谷歌AI平台存在漏洞,可泄露企业的专有LLMs

研究员在开源AI和ML模型中发现30多个漏洞

超过三分之一的员工与AI共享工作机密

原文链接

https://www.theregister.com/2024/11/20/google_ossfuzz/

题图:Pixabay License

本文由奇安信编译,不代表奇安信观点。转载请注明“转自奇安信代码卫士 https://codesafe.qianxin.com”。

奇安信代码卫士 (codesafe)

国内首个专注于软件开发安全的产品线。

    觉得不错,就点个 “在看” 或 "” 吧~


文章来源: https://mp.weixin.qq.com/s?__biz=MzI2NTg4OTc5Nw==&mid=2247521578&idx=1&sn=0f7082c24d8e05dca215004ae796d61e&chksm=ea94a440dde32d56ec3122aaba3a62cee4ca60aa29749436b95da39412ef8c8c80b43a0fc000&scene=58&subscene=0#rd
如有侵权请联系:admin#unsafe.sh