Here are three common DeFi smart contract vulnerabilities, along with specific detection methods for each.
1. Reentrancy Attacks
Description:
A reentrancy attack occurs when a smart contract makes an external call to another contract (e.g., sending ETH or ERC-20 tokens) before updating its internal state. If the external contract is malicious, it can call back into the first contract before the state update, allowing the attacker to repeat the transaction multiple times and drain funds.
How to Detect:
-
Static Analysis Tools: Use tools like Slither, Mythril, or Securify to scan for reentrancy patterns. These tools flag functions that make external calls (
call,send,transfer) before state changes.- Example Slither output:
Reentrancy in Contract.function():
External call:
- receiver.ETH()
State change:
Top comments (0)