Back to Blog

Nr. 8: SushiSwap-Vorfall: Ein ungeschickter Rettungsversuch führt zu einer Serie von Nachahmer-Angriffen

Code Auditing
18. Februar 2024
5 min read

Am 9. April 2023 wurde SushiSwap aufgrund eines nicht verifizierten externen Parameters zum Ziel eines Exploits. Der Gesamtverlust beläuft sich auf etwa 3,3 Millionen US-Dollar.

Als führendes Protokoll auf Ethereum mit einer beachtlichen Nutzerbasis sind selbst solche Top-Protokolle anfällig dafür, bei Vertrags-Upgrades schwerwiegende neue Probleme einzuführen. Dies ist eine Erinnerung für die DeFi-Community, dass Sicherheit immer oberste Priorität haben sollte. Darüber hinaus wurde dieser Sicherheitsvorfall durch den Rettungsversuch eines Whitehat-Sicherheitsforschers ausgelöst, was innerhalb der Community für erhebliche Debatten sorgte. Wir bieten eine prägnante Einführung in diesen Vorfall und heben ihn als einen der zehn wichtigsten Sicherheitsvorfälle des Jahres 2023 hervor.

Hintergrund

SushiSwap

SushiSwap, eine renommierte DEX, startete eine Vampir-Attacke gegen Uniswap und erzielte damit enorme Erfolge. Auf dem Höhepunkt erreichte der TVL 8 Milliarden US-Dollar und liegt auch heute noch bei etwa 400 Millionen US-Dollar.

Freigabe (Approval)

Kurz gesagt: die Erlaubnis für einen Vertrag, auf einen bestimmten Token aus Ihrem Wallet zuzugreifen und diesen zu transferieren.

Aus Gründen der Bequemlichkeit verlangen viele Verträge standardmäßig eine unbegrenzte Freigabe. Viele Nutzer, die um Sicherheitsrisiken besorgt sind, zahlen nur kleine Beträge in verschiedene Protokolle ein. Diese Nutzer gewähren den Protokollen jedoch eine unbegrenzte Freigabe der Gelder; wenn ein Protokoll kompromittiert wird, könnten alle freigegebenen Token im Konto verloren gehen.

Die Schwachstelle

Nicht verifizierter externer Parameter

Der processRoute()-Aufruf des RouteProcessor2-Vertrags ermöglicht Benutzern die vollständige Kontrolle über den Aufruffluss (Parameter route). Und im uniswapV3SwapCallback() wird der Parameter from von safeTransferFrom() aus der vom Benutzer bereitgestellten route dekodiert. Infolgedessen verloren Benutzer, die den RouteProcessor2-Vertrag freigegeben hatten, ihre Vermögenswerte.

Der Angriffsprozess

Dieser Vorfall umfasste mehrere Angriffstransaktionen, aber wir verwenden die erste Angriffstransaktion als Beispiel. Transaktion: 0x43ff7e01423044cfb501b4fe9ef1386725c0ddc117dadd6e6620cb68bdeaf4f9

  1. Der Angreifer rief den anfälligen processRoute()-Aufruf des RouteProcessor2-Vertrags mit einem sorgfältig konstruierten langen Argument route auf.
  2. processRouteInternal() erstellt basierend auf der vom Benutzer bereitgestellten Route einen InputStream.
  3. Die Transaktion folgte der route des Angreifers, bis sie swapUniV3() erreichte. Beachten Sie, dass der pool aus dem stream dekodiert wird, was bedeutet, dass der Angreifer kontrollierte, in welchem pool der swap() stattfindet, indem er ihn als lastCalledPool festlegte.
  4. Dies rief den vom Angreifer bereitgestellten bösartigen Vertrag auf, der dann einfach bösartige calldata weitergab, um den uniswapV3SwapCallback() von RouteProcessor2 zurückzurufen.
  5. uniswapV3SwapCallback() erfordert eine msg.sender-Prüfung, aber da der lastCalledPool bereits auf den bösartigen Vertrag gesetzt worden war, umging der Hacker die Prüfung. Wichtig ist, dass der Parameter from von safeTransferFrom() aus den vom Angreifer konstruierten calldata dekodiert wurde.
  6. Die Vermögenswerte des Opfers werden an den vom Angreifer bereitgestellten bösartigen Vertrag übertragen.

Umstrittene Whitehat-Rettung

Es ist erwähnenswert, dass ein Whitehat mit dem Benutzernamen @trust__90 dieses Problem identifizierte und versuchte, Gelder zu retten, aber dieser Rettungsversuch verursachte ein Desaster.

  • Nutzung des Mempools zur Übertragung von Transaktionen anstelle eines privaten RPC.
  • Versuch, nur 100 Ether anstelle aller gefährdeten Gelder zu retten.

Dies öffnete Tür und Tor für MEV-Bots und andere Angreifer, mehrere Nachahmer-Transaktionen durchzuführen, wodurch effektiv der Großteil der Gelder abgezogen wurde. Nach diesen Ereignissen sah sich @trust__90 mit Gegenwind konfrontiert und versuchte, sein Handeln zu verteidigen.

