文章总结: 本文探讨利用OWASPBenchmark评估AI辅助代码分析工具的能力。该基准包含数千个Java和Python测试用例,涵盖SQL注入、XSS等漏洞,可通过脚本运行和CSV文件统计结果。作者指出大模型可能已学习过这些代码导致结果失真,但目前仍为可行方案,后续将据此进行测试。 综合评分: 75 文章分类: AI安全,代码审计,安全工具
要测试AI的代码分析能力,可以用的Benchmark
原创
孙志敏
AI与安全
2025年12月31日 08:05 北京
Devsecops里的静态代码分析(SAST)和动态扫描(DAST)及交互式分析(IAST)都在向大模型辅助的AI系统发展,这些系统,有个绕不过去的问题,就是如何评估其能力。在AI之前的时代,评估这些能力,一般用各种Benchmark,包括Owasp Benchmark,Nist的 Juliet Test Suite等。应该说,测试AI的工具能力,仍然可以用这些Benchmark,今天以Owasp Benchmark为例 ,给大家做一个介绍。
01
什么是Owasp Benchmark
OWASP Benchmark是由OWASP开发的基准测试项目,包含多种编程语言的测试套件以及评分工具,旨在评估不同编程语言的自动化软件漏洞检测工具的准确性、覆盖率和速度。如果无法衡量这些工具的性能,就很难了解它们的优势和劣势,也难以对它们进行比较。
OWASP Benchmark 提供多个完全可运行的开源 Web 应用程序,其中包含数千个可利用的测试用例,每个用例都映射到特定的 CWE(通用漏洞描述符),可供任何类型的应用程序安全测试 (AST) 工具进行分析,包括 SAST、DAST(例如 ZAP)和 IAST 工具。其目的是确保基准测试中包含的所有漏洞及其评分都具有实际可利用性,从而对任何类型的应用程序漏洞检测工具进行公平的测试。此外,基准测试还包含数十个适用于众多开源和商业 AST 工具的评分卡生成器,并且支持的工具集也在不断扩展。
OWASP是开源的,目前包括Java和Python 两部分。其中Java于2015年开始发布,Pthon则刚发布不久。
02
OWASP开源介绍
OWASP在Github上开源。以Java为例,该软件是一个基本的 Java Servlet 应用程序,包含约 2000多个独立的测试用例,每个测试用例都有完整的源代码,且可运行。这些源代码,有的有真实的漏洞,也有假漏洞,可以用来评估工具对漏洞的判断能力。这些漏洞包含的类别包括
- 路径遍历
- 不安全的哈希算法
- 信任边界侵犯,CWE 501
- 不安全的加密算法
- 命令注入
- SQL注入
- 不安全的随机数生成器
- LDAP注入
- 跨站脚本攻击
- 缺少 Cookie 安全属性,CWE 614
- XPath注入
03
OWASP Benchmark怎么用
OWASP的源代码在testcode目录下,有编号的独立文件。
漏洞的信息在expectedresults-1.2.csv,对每一个用例,包含什么漏洞,漏洞是真还是假,CWE编号都有。
代码也支持运行,使用脚本runBenchmark.sh可以运行,运行后每个漏洞的URL为
http://
嗯,有了这些信息,剩下的统计就非常简单了。开源里也有些报告和评分工具,可以参考。
04
小结
在传统的代码分析工具里,用Benchmark评估是非常好的方法。
但在大模型时代,这个方法可能有一些问题,就是这些开源可能在大模型训练的时候已经学习到了,这会导致结果失真。
但目前好象也没有别的太好的方法,且用着吧。
或者,您有什么好的方法,可以告诉我。后续我将用这些方法做一些测试。
开源地址:https://github.com/OWASP-Benchmark
END
往期推荐
AI反钓鱼,国内外最新进展及模型分析
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:AI与安全 孙志敏《要测试AI的代码分析能力,可以用的Benchmark》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。










评论