Google 分享了 CodeMender 的早期研究成果,这是一个新的 AI 驱动代理,旨在自动提高代码安全性。软件漏洞对开发者来说通常难以发现和修复,即使使用传统的自动化方法如模糊测试。CodeMender 采用综合方法,既反应性地即时修补新漏洞,又主动地重写和加固现有代码,消除整个类别的漏洞。在过去的六个月中,CodeMender 已为开源项目上游了 72 个安全修复,包括一些多达 450 万行代码的项目。
CodeMender 通过利用最近的 Gemini Deep Think 模型的思考能力,创建一个能够调试和修复复杂漏洞的自主代理。该代理配备了强大的工具,使其在修改代码前进行推理,并自动验证更改以确保正确性且不引起回归。CodeMender 的自动验证过程确保代码更改在多个维度上正确,仅向人工审查展示高质量补丁,例如修复问题的根本原因、功能正确、无回归并遵循风格指南。
作为研究的一部分,Google 还开发了新技术和工具,使 CodeMender 能更有效地推理代码和验证更改。这包括使用调试器、源代码浏览器等工具来精确定位根本原因并设计补丁。CodeMender 能够处理复杂漏洞,例如在示例中,它识别了堆缓冲区溢出的根本原因,并修改了自定义的 C 代码生成系统。