five

FaultLine数据集

收藏
arXiv2025-07-21 更新2025-07-23 收录
下载链接:
https://github.com/faultline-pov/icse-26
下载链接
链接失效反馈
官方服务:
资源简介:
FaultLine数据集是一个多语言数据集,包含100个已知的Java、C和C++项目中的安全漏洞。该数据集旨在挑战LLMs对程序极其细微特性的推理能力,代表了基于LLM的代码推理的前沿。数据集的创建过程包括收集已知漏洞,并设计一系列精心设计的推理步骤,以生成PoV测试用例。数据集的应用领域是软件安全领域,旨在解决软件安全漏洞的验证和修复问题。

The FaultLine Dataset is a multilingual dataset containing 100 known security vulnerabilities across Java, C, and C++ projects. It is designed to challenge the reasoning capabilities of large language models (LLMs) regarding the extremely subtle characteristics of programs, representing the state-of-the-art in LLM-based code reasoning. The dataset creation process involves collecting known vulnerabilities and devising a set of meticulously crafted reasoning steps to generate PoV test cases. Its application domain lies in software security, with the core goal of addressing the verification and remediation of software security vulnerabilities.
提供机构:
哥伦比亚大学
创建时间:
2025-07-21
原始信息汇总

数据集概述

基本信息

  • 数据集名称:icse-26
  • 托管平台:GitHub
  • 托管地址:https://github.com/faultline-pov/icse-26

数据集内容

(根据提供的README文件内容,该数据集未提供具体描述或相关信息)

搜集汇总
数据集介绍
main_image_url
构建方式
FaultLine数据集构建过程采用了多语言环境下的已知漏洞收集策略,通过系统化筛选Java、C和C++项目中100个具有代表性的安全漏洞案例。研究团队严格遵循软件安全领域的标准规范,从国家漏洞数据库(NVD)和开源项目提交历史中提取漏洞报告,确保每个案例均包含完整的漏洞描述、受影响版本信息及修复提交记录。数据集构建过程中创新性地引入了LLM智能体工作流,通过静态分析与动态验证相结合的方式,对每个漏洞的触发路径进行双重验证,最终形成包含数据流轨迹、控制流条件和漏洞验证测试的标准化数据结构。
使用方法
使用该数据集时,研究者可通过分层解析的方法逐步深入分析漏洞特征。首先根据CWE分类筛选目标漏洞类型,随后通过数据集提供的代码仓库链接获取特定版本的源代码。数据集中标注的数据流路径可用于指导动态分析工具进行定向模糊测试,而控制流条件集合则为生成有效攻击载荷提供关键约束。对于机器学习研究,可将PoV测试案例作为正样本,结合修复后的通过测试作为负样本,构建漏洞检测模型的训练数据。数据集配套的Docker环境支持一键复现漏洞场景,研究者可通过修改测试输入参数来验证不同攻击向量的有效性。
背景与挑战
背景概述
FaultLine数据集由哥伦比亚大学和微软的研究团队于2025年创建,旨在解决软件安全漏洞验证中的关键问题——自动化生成漏洞验证测试(PoV)。该数据集包含100个多语言(Java、C和C++)已知漏洞案例,覆盖了路径遍历、命令注入、跨站脚本和代码注入等四种常见漏洞类型。研究团队提出的FaultLine框架采用LLM智能体工作流,通过数据流追踪、分支条件推理和反馈驱动的测试生成三个核心步骤,显著提升了PoV测试生成的准确率。该数据集不仅为评估LLM在漏洞验证方面的能力提供了基准,也推动了自动化软件安全测试领域的发展。
当前挑战
FaultLine数据集面临的主要挑战体现在两个方面:领域问题方面,PoV测试生成需要精确追踪从外部输入源(source)到漏洞触发点(sink)的复杂数据流路径,并满足所有中间分支条件的约束,这对LLM的程序语义理解能力提出了极高要求;构建过程方面,数据集需要处理多语言项目的异构性,确保漏洞案例的可复现性,同时平衡测试用例的覆盖范围与构建难度。具体挑战包括:1)跨文件数据流分析的准确性;2)多语言环境下分支条件的系统性推理;3)生成的测试用例需要同时满足在漏洞存在时失败、修复后通过的双重验证标准。
常用场景
经典使用场景
FaultLine数据集在软件安全领域被广泛应用于自动化漏洞验证测试的生成。该数据集通过整合多语言(Java、C、C++)的100个已知漏洞案例,为研究者提供了评估LLM代理在漏洞验证测试生成任务上的基准平台。其典型使用场景包括:研究人员利用该数据集验证新型代理工作流(如FaultLine提出的分层推理框架)在跨语言环境下的有效性,通过对比生成测试用例的准确率和漏洞函数覆盖率,量化分析不同方法在控制流与数据流推理方面的性能差异。
解决学术问题
该数据集有效解决了软件安全研究中三个关键问题:一是传统漏洞报告缺乏可验证测试用例的学术空白,通过结构化标注每个漏洞的源代码路径、分支条件和修复提交,建立了漏洞特征与测试生成要素的映射关系;二是突破了静态分析工具语言依赖性的局限,其跨语言特性支持研究者探索通用型漏洞验证方法;三是为LLM代理的复杂程序推理能力评估提供了量化标准,通过16个成功生成的PoV测试案例,证实了分层推理机制在理解深层控制流方面的优越性。
实际应用
在实际工程应用中,FaultLine数据集支撑了企业安全开发生命周期的关键环节。微软等企业利用该数据集训练的模型,能够自动为漏洞报告生成可执行的验证测试,显著缩短了补丁验证周期。在持续集成场景中,基于该数据集构建的检测系统可识别CWE-22路径穿越等漏洞的回归风险,其生成的测试用例作为质量门禁,确保了修复的持久性。此外,安全团队通过分析模型在PrimeVul子集上的失败案例,可精准定位现有工具在构建系统理解方面的薄弱环节。
数据集最近研究
最新研究方向
在软件安全领域,FaultLine数据集代表了利用大型语言模型(LLM)代理自动生成漏洞证明(PoV)测试的最新研究方向。该数据集聚焦于多语言环境下的已知漏洞,涵盖Java、C和C++项目,为研究社区提供了一个具有挑战性的基准测试平台。前沿研究主要探索如何通过层次化推理步骤增强LLM代理在PoV测试生成中的性能,特别是在数据流和控制流分析方面的应用。这一方向与当前软件工程中自动化漏洞检测和修复的热点问题密切相关,其研究成果不仅能够提升漏洞修复的验证效率,还能帮助开发者更深入地理解漏洞利用机制,从而在根本上提高软件的安全性。FaultLine数据集的发布为跨编程语言的漏洞测试生成研究提供了重要资源,推动了LLM在软件安全领域的创新应用。
相关研究论文
  • 1
    FaultLine: Automated Proof-of-Vulnerability Generation Using LLM Agents哥伦比亚大学 · 2025年
以上内容由遇见数据集搜集并总结生成
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

面向社区/商业的数据集话题

二维码
科研交流群

面向高校/科研机构的开源数据集话题

数据驱动未来

携手共赢发展

商业合作