Back to Blog

#2: Euler Finance Vorfall: Der größte Hack 2023

Code Auditing
February 9, 2024
5 min read

Am 13. März 2023 stellte unser System fest, dass der Kreditpool von Euler Finance einem Flashloan-Angriff ausgesetzt war, was zu einem Verlust von 197 Millionen US-Dollar führte. Wir informierten zunächst die Community und lieferten dann eine Analyse, um die Grundursache zu identifizieren.

Die Grundursache dieses Vorfalls ist die fehlende Insolvenzprüfung in der Funktion donateToReserves(). Speziell bietet der anfällige Vertrag eine Funktionalität, mit der Benutzer ihre Sicherheiten dem Protokoll spenden können, ohne zu prüfen, ob die Position des Benutzers solvent war. Was noch schlimmer ist: Um diese schlechte Position loszuwerden, bot das Protokoll Liquidatoren einen großen Rabatt an, um weniger Schulden zu zahlen, um diese Position zu liquidieren. Der Angreifer erstellte eine große Position und machte diese Position durch Ausnutzung dieser Funktionalität insolvent. Dann konnte er seine Sicherheiten mit Rabatt kaufen, um Gewinn zu erzielen.

Hintergrund

Überblick über Euler Finance

Euler Finance ist ein Kreditprotokoll auf Ethereum, das es Benutzern ermöglicht, bestimmte Token zu verleihen und auszuleihen. Wenn Kreditgeber in den Liquiditätspool von Euler einzahlen, wird eine entsprechende Menge an ETokens (zinsbringende ERC20-Token) geprägt und an sie gesendet. Diese ETokens können gegen ihre hinterlegten Basiswerte eingelöst werden.

Auf der anderen Seite erhalten Kreditnehmer, die Liquidität aufnehmen, DTokens. Diese DTokens sind ERC20-konform und hindern die Inhaber daran, sie unabhängig zu verbrennen. Insbesondere anstatt Token an jeden senden zu lassen, können sie von jedem genommen werden, die Annahme erfordert jedoch eine Genehmigung. In Bezug auf den Basiswert sind die Kreditnehmer für die Zahlung von Zinsen auf ihre Kredite verantwortlich, und ein Teil dieser Zinsen wird zur Deckung von Forderungsausfällen im Protokoll verwendet.

Der Hebelkredit (auch bekannt als Self-Borrow) und die Soft-Liquidation-Mechanismen von Euler Finance sind zwei Schlüsselkonzepte, die uns helfen, die Ursache dieses Angriffs besser zu verstehen.

Hebelkredit

Euler Finance bietet eine Hebelkreditfunktion, die es Benutzern ermöglicht, eine rekursive Kreditstrategie zu simulieren. Einfach ausgedrückt können Benutzer Sicherheiten hinterlegen und ETokens prägen, die dann als Sicherheit verwendet werden können, um mehr ETokens zu leihen. Der Vertrag wird auch eine entsprechende Menge an dTokens als Schulden-Token prägen. Die Gesundheit der Position des Benutzers wird auf Basis der Werte der ETokens und dTokens berechnet. Laut der Dokumentation von Euler Finance können Benutzer bis zu 19x hebeln. Die Hebelkreditfunktion spielte bei diesem Vorfall eine entscheidende Rolle. Ohne die Hilfe dieser Funktion hätte der Angreifer keinen Gewinn erzielen können. Durch Hebelkredite hat der Angreifer seine Positionsgröße auf fast das 11-fache der anfänglichen Mittel aus dem Flashloan erhöht.

Soft-Liquidation

Wie im Whitepaper von Euler Finance dargelegt, ermöglicht der Soft-Liquidation-Mechanismus Liquidatoren, der liquidierten Partei bei der Rückzahlung ihrer Schulden flexibel zu helfen, anstatt wie bei Protokollen wie Compound und Aave an einen festen Liquidationskoeffizienten gebunden zu sein. Soft-Liquidation bedeutet, dass je geringer die Gesundheit einer Position ist, desto mehr Sicherheiten für die Liquidation in Frage kommen – bis zu 75 % im Falle von Forderungsausfällen, basierend auf Daten aus diesem Vorfall. Die Liquidation von stark rabattierten Sicherheiten ermöglichte es dem Angreifer daher, den Flashloan zu begleichen und einen Gewinn zu erzielen.

Schwachstellenanalyse

