{"title":"EVMLiSA: Sound static control-flow graph construction for EVM bytecode","authors":"Vincenzo Arceri, Saverio Mattia Merenda, Luca Negrini, Luca Olivieri, Enea Zaffanella","doi":"10.1016/j.bcra.2025.100384","DOIUrl":null,"url":null,"abstract":"<div><div>Ethereum enables the creation and execution of decentralized applications through smart contracts that are compiled into the Ethereum Virtual Machine (EVM) bytecode. Once deployed on the blockchain, the bytecode is immutable; therefore, ensuring that smart contracts are bug-free before their deployment is of utmost importance. A crucial preliminary step for any effective static analysis of EVM bytecode is the extraction of the control flow graph (CFG): This presents significant challenges due to potentially statically unknown jump destinations. In this paper, we present a novel approach, based on abstract interpretation, aiming to build a sound CFG from EVM bytecode smart contracts. Our analysis, which is implemented in our static analyzer Ethereum Virtual Machine Library for Static Analysis (EVMLiSA), is based on a parametric abstract domain that approximates concrete execution stacks at each program point as an <em>l</em>-sized set of abstract stacks of maximal height <em>h</em>; the results of the analysis are then used to resolve the jump destinations at jump nodes. Furthermore, EVMLiSA includes a checker for reentrancy detection, working on the constructed CFG. Our experiments show that, by fine-tuning the analysis parameters, EVMLiSA is able to build sound CFGs for all real-world smart contracts in the considered benchmark suite. Moreover, EVMLiSA successfully detects all reentrancy vulnerabilities in EVM bytecode smart contracts, while producing a small number of false positives.</div></div>","PeriodicalId":53141,"journal":{"name":"Blockchain-Research and Applications","volume":"7 4","pages":"Article 100384"},"PeriodicalIF":6.5000,"publicationDate":"2026-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Blockchain-Research and Applications","FirstCategoryId":"1093","ListUrlMain":"https://www.sciencedirect.com/science/article/pii/S2096720925001113","RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"2025/9/9 0:00:00","PubModel":"Epub","JCR":"Q1","JCRName":"COMPUTER SCIENCE, INFORMATION SYSTEMS","Score":null,"Total":0}
引用次数: 0
Abstract
Ethereum enables the creation and execution of decentralized applications through smart contracts that are compiled into the Ethereum Virtual Machine (EVM) bytecode. Once deployed on the blockchain, the bytecode is immutable; therefore, ensuring that smart contracts are bug-free before their deployment is of utmost importance. A crucial preliminary step for any effective static analysis of EVM bytecode is the extraction of the control flow graph (CFG): This presents significant challenges due to potentially statically unknown jump destinations. In this paper, we present a novel approach, based on abstract interpretation, aiming to build a sound CFG from EVM bytecode smart contracts. Our analysis, which is implemented in our static analyzer Ethereum Virtual Machine Library for Static Analysis (EVMLiSA), is based on a parametric abstract domain that approximates concrete execution stacks at each program point as an l-sized set of abstract stacks of maximal height h; the results of the analysis are then used to resolve the jump destinations at jump nodes. Furthermore, EVMLiSA includes a checker for reentrancy detection, working on the constructed CFG. Our experiments show that, by fine-tuning the analysis parameters, EVMLiSA is able to build sound CFGs for all real-world smart contracts in the considered benchmark suite. Moreover, EVMLiSA successfully detects all reentrancy vulnerabilities in EVM bytecode smart contracts, while producing a small number of false positives.
期刊介绍:
Blockchain: Research and Applications is an international, peer reviewed journal for researchers, engineers, and practitioners to present the latest advances and innovations in blockchain research. The journal publishes theoretical and applied papers in established and emerging areas of blockchain research to shape the future of blockchain technology.