Die fehlende Prüfung
Euler erlaubte es Nutzern, einen Teil ihres Guthabens an die Reserven des Protokolls zu spenden. Die meisten zustandsverändernden Funktionen in einem Kreditprotokoll enden damit, zu bestätigen, dass das Konto weiterhin solvent ist — die Zustandsprüfung. Diese tat es nicht, denn eine Spende an die Reserven sieht nicht offensichtlich nach einer Operation aus, die einen in Schieflage bringen könnte.
Sie konnte es. Ein Angreifer nahm einen Flash Loan auf, zahlte ein, lieh sich Mittel und spendete dann genug, um die eigene Position absichtlich unter die Liquidationsschwelle zu drücken. Anschließend liquidierte er sich selbst. Da der Liquidationsabschlag aus der nun notleidenden Position berechnet wurde, war die Selbstliquidation profitabel, und der Flash Loan wurde aus dem Erlös zurückgezahlt.
Audits und der Zuschnitt dessen, was geprüft wird
Euler war mehrfach geprüft worden. Das gehört klar gesagt und nicht beschönigt, denn „geprüft“ wird Nutzern regelmäßig als Sicherheitsgarantie angeboten, und dieser Vorfall zeigt genau, was es nicht ist. Prüfer untersuchen, was sie als risikobehaftet erkennen. Eine Spendenfunktion liest sich wie ein Verzicht — die Nutzer verringern freiwillig ihr eigenes Guthaben — und die gegnerische Perspektive, in der genau das der erste Zug eines Angriffs ist, wird leicht übersehen.
Was sich daraus mitnehmen lässt
Protokollrisiko lässt sich nicht gut durch die Zahl der Audits zusammenfassen. Nützlicher sind die Fragen, ob Invarianten auf jedem zustandsverändernden Pfad einheitlich durchgesetzt werden, ob das Protokoll durch ein aktives Bug-Bounty-Programm mit nennenswerter Höhe abgedeckt ist und ob eine Überwachung existiert, die ein anomales Liquidationsmuster im Verlauf erkennen würde.
Chronologie
Nur Anfügen. Korrekturen werden als eigener, datierter Eintrag ergänzt; frühere Einträge werden nie umgeschrieben.
- Der Angriff wird über mehrere Euler-Märkte hinweg in einer Folge von Flash-Loan-finanzierten Transaktionen ausgeführt. Euler bestätigt den Vorfall. Euler Labs
- Der Angreifer beginnt, Mittel zurückzugeben; letztlich werden nahezu alle Vermögenswerte zurückgegeben. Euler Labs
Was zu prüfen ist
Euler Labs veröffentlichte ein unten verlinktes technisches Post-mortem, das die konkrete Funktion und die fehlende Prüfung benennt.
Conisec hostet und verlinkt keine Tools zur Wiederbeschaffung, zum Widerruf oder zur „Überprüfung“. Nach einem öffentlichen Vorfall streuen Angreifer routinemäßig genau solche Links unter den Namen der Publikationen, die über den Fall berichten. Nutzen Sie ausschließlich den oben verlinkten offiziellen Kanal des betroffenen Projekts selbst.
Quellen
- Euler Labs, Euler Exploit Post-Mortem (13 März 2023)
Keine Beratung. Dies ist eine Zusammenfassung veröffentlichter Fakten, keine Rechts-, Steuer- oder Sicherheitsberatung. Prüfen Sie die oben verlinkten Primärquellen.
Zuletzt verifiziert von Conisec Staff.