mwritescode/slither-audited-smart-contracts
收藏Hugging Face2022-07-14 更新2024-03-04 收录
下载链接:
https://hf-mirror.com/datasets/mwritescode/slither-audited-smart-contracts
下载链接
链接失效反馈官方服务:
资源简介:
该数据集包含经过Slither静态分析框架验证的Solidity智能合约的源代码和部署的字节码,并对其漏洞进行了分类。数据集支持的任务包括文本分类、文本生成和图像分类。数据集的创建目的是为了提供一个大规模的开源数据集,用于检测和分类已验证的Solidity智能合约的漏洞。数据集的语言为英语,源代码为Solidity。数据集的结构包括数据实例、数据字段和数据分割。数据集的创建过程包括初始数据收集和标准化,使用了Smart Contract Sanctuary和Etherscan等资源,并通过Slither静态分析框架进行分析。
This dataset contains the source code and deployed bytecode of Solidity smart contracts verified by the Slither static analysis framework, along with their vulnerability classifications. The tasks supported by this dataset include text classification, text generation, and image classification. The purpose of creating this dataset is to provide a large-scale open-source dataset for detecting and classifying vulnerabilities in verified Solidity smart contracts. This dataset uses English as its descriptive language and Solidity as the source code language. The dataset structure includes data instances, data fields, and data splits. The dataset creation process includes initial data collection and standardization, utilizing resources such as Smart Contract Sanctuary and Etherscan, and conducting analysis via the Slither static analysis framework.
提供机构:
mwritescode
原始信息汇总
数据集概述
数据集名称
- 名称: Slither Audited Smart Contracts
- 别名: Slither Audited Smart Contracts Dataset
数据集基本信息
- 语言: 英语
- 许可证: MIT
- 多语言性: 单语种
- 数据集大小: 100K<n<1M
- 源数据: 原始数据
- 任务类别: 文本分类, 文本生成
- 任务ID: 多标签分类, 多输入文本分类, 语言建模
数据集描述
- 概述: 该数据集包含经过Slither静态分析框架验证的Solidity智能合约的源代码和部署字节码,以及根据Slither分类的漏洞。
- 支持任务:
- 文本分类: 用于训练模型对智能合约字节码和源代码进行二元和多标签文本分类。
- 文本生成: 用于训练Solidity编程语言的语言模型。
- 图像分类: 通过预处理字节码数据获取RGB图像,用于训练卷积神经网络进行代码漏洞检测和分类。
- 语言: 语言注释为英语,所有源代码为Solidity。
数据集结构
- 数据实例: 每个数据实例包含地址、源代码和字节码。标签有两种配置,一种是Slither工具输出的清理后的文本版本,另一种是多标签版本,由代表特定漏洞类的整数列表组成。标签4表示合约安全。
- 数据字段:
- 地址: 字符串,表示在以太坊主网上部署的智能合约地址。
- 源代码: Solidity智能合约代码库的扁平化版本。
- 字节码: 字符串,表示智能合约的字节码,通过调用
web3.eth.getCode()获得。 - slither: Slither的JSON输出清理版本或类标签列表。
- 数据分割: 数据集有6种配置,其中不包含
all-的配置提供训练、测试和验证分割,测试和验证分割各约占总数据的15%。
数据集创建
- 采集理由: 为了提供一个用于检测和分类已验证Solidity智能合约漏洞的大规模免费数据集。
- 源数据: 数据集构建自Smart Contract Sanctuary提供的已验证智能合约列表,源代码和字节码通过Etherscan和Web3.py库下载,使用Slither进行分析。
附加信息
-
数据集创建者: Martina Rossini
-
许可证信息: 除智能合约的Solidity源代码外,所有文件均遵循MIT许可证。
-
引用信息: 如在研究中使用此数据集,可按以下方式引用:
@misc{rossini2022slitherauditedcontracts, title = {Slither Audited Smart Contracts Dataset}, author={Martina Rossini}, year={2022} }
搜集汇总
数据集介绍

