Building Reuse-Sensitive Control Flow Graphs (CFGs) for EVM Bytecode
Dingding Wang, Jianting He, Yizheng Yang, Lei Wu, Rui Chang, Yajin Zhou

TL;DR
This paper introduces Esuer, a tool for constructing reuse-sensitive control flow graphs for EVM bytecode, significantly improving analysis accuracy and vulnerability detection in smart contracts by dynamically identifying code reuse patterns.
Contribution
Esuer is the first tool to dynamically detect code reuse in EVM bytecode and generate reuse-sensitive CFGs, enhancing static analysis precision for smart contract security.
Findings
Esuer achieves 99.94% coverage in execution traces.
Esuer attains 97.02% F1-score in identifying reused code.
Esuer improves vulnerability detection with F1-scores over 99%.
Abstract
The emergence of smart contracts brings security risks, exposing users to the threat of losing valuable cryptocurrencies, underscoring the urgency of meticulous scrutiny. Nevertheless, the static analysis of smart contracts in EVM bytecode faces obstacles due to flawed primitives resulting from code reuse introduced by compilers. Code reuse, a phenomenon where identical code executes in diverse contexts, engenders semantic ambiguities and redundant control-flow dependencies within reuse-insensitive CFGs. This work delves into the exploration of code reuse within EVM bytecode, outlining prevalent reuse patterns, and introducing Esuer, a tool that dynamically identifies code reuse when constructing CFGs. Leveraging taint analysis to dynamically identify reuse contexts, Esuer identifies code reuse by comparing multiple contexts for a basic block and replicates reused code for a…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsRadiation Effects in Electronics · Simulation Techniques and Applications
