TY - JOUR
T1 - Detection of Vulnerabilities of Blockchain Smart Contracts
AU - He, Daojing
AU - Wu, Rui
AU - Li, Xinji
AU - Chan, Sammy
AU - Guizani, Mohsen
PY - 2023/7/15
Y1 - 2023/7/15
N2 - With the wide application of IoT and blockchain, research on smart contracts has received increased attention, and security threat detection for smart contracts is one of the main focuses. This paper first introduces the common security vulnerabilities in blockchain smart contracts, and then classifies the vulnerabilities detection tools for smart contracts into six categories according to the different detection methods: formal verification method, symbol execution method, fuzzy testing method, intermediate representation method, stain analysis method and deep learning method. We test 27 detection tools, and analyze them from several perspectives, including the capability of detecting a smart contract version. Finally, it is concluded that most of the current vulnerability detection tools can only detect vulnerabilities in a single and old version of smart contracts. Although the deep learning method detects fewer types of smart contract vulnerabilities, it has higher detection accuracy and efficiency. Therefore, the combination of static detection methods such as deep learning method and dynamic detection methods including the fuzzy testing method to detect more types of vulnerabilities in multi-version smart contracts to achieve higher accuracy is a direction worthy of research in the future. © 2023 IEEE.
AB - With the wide application of IoT and blockchain, research on smart contracts has received increased attention, and security threat detection for smart contracts is one of the main focuses. This paper first introduces the common security vulnerabilities in blockchain smart contracts, and then classifies the vulnerabilities detection tools for smart contracts into six categories according to the different detection methods: formal verification method, symbol execution method, fuzzy testing method, intermediate representation method, stain analysis method and deep learning method. We test 27 detection tools, and analyze them from several perspectives, including the capability of detecting a smart contract version. Finally, it is concluded that most of the current vulnerability detection tools can only detect vulnerabilities in a single and old version of smart contracts. Although the deep learning method detects fewer types of smart contract vulnerabilities, it has higher detection accuracy and efficiency. Therefore, the combination of static detection methods such as deep learning method and dynamic detection methods including the fuzzy testing method to detect more types of vulnerabilities in multi-version smart contracts to achieve higher accuracy is a direction worthy of research in the future. © 2023 IEEE.
KW - Bitcoin
KW - Blockchain
KW - Blockchains
KW - Deep learning
KW - Internet of Things
KW - Security
KW - smart contract
KW - Smart contracts
KW - Testing
KW - vulnerability detection
UR - http://www.scopus.com/inward/record.url?scp=85148478722&partnerID=8YFLogxK
UR - https://www.scopus.com/record/pubmetrics.uri?eid=2-s2.0-85148478722&origin=recordpage
U2 - 10.1109/JIOT.2023.3241544
DO - 10.1109/JIOT.2023.3241544
M3 - RGC 21 - Publication in refereed journal
SN - 2327-4662
VL - 10
SP - 12178
EP - 12185
JO - IEEE Internet of Things Journal
JF - IEEE Internet of Things Journal
IS - 14
ER -