Die Hauptschwachstelle, nämlich die fehlende Insolvenzprüfung, besteht innerhalb der Funktion donateToReserves(), die von Benutzern verwendet wird, um ETokens aus ihren Positionen als Spenden an die Reserven des Protokolls zu übertragen. Für normale Benutzer gibt es typischerweise keinen Anreiz oder keine Motivation, eine solche Aktion durchzuführen. Tatsächlich liegt die Schwachstelle darin, dass die Funktion donateToReserves() beim Übertragen von ETokens aus Benutzerpositionen keine Gesundheitsprüfung durchführt. Dies ermöglicht es Angreifern, die ETokens aus der durch Hebelkredite erstellten großen Position direkt zu spenden, wodurch der Gesundheitsfaktor der Position unter 100 % fällt und es zu Forderungsausfällen kommt.

Laut Design verwendet Euler Finance einen dynamischen Closing-Faktor, um Positionen "soft zu liquidieren". Kurz gesagt: Je weniger gesund eine Position ist, desto höher ist der Anteil der Sicherheiten in dieser Position, der liquidiert werden kann. Im Falle von Forderungsausfällen kann der Liquidationsprozentsatz bis zu 75 % der Sicherheiten innerhalb der Position betragen (berechnet auf Basis der tatsächlichen Angriffstransaktion). Infolgedessen ermöglicht die erhebliche Menge an rabattierten Sicherheiten, die liquidiert werden, dem Angreifer, den Flashloan zurückzuzahlen und Gewinne zu erzielen.

Angriffsanalyse

Es gibt mehrere Angriffstransaktionen, die sich auf verschiedene Pools richten:

  • 0xc310a0affe2169d1f6feec1c63dbc7f7c62a887fa48795d327d4d2da2d6b111d (DAI)
  • 0x71a908be0bef6174bccc3d493becdfd28395d8898e355d451cb52f7bac38617 (WBTC)
  • 0x62bd3d31a7b75c098ccf28bc4d4af8c4a191b4b9e451fab4232258079e8b18c4 (wstETH)
  • 0x465a6780145f1efe3ab52f94c006065575712d2003d83d85481f3d110ed13d9 (USDC)
  • 0x3097830e9921e4063d334acb82f6a79374f76f0b1a8f857e89b89bc58df1f311 (stETH)
  • 0x47ac3527d02e6b9631c77fad1cdee7bfa77a8a7bfd4880dccbda5146ace4088f (WETH)

Die Angriffsschritte sind wie folgt (am Beispiel der ersten Angriffstransaktion):

  1. Der Angreifer borgte sich 30 Millionen DAI in AAVE über einen Flashloan.
  2. Der Angreifer hinterlegte 20 Millionen DAI und erhielt 20 Millionen eDAI zurück.
  3. Da Euler Finance die Hebelkreditfunktion bietet, konnte der Angreifer 195 Millionen eDAI und 200 Millionen dDAI prägen. Nun hält der Angreifer 215 Millionen eDAI und 200 Millionen dDAI.
  4. Fortsetzung von oben. 10 Millionen Schulden wurden zurückgezahlt, damit der Angreifer mehr eDAI prägen konnte. Nun hält der Angreifer 215 Millionen eDAI und 190 Millionen dDAI.
  5. Schritt 3 wurde wiederholt. Nun hält der Angreifer 410 Millionen eDAI und 390 Millionen dDAI.
  6. Der Angreifer rief die Funktion donateToReserve auf, um 100 Millionen eDAI zu spenden. Während dieses Vorgangs wurde jedoch der Gesundheitsfaktor des Angreifers nicht überprüft. In diesem Fall kann die Position nun liquidiert werden (310 Millionen eDAI gegenüber 390 Millionen dDAI), was die Möglichkeit gibt, Gewinn zu erzielen.
  7. Der Angreifer liquidierte die Position unter Verwendung eines anderen Adressvertrags als Liquidator (0xa0b3...). Der Liquidator (0xa0b3...) erhielt 310 Millionen eDAI und 259 Millionen dDAI.
  8. Der Angreifer verbrannte 38,9 Millionen eDAI, um 38,9 Millionen DAI abzuheben (konnte aufgrund von Insolvenzprüfungen nicht mehr abheben) aus der Position des Liquidators (0xa0b3...).
  9. Der Angreifer hat den Flashloan zurückgezahlt.

Die wichtigsten Angriffsschritte 2-7 sind in der Transaktionsverfolgung gekennzeichnet.

Zusammenfassung

