Zurück zum Blog

Preismanipulationsangriff in der Realität (erneut): RariCapital-Vorfall

Code Auditing
9. Mai 2021
4 Min. Lesezeit

Am 8. Mai berichtete Peckshield über einen Sicherheitsvorfall bei RariCapital. Nach sorgfältiger Untersuchung stellten wir fest, dass es sich um eine Art Preismanipulationsangriff (indirekt) handelt, wie er in unserer Arbeit beschrieben wurde: DeFiRanger: Detecting Price Manipulation Attacks on DeFi Applications. In der Arbeit konzentrieren wir uns auf die Erkennung von zwei Arten neuer Angriffe auf DeFi-Anwendungen, einschließlich direkter und indirekter Preismanipulationsangriffe. Ersteres bedeutet, dass ein Angreifer den Token-Preis in DEX direkt manipuliert, indem er einen unerwünschten Handel in derselben DEX durchführt, indem er die anfällige DeFi-App angreift. Letzteres bedeutet, dass ein Angreifer den Token-Preis der anfälligen DeFi-App indirekt manipuliert. Dieser Sicherheitsvorfall ist ein Beispiel für einen indirekten Preismanipulationsangriff.

Grundursache

Wir analysierten die Grundursache des Angriffs und stellten fest, dass die unsichere Preisabhängigkeit der Grund dafür ist. Insbesondere hängt der Preis des LP-Tokens von Rari vom von Rari gehaltenen LP-Token-Wert ibEth (in Ether) ab. Leider kann der Preis des ibEth LP-Tokens von Angreifern manipuliert werden, die die Funktion work von ibEth aufrufen.

Rari_token_value_held_by_attacker = eth_reserve_in_Rari * Rari_token_number/Rari_token_total_supply

ibEth_token_value_held_by_Rari = eth_reserve_in_ibEth * ibEth_token_number/ibEth_token_total_supply

Die eth_reserve_in_Rari wird durch ibEth_token_value_held_by_Rari beeinflusst, die vom Angreifer durch Erhöhung der eth_reserve_in_ibEth (durch Aufruf der work-Funktion) manipuliert wird.

Mit unserem System DefiRanger stellen wir die im Diagramm dargestellte DeFi-Semantik einfach wieder her. Die Anzahl der LP-Token beim Liquiditätsabbau (Einzahlung von Ether gegen LP-Token) und bei der Liquiditätsstornierung (Abhebung von LP-Token gegen Ether) ist unterschiedlich (mit dem roten Kreis) bei gleicher Ether-Menge (mit grünem Hintergrund).

Angriffsprozess

Der Angriffsprozess ist in den folgenden Schritten dargestellt.

  1. Der Angreifer ruft die Funktion work von ibEth auf.
  2. Diese Funktion ruft die Funktion SushiswapGoblin.work auf, die weiter den vom Angreifer kontrollierten Vertrag aufruft (0x2f755e8980f0c2e81681d82cccd1a4bd5b4d5d46).
  1. Der Vertrag zahlt zunächst 58903,4755276693 Ether (aus einem Flash-Loan geliehen) in Rari ein und erhält den LP-Token von Rari (146281892117489076580650).
  2. Der Angreifer überweist 3818,9022134987213 Ether in ibEth. Dies ist der entscheidende Schritt, der den Preis des LP-Tokens von ibEth erhöht (ohne seine Gesamtmenge zu beeinflussen). Dies beeinflusst weiter den Preis des LP-Tokens von Rari. Der Grund dafür ist, dass die gesamte Ether-Reserve in Rar's Pool aufgrund des gestiegenen Preises des von ihm gehaltenen ibEth LP-Tokens zunimmt. Beachten Sie, dass der Angreifer den Token-Preis von Rari oder ibEth nicht durch Hinzufügen von Liquidität manipulieren kann, da dies auch die Gesamtmenge des Tokens erhöhen würde.
  3. Der Angreifer zieht den Ether ab. Da der Preis des Rari-Tokens höher ist, kann der Angreifer weniger Rari LP-Token (146196247321127203315331 anstelle von 146281892117489076580650) verwenden, um die gleiche Menge Ether zu erhalten, um den Flash-Loan zurückzugeben.
  1. Der Angreifer erhält den zurückgegebenen Ether am Ende der work-Funktion.

Zusammenfassung

