💡
原文英文,约600词,阅读约需2分钟。
📝
内容提要
AutoPatchBench是一个标准化基准,用于评估LLM代理在C/C++代码中自动修补安全漏洞的能力。它包含136个样本,基于Google的OSS-Fuzz数据集,专注于模糊测试发现的漏洞。AutoPatchBench-Lite是一个更小的子集,适合早期开发工具。该基准有助于理解AI修补能力,并支持开源项目。
🎯
关键要点
- AutoPatchBench是一个标准化基准,用于评估LLM代理在C/C++代码中自动修补安全漏洞的能力。
- 该基准包含136个样本,基于Google的OSS-Fuzz数据集,专注于模糊测试发现的漏洞。
- AutoPatchBench旨在帮助理解AI修补能力,并支持开源项目。
- 与通用软件工程基准相比,AutoPatchBench专注于模糊测试发现的安全漏洞。
- AutoPatchBench基于ARVO数据集,包含超过5000个真实的C/C++漏洞。
- 从ARVO中筛选出136个样本用于AutoPatchBench,并创建了113个样本的子集AutoPatchBench-Lite。
- 模糊测试是一种用于发现安全漏洞的技术,但编写有效的模糊测试工具具有挑战性。
- 解决模糊测试发现的崩溃问题需要深入分析和验证修补的有效性,AI系统可以提供帮助。
- AutoPatchBench采用特定技术评估生成的修补程序是否保持预期行为。
- Meta还发布了AutoPatchBench-Lite,适合早期开发工具,专注于简单的崩溃场景。
- AutoPatchBench是CyberSecEval 4的一部分,旨在评估LLM的防御能力,Meta开源了其参考实现。
❓
延伸问答
AutoPatchBench的主要功能是什么?
AutoPatchBench是一个标准化基准,用于评估LLM代理在C/C++代码中自动修补安全漏洞的能力。
AutoPatchBench包含多少个样本?
AutoPatchBench包含136个样本,基于Google的OSS-Fuzz数据集。
什么是模糊测试,它在AutoPatchBench中有什么作用?
模糊测试是一种用于发现安全漏洞的技术,AutoPatchBench专注于通过模糊测试发现的漏洞进行评估。
AutoPatchBench-Lite与AutoPatchBench有什么区别?
AutoPatchBench-Lite是AutoPatchBench的一个子集,包含113个样本,适合早期开发工具,专注于简单的崩溃场景。
AutoPatchBench如何验证生成的修补程序?
AutoPatchBench采用特定技术评估生成的修补程序是否保持预期行为,确保修补后的程序状态与原始程序一致。
Meta为什么要开源AutoPatchBench?
Meta开源AutoPatchBench是为了让社区能够利用它在开源项目中进行模糊测试或构建更好的修补模型。
➡️