TY - JOUR
T1 - Software Weakness Detection in Solidity Smart Contracts Using Control and Data Flow Analysis
T2 - A Novel Approach with Graph Neural Networks
AU - Seo, Aria
AU - Kim, Young Tak
AU - Yang, Ji Seok
AU - Lee, Yang Sun
AU - Son, Yunsik
N1 - Publisher Copyright:
© 2024 by the authors.
PY - 2024/8
Y1 - 2024/8
N2 - Smart contracts on blockchain platforms are susceptible to security issues that can lead to significant financial losses. This study converts the Solidity code into abstract syntax trees and generates control flow graphs and data flow graphs. These graphs train a graph convolutional network model to detect security weaknesses. The proposed system outperforms traditional tools, achieving higher accuracy, recall, precision, and F1 scores when detecting weaknesses such as integer overflow/underflow, reentrancy, delegate call to the untrusted callee, and time-based issues. This study demonstrates that leveraging control and data flow analysis with graph neural networks significantly enhances smart contract security and provides a robust and reliable solution.
AB - Smart contracts on blockchain platforms are susceptible to security issues that can lead to significant financial losses. This study converts the Solidity code into abstract syntax trees and generates control flow graphs and data flow graphs. These graphs train a graph convolutional network model to detect security weaknesses. The proposed system outperforms traditional tools, achieving higher accuracy, recall, precision, and F1 scores when detecting weaknesses such as integer overflow/underflow, reentrancy, delegate call to the untrusted callee, and time-based issues. This study demonstrates that leveraging control and data flow analysis with graph neural networks significantly enhances smart contract security and provides a robust and reliable solution.
KW - control flow graph
KW - data flow graph
KW - graph neural network
KW - smart contract security
KW - Solidity weakness detection
UR - http://www.scopus.com/inward/record.url?scp=85202679871&partnerID=8YFLogxK
U2 - 10.3390/electronics13163162
DO - 10.3390/electronics13163162
M3 - Article
AN - SCOPUS:85202679871
SN - 2079-9292
VL - 13
JO - Electronics (Switzerland)
JF - Electronics (Switzerland)
IS - 16
M1 - 3162
ER -