five

RIVEN Dataset

收藏
github2025-11-06 更新2025-11-11 收录
下载链接:
https://github.com/riven-entropylabs/RIVEN
下载链接
链接失效反馈
官方服务:
资源简介:
RIVEN数据集是一个用于支持基于自然语言的软件漏洞利用生成研究的大规模数据集。它包含从公开数据库(如exploitdb、shellstorm)、公共仓库和编程指南收集的漏洞利用代码及其英文描述。数据集分为两部分:编码器数据集(Python代码,用于漏洞利用的编码)和解码器数据集(汇编代码,包括shellcode和解码器)。数据集已分割为训练集、开发集和测试集,并针对IA-32架构的Linux系统。

The RIVEN dataset is a large-scale dataset supporting research on natural language-based software exploit generation. It contains exploit codes and their English descriptions collected from public databases (e.g., exploitdb, shellstorm), public repositories, and programming guides. The dataset is divided into two parts: the encoder dataset (Python code for exploit encoding) and the decoder dataset (assembly code, including shellcode and decoders). It has been split into training, development, and test sets, and is tailored for Linux systems on the IA-32 architecture.
创建时间:
2025-11-06
原始信息汇总

RIVEN数据集概述

数据集基本信息

  • 数据集名称:RIVEN
  • 研究背景:支持"RIVEN: Exploiting Software via Natural Language"论文研究
  • 研究领域:基于自然语言的软件漏洞利用生成
  • 会议发表:第32届国际软件可靠性工程研讨会(ISSRE 2021)

数据集内容

数据类型

  • 编码器数据集:包含Python代码,用于漏洞利用中的shellcode编码
  • 解码器数据集:包含汇编代码,包括shellcode和解码器,扩展了Shellcode_IA32数据集

数据来源

  • 公开漏洞数据库(exploitdb、shellstorm)
  • 公共代码仓库(GitHub等)
  • 编程指南文档
  • 目标平台:Linux系统、IA-32架构(32位x86)

数据格式

  • 每个样本包含代码片段和对应的英文描述
  • 编码器数据:encoder-*.in为自然语言描述,encoder-*.out为对应代码片段
  • 解码器数据:类似格式
  • 已分割为训练集、开发集和测试集

数据集规模

测试集详情

  • Python程序测试集:375个唯一的Python代码片段与自然语言描述对
  • 汇编程序测试集:305个唯一的代码片段与自然语言描述对,其中95个为多行代码片段

存储位置

数据集存储在RIVEN/datasets文件夹中

应用价值

支持安全导向应用的机器翻译技术研究,为数据驱动方法提供有价值的数据资源

搜集汇总
数据集介绍
main_image_url
构建方式
在软件安全研究领域,构建高质量数据集对推动自然语言驱动的漏洞利用生成至关重要。RIVEN数据集的构建过程系统性地整合了来自公开漏洞库(如exploitdb和shellstorm)、代码仓库及编程指南的多样化资源,特别聚焦于Linux系统下基于IA-32架构的漏洞利用代码。通过专业标注流程,将汇编语言编写的解码器与Python编写的编码器分别归类,形成包含自然语言描述与对应代码片段的平行语料,最终按训练集、验证集和测试集进行结构化划分。
使用方法
基于该数据集的应用需遵循端到端的实验流程。研究者可通过解析encoder-*.in与encoder-*.out等标准化文件格式,直接获取自然语言意图与对应代码的映射关系。数据集已预分割为训练集、开发集和测试集,支持直接加载至CodeBERT或Seq2Seq等神经机器翻译模型进行训练。实验复现需参照INSTALL.md文件的预处理、模型训练及后处理步骤,确保生成代码的语法正确性与语义一致性。
背景与挑战
背景概述
RIVEN数据集诞生于2021年,由研究团队在软件可靠性工程国际研讨会(ISSRE)上首次提出,旨在通过自然语言处理技术自动生成安全漏洞利用代码。该数据集聚焦于网络安全领域,核心研究问题在于突破传统漏洞挖掘的局限性,将自然语言描述转化为可执行的汇编与Python代码。其创新性体现在融合神经机器翻译方法与安全攻防场景,为智能软件安全分析提供了关键数据支撑,显著推动了自动化漏洞利用生成技术的发展。
当前挑战
在领域问题层面,RIVEN需应对自然语言与程序语义的复杂映射关系,例如用户描述中的模糊指令如何精准对应底层系统调用。构建过程中,团队面临多源异构数据整合难题:需从公开漏洞库筛选符合IA-32架构的Linux系统漏洞,同时确保汇编代码与Python编码器的语义一致性。此外,数据标注需平衡安全术语的专业性与自然语言的普适性,这对构建高质量平行语料提出了严峻考验。
常用场景
经典使用场景
在软件安全研究领域,RIVEN数据集为基于神经机器翻译的漏洞利用生成提供了关键支持。该数据集通过整合来自公开漏洞库和代码仓库的汇编与Python程序片段及其自然语言描述,构建了高质量的平行语料。研究人员可借助该数据集训练模型,实现从自然语言意图到可执行漏洞代码的自动转换,显著提升了安全测试的自动化水平。
解决学术问题
该数据集有效解决了安全领域程序生成任务中数据稀缺的核心难题。通过提供结构化的代码-描述对,它支持研究者探索自然语言与低级语言间的语义映射机制,推动了智能漏洞挖掘技术的发展。其多语言代码覆盖特性为研究跨语言程序语义理解提供了实验基础,对软件可靠性工程领域具有重要理论价值。
实际应用
在实际应用层面,该数据集被广泛应用于自动化渗透测试工具的研发。安全工程师可通过输入自然语言指令快速生成定制化漏洞利用代码,大幅提升安全评估效率。在网络安全教育领域,该数据集还能作为教学案例,帮助学习者理解漏洞利用代码的构造逻辑与防御策略。
数据集最近研究
最新研究方向
在软件安全与自然语言处理交叉领域,RIVEN数据集推动了基于神经机器翻译的漏洞利用代码自动生成研究。前沿工作聚焦于利用CodeBERT与Seq2Seq模型,将自然语言描述直接转换为Python编码器或IA-32架构汇编解码器,显著提升了漏洞利用开发的自动化程度。这一方向与智能软件工程、自动化渗透测试等热点紧密结合,通过构建大规模漏洞代码-文本对数据集,为安全关键系统的防御策略演进提供了数据驱动支撑,同时促进了可解释AI在网络安全领域的深度应用。
以上内容由遇见数据集搜集并总结生成
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

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

二维码
科研交流群

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

数据驱动未来

携手共赢发展

商业合作