Skip to content
Est. MMXXVIVol. VI · № 273RSS
Blockchain Breaches

An archive of cryptocurrency security incidents — hacks, exploits, bridge failures and rug pulls, documented with on-chain evidence.

Dossier № 128Smart Contract Bug

Euler Finance Exploit

A missing health check on Euler's donateToReserves function let an attacker create a self-liquidatable position and walk away with $197M — most of it returned.

Date
Chain(s)
Status
Recovered

On March 13, 2023, the Euler Finance lending protocol was exploited for roughly $197M. Nearly all of it was returned by the attacker over the following month, making this the largest recovered exploit on Ethereum at the time.

What happened

Euler exposed a donateToReserves function that allowed any holder of eTokens to donate them to the protocol's reserves. The function decremented the donor's balance but did not run a health check on the donor's resulting position.

By taking a flash loan, depositing as collateral, borrowing against it, and then donating a slice of their eToken balance, an attacker could push their own account underwater on purpose. They then liquidated themselves in the same transaction, exploiting Euler's discounted-liquidation reward to extract more value than they'd put in. Repeating in a loop drained the lending pools.

Aftermath

  • The Euler team paused the contracts within hours and began on-chain negotiation with the attacker.
  • The attacker returned all funds — roughly $197M — over the following weeks, citing apparent regret. The case remains unusual among large DeFi exploits.
  • Euler published a detailed post-mortem and has since redeployed with re-audited contracts.

Why it matters

The bug was not in flash loans, oracles, or liquidation logic — those were all working correctly. The flaw was a single missing invariant: every function that modifies a user's balance must call the same health-check helper. Several lending protocols audited their codebases for analogous omissions in the weeks following.

Sources & on-chain evidence

  1. [01]medium.comhttps://medium.com/euler-xyz/the-march-13-2023-euler-attack-d5cd462f5ee2
  2. [02]twitter.comhttps://twitter.com/eulerfinance/status/1635413933076774914
Transactions
  • 0xc310a0affe2169d1f6feec1c63dbc7f7c62a887fa48795d327d4d2da2d6b111d

Related filings