five

msc-smart-contract-audition/vulnerability-severity-classification

收藏
Hugging Face2024-05-04 更新2024-05-25 收录
下载链接:
https://hf-mirror.com/datasets/msc-smart-contract-audition/vulnerability-severity-classification
下载链接
链接失效反馈
官方服务:
资源简介:
--- dataset_info: features: - name: function dtype: string - name: severity dtype: string splits: - name: train num_bytes: 1327573 num_examples: 2473 - name: test num_bytes: 237962 num_examples: 437 download_size: 670552 dataset_size: 1565535 configs: - config_name: default data_files: - split: train path: data/train-* - split: test path: data/test-* license: mit task_categories: - text-classification language: - en tags: - finance pretty_name: Severity of Vulnerable Solidity Functions size_categories: - 1K<n<10K --- This dataset combines vulnerable functions (scraped from 5 auditting companies: [Codehawks](https://www.codehawks.com/), [ConsenSys](https://consensys.io/), [Cyfrin](https://www.cyfrin.io/), [Sherlock](https://www.sherlock.xyz/), [Trust Security](https://www.trust-security.xyz/)) and auddited functions with no vulnerabilities (scraped from [Etherscan](https://etherscan.io)) The purpose of the dataset is to enable training of classification models to discriminate between the 4 classes: `none`, `low`, `medium` and `high`. | Field | Description | |-|-| | 1. `function` | Raw solidity code | | 2. `severity` | Severity of vulnerability ('none', `low`, `medium`, `high`) | # Data Analysis <img src="https://huggingface.co/datasets/msc-smart-contract-audition/vulnerability-severity-classification/resolve/main/figures/severity-distribution.png"> <img src="https://huggingface.co/datasets/msc-smart-contract-audition/vulnerability-severity-classification/resolve/main/figures/length-severity-distribution.png"> # Additional Info - The newline characters are escaped (i.e. `\\n`)

数据集信息: 特征: - 字段名:function,数据类型:字符串 - 字段名:severity,数据类型:字符串 数据划分: - 划分名称:训练集(train),字节大小:1327573,样本数量:2473 - 划分名称:测试集(test),字节大小:237962,样本数量:437 下载大小:670552,数据集总大小:1565535 配置项: - 配置名称:default(默认配置),数据文件: - 划分训练集(train):对应data/train-* - 划分测试集(test):对应data/test-* 许可证:MIT协议 任务类别:文本分类 语言:英语 标签:金融 友好名称:易受攻击Solidity函数的严重程度分类 样本规模:1K<n<10K 本数据集整合了从5家审计公司(Codehawks、ConsenSys、Cyfrin、Sherlock、Trust Security,链接附后)爬取得到的易受攻击函数,以及从Etherscan爬取的无漏洞已审计函数。 本数据集旨在支持训练分类模型,以区分`none`、`low`、`medium`、`high`四类标签。 | 字段 | 描述 | |-|-| | 1. `function` | 原始Solidity代码 | | 2. `severity` | 漏洞严重等级,取值为`none`、`low`、`medium`、`high` | # 数据分析 <img src="https://huggingface.co/datasets/msc-smart-contract-audition/vulnerability-severity-classification/resolve/main/figures/severity-distribution.png"> <img src="https://huggingface.co/datasets/msc-smart-contract-audition/vulnerability-severity-classification/resolve/main/figures/length-severity-distribution.png"> # 附加信息 - 换行符已转义(即`\n`)
提供机构:
msc-smart-contract-audition
原始信息汇总

数据集概述

基本信息

  • 数据集名称: Severity of Vulnerable Solidity Functions
  • 语言: 英语 (en)
  • 标签: 金融 (finance)
  • 大小分类: 1K<n<10K

特征

  • function: 字符串类型,代表原始的Solidity代码。
  • severity: 字符串类型,代表漏洞的严重程度,可能的值为none, low, medium, high。

数据集划分

  • 训练集: 2473个样本,占用1327573字节。
  • 测试集: 437个样本,占用237962字节。

数据集大小

  • 下载大小: 670552字节
  • 数据集总大小: 1565535字节

配置

  • 默认配置: 数据文件路径如下:
    • 训练集: data/train-*
    • 测试集: data/test-*

许可证

  • 许可证: MIT

任务类别

  • 任务类别: 文本分类 (text-classification)
搜集汇总
数据集介绍
main_image_url
构建方式
在智能合约安全审计领域,数据集的构建需兼顾真实性与代表性。本数据集通过系统化采集策略,整合了来自Codehawks、ConsenSys、Cyfrin、Sherlock及Trust Security五家专业审计公司公开的漏洞函数,同时从Etherscan平台获取经审计确认无漏洞的安全函数作为对照样本。数据采集过程涵盖原始Solidity代码的抓取与清洗,确保代码片段的完整性与可解析性。最终构建的训练集与测试集共包含2910个样本,依据漏洞严重程度划分为‘无’、‘低’、‘中’、‘高’四类标签,为模型训练提供了结构化的监督信号。
特点
该数据集聚焦于智能合约漏洞严重程度的多分类任务,其核心特征体现在数据来源的权威性与类别的细粒度划分。所有漏洞样本均源自业界知名安全审计机构的真实案例,确保了数据反映实际安全威胁的分布规律。数据字段设计简洁明确,仅包含原始Solidity代码字符串及其对应的严重程度标签,便于直接应用于代码表征学习。标签体系采用四级分类标准,精准区分从无风险到高危漏洞的连续谱系,为评估模型在风险分级场景下的判别能力提供了可靠基准。可视化分析图表进一步揭示了标签分布与代码长度间的潜在关联,增强了数据集的探索价值。
使用方法
该数据集适用于文本分类任务,特别是基于深度学习的智能合约安全分析模型开发。使用者可直接通过HuggingFace数据集库加载,利用预划分的训练集与测试集进行模型训练与评估。在预处理阶段,需注意代码字符串中的换行符已被转义,建议恢复原始格式以保留代码结构信息。典型应用流程包括:提取代码文本特征,构建分类器预测四类严重程度标签,并通过交叉验证评估模型泛化性能。数据集兼容常见的NLP框架,可服务于漏洞自动分级、风险预警系统等实际应用场景的研发与验证。
背景与挑战
背景概述
在区块链技术迅猛发展的浪潮中,智能合约作为去中心化应用的核心组件,其安全性日益成为学术界与工业界关注的焦点。msc-smart-contract-audition/vulnerability-severity-classification数据集应运而生,由多个安全审计机构联合构建,旨在通过收集Solidity智能合约函数代码,对漏洞严重程度进行多级分类。该数据集整合了来自Codehawks、ConsenSys等五家审计公司的漏洞函数数据,并结合Etherscan的无漏洞审计函数,形成了涵盖'无'、'低'、'中'、'高'四个类别的标注体系。其核心研究问题聚焦于自动化漏洞严重性评估,为智能合约安全审计提供了重要的数据基础,推动了区块链安全领域从手动检测向智能化分析的范式转变。
当前挑战
该数据集致力于解决智能合约漏洞严重性自动分类的挑战,其核心在于如何从复杂的Solidity代码中准确识别并量化安全风险。构建过程中面临多重困难:一是数据来源的异构性,不同审计公司的漏洞标注标准存在差异,需要进行复杂的对齐与归一化处理;二是代码表征的复杂性,原始Solidity函数包含丰富的语法和语义信息,如何有效提取特征以区分细微的漏洞等级成为技术难点;三是类别不平衡问题,数据集中不同严重等级的样本分布不均,可能影响分类模型的泛化性能。这些挑战共同构成了智能合约安全分析领域向高精度、自动化方向发展的关键障碍。
常用场景
经典使用场景
在智能合约安全审计领域,该数据集为研究者提供了标准化的漏洞严重性分类基准。通过整合来自多家知名审计公司的漏洞函数及以太坊上的安全函数,数据集构建了涵盖无漏洞、低危、中危和高危四个类别的标注样本。经典使用场景涉及训练机器学习模型,特别是基于Transformer架构的预训练语言模型,对Solidity代码片段进行自动分类,从而辅助审计人员快速识别合约中的潜在风险等级。
实际应用
在实际应用中,该数据集被广泛应用于区块链开发与安全运维环节。开发团队可利用基于该数据集训练的模型,在合约部署前进行自动化漏洞扫描,优先处理高危漏洞以降低资金损失风险。安全公司则将其集成至审计平台,提升大规模合约筛查的效率。此外,教育机构亦借助此类数据开发培训工具,帮助开发者深入理解Solidity编程中的常见安全陷阱。
衍生相关工作
围绕该数据集,已衍生出多项经典研究工作。例如,研究者结合图神经网络与代码语义分析,构建了能够捕获合约控制流特征的分类模型;另有工作探索多任务学习框架,同时预测漏洞类型与严重性等级。这些成果不仅提升了分类精度,还推动了跨语言漏洞检测技术的进展,为智能合约形式化验证工具提供了数据驱动的补充方案。
以上内容由遇见数据集搜集并总结生成
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

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

二维码
科研交流群

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

数据驱动未来

携手共赢发展

商业合作