IEEE Transactions on Knowledge and Data Engineering · 2021 · 231 citations · 35 references
ComputingComputer ScienceCybersecurityComputer SecurityContractsSecure Software DevelopmentElectronic Contract SecuritySmart ContractsSoftware Vulnerability DiscoveryAutomated Vulnerability DetectionDeep Learning For Vulnerability DetectionGraph Feature ExtractionGraph Neural NetworksGraph-based Vulnerability DetectionSmart Contract SecuritySmart Contract Vulnerability AnalysisVulnerability Detection
Smart contract vulnerability detection is critical because hacker attacks cause substantial losses, yet current methods rely on labor‑intensive, error‑prone expert rules or symbolic execution that lack precision and scalability, and no approach has yet combined expert patterns with deep neural networks. This work investigates the integration of graph neural networks with expert knowledge to detect vulnerabilities in smart contracts. The authors transform source code into a contract graph, apply a novel temporal message‑propagation network to extract graph features, and fuse these features with expert patterns to build a detection system, evaluated on contracts from two platforms. Experiments demonstrate that the proposed method achieves markedly higher accuracy than existing state‑of‑the‑art techniques.
Smart contract vulnerability detection draws extensive attention in recent years due to the substantial losses caused by hacker-attacks. Existing efforts for contract security analysis heavily rely on rigid rules defined by experts, which is labor-intensive and non-scalable. More importantly, expert-defined rules tend to be error-prone and suffer the inherent risk of being cheated by crafty attackers. Recent researches focus on the symbolic execution and formal analysis of smart contract for vulnerability detection, yet to achieve a precise and scalable solution. Although several methods have been proposed to detect vulnerabilities in smart contracts, there is still a lack of effort that considers combining expert-defined security patterns with deep neural networks. In this paper, we explore using graph neural networks and expert knowledge for smart contract vulnerability detection. Specifically, we cast the rich control- and data- flow semantics of the source code into a contract graph. Then, we propose a novel temporal message propagation network to extract graph feature from the normalized graph, and combine the graph feature with expert patterns to yield a final detection system. Extensive experiments are conducted on all the smart contracts that have source code in two platforms. Empirical results show significant accuracy improvements over state-of-the-art methods.
35
Making Smart Contracts Smarter
Loi Luu, Duc-Hiep Chu, Hrishi Olickel et al. · 2016 · 2.2K citations
Blockchain technology overview
Dylan Yaga, Peter Mell, Nik Roby et al. · 2018 · 1.5K citations · Full text