Dies war der größte Hack des Jahres 2023 mit einem Rekord von 197 Millionen US-Dollar, die von einem 20-jährigen Argentinier namens Federico Jaime gestohlen wurden, der der Presse "eine verschlungene, manchmal verwirrende und sogar widersprüchliche Erzählung" lieferte. Dennoch wurden "alle wiederherstellbaren Gelder" später an die Schatzkasse von Euler Finance zurückgegeben. Ein kleiner Teil (rund 200.000 US-Dollar) wurde jedoch "unwissentlich" an die Lazarus-Gruppe gesendet – ein mutmaßliches staatlich unterstütztes nordkoreanisches Verbrechersyndikat, das vom US-Finanzministerium sanktioniert wurde. Weitere Informationen zu dieser detaillierten und interessanten Geschichte finden Sie unter diesen Links, z. B. link2 und link2.

Die Grundursache dieses Vorfalls war das Fehlen von Insolvenzprüfungen, was als Lektion dient. Tatsächlich ist es für ein Kreditprotokoll von entscheidender Bedeutung, zu prüfen, ob Positionsgesundheitsprüfungen für alle Verfahren implementiert werden sollten, die die Positionen der Benutzer beeinträchtigen könnten. Darüber hinaus sollten Projektteams ihre Kreditprotokolle proaktiv auf erhebliche Liquidationen überwachen und effektive Warnsysteme einrichten, um solche Ereignisse umgehend zu erkennen und darauf zu reagieren.

Weitere Artikel in dieser Reihe lesen:

Sign up for the latest updates
The Decentralization Dilemma: Cascading Risk and Emergency Power in the KelpDAO Crisis
Security Insights

The Decentralization Dilemma: Cascading Risk and Emergency Power in the KelpDAO Crisis

This BlockSec deep-dive analyzes the KelpDAO $290M rsETH cross-chain bridge exploit (April 18, 2026), attributed to the Lazarus Group, tracing a causal chain across three layers: how a single-point DVN dependency enabled the attack, how DeFi composability cascaded the damage through Aave V3 lending markets to freeze WETH liquidity exceeding $6.7B across Ethereum, Arbitrum, Base, Mantle, and Linea, and how the crisis forced decentralized governance to exercise centralized emergency powers. The article examines three parameters that shaped the cascade's severity (LTV, pool depth, and cross-chain deployment count) and provides an exclusive technical breakdown of Arbitrum Security Council's forced state transition, an atomic contract upgrade that moved 30,766 ETH without the holder's signature.

Weekly Web3 Security Incident Roundup | Apr 13 – Apr 19, 2026
Security Insights

Weekly Web3 Security Incident Roundup | Apr 13 – Apr 19, 2026

This BlockSec weekly security report covers four attack incidents detected between April 13 and April 19, 2026, across multiple chains such as Ethereum, Unichain, Arbitrum, and NEAR, with total estimated losses of approximately $310M. The highlighted incident is the $290M KelpDAO rsETH bridge exploit, where an attacker poisoned the RPC infrastructure of the sole LayerZero DVN to fabricate a cross-chain message, triggering a cascading WETH freeze across five chains and an Arbitrum Security Council forced state transition that raises questions about the actual trust boundaries of decentralized systems. Other incidents include a $242K MMR proof forgery on Hyperbridge, a $1.5M signed integer abuse on Dango, and an $18.4M circular swap path exploit on Rhea Finance's Burrowland protocol.

Weekly Web3 Security Incident Roundup | Apr 6 – Apr 12, 2026
Security Insights

Weekly Web3 Security Incident Roundup | Apr 6 – Apr 12, 2026

This BlockSec weekly security report covers four DeFi attack incidents detected between April 6 and April 12, 2026, across Linea, BNB Chain, Arbitrum, Optimism, Avalanche, and Base, with total estimated losses of approximately $928.6K. Notable incidents include a $517K approval-related exploit where a user mistakenly approved a permissionless SquidMulticall contract enabling arbitrary external calls, a $193K business logic flaw in the HB token's reward-settlement logic that allowed direct AMM reserve manipulation, a $165.6K exploit in Denaria's perpetual DEX caused by a rounding asymmetry compounded with an unsafe cast, and a $53K access control issue in XBITVault caused by an initialization-dependent check that failed open. The report provides detailed vulnerability analysis and attack transaction breakdowns for each incident.

Best Security Auditor for Web3

Validate design, code, and business logic before launch. Aligned with the highest industry security standards.

BlockSec Audit