Ein Fehler in der Radix Engine ermöglichte es einem Angreifer, am 31. August in 26 Transaktionen Vermögenswerte im Wert von rund 1,26 Millionen US-Dollar abzuziehen, darunter 458.915 USDC, 72.420 USDT, 61,08 ETH, 6,35 Wrapped Bitcoin, 536,16 SOL und 32,91 BNB. Der Angreifer entwendete außerdem 13.000 XRD zur Bezahlung der Transaktionsgebühren. Die Validatoren stoppten die Radix-Blockchain später für mehr als 10 Tage, nachdem Ermittler festgestellt hatten, dass der Fehler jeden Vault und nicht nur die im Exploit angegriffenen Konten betreffen konnte.
Warum das wichtig ist
RDX Works führte den Fehler im Juni 2023 bei der Bereinigung der Radix Engine ein. Dabei handelt es sich um die Ausführungsschicht, die für die Verarbeitung von Transaktionen und die Durchsetzung des Eigentums an Vermögenswerten zuständig ist. Der Bug veränderte den Umgang der Engine mit Vault-Referenzen. Dadurch konnte speziell entwickelter Smart-Contract-Code den Vault eines anderen Nutzers an gewöhnliche Abhebefunktionen übergeben, ohne die Eigentumsgrenze ordnungsgemäß zu prüfen.
Damit entstand ein Fehler auf Protokollebene und nicht nur ein Problem in einer einzelnen Anwendung. Der Angreifer transferierte die gestohlenen Vermögenswerte über Hyperlane zu Ethereum, BNB Chain und Solana und verkaufte sie anschließend gegen ETH. Hyperlane funktionierte wie vorgesehen, da die Vermögenswerte bereits vor der Nutzung der Bridge aus Radix abgezogen worden waren.
Auswirkungen auf den Markt
Der direkte Diebstahl unterschätzte das mögliche Ausmaß der Gefährdung. Die Ermittler von Radix kamen zu dem Schluss, dass Nutzerkonten, Anwendungen und Liquiditätspools gefährdet gewesen sein könnten. Weitere Verluste entstanden, nachdem über die Bridge transferierte Vermögenswerte aus Liquiditätspools entfernt wurden. Dadurch verzerrten sich die Preise, und ein anderes Konto konnte Millionen von XRD abziehen.
Der Fehler hatte außerdem das unabhängige Audit des Radix-Protokolls durch Zellic im Jahr 2024 überstanden. Dazu gehörte auch der Engine-Kernel, der den Defekt enthielt. Die Validatoren nahmen ausreichend Staking-Kapital offline, um den Konsens zu blockieren, während Entwickler Prüfungen gegen nicht autorisierte Vault-Referenzen ergänzten. Nutzertransaktionen wurden am 11. September wieder aufgenommen. Radix erklärte, das Unternehmen führe Regressionstests ein, verschärfe die Sicherheitsprüfungen und formalisiere den Notfallprozess zur Wiederherstellung der Netzwerksicherheit.
Häufig gestellte Fragen
-
Wie viel wurde beim Radix-Exploit aus den angegriffenen Vaults abgezogen?
Der Angreifer zog in 26 Transaktionen Vermögenswerte im Wert von rund 1,26 Millionen US-Dollar ab sowie 13.000 XRD zur Bezahlung der Transaktionsgebühren.
-
Was verursachte den Autorisierungsfehler in der Radix Engine?
Ein Refactoring im Juni 2023 veränderte den Umgang der Engine mit Vault-Referenzen. Smart-Contract-Code konnte den Vault eines anderen Nutzers an Abhebefunktionen übergeben, ohne eine ordnungsgemäße Eigentumsprüfung.
-
Warum stoppten die Radix-Validatoren die Blockchain?
Ermittler stellten fest, dass der Fehler jeden Vault im Netzwerk betreffen konnte. Die Validatoren nahmen ausreichend Staking-Kapital offline, um den Konsens zu stoppen und weitere Transaktionen zu verhindern, während Entwickler einen Fix vorbereiteten.
-
Wurden die Private Keys der Nutzer kompromittiert?
Nein. Die Vermögenswerte wurden über den Autorisierungsfehler der Radix Engine abgezogen. Private Keys wurden nicht kompromittiert.
-
Welche weiteren Schäden folgten auf den ursprünglichen Diebstahl bei Radix?
Die Entfernung von Assets aus Liquiditätspools über die Bridge verzerrte die Preise und ermöglichte es einem anderen Konto, Millionen von XRD aus betroffenen Pools abzuziehen.