Das kettenübergreifende dezentralisierte Finanzprotokoll (DeFi) Rubic wurde kompromittiert, was dazu führte, dass in den Adressen seiner Benutzer gespeicherte Gelder abgezweigt und an die Hacker überwiesen wurden.
Am 25. Dezember gab Rubic Protocol bekannt, dass einer seiner Routing-Verträge kompromittiert wurde und alle Verträge gestoppt würden, bis die Situation vollständig geklärt sei. Die Ankündigung lautete:
Liebe Rubicans, einer unserer Routing-Verträge könnte kompromittiert sein. Alle Verträge werden gestoppt, bis wir die Situation vollständig verstanden haben. Bitte verwenden Sie https://t.co/rDZSZrTUTe nicht. Widerrufen Sie https://t.co/F8QMpyd517 so schnell wie möglich über https://t.co/hwLI2Cwkt1
– Rubic (@CryptoRubic), 25. Dezember 2022
Die Entwickler des Protokolls rieten ihren Benutzern außerdem, die Vertragsautorisierung über das Tool „revoke.cash“ zu widerrufen. In einem Twitter-Thread des Blockchain-Cybersicherheitsunternehmens PeckShield wird erklärt, dass eine Schwachstelle im Rubic-Protokoll zu einem Verlust von 1,41 Millionen Dollar direkt aus den Wallets geführt habe, die die Smart Contracts autorisierten.
Rubic @CryptoRubic wird ausgenutzt (mit ~$1,41M) https://t.co/ckAfQr9kgm1.100 $ETH bereits in Tornado Cash vom Ausbeuter https://t.co/yPkrC2hFCZ pic.twitter.com/25rLUcMbkf
— PeckShield Inc. (@peckshield) 25. Dezember 2022
Die Exploiter-Adresse erhielt die Gelder von der dezentralen Börse (DEX) Uniswap in Transaktionen mit dem Stablecoin USD Coin (USDC). PeckShied erklärte, dass der Hack durch das versehentliche Hinzufügen von USDC zu unterstützten Routern möglich wurde. Darüber hinaus ermöglichte „ein Mangel an Validierung in ruterCallNative“ auch die böswillige Verwendung von Verträgen.
Eine schnelle Smart-Contract-Analyse mit Hilfe von chatGPT deutet darauf hin, dass die Funktion ruterCallNative zahlreiche potenzielle Schwachstellen enthält, darunter ungültige Eingaben für die Parameter „_params“ und „_data“. Diese könnten es einem Angreifer ermöglichen, böswillige Eingaben zu übermitteln, die zu falschem oder unbeabsichtigtem Verhalten führen könnten.
Darüber hinaus ist der an die Funktion übergebene Parameter „_gateway“ uneingeschränkt, sodass ein Angreifer möglicherweise einen Vertrag erstellen und ihn vom RubicProxy-Vertrag ausführen lassen kann.
Tatsächlich setzte der Angreifer einen benutzerdefinierten Smart Contract ein, der für den Angriff verwendet wurde. Der dekodierte Bytecode zeigt die 337 Codezeilen, die es dem Angreifer ermöglichten, den Angriff so effizient wie möglich durchzuführen.
Die Adresse des Hackers erhielt zunächst eine Überweisung von 1.161,55 Ethereum (ETH) und eine weitere Überweisung von 26,88 ETH, beide vom Uniswap-Protokoll, das ausschließlich USDC abschöpfte und gegen Wrapped Ethereum (WETH) tauschte. All dieses WETH wurde später an einen On-Chain-Mixer und die sanktionierte Entität Tornado Cash gesendet, um die unrechtmäßig erworbenen Gelder zu anonymisieren.
Die On-Chain-Analyse zeigt, dass eingehende Transaktionen im Wert von 1,45 Millionen Dollar, die an den Münzanonymisierungsdienst gesendet wurden, von der Adresse des Hackers stammten – was einem Gesamtwert für den Dienst von etwa 2,9 Millionen Dollar entspricht. Mit anderen Worten, etwa die Hälfte der heute an den Mixer gesendeten Vermögenswerte wurde vom Exploiter gesendet.
Eingehende Überweisungen von Tornado.Cash wurden am 25. Dezember bearbeitet. Die Adresse des Hackers ist rechts. | Mit freundlicher Genehmigung von Arkham Intelligence
Obwohl die Gelder des Hackers einen so großen Teil des eingehenden Transaktionsvolumens des Dienstes ausmachen, ist ihre Anonymität dennoch weitgehend gewährleistet. Die Einzahlung könnte zu den heute von Tornado Cash abgewickelten 2 Millionen US-Dollar gehören oder zu den Vermögenswerten im Wert von 174 Millionen US-Dollar, die noch im Smart Contract hinterlegt sind.
Tornado Cash ist ein mittlerweile illegales DeFi-Protokoll, das es Benutzern ermöglicht, anonyme Überweisungen auf der Ethereum-Blockchain durchzuführen. Das Protokoll verwendet Zero-Knowledge-Proofs (ZK-Proofs), um die Eingabe- und Ausgabeadressen von Transaktionen zu verbergen. Für Dritte ist es schwierig, die Identität der an der Transaktion beteiligten Parteien oder den spezifischen Zweck der Überweisung festzustellen.
Tornado Cash ist ein Open-Source-Projekt, das auf der Ethereum-Blockchain aufbaut und für jeden mit einem Ethereum-Wallet zugänglich ist. Benutzer können mit dem Tornado Cash-Vertrag über ihr Ethereum-Wallet oder eine Weboberfläche interagieren, die weiterhin über den dezentralen Hosting-Dienst InterPlanetary File System (IPFS) verfügbar ist. Sie können anonyme Überweisungen von ETH oder Token durchführen, die dem ERC-20-Standard entsprechen, indem sie ihre Gelder an den Tornado Cash-Vertrag senden und sie an eine neue Adresse abheben.
Die Nachricht folgt auf jüngste Berichte, denen zufolge nordkoreanische Hacker in den letzten fünf Jahren Kryptowährungen und andere virtuelle Vermögenswerte im Wert von rund 1,2 Milliarden US-Dollar gestohlen haben. Die meisten dieser Hacks ereigneten sich allein im Jahr 2021.


