阿里巴巴联合高校发布首个面向生产场景的代码安全基准SecCodeBench

阿里安全响应中心
Jul 10, 2025

近年来,以大语言模型(LLM)为核心的AI编程助手(如GitHub Copilot, Cursor)正以前所未有的速度渗透到软件开发的每个角落。Stack Overflow 2024年的调查显示,61.8%的开发者正在用AI工具提升效率。AI Coding正成为第一个即将颠覆真实生产场景的领域。

然而,这场效率革命的背后,一个严峻的挑战浮出水面:AI生成的代码,安全吗?

斯坦福大学与康奈尔大学的研究已经敲响警钟,表明使用AI编程可能导致代码安全性降低,引入复杂多样的潜在漏洞。当AI生成代码量占据新增代码的1/3以上时,其安全性已成为整个软件工程领域亟待解决的核心问题。

为应对这一挑战,阿里巴巴集团安全、阿里云安全等多个阿里巴巴安全团队联合与浙江大学网络空间安全学院、复旦大学、清华大学网络科学与网络空间研究院、北京大学推出了SecCodeBench——专注于评估大语言模型(LLM)生成代码安全性的基准测试套件。

为什么行业迫切需要SecCodeBench?

当前,业界对AI代码的评估大多停留在"功能是否正确"的层面,而对其安全性的系统性评估却严重不足。我们调研了业内多个AI代码安全测评集,发现它们普遍存在两大"致命缺陷":

1

测试用例质量参差不齐:

许多数据集依赖自动化生成,缺乏人工深度参与,导致数据分布失衡(如大量低优先级的弱哈希算法问题占主导)、用例脱离真实生产场景,甚至包含"钓鱼执法"式的诱导性提示,无法真实反映模型的安全水位。

2

评估方法单一且精度不足:

大多评估方法依赖简单的正则表达式,难以识别语法或语义复杂的代码变体,且完全忽略了必须通过真实运行才能验证的动态漏洞。

为此我们推出SecCodeBench。从“数据构建”与“评估方法”两大维度进行了创新,旨在树立一个科学、公正且贴近工业界真实场景的评测新标准。

SecCodeBench核心优势

为真实世界打造的AI代码"安全试金石"

高质量数据:源于真实,忠于现实

首个贴合真实生产场景的测试集SecCodeBench的构建,沉淀了阿里巴巴安全团队的代码安全攻防经验,深刻理解工业界代码结构与安全建设的痛点与技巧。

源自真实GitHub仓库测试用例并非凭空捏造,而是基于对15万个真实GitHub Java项目的深度扫描,确保了评测的真实性和挑战性。

漏洞类型分布广泛精选并均匀覆盖了12种业界广泛认可的CWE(通用缺陷枚举)漏洞类型,避免了因数据分布不均导致的评测结果偏差。

专家深度参与,双重审核所有用例均由阿里巴巴资深的安全专家参与构建,并经过严格的“双人评审”确认,保证了数据的权威性与高质量。

评测公正我们移除了所有可能产生不当引导的模糊表述,追求对大语言模型(LLM)能力评估的公平与纯粹。

SecCodeBench的数据集构成如下表所示,所有用例均遵循业界广泛认可的CWE标准进行分类:

场景评估方法数据来源漏洞/组件类型测试用例数
Autocomplete静态评估扫描约15万GitHub Java仓库46 种398
Instruct静态评估扫描约15万GitHub Java仓库46 种398
Instruct动态评估安全专家人工审核构造17 种18

 混合评估策略:静态、动态结合,全面度量

SecCodeBench针对AI辅助编程的两种核心场景,设计了科学、多维度的评测流水线:

覆盖两大主流场景:针对性地为Instruct(指令驱动编码)和Autocomplete(代码自动补全)这两种最核心的LLM编程场景设计了不同的评测范式。

"动态+静态"混合评估

  • 动态运行测试:我们基于安全工程师的实战经验,考虑到真实工程实践中漏洞产生的频率,精心构造了18个可实际运行的漏洞利用场景对应的测试用例。它能在真实运行环境中检测代码的安全表现,这是传统静态分析无法企及的。

  • 高精度静态分析:除了使用高精度正则表达式快速检测已知漏洞模式外,我们还开创性地引入了LLM-as-a-Judge机制。

LLM-as-a-Judge机制:我们创造性地使用了注入了阿里高质量安全规范知识的大模型作为"安全评委"。

未来展望:我们的路线图

我们致力于将SecCodeBench打造成一个持续演进的开放安全基准,并以评测的公正性、场景的真实性、方法的科学性作为其不变的核心标准。未来的工作将围绕以下几个方向展开:

持续扩充 Java 用例:我们将不断增加更多、更贴近真实业务场景的 Java 测试用例,以覆盖更广泛的 CWE 类别。

扩展多语言支持:在完善 Java 数据集的基础上,我们计划逐步支持其他主流编程语言,如 Python, Go, C++, JavaScript 等。

社区驱动的迭代与修复:我们将积极听取社区的反馈,持续迭代和修正数据集中可能存在的问题,以保证基准的长期高质量与公正性。非常欢迎您通过创建 Issue 来讨论新功能或提出建议!

如何开始使用SecCodeBench

完整的安装指南、使用方法、技术细节和技术细节已经全部托管在官方GitHub仓库中。我们鼓励开发者和研究者访问仓库,以获取最新、最准确的信息。

GitHub仓库地址:https://github.com/alibaba/sec-code-bench

非常欢迎您通过提交Issue和Pull Request的方式,参与到SecCodeBench的社区共建中来!

写在最后

为AI时代的软件工程筑牢安全基石

SecCodeBench的发布,是推动AI生成代码从"事后修复"迈向"事前预防"的关键一步。它不仅为企业和开发者提供了量化评估AI生成代码安全性的科学工具,助力"安全左移"理念真正落地,也为学术界提供了高质量的数据与评测范式,以加速大模型安全领域的技术突破。

我们相信,让代码更安全,才能让AI更可信。SecCodeBench,愿为AI时代的软件工程,筑牢每一块安全基石。

海量资讯、精准解读,尽在新浪财经APP

Disclaimer: Investing carries risk. This is not financial advice. The above content should not be regarded as an offer, recommendation, or solicitation on acquiring or disposing of any financial products, any associated discussions, comments, or posts by author or other users should not be considered as such either. It is solely for general information purpose only, which does not consider your own investment objectives, financial situations or needs. TTM assumes no responsibility or warranty for the accuracy and completeness of the information, investors should do their own research and may seek professional advice before investing.

Most Discussed

  1. 1
     
     
     
     
  2. 2
     
     
     
     
  3. 3
     
     
     
     
  4. 4
     
     
     
     
  5. 5
     
     
     
     
  6. 6
     
     
     
     
  7. 7
     
     
     
     
  8. 8
     
     
     
     
  9. 9
     
     
     
     
  10. 10