Decentralized Finance ist unabstreitbar einer der großen Hypes in diesem Jahr. Wer auf die nackten Zahlen zum Thema DeFi blickt, der sieht vor allem starke Zuwächse bei der Marktkapitalisierung vieler DeFi-Tokens. Parallel dazu sehen wir einen Anstieg der Gelder, die in DeFi-Protokollen gelocked sind. Diese beiden Komponenten sind wohl die optimalen Voraussetzungen für Hacker, die auf der Suche nach Sicherheitslücken sind.
Und so kam es zum bZx Hack, bei dem Angreifer eine Lücke im Protokoll ausnutzten, um 8 Millionen Dollar in ETH, LINK und diversen Stablecoins zu erbeuten. Was ist passiert?
bZx Hack: Die Chronologie im Blick
Die Story beginnt am Morgen des 13. Septembers. User des Protokolls sowie das Team hinter bZx selbst nutzten Twitter, um DeFi-Benutzer zu warnen, dass etwas mit dem Protokoll nicht in Ordnung sei. Dabei hieß es zu Beginn, dass die Unstimmigkeiten des auf Ethereum basierenden Projekts zu keinerlei Verlusten geführt hätten. Anders formuliert: Es seien keine Gelder der Anwender verloren gegangen.
Da die Plattform jedoch bereits zum Beginn des Jahres mit einem Hackerangriff konfrontiert war, zeigten sich einige User mehr als skeptisch. Spätestens als Meldungen kursierten, dass Coins wie ETH, LINK oder auch Stablecoins im Wert von Millionen US-Dollar an einen externen Account flossen, wurde einigen Usern bewusst, dass die ursprüngliche Aussage des Projekt-Teams nicht der Wahrheit entspricht.
Kyle Kistner, einer der Co-Founder und Entwickler, melde sich einige Stunden mit folgenden Worten:
Jeder ERC20-Token hat eine TransferFrom()-Funktion. Diese ist für den Transfer von Token verantwortlich. Dabei gelang es den Hackern, diese Funktion zu nutzen, um einen iToken zu erstellen und diesen auf sich selbst zu übertragen. Sie konnten somit ihren Kontostand künstlich erhöhen.
Beim bZx Hack verwendete der Angreifer diesen „Trick“, um über mehrere Stunden hinweg (!) Tausende von LINK, ETH und Stablecoins zu erstellen. Das Ergebnis: Der Hacker bereicherte sich um rund 8 Millionen Dollar.
Fehler im Protokoll war bereits bekannt
Marc Thalen mag einigen Lesern bekannt sein. Er arbeitet als Software-Ingenieur und Entwickler bei Bitcoin.com. Thalen darf man insofern durchaus ein mächtiges Wissen im Bereich Entwicklung von Kryptowährungen attestieren.
Dabei zeigte Thalen nun in einer vierteiligen Tweet-Reihe, dass er das Team auf die Fehler im Protokoll aufmerksam machte. „Tragischerweise“ war zu dieser Zeit keiner wach. Thalen selbst nutzte den Fehler aus, um einen Proof zu liefern, dass das Protokoll anfällig für Angriffe sein.
1/4 Last night I found an exploit in BRZX. I noticed that a user were capable of duplicating “i tokens”. There was 20+ million $ at risk. I informed the team telling them to stop the protocol and explained the exploit to them. At this point none of the founders were up.. pic.twitter.com/MdJqOH2IPu
— Marc Thalen (@MarcThalen) September 14, 2020