DeFiRanger: Detecting Price Manipulation Attacks on DeFi Applications
arXiv:2104.15068
Abstract
The rapid growth of Decentralized Finance (DeFi) boosts the Ethereum ecosystem. At the same time, attacks towards DeFi applications (apps) are increasing. However, to the best of our knowledge, existing smart contract vulnerability detection tools cannot be directly used to detect DeFi attacks. That's because they lack the capability to recover and understand high-level DeFi semantics, e.g., a user trades a token pair X and Y in a Decentralized EXchange (DEX). In this work, we focus on the detection of two types of new attacks on DeFi apps, including direct and indirect price manipulation attacks. The former one means that an attacker directly manipulates the token price in DEX by performing an unwanted trade in the same DEX by attacking the vulnerable DeFi app. The latter one means that an attacker indirectly manipulates the token price of the vulnerable DeFi app (e.g., a lending app). To this end, we propose a platform-independent way to recover high-level DeFi semantics by first constructing the cash flow tree from raw Ethereum transactions and then lifting the low-level semantics to high-level ones, including token trade, liquidity mining, and liquidity cancel. Finally, we detect price manipulation attacks using the patterns expressed with the recovered DeFi semantics. We have implemented a prototype named \tool{} and applied it to more than 350 million transactions. It successfully detected 432 real-world attacks in the wild. We confirm that they belong to four known security incidents and five zero-day ones. We reported our findings. Two CVEs have been assigned. We further performed an attack analysis to reveal the root cause of the vulnerability, the attack footprint, and the impact of the attack. Our work urges the need to secure the DeFi ecosystem.
References in corpus (11)
- ContractFuzzer: Fuzzing Smart Contracts for Vulnerability Detection
- Liquidations: DeFi on a Knife-edge
- Attacking the DeFi Ecosystem with Flash Loans for Fun and Profit
- High-Frequency Trading on Decentralized On-Chain Exchanges
- A First Look into DeFi Oracles
- Automated Market Makers for Decentralized Finance (DeFi)
- A Classification Framework for Stablecoin Designs
- Flashot: A Snapshot of Flash Loan Attack on DeFi Ecosystem
- On the Just-In-Time Discovery of Profit-Generating Transactions in DeFi Protocols
- Time-Travel Investigation: Towards Building A Scalable Attack Detection Framework on Ethereum
- BLOCKEYE: Hunting For DeFi Attacks on Blockchain
Cited by in corpus (5)
- Security Defense For Smart Contracts: A Comprehensive Survey
- TRacer: Scalable Graph-based Transaction Tracing for Account-based Blockchain Trading Systems
- A Survey of DeFi Security: Challenges and Opportunities
- Demystifying DeFi MEV Activities in Flashbots Bundle
- Trade or Trick? Detecting and Characterizing Scam Tokens on Uniswap Decentralized Exchange