构建方式
该数据集的构建始于对Smart Contract Sanctuary中所提供的验证智能合约列表的采集,进而通过Etherscan及Web3.py库获取合约的源代码和字节码。随后,使用Slither静态分析框架对每个智能合约进行分析,发现38种不同的漏洞类别,并将它们映射到9个标签。这些标签的映射遵循了Decentralized Application Security Project和Smart Contract Weakness Classification Registry的指南,并参考了SmartBugs Wild数据集的标签映射。
特点
Slither Audited Smart Contracts数据集的特色在于,它包含了在Etherscan.io上经过验证的Solidity智能合约的源代码和部署的字节码,以及根据Slither静态分析框架分类的漏洞。该数据集支持多种任务,如文本分类、文本生成,甚至可以通过将字节码数据预处理为RGB图像来训练卷积神经网络进行代码漏洞检测和分类。数据集的标签为英文,源代码为Solidity语言。
使用方法
用户可以通过下载数据集的train、test和validation splits来使用该数据集。每个数据实例包括智能合约部署在以太坊主网的地址、智能合约的源代码和字节码,以及Slither工具输出的清理版本或一个表示特定漏洞类别的标签列表。数据集的多种配置可供选择,不含'all-'的配置提供了训练和验证分割,分别约为总数的15%。
背景与挑战
背景概述
在区块链技术迅速发展的当下,智能合约的安全性问题日益凸显。智能合约一旦部署,其代码的漏洞可能导致重大的经济损失。为此,研究者Martina Rossini在2022年构建了Slither Audited Smart Contracts数据集,旨在为智能合约的安全性检测与分类提供大规模的标注数据。该数据集搜集了在Etherscan.io上验证的Solidity智能合约的源代码和部署的字节码,并利用Slither静态分析框架对这些合约进行了漏洞分类标注。该数据集的构建,为智能合约安全性研究提供了宝贵的资源,推动了相关领域的研究进展。
当前挑战
该数据集在构建过程中面临了多方面的挑战。首先,智能合约的源代码和字节码的获取与处理存在技术难度。其次,漏洞分类的标注需要依赖于高效的静态分析工具,并确保标注的质量和一致性。此外,智能合约的安全性领域不断发展,新的漏洞类型和攻击手段不断出现,这要求数据集需要持续更新以保持其时效性和实用性。在研究领域问题上,如何准确有效地从智能合约代码中识别出潜在的漏洞,是该数据集需要解决的核心挑战。
常用场景
经典使用场景
在区块链安全领域,智能合约的安全性审核至关重要。Slither Audited Smart Contracts数据集为此提供了丰富的实例,其经典使用场景在于训练模型对智能合约进行静态分析,以识别和分类潜在的安全漏洞。通过该数据集,研究人员能够构建和优化用于智能合约安全审核的自动化工具。
衍生相关工作
基于该数据集,衍生出了一系列相关工作,包括但不限于智能合约安全漏洞的自动化检测工具、智能合约安全审核的最佳实践指导,以及针对特定类型漏洞的深入分析和解决方案。这些工作进一步扩展了数据集的应用范围,为区块链安全领域的研究和实践提供了重要支撑。
数据集最近研究
最新研究方向
在区块链安全研究领域,‘mwritescode/slither-audited-smart-contracts’数据集的构建为智能合约安全性的检测与分类提供了重要的资源。该数据集通过整合经Etherscan.io验证的Solidity智能合约源代码及其字节码,并利用Slither静态分析框架对合约进行安全性分析,为研究者提供了一个大规模的智能合约漏洞标签数据集。目前,该数据集正被广泛应用于文本分类、语言模型训练以及图像分类等任务,以实现对智能合约安全性的自动化评估。这一研究方向不仅有助于提升智能合约的安全性,也为区块链技术在全球范围内的应用提供了坚实的数据支持。
以上内容由遇见数据集搜集并总结生成



