Alpha Homora / Iron Bank Reentry
Ein Custom-Spell-Vertrag nutzte einen Borrow-Share-Rundungsbug, um null Anteile gegen reale cySUSD-Schulden zu akkumulieren – 37,5 Mio. USD entzogen.
- Datum
- Chain(s)
- Status
- Mittel entwendet
Am 13. Februar 2021 wurde das Leveraged-Yield-Protokoll Alpha Homora v2 über einen Custom-„Spell"-Vertrag um etwa 37,5 Millionen US-Dollar ausgenutzt, der Iron-Bank-Lending bei Cream Finance missbrauchte. Der Angreifer nutzte Flash-Loans, um eine Situation herzustellen, in der seine Borrow-Shares auf null abgerundet wurden, während sich seine tatsächliche Schuld akkumulierte — was ihm erlaubte, mit dem geliehenen cySUSD davonzugehen.
Was geschah
Alpha Homora v2 nutzte ein Primitiv namens „Spell" — einen aufrufbaren Vertrag, der definiert, wie eine Leveraged-Position eröffnet wird. Das Protokoll erlaubte Nutzern, eigene Spell-Verträge bereitzustellen, im Vertrauen, dass der Spell Alpha Homoras Buchhaltungsinvarianten respektiert.
Der Angreifer konstruierte einen bösartigen Spell, der eine präzise Sequenz von Borrows gegen den sUSD-Markt der Iron Bank ausführte:
- Borrow N minisUSD von der Iron Bank über Alpha Homora.
- Das Protokoll berechnete borrow shares = N / (total_debt + N) abgerundet. Für den ersten winzigen Borrow war das Ergebnis ungleich null. Aber indem er die Schuld in jeder Iteration verdoppelte und eins weniger als die neue Summe borgte, konstruierte der Angreifer eine Sequenz, in der die Share-Berechnung des nächsten Borrows auf null abrundete.
- Der Borrow lief durch — er fügte echte Schuld hinzu — aber keine Borrow-Share wurde der Position des Angreifers hinzugefügt. Alpha Homoras Buchhaltung behandelte den Angreifer so, als hätte er null ausstehende Schulden.
Der Angreifer wiederholte dieses Manöver mit Flash-geliehenem Kapital von Aave, akkumulierte Millionen in Null-Anteils-Borrows und ging mit dem cySUSD davon.
Folgen
- Das Alpha Finance-Team pausierte das Protokoll und patchte das Rundungsverhalten.
- Der Markt der Iron Bank pausierte ebenfalls; Cream Finance trug einen Teil des Verlusts als Lender of Record der Iron Bank.
- Alpha und Cream implementierten beide Entschädigungspläne, finanziert durch spätere Token-Ausgabe und Protokolleinnahmen.
- Ein Hauptverdächtiger wurde von Alpha identifiziert, aber keine öffentliche Strafverfolgung folgte.
Warum es wichtig ist
Alpha Homoras Vorfall ist einer der frühesten großskaligen Rundungsrichtungs-Exploits in DeFi. Jede Buchhaltungsberechnung in einem Smart Contract trifft eine Entscheidung über Rundung, wenn Integer-Division ein nicht-ganzzahliges Ergebnis liefert. Falsches Runden im falschen Moment kann genau dieses Muster erzeugen — eine Position, deren interner Zustand die Solvenz-Invarianten des Protokolls bricht.
Die strukturelle Lektion — dass Rundungsrichtung so gewählt werden muss, dass sie das Protokoll, nicht den Nutzer, bei jeder zustandsverändernden Mathe-Operation begünstigt — wurde seitdem mehrmals neu erlernt bei Hundred Finance, zkLend und Cetus. Es ist eine der subtilsten Klassen von DeFi-Bugs, weil der Code isoliert korrekt aussieht; das Problem entsteht nur unter spezifischen Eingabesequenzen, die ein Angreifer konstruiert.
Quellen & On-Chain-Belege
- [01]investing.comhttps://www.investing.com/news/cryptocurrency-news/alpha-homora-loses-37-million-following-iron-bank-exploit-2418512
- [02]halborn.comhttps://www.halborn.com/blog/post/explained-the-alpha-homora-defi-hack-feb-2021
- [03]cryptobriefing.comhttps://cryptobriefing.com/alpha-finance-suffers-37-5-million-loss-major-attack/