BlockSec-Rettung

Bei diesem Angriff haben wir ebenfalls 100 Ether gerettet und die Gelder an das Opfer, 0xsifu, zurückgegeben.

Bis heute haben wir über 20 reale Hacks erfolgreich vereitelt und Vermögenswerte im Wert von mehr als 14.000.000 US-Dollar gerettet.

Sicherheitsempfehlungen

Upgrades sollten immer geprüft werden

Dies ist eine Erinnerung an die DeFi-Community, dass Sicherheit immer oberste Priorität haben sollte. Audits sind keine Garantie für Sicherheit, aber das Fehlen eines Audits garantiert sicherlich keine Sicherheit.

Minderungsmaßnahmen für das Freigabeproblem

Das Jahr 2023 sah zahlreiche Vorfälle mit Freigabe-Angriffen, und wir nutzen diese Gelegenheit, um die Bedeutung der Verwaltung von Freigaben erneut zu betonen. Eine bewährte Sicherheitspraxis ist es, nur die notwendigen Beträge freizugeben oder, falls Bequemlichkeit Priorität hat, einen etwas höheren Betrag als nötig freizugeben.

BlockSecs MetaSuites bietet eine praktische Funktion zur Diagnose von Freigaben. Zusätzlich können Tools wie Revoke Cash verwendet werden, um den Freigabestatus regelmäßig zu überprüfen.

Überwachungs- und automatische Reaktionsmechanismen implementieren

Ethereum ist ein dunkler Wald, und jeder in der DeFi-Community sieht sich verschiedenen Risiken und Herausforderungen gegenüber, selbst Sicherheitsexperten. Im Jahr 2023 haben wir Phalcon Security eingeführt, das branchenweit erste automatisierte Reaktionssystem, das nicht nur für die Überwachung von Angriffen, sondern für das aktive Blockieren von Bedrohungen in Echtzeit entwickelt wurde. Phalcons praxiserprobte Fähigkeiten haben ihre Wirksamkeit bewiesen, indem sie über 20 reale Hacks erfolgreich vereitelt und Vermögenswerte im Wert von mehr als 14.000.000 US-Dollar gerettet haben. Diese Innovation stellt sicher, dass alle Beteiligten nachts ruhiger schlafen können, in dem Wissen, dass proaktive Maßnahmen zum Schutz ihrer Investitionen getroffen wurden.

Lesen Sie weitere Artikel in dieser Serie:

Sign up for the latest updates
Verluste von rund 3,87 Millionen USD: Hacks bei Autheo Network und UNCX | BlockSec Weekly
Security Insights

Verluste von rund 3,87 Millionen USD: Hacks bei Autheo Network und UNCX | BlockSec Weekly

Dieser Wochenbericht behandelt 3 Sicherheitsvorfälle im Zeitraum 12.10.2026–18.10.2026 mit einem geschätzten Gesamtschaden von etwa 3,87 Millionen USD. Bei Autheo Network wurde ein privater Schlüssel kompromittiert; der Schaden betrug rund 1,76 Millionen USD. Qubic Wallet verlor aufgrund einer schwachen Seed-Generierung rund 1,30 Millionen USD. Bei den Smart Token Vesting V2-Verträgen von UNCX Network führte ein Buchführungsfehler auf Ethereum, BNB Chain, Base und Robinhood Chain zu einem Schaden von rund 807 Tausend USD. Die hervorgehobene Analyse zu UNCX erklärt, wie eine fehlerhafte Berechnung der Gesamtanteile Vesting-Tranchen zusammenführte, die mit unterschiedlichen Token-zu-Anteil-Verhältnissen erstellt worden waren, und dadurch überhöhte Entnahmen aus gemeinsamen Pools ermöglichte.

Rund 542.000 $ verloren: MakerDaoBot-Exploit | BlockSec Wochenrückblick
Security Insights

Rund 542.000 $ verloren: MakerDaoBot-Exploit | BlockSec Wochenrückblick

Ethereum, 5.–11.10.2026: 1 Vorfall, ca. 542.000 $ Verlust. Über eine ungeschützte MakerDaoBot-Funktion erhielt ein bösartiger Adapter Zugriff auf Bot-Guthaben, wickelte 4 ETH-A-Auktionen ab und tauschte 200 ETH-A in WETH; 200 ETH gingen an den Angreifer.

~418 Mio. $ verloren: Bitget- und NEAR-Intents-Exploits | BlockSec Weekly
Security Insights

~418 Mio. $ verloren: Bitget- und NEAR-Intents-Exploits | BlockSec Weekly

Dieser 14-tägige Sicherheitsbericht (21.9.–4.10.26) erfasst 8 Vorfälle mit ca. 418,4 Mio. USD Verlust auf Ethereum, BNB Chain, Solana u.a. Bitget: 387,5 Mio. USD Lücke in Drittprodukt. NEAR Intents: 3,87 Mio. USD Rückerstattungsfehler, fehlender Rollback

Best Security Auditor for Web3

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

BlockSec Audit