HomeCybersecurityWeb3 Reentrancy Attack

Web3 Reentrancy Attack

Interactive 3D simulation of a smart-contract reentrancy attack: watch an attacker's fallback function recursively re-enter a vulnerable withdraw() call before its balance is updated, draining the vault, and see how a mutex guard or Checks-Effects-Interactions ordering stops it.

Cybersecurity3DModerate60 FPS
exp-web3-security ↗ Open standalone

Reentrancy is one of the most damaging classes of smart-contract vulnerability: an attacker's fallback function calls back into a contract before its own bookkeeping has caught up, letting it withdraw far more than it deposited. This simulation renders a vault contract, its honest depositors, and an attacker whose recursive calls stack visibly higher with every re-entry, draining the vault one call at a time. Flip on a mutex-style reentrancy guard or reorder the contract to follow Checks-Effects-Interactions and watch the exact same attack fail after a single, legitimate withdrawal.

⚙ Under the hood

Interactive 3D simulation of a smart-contract reentrancy exploit: an attacker's fallback function recursively re-enters a vulnerable withdraw() call before its balance is updated, draining the vault one call-stack level at a time — toggle a mutex reentrancy guard or Checks-Effects-Interactions ordering to watch the same attack fail.

Three.jsWeb3smart contractscybersecurityblockchainexploit

3D · Three.js / WebGL renderer · 60 FPS target · runs fully client-side, no install

What did you find?

Add reproduction steps (optional)