Zusammenfassend lässt sich sagen, dass die von RariCapital erlittene Sicherheitslücke eine deutliche Erinnerung an die ausgeklügelten Bedrohungen ist, die über DeFi-Anwendungen lauern. Durch eine clevere Ausnutzungsstrategie führten Angreifer einen indirekten Preismanipulationsangriff durch. Der Vorfall hat kritische Schwachstellen im Zusammenhang mit der Verwendung unsicherer Preisabhängigkeiten in Smart Contracts aufgedeckt. Dieser Angriff unterstreicht die dringende Notwendigkeit für DeFi-Projekte, robuste Erkennungssysteme wie DeFiRanger einzuführen, um sich sowohl vor direkten als auch indirekten Manipulationstaktiken zu schützen, die die Integrität und Sicherheit des aufstrebenden DeFi-Ökosystems bedrohen.

Über BlockSec

BlockSec ist ein wegweisendes Blockchain-Sicherheitsunternehmen, das 2021 von einer Gruppe weltweit renommierter Sicherheitsexperten gegründet wurde. Das Unternehmen engagiert sich für die Verbesserung der Sicherheit und Benutzerfreundlichkeit der aufstrebenden Web3-Welt, um deren Massenadoption zu ermöglichen. Zu diesem Zweck bietet BlockSec Audits für Smart Contracts und EVM-Ketten, die Phalcon-Plattform für die Sicherheitsentwicklung und proaktive Bedrohungsabwehr, die MetaSleuth-Plattform für die Verfolgung von Geldern und Ermittlungen sowie die MetaDock-Erweiterung für Web3-Entwickler, die effizient im Krypto-Bereich navigieren.

Bis heute hat das Unternehmen über 300 angesehene Kunden wie MetaMask, Uniswap Foundation, Compound, Forta und PancakeSwap betreut und in zwei Finanzierungsrunden von namhaften Investoren, darunter Matrix Partners, Vitalbridge Capital und Fenbushi Capital, zweistellige Millionenbeträge in US-Dollar erhalten.

Offizielle Website: https://blocksec.com/

Offizieller Twitter-Account: https://twitter.com/BlockSecTeam

Für die neuesten Informationen anmelden
Über die sichere Speicherung hinaus, Teil 2: Wallet-Kryptografie sicher implementieren
Security Insights

Über die sichere Speicherung hinaus, Teil 2: Wallet-Kryptografie sicher implementieren

Kann ein Angreifer einen privaten Schlüssel rekonstruieren, ohne dessen geschützte Kopie auszulesen? Teil 2 von Beyond Secure Storage untersucht sechs Vorfälle, bei denen schwache Zufallszahlen, Entropieverlust oder Fehler bei Signatur-Nonces Schlüssel vorhersagbar oder rekonstruierbar machten. Daraus leitet er Anforderungen an die Implementierung der Schlüsselerzeugung und des Signierens ab und erläutert anschließend, wie Zahlungsinstitute deren Einhaltung durch Code-Reviews und Tests des produktiv eingesetzten Systems überprüfen können.

Über sichere Speicherung hinaus, Teil 1: Sichere Zahlungs- und Signaturabläufe gestalten
Security Insights

Über sichere Speicherung hinaus, Teil 1: Sichere Zahlungs- und Signaturabläufe gestalten

Wie kann ein nicht autorisierter Vorgang eine gültige Signatur erhalten, ohne dass der Angreifer den privaten Schlüssel stiehlt? Teil 1 von Beyond Secure Storage untersucht anhand von Vorfällen bei Bitget, Bybit und Binance Autorisierungsfehler bei Zahlungsanforderungen, der Erstellung, Signierung und Ausführung von Transaktionen sowie bei deren Abwicklung. Daraus leitet er Gestaltungsprinzipien ab, um nicht autorisierte Vorgänge zu verhindern und Verluste zu begrenzen. Anschließend erläutert er, wie Überprüfungen, Audits, Penetrationstests und Übungen diese Schutzmaßnahmen verifizieren können.

NEAR-Intents-Exploit: Fehler bei der Rückerstattung und Lehren für die Sicherheit
Security Insights

NEAR-Intents-Exploit: Fehler bei der Rückerstattung und Lehren für die Sicherheit

Beim Exploit von NEAR Intents wurden überdimensionierte Rückerstattungsereignisse genutzt, um interne Guthaben zu erhalten, nachdem die eingezahlten Vermögenswerte zurückgegeben worden waren. Diese Analyse rekonstruiert den Ablauf der Receipts und sieben Auszahlungen auf der BNB Chain in Höhe von insgesamt 3.865.021 USDT. Sie unterscheidet diese Mittelabflüsse von der vom Projekt gemeldeten vollständigen Rückgewinnung der Mittel und erläutert Sicherheitsaspekte bei der Entwicklung und Prüfung von NEAR-Smart-Contracts.

Der beste Sicherheitsauditor für Web3

Lassen Sie Design, Code und Geschäftslogik vor dem Launch prüfen. Nach den höchsten Sicherheitsstandards der Branche.

BlockSec-Audit
Preismanipulationsangriff in der Realität (erneut): RariCapital-Vorfall