SmartReco: Detecting Read-Only Reentrancy via Fine-Grained Cross-DApp Analysis

Fuente: arXiv
Guardado en:
Detalles Bibliográficos
Autores principales: Zhang, Jingwen, Zheng, Zibin, Nan, Yuhong, Ye, Mingxi, Ning, Kaiwen, Zhang, Yu, Zhang, Weizhe
Formato: Preprint
Publicado: 2024
Materias:
Acceso en línea:
Etiquetas: Agregar Etiqueta
Sin Etiquetas, Sea el primero en etiquetar este registro!
_version_ 1866910734218166272
author Zhang, Jingwen
Zheng, Zibin
Nan, Yuhong
Ye, Mingxi
Ning, Kaiwen
Zhang, Yu
Zhang, Weizhe
author_facet Zhang, Jingwen
Zheng, Zibin
Nan, Yuhong
Ye, Mingxi
Ning, Kaiwen
Zhang, Yu
Zhang, Weizhe
contents Despite the increasing popularity of Decentralized Applications (DApps), they are suffering from various vulnerabilities that can be exploited by adversaries for profits. Among such vulnerabilities, Read-Only Reentrancy (called ROR in this paper), is an emerging type of vulnerability that arises from the complex interactions between DApps. In the recent three years, attack incidents of ROR have already caused around 30M USD losses to the DApp ecosystem. Existing techniques for vulnerability detection in smart contracts can hardly detect Read-Only Reentrancy attacks, due to the lack of tracking and analyzing the complex interactions between multiple DApps. In this paper, we propose SmartReco, a new framework for detecting Read-Only Reentrancy vulnerability in DApps through a novel combination of static and dynamic analysis (i.e., fuzzing) over smart contracts. The key design behind SmartReco is threefold: (1) SmartReco identifies the boundary between different DApps from the heavy-coupled cross-contract interactions. (2) SmartReco performs fine-grained static analysis to locate points of interest (i.e., entry functions) that may lead to ROR. (3) SmartReco utilizes the on-chain transaction data and performs multi-function fuzzing (i.e., the entry function and victim function) across different DApps to verify the existence of ROR. Our evaluation of a manual-labeled dataset with 45 RORs shows that SmartReco achieves a precision of 88.63% and a recall of 86.36%. In addition, SmartReco successfully detects 43 new RORs from 123 popular DApps. The total assets affected by such RORs reach around 520,000 USD.
format Preprint
id arxiv_https___arxiv_org_abs_2409_18468
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle SmartReco: Detecting Read-Only Reentrancy via Fine-Grained Cross-DApp Analysis
Zhang, Jingwen
Zheng, Zibin
Nan, Yuhong
Ye, Mingxi
Ning, Kaiwen
Zhang, Yu
Zhang, Weizhe
Software Engineering
Despite the increasing popularity of Decentralized Applications (DApps), they are suffering from various vulnerabilities that can be exploited by adversaries for profits. Among such vulnerabilities, Read-Only Reentrancy (called ROR in this paper), is an emerging type of vulnerability that arises from the complex interactions between DApps. In the recent three years, attack incidents of ROR have already caused around 30M USD losses to the DApp ecosystem. Existing techniques for vulnerability detection in smart contracts can hardly detect Read-Only Reentrancy attacks, due to the lack of tracking and analyzing the complex interactions between multiple DApps. In this paper, we propose SmartReco, a new framework for detecting Read-Only Reentrancy vulnerability in DApps through a novel combination of static and dynamic analysis (i.e., fuzzing) over smart contracts. The key design behind SmartReco is threefold: (1) SmartReco identifies the boundary between different DApps from the heavy-coupled cross-contract interactions. (2) SmartReco performs fine-grained static analysis to locate points of interest (i.e., entry functions) that may lead to ROR. (3) SmartReco utilizes the on-chain transaction data and performs multi-function fuzzing (i.e., the entry function and victim function) across different DApps to verify the existence of ROR. Our evaluation of a manual-labeled dataset with 45 RORs shows that SmartReco achieves a precision of 88.63% and a recall of 86.36%. In addition, SmartReco successfully detects 43 new RORs from 123 popular DApps. The total assets affected by such RORs reach around 520,000 USD.
title SmartReco: Detecting Read-Only Reentrancy via Fine-Grained Cross-DApp Analysis
topic Software Engineering
url https://arxiv.org/abs/2409.18468