Google"Big Sleep"人工智能项目发现真实软件漏洞
据Google研究人员称,该公司的一个人工智能项目足够聪明,能够自行发现现实世界中的软件漏洞;Google的人工智能项目最近在开源数据库引擎 SQLite 中发现了一个之前未知的可利用漏洞。 该公司随后在正式软件发布之前报告了这一漏洞,这促使 SQLite 在上个月发布了一个修复程序;
Google的安全研究人员周五在一篇博文中写道:"我们认为,这是人工智能代理在广泛使用的现实世界软件中发现先前未知的可利用内存安全问题的首个公开案例。"
越来越多的研究表明,当今的大型语言模型具有发现软件漏洞的潜力,而这一消息也为科技行业在防御黑客攻击软件方面提供了亟需的优势。
这并不是人工智能程序第一次发现软件缺陷。 例如,今年 8 月,另一款名为 Atlantis 的大型语言模型程序发现了SQLite 中的一个单独漏洞。 与此同时,机器学习模型作为人工智能领域的一个子集,多年来也被用于发现软件代码中的潜在漏洞;
尽管如此,Google表示,其人工智能程序所取得的成就表明,大型语言模型有可能在软件本身发布之前找出更复杂的漏洞。"该公司的研究人员写道:"我们认为,这是一条大有可为的道路,可以最终扭转局面,实现防御者的非对称优势;
Google的这个项目最初被称为"午睡项目",后来被称为"Big Sleep",这是一个笑话,说的是该公司的研究人员希望人工智能程序的能力足以让Google的人类研究人员在工作中"定期打盹"。
"Big Sleep"专门设计了一些特殊工具,目的是在检查特定程序的计算机代码时"模仿人类安全研究人员的工作流程"。 Google开发 Big Sleep 的另一个目的是寻找现有安全漏洞的变种,这些漏洞通常是当今软件中经常出现的问题,黑客会急于加以利用;
Google研究人员写道:"最近,我们决定对我们的模型和工具进行测试,在 SQLite 上进行了首次广泛的真实变体分析实验。 这包括让 Big Sleep 查看最近对 SQLite 代码库所做的更改。 Google的人工智能代理能够通过触发漏洞并使 SQLite 崩溃来进行调查,从而通过根源分析帮助它更好地理解和解释问题。"
"如果提供正确的工具,当前的 LLM 可以执行漏洞研究"。 尽管如此,这篇博文承认,一种被称为"特定目标模糊器"(target-specific fuzzer)的专业漏洞查找工具也可以有效地在 SQLite 中找到相同的漏洞。
尽管如此,该公司的研究人员还是得出了结论:"我们希望这项工作将来能为防御者带来显著优势--不仅有可能找到崩溃的测试用例,还能提供高质量的根本原因分析,将来分流和修复问题的成本会更低,效果会更好。"