iris-sast/CWE-Bench-Java
收藏Hugging Face2025-04-21 更新2025-04-26 收录
下载链接:
https://hf-mirror.com/datasets/iris-sast/CWE-Bench-Java
下载链接
链接失效反馈官方服务:
资源简介:
CWE-Bench-Java是一个专注于Java语言安全漏洞的数据集,包含120个CVE案例,涵盖了路径遍历、操作系统命令注入、跨站脚本和代码注入等四种常见弱点。每个CVE条目都包含了项目存在漏洞和修复漏洞的源代码,以及项目的具体信息,如警告信息、构建信息和修复信息。数据集以CSV文件和JSON格式的警告信息进行组织,为静态分析工具评估和漏洞修复研究提供了一个全面的资源。
The CWE-Bench-Java dataset is focused on Java-based security vulnerabilities and includes 120 CVE cases across four CWE categories: path-traversal, OS-command injection, cross-site scripting, and code-injection. Each CVE entry contains the buggy and fixed source code, along with project-specific details such as advisory information, build information, and fix information. The dataset is structured with CSV files and JSON-formatted advisories, offering a comprehensive resource for static analysis tool evaluation and vulnerability patching research.
提供机构:
iris-sast
搜集汇总
数据集介绍

构建方式
在软件安全分析领域,构建高质量基准数据集对于评估漏洞检测工具至关重要。CWE-Bench-Java数据集通过系统化流程构建而成,其核心方法涵盖多个维度。研究者首先从GitHub安全公告和MITRE CWE数据库中筛选出120个涵盖四种常见弱点枚举的Java项目CVE记录。随后利用版本控制工具提取漏洞版本与修复版本的源代码,并通过抽象语法树分析精确界定修复所涉及的类与方法边界。每个案例均关联了完整的元数据,包括项目标识符、提交哈希、安全公告详情及CVSS评分,构建过程结合了自动化提取与人工验证,确保数据的一致性与可复现性。
特点
该数据集在软件安全基准测试领域展现出鲜明的专业特征。其核心在于紧密关联真实世界的安全漏洞,每个样本均对应一个具体的CVE编号,并覆盖路径遍历、操作系统命令注入、跨站脚本和代码注入四种关键CWE类型。数据集采用多层结构化设计,通过独特的项目标识符体系将漏洞代码、修复补丁、安全公告和构建信息有机整合。尤为突出的是提供了方法级别的修复信息,包括具体的类定义边界、方法签名及代码行号,这种细粒度标注为深入分析漏洞修复模式提供了坚实基础。所有数据均以标准化格式存储,支持通过Hugging Face数据集库直接加载使用。
使用方法
该数据集主要服务于软件安全研究与工具评估场景。研究人员可通过Hugging Face平台直接加载数据集的四个配置模块,分别获取安全公告、项目信息、构建详情和修复信息。典型应用包括利用修复信息表分析不同CWE类型的补丁模式,或结合项目信息表构建漏洞检测模型的训练与测试集。在评估静态分析工具时,可将漏洞版本代码作为输入,对比工具输出与数据集中标注的真实修复位置。教育领域则可将其作为案例材料,演示真实漏洞的代码表现及修复方案。使用过程中需注意数据集仅涵盖特定CWE类型,评估结论应结合领域知识进行合理解释。
背景与挑战
背景概述
在软件安全领域,静态分析技术对于早期检测代码漏洞至关重要,然而现有基准数据集往往缺乏与真实世界漏洞的紧密关联。CWE-Bench-Java数据集由宾夕法尼亚大学和康奈尔大学的研究团队于2024年创建,旨在填补这一空白。该数据集精心收录了120个涵盖路径遍历、操作系统命令注入、跨站脚本和代码注入四类常见弱点枚举的Java项目CVE案例,每个案例均提供了存在漏洞的代码版本、修复后的代码版本以及详细的修复信息。通过将实际的安全漏洞与具体的代码变更直接关联,该数据集为评估和改进静态分析工具的性能提供了高质量的基准,推动了自动化漏洞检测与修复研究的发展。
当前挑战
该数据集致力于解决软件安全领域中自动化漏洞检测的挑战,特别是如何准确识别和定位Java代码中的四类常见安全弱点。构建过程中的主要挑战在于从海量的开源项目中筛选出具有代表性的真实CVE案例,并确保每个案例的漏洞代码与修复代码能够精确对应。研究人员需要深入分析Git提交历史以确定漏洞引入和修复的确切版本,同时通过手动审查和AST分析来标注修复所涉及的核心类与方法,这一过程既耗时又容易受到主观判断的影响。此外,数据集目前仅涵盖Java语言和有限的CWE类型,其普适性和完整性仍有待进一步扩展。
常用场景
经典使用场景
在软件安全研究领域,CWE-Bench-Java数据集为静态分析工具的评估提供了标准化的基准。该数据集精心收集了120个真实世界的Java漏洞案例,涵盖路径遍历、操作系统命令注入、跨站脚本和代码注入四类常见弱点枚举。研究人员利用这些包含缺陷代码与修复补丁的配对样本,能够系统性地测试自动化漏洞检测工具的准确性与召回率,从而推动静态分析技术的进步。
衍生相关工作
基于该数据集衍生的经典工作主要集中在智能漏洞检测领域。例如,IRIS框架利用这些数据训练大型语言模型,实现了上下文感知的静态分析;多项研究则通过对比不同工具在基准上的表现,系统揭示了现有检测方法的局限性。这些工作不仅深化了对Java漏洞特征的理解,也为构建下一代自适应安全分析系统奠定了理论基础。
数据集最近研究
最新研究方向
在软件安全分析领域,CWE-Bench-Java数据集正推动着基于大语言模型的静态漏洞检测技术前沿。该数据集精准标注了120个真实Java漏洞的缺陷与修复代码,覆盖路径遍历、命令注入等四类常见弱点枚举,为评估自动化安全工具提供了高质量基准。当前研究热点聚焦于利用此类结构化数据训练专用模型,以提升漏洞模式识别与修复建议生成的准确性。这一方向不仅促进了智能代码审计工具的发展,也为理解漏洞演化规律与自动化补丁生成提供了关键数据支撑,对增强软件供应链安全具有深远意义。
以上内容由遇见数据集搜集并总结生成



