euisuh15/sven
收藏Hugging Face2024-01-07 更新2024-03-04 收录
下载链接:
https://hf-mirror.com/datasets/euisuh15/sven
下载链接
链接失效反馈官方服务:
资源简介:
---
configs:
- config_name: default
data_files:
- split: train
path: data/train-*
- split: test
path: data/test-*
dataset_info:
features:
- name: func_name
dtype: string
- name: code
dtype: string
- name: vul_type
dtype: string
- name: line_changes
dtype: string
- name: char_changes
dtype: string
- name: is_vulnerable
dtype: bool
- name: vul_type_name
dtype: string
- name: vul_type_description
dtype: string
splits:
- name: train
num_bytes: 1960462
num_examples: 688
- name: test
num_bytes: 183840
num_examples: 76
download_size: 383586
dataset_size: 2144302
---
# Dataset Card for "sven"
[More Information needed](https://github.com/huggingface/datasets/blob/main/CONTRIBUTING.md#how-to-contribute-to-the-dataset-cards)
---
配置项:
- 配置名称:默认
数据文件:
- 拆分集:训练集(train)
路径:data/train-*
- 拆分集:测试集(test)
路径:data/test-*
数据集信息:
特征字段:
- 字段名:函数名称(func_name)
数据类型:字符串(string)
- 字段名:代码(code)
数据类型:字符串(string)
- 字段名:漏洞类型(vul_type)
数据类型:字符串(string)
- 字段名:行变更数(line_changes)
数据类型:字符串(string)
- 字段名:字符变更数(char_changes)
数据类型:字符串(string)
- 字段名:是否存在漏洞(is_vulnerable)
数据类型:布尔值(bool)
- 字段名:漏洞类型名称(vul_type_name)
数据类型:字符串(string)
- 字段名:漏洞类型描述(vul_type_description)
数据类型:字符串(string)
拆分集信息:
- 拆分集名称:训练集
字节数:1960462
样本数量:688
- 拆分集名称:测试集
字节数:183840
样本数量:76
下载大小:383586
数据集总大小:2144302
---
# 数据集卡片:“sven”
[需补充更多信息](https://github.com/huggingface/datasets/blob/main/CONTRIBUTING.md#how-to-contribute-to-the-dataset-cards)
提供机构:
euisuh15
原始信息汇总
数据集概述
配置信息
- 默认配置 (
default)- 数据文件路径:
- 训练集 (
train):data/train-* - 测试集 (
test):data/test-*
- 训练集 (
- 数据文件路径:
数据特征
func_name: 字符串类型code: 字符串类型vul_type: 字符串类型line_changes: 字符串类型char_changes: 字符串类型is_vulnerable: 布尔类型vul_type_name: 字符串类型vul_type_description: 字符串类型
数据分割
- 训练集 (
train)- 字节数: 1960462
- 样本数: 688
- 测试集 (
test)- 字节数: 183840
- 样本数: 76
数据集大小
- 下载大小: 383586 字节
- 数据集大小: 2144302 字节
搜集汇总
数据集介绍

构建方式
在软件安全领域,漏洞检测数据集对于提升代码分析模型的性能至关重要。SVEN数据集通过精心筛选开源代码库中的函数级样本构建而成,其构建过程涵盖了代码片段的提取、漏洞标签的标注以及相关元数据的整合。数据来源主要基于真实世界的软件项目,确保了样本的多样性和代表性。构建过程中,每个样本均包含函数名称、代码内容、漏洞类型及修改信息等关键字段,并通过严格的验证流程保证标注质量。
特点
该数据集在代码漏洞检测领域展现出显著特点,其核心特征在于提供了多维度的漏洞信息。样本不仅标注了漏洞的存在性,还详细描述了漏洞类型、名称及其具体说明,同时记录了代码行级和字符级的修改变化。这种结构化的设计使得数据集能够支持细粒度的漏洞分析任务,为模型训练提供了丰富的上下文信息。数据集的规模适中,包含训练集和测试集,便于进行有效的模型评估与比较。
使用方法
针对代码安全分析的研究与应用,SVEN数据集的使用方法较为直观。用户可通过HuggingFace平台直接加载数据集,利用其标准化的数据分割进行模型训练与测试。典型应用场景包括训练漏洞分类模型或代码修复模型,通过结合代码内容与漏洞标签进行监督学习。在使用过程中,建议关注数据集的字段结构,例如利用`code`和`is_vulnerable`字段构建二分类任务,或基于`vul_type`字段进行多类别漏洞识别。数据集的轻量级设计也便于集成到现有的机器学习流程中。
背景与挑战
背景概述
在软件安全领域,漏洞检测一直是保障代码质量与系统安全的核心议题。euisuh15/sven数据集由研究人员euisuh15于近年构建,专注于智能合约漏洞的识别与分类。该数据集收录了Solidity智能合约的函数级代码片段,并标注了漏洞类型、具体行变更及字符变更等详细信息,旨在为机器学习模型提供高质量的训练与评估资源。其出现推动了智能合约自动化安全分析的研究,为区块链应用的安全审计提供了重要的数据支撑,促进了该领域从传统静态分析向数据驱动方法的演进。
当前挑战
该数据集致力于解决智能合约漏洞检测这一复杂问题,其挑战在于漏洞模式的高度多样性与隐蔽性,例如重入攻击、整数溢出等类型在代码中的表现形式多变,对模型的泛化能力提出严峻考验。构建过程中,数据收集与标注面临显著困难:智能合约代码的获取需依赖公开仓库,样本覆盖可能不足;漏洞的准确标注要求深厚的领域专业知识,且需区分细微的代码变更影响,易引入主观偏差。此外,数据规模相对有限,可能制约深度学习模型的性能提升。
常用场景
经典使用场景
在软件安全与漏洞检测领域,SVEN数据集为智能代码分析提供了关键支持。该数据集聚焦于函数级代码片段,标注了漏洞类型、行级与字符级变更信息,以及脆弱性标识,使其成为训练机器学习模型识别代码中潜在安全缺陷的理想资源。研究人员常利用SVEN构建深度学习模型,如基于Transformer的架构,以自动化检测C/C++等编程语言中的缓冲区溢出、整数溢出等常见漏洞,从而提升静态代码分析的准确性与效率。
解决学术问题
SVEN数据集有效应对了软件工程中自动化漏洞发现的学术挑战。传统漏洞检测方法依赖规则库或人工审计,难以适应快速演进的代码库与新型攻击向量。该数据集通过结构化标注的漏洞实例,支持数据驱动的研究范式,解决了模型训练中样本稀缺、标注粒度不足的问题。其意义在于推动了智能漏洞检测从理论探索向实用化迈进,为构建可解释、高泛化能力的检测系统奠定了数据基础,显著促进了软件安全与人工智能的交叉学科发展。
衍生相关工作
围绕SVEN数据集,学术界与工业界衍生了一系列经典研究工作。例如,基于其构建的漏洞预测模型被扩展至跨项目漏洞迁移学习,解决了数据分布差异带来的泛化难题。另有研究利用其细粒度变更信息,探索代码补丁生成与自动化修复技术,将检测与修复环节无缝衔接。这些工作不仅深化了智能代码分析的理论框架,还催生了开源安全工具链的迭代,形成了以数据为中心、模型为驱动的软件安全研究新生态。
以上内容由遇见数据集搜集并总结生成



