Zum Inhalt springen
Gegr. MMXXVIBd. VI · № 273RSS
Blockchain Breaches

Ein Archiv von Sicherheitsvorfällen im Kryptobereich — Hacks, Exploits, Bridge-Ausfälle und Rug Pulls, dokumentiert mit On-Chain-Belegen.

Dossier № 086Reentrancy

Revest Finance FNFT-Reentrancy

2 Mio. $ aus Revest Finance durch eine Reentrancy in depositAdditionalToFNFT abgezogen — Angreifer mintete überbewertete NFTs und löste sie ein.

Datum
Chain(s)
Status
Mittel entwendet

Am 27. März 2022 verlor Revest Finance — ein Protokoll für "Financial NFTs" (FNFTs), die zeitgesperrte oder strukturierte Token-Positionen tokenisieren — etwa 2 Millionen $ durch einen Reentrancy-Angriff auf seinen FNFT-Mint-Pfad. Der Angreifer mintete FNFTs, die mehr Wert repräsentierten als eingezahlt, und löste sie dann gegen die Reserven des Protokolls ein.

Was geschah

Revests FNFTs repräsentieren Ansprüche auf hinterlegte Tokens (Vesting-Positionen, gesperrte Tokens, strukturierte Produkte). Der Mint-/Einzahlungs-Flow verfolgte den zugrundeliegenden Saldo jedes FNFT.

Der fatale Fehler war eine Reentrancy im depositAdditionalToFNFT/Mint-Pfad: Die Funktion übertrug Tokens und aktualisierte die FNFT-Buchhaltung in einer Reihenfolge, die es dem Callback des Token-Transfers erlaubte, wieder in die Mint-Logik einzutreten, bevor die Buchhaltung abgeschlossen war.

Der Angriff:

  1. Verwendete einen Token (oder Pfad), der während des Einzahlungs-Transfers einen Callback auslöste.
  2. Trat erneut in die FNFT-Mint-/Einzahlungs-Funktion ein mitten in der Operation, bevor die Buchhaltung der ersten Einzahlung finalisiert war.
  3. Die wiedereintretenden Aufrufe schrieben dem FNFT des Angreifers mehr zugrundeliegenden Wert gut, als tatsächlich eingezahlt wurde — die klassische Reentrancy "Saldo aktualisiert nach externem Aufruf".
  4. Löste die überbewerteten FNFTs gegen die echten Token-Reserven des Protokolls ein.
  5. Ging mit ~2 Mio. $, über Tornado Cash gewaschen.

Folgen

  • Revest Finance pausierte das Protokoll und veröffentlichte ein Post-Mortem.
  • Ein Kompensationsplan wurde vorgeschlagen; Wiederherstellung vom Angreifer war minimal.
  • Das Ansehen des Protokolls wurde erheblich beschädigt; FNFTs als Kategorie gewannen danach keine Mainstream-Traktion.

Warum es wichtig ist

Revest Finance ist ein weiterer Eintrag in der Einzahlungspfad-Reentrancy-Linie, die durch den gesamten Katalog verläuft — The DAO (2016), Cream AMP (2021), Grim Finance (2021), Voltage Finance (2022), Penpie (2024). Die wiederkehrende Form: Eine Funktion überträgt Tokens und aktualisiert interne Buchhaltung, der Transfer kann einen Callback auslösen, und der Callback tritt wieder ein, bevor die Buchhaltung abgeschlossen ist — was die Invariante verletzt, von der die Solvenz des Protokolls abhängt.

Die strukturelle Lektion ist die älteste in der Smart-Contract-Sicherheit und die meist wiederholte: Checks-Effects-Interactions plus ein Reentrancy-Guard auf jedem zustandsändernden Pfad, der externe Aufrufe macht, ohne Ausnahmen. Revests Verlust war vergleichsweise klein (2 Mio. $), aber es ist eine saubere Instanz eines Protokolls, das ein neuartiges Primitiv (Financial NFTs) einführt und dabei die Bedingungen für den fundamentalsten Solidity-Bug wiederherstellt. Jede neue Abstraktionsschicht ist eine frische Gelegenheit, Reentrancy wieder einzuführen — die Angriffsfläche schrumpft nicht, wenn das Ökosystem reift, sie bewegt sich nur dorthin, wo der neueste Code ist.

Quellen & On-Chain-Belege

  1. [01]halborn.comhttps://www.halborn.com/blog/post/explained-the-revest-finance-hack-march-2022
  2. [02]therecord.mediahttps://therecord.media/2-million-stolen-from-defi-protocol-revest-finance-platform-unable-to-reimburse-victims
  3. [03]rekt.newshttps://rekt.news/revest-finance-rekt

Verwandte Einträge