VeriSmart is a safety analyzer for Ethereum smart contracts written in Solidity. This repository contains dataset that we used for experiments in our paper.
This repository has been developed and maintained by Software Analysis Laboratory at Korea University.
-
benchmarks/cve
: This folder contains 487 Solidity smart contracts reported in CVE. The 60 contracts used in our S&P '20 paper are specified inlabels/cve_labels.csv
(the columnSP20
). The deduplicated 443 contracts in our Security '21 paper are specified inmetadata/cve-meta.csv
(the columnactual_order
). The sampled 300 contracts in Table 2 of our Security '21 paper are specified inlabels/cve_labels.csv
(the columnSEC21
). -
benchmarks/zeus
: This folder contains 25 Solidity smart contracts from public dataset provided by the authors of Zeus. -
benchmarks/leaking_suicidal
: This folder contains 104 Solidity smart contracts with Ether-leaking and Suicidal vulnerabilities. The contracts whose names start with0x
and end with_N.sol
(whereN
is one of 1,2,3) are the ones constructed by us (see our Security '21 paper for more details). The others come from SmartBugs repository. -
metadata
: This folder contains metadata for contracts such as names of main contracts. -
labels
: This folder contains ground truths for CVE-reported vulnerabilities, and Ether-leaking and Suicidal vulnerabilities. -
assets
: The directorysplit
in this folder contains fold information in our Security '21 paper.
-
VeriSmart: A Highly Precise Safety Verifier for Ethereum Smart Contracts
Sunbeom So, Myungho Lee, Jisu Park, Heejo Lee, and Hakjoo Oh
S&P 2020: 41st IEEE Symposium on Security and Privacy
[pdf] -
SmarTest: Effectively Hunting Vulnerable Transaction Sequences in Smart Contracts through Language Model-Guided Symbolic Execution
Sunbeom So, Seongjoon Hong, and Hakjoo Oh
Security 2021: 30th USENIX Security Symposium
[pdf]
If you have any questions, please submit issues in this repository, or send an email to [email protected].