SoliAudit: Smart Contract Vulnerability Assessment Based on Machine Learning and Fuzz Testing

Author(s):  
Jian-Wei Liao ◽  
Tsung-Ta Tsai ◽  
Chia-Kang He ◽  
Chin-Wei Tien
Author(s):  
Nurul Aida Noor Aidee ◽  
Md Gapar Md Johar ◽  
Mohammed Hazim Alkawaz ◽  
Asif Iqbal Hajamydeen ◽  
Mohammed Sabbih Hamoud Al-Tamimi

2021 ◽  
Vol 2021 ◽  
pp. 1-12
Author(s):  
Yingjie Xu ◽  
Gengran Hu ◽  
Lin You ◽  
Chengtang Cao

In recent years, a lot of vulnerabilities of smart contracts have been found. Hackers used these vulnerabilities to attack the corresponding contracts developed in the blockchain system such as Ethereum, and it has caused lots of economic losses. Therefore, it is very important to find out the potential problems of the smart contracts and develop more secure smart contracts. As blockchain security events have raised more important issues, more and more smart contract security analysis methods have been developed. Most of these methods are based on traditional static analysis or dynamic analysis methods. There are only a few methods that use emerging technologies, such as machine learning. Some models that use machine learning to detect smart contract vulnerabilities cost much time in extracting features manually. In this paper, we introduce a novel machine learning-based analysis model by introducing the shared child nodes for smart contract vulnerabilities. We build the Abstract-Syntax-Tree (AST) for smart contracts with some vulnerabilities from two data sets including SmartBugs and SolidiFI-benchmark. Then, we build the Abstract-Syntax-Tree (AST) of the labeled smart contract for data sets named Smartbugs-wilds. Next, we get the shared child nodes from both of the ASTs to obtain the structural similarity, and then, we construct a feature vector composed of the values that measure structural similarity automatically to build our machine learning model. Finally, we get a KNN model that can predict eight types of vulnerabilities including Re-entrancy, Arithmetic, Access Control, Denial of Service, Unchecked Low Level Calls, Bad Randomness, Front Running, and Denial of Service. The accuracy, recall, and precision of our KNN model are all higher than 90%. In addition, compared with some other analysis tools including Oyente and SmartCheck, our model has higher accuracy. In addition, we spent less time for training .


2021 ◽  
Author(s):  
Mojgan Bordbar ◽  
Aminreza Neshat ◽  
Saman Javadi ◽  
Biswajeet Pradhan ◽  
Barnali Dixon ◽  
...  

Sign in / Sign up

Export Citation Format

Share Document