A survey on smart contract vulnerabilities: Data sources, detection and repair

被引:40
作者
Chu, Hanting [1 ]
Zhang, Pengcheng [1 ]
Dong, Hai [2 ]
Xiao, Yan [3 ]
Ji, Shunhui [1 ]
Li, Wenrui [4 ]
机构
[1] Hohai Univ, 8 Focheng West Rd, Nanjing, Peoples R China
[2] RMIT Univ, Sch Comp Technol, Melbourne, Australia
[3] NUS Univ, Sch Comp, Singapore, Singapore
[4] Nanjing XiaoZhuang Univ, Nanjing, Peoples R China
基金
中国国家自然科学基金;
关键词
Blockchains; Smart contracts; Vulnerability detection; Vulnerability repair; Information security; TOOLS;
D O I
10.1016/j.infsof.2023.107221
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Smart contracts contain many built-in security features, such as non-immutability once being deployed and non-involvement of third parties for contract execution. These features reduce security risks and enhance users' trust towards smart contracts. However, smart contract security issues still persist, resulting in huge financial losses. Contract publishers cannot fully cover contract vulnerabilities through contract version updating. These security issues affect further development of blockchain technologies. So far, there are many related studies focusing on smart contract security issues and tend to discuss from a particular perspective (e.g., development cycle, vulnerability attack methods, security detection tools, etc.). However, smart contract security is a complicated issue that needs to be explored from a multi-dimensional perspective. In this paper, we explore smart contract security from the perspectives of vulnerability data sources, vulnerability detection, and vulnerability defense. We first analyze the existing security issues and challenges of smart contracts, investigate the existing vulnerability classification frameworks and common security vulnerabilities, followed by reviewing the existing contract vulnerability injection, detection, and repair methods. We then analyze the performance of existing security methods. Next, we summarize the current status of smart contract security-related research. Finally, we summarize the state of the art and future trends of smart contract security-related research. This paper aims to provide systematic knowledge and references to this research field.
引用
收藏
页数:17
相关论文
共 90 条
[11]   Zerocash: Decentralized Anonymous Payments from Bitcoin [J].
Ben-Sasson, Eli ;
Chiesa, Alessandro ;
Garmant, Christina ;
Green, Matthew ;
Miers, Ian ;
Tromer, Eran ;
Virza, Madars .
2014 IEEE SYMPOSIUM ON SECURITY AND PRIVACY (SP 2014), 2014, :459-474
[12]   Combine sliced joint graph with graph neural networks for smart contract vulnerability detection? [J].
Cai, Jie ;
Li, Bin ;
Zhang, Jiale ;
Sun, Xiaobing ;
Chen, Bing .
JOURNAL OF SYSTEMS AND SOFTWARE, 2023, 195
[13]   A Survey on Ethereum Systems Security: Vulnerabilities, Attacks, and Defenses [J].
Chen, Huashan ;
Pendleton, Marcus ;
Njilla, Laurent ;
Xu, Shouhuai .
ACM COMPUTING SURVEYS, 2020, 53 (03)
[14]  
Chen T, 2017, 2017 IEEE 24TH INTERNATIONAL CONFERENCE ON SOFTWARE ANALYSIS, EVOLUTION, AND REENGINEERING (SANER), P442, DOI 10.1109/SANER.2017.7884650
[15]   Datestamping the Bitcoin and Ethereum bubbles [J].
Corbet, Shaen ;
Lucey, Brian ;
Yarovaya, Larisa .
FINANCE RESEARCH LETTERS, 2018, 26 :81-88
[16]  
DAML, US
[17]   Step by Step Towards Creating a Safe Smart Contract: Lessons and Insights from a Cryptocurrency Lab [J].
Delmolino, Kevin ;
Arnett, Mitchell ;
Kosba, Ahmed ;
Miller, Andrew ;
Shi, Elaine .
FINANCIAL CRYPTOGRAPHY AND DATA SECURITY, FC 2016, 2016, 9604 :79-94
[18]   A Survey of Tools for Analyzing Ethereum Smart Contracts [J].
di Angelo, Monika ;
Salzer, Gernot .
2019 IEEE INTERNATIONAL CONFERENCE ON DECENTRALIZED APPLICATIONS AND INFRASTRUCTURES (DAPPCON), 2019, :69-78
[19]   Empirical Review of Automated Analysis Tools on 47,587 Ethereum Smart Contracts [J].
Durieux, Thomas ;
Ferreira, Joao F. ;
Abreu, Rui ;
Cruz, Pedro .
2020 ACM/IEEE 42ND INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE 2020), 2020, :530-541
[20]  
Echidna, ECH FAST SMART CONTR