Here are three of the most common and critical DeFi smart contract vulnerabilities, along with specific methods to detect them.
1. Reentrancy Attacks
Description:
Reentrancy occurs when a smart contract makes an external call to an unknown or untrusted contract before it has finished updating its own state. An attacker can exploit this by calling back into the vulnerable function before the state change is complete, allowing them to drain funds or manipulate logic multiple times.
Common Scenario:
A withdraw() function sends ETH to the user before updating the user’s balance in the contract’s internal ledger.
How to Detect It:
-
Static Analysis Tools:
Use tools like Slither (by Trail of Bits) or Mythril. These tools flag functions that make external calls (e.g.,
call,delegatecall) before state variables are updated.
bash
slither . --detect re
Top comments (0)