Fantasm Finance Hack

Reported loss $2.6M
Fantom
Missing Condition Check

What happened

The exploiter's address:

Address 0x4709…ae8d

The exploiter:

  • Deployed contract to trigger the exploit

Address 0x944b…9e3e

  • Minted XFTM by input only FSM token without entering any FTM
  • Collected XFTM token
  • Sold XFTM token to FTM
  • Bought more FSM and repeated the first step to get a larger amount of FTM
  • Sold all his FTM for ETH and bridged these ETH to Ethereum via Celer Bridge
  • Deposited stolen funds into Tornado Cash mixer:

Address 0x4709…ae8d

That contract exploited the error in Fantasm’s Pool contract where the developer missed the condition checking for the minimum amount of input FTM when minting XFTM.

Protocol details

Classification Protocol Logic / Other / Input Validation
Protocol Type Exploit/Other
Affected asset / contract XFTM
Implementation language Solidity

Build your security review skills

Work through hands-on labs covering real exploit mechanics, review techniques, and defensive patterns.