Approve Once, Regret Forever: On the Exploitation of Ethereum's Approve-TransferFrom Ecosystem

Nicola Ruaro, Fabio Gritti, Dongyu Meng, and Robert McLaughlin, University of California, Santa Barbara; Ilya Grishchenko, University of Toronto; Christopher Kruegel and Giovanni Vigna, University of California, Santa Barbara

Smart contracts are immutable programs hosted on the blockchain that power decentralized applications. With the growth of decentralized finance (DeFi), many services interact with contracts that must be trusted to manage digital assets. To this end, several Ethereum standards (e.g., ERC20, ERC721) introduced an approval mechanism that allows decentralized applications to trade digital assets (or "tokens") on behalf of others. After receiving an approval, the (approved) application can invoke the token's transferFrom function to trade the approved tokens. Unfortunately, approved applications often contain vulnerabilities. If an attacker maliciously controls the parameters of a transferFrom call, they can steal not only the application's assets but also the assets of any user who previously approved the application. We refer to this widespread issue as Approved Controllable TransferFrom (ACT), which has already led to losses exceeding 65 million USD.

We present Osprey, an end-to-end system that detects ACT vulnerabilities and automatically generates proof-of-concept attacks. Our evaluation across the entire Ethereum ecosystem identified 32,582 potentially vulnerable contracts, with 410 confirmed exploitable at the time of writing. Our findings reveal previously unknown attack vectors threatening digital assets worth over 3.4 million USD.

Category: 
Short Presentation

Open Access Media

USENIX is committed to Open Access to the research presented at our events. Papers and proceedings are freely available to everyone once the event begins. Any video, audio, and/or slides that are posted after the event are also free and open to everyone. Support USENIX and our commitment to Open Access.

BibTeX
@inproceedings {309604,
author = {Nicola Ruaro and Fabio Gritti and Dongyu Meng and Robert McLaughlin and Ilya Grishchenko and Christopher Kruegel and Giovanni Vigna},
title = {Approve Once, Regret Forever: On the Exploitation of Ethereum{\textquoteright}s {Approve-TransferFrom} Ecosystem},
booktitle = {34th USENIX Security Symposium (USENIX Security 25)},
year = {2025},
isbn = {978-1-939133-52-6},
address = {Seattle, WA},
pages = {1281--1298},
url = {https://www.usenix.org/conference/usenixsecurity25/presentation/ruaro},
publisher = {USENIX Association},
month = aug
}