Journal of Applied Sciences ›› 2024, Vol. 42 ›› Issue (6): 1027-1039.doi: 10.3969/j.issn.0255-8297.2024.06.011

• Computer Science and Applications • Previous Articles     Next Articles

Smart Contract Vulnerability Analysis and Improvement Based on Smartcheck

FEI Jiajia1, ZHAO Xiangfu1, CHEN Xiaohan1, ZHANG Dengji2   

  1. 1. School of Computer and Control Engineering, Yantai University, Yantai 264005, Shandong, China;
    2. Department of Computer, Zhejiang Normal University, Jinhua 321004, Zhejiang, China
  • Received:2022-04-06 Online:2024-11-30 Published:2024-11-30

Abstract: Smart contracts on blockchain operate on quantity of digital assets. Once deployed on blockchain, they are difficult to modify. Therefore, the analysis and detection of security vulnerabilities of smart contracts has become an important research topic. Smartcheck is a static analysis tool for Ethereum smart contracts that converts Solidity source code into an XML-based intermediate representation and checks it against XPath patterns. While Smartcheck can analyze most of the vulnerabilities, it has limitations in terms of coverage and accuracy. To address these issues, we developed a new tool, SmartETH, to further improve Smartcheck by analyzing typical vulnerabilities such as timestamp dependency, integer overflow and delegatecall vulnerabilities. The improved Smartcheck is tested on a large dataset and verified by five specific contracts, demonstrating improved accuracy in vulnerability detection. In addition, improvements have reduced false positives and missed positives for many vulnerabilities.

Key words: smart contract, security vulnerability, Smartcheck, Ethereum, blockchain

CLC Number: