SECURITY14. April 2022

Rarible-Marktplatz: Bösartiges NFT klaut komplette Wallet

Pop-Sänger Jay Chou beklagt den Verlust eines NFTs – im Wert einer halben Million US-Dollar. <Q> Jay Chou / Twitter
Pop-Sänger Jay Chou beklagt den Verlust eines NFTs – im Wert einer halben Million US-Dollar. Jay Chou / Twitter

Ein Design-Fehler hatte den NFT-Marktplatz Rarible angreifbar gemacht – und der taiwanesische Sänger Jay Chou verlor sein Bored-Ape-NFT für eine halbe Million Dollar. Check Point Research konnte die Schwachstelle identifizieren und dem Marktplatzbetreiber helfen. Doch die Sicherheitsforscher warnen weiterhin vor Plattformen auf Basis von Web3-Infrastruktur.

Jay Chou, Pop-Ikone aus Taiwan, hat Anfang Januar eigene NFTs auf den Markt gebracht: In Kooperation mit seiner Modemarke Phantaci und der Blockchain-Unterhaltungsplattform Ezek kamen 10.000 NFT-Stücke seiner Phanta-Bären auf den Markt. Die Versteigerung brachte ihm 10 Millionen US-Dollar ein.

Drei Monate später machte Jay Chou wieder mit NFTs von sich reden. Doch diesmal nicht als Geschäftsmann, sondern als Opfer von Cyberkriminellen. Sie hatten auf der NFT-Plattform Rarible sein Bored Ape Yacht Club (BAYC) NFT gestohlen. Das Krypto-Asset mit der Bezeichnung BoardAppe NFT 3788 wurde wenig später für 500.000 US-Dollar verkauft.

Angriffsvektor gesucht – und gefunden

Der Diebstahl erzeugte ein großes Medienecho, so wurden auch die Sicherheitsforscher von Check Point Research (CPR) darauf aufmerksam. Sie untersuchten den Marktplatz und wurden tatsächlich fündig: Das Design wies eine Lücke auf, die es ermöglichte, den Zugriff auf alle NFTs einer Wallet zu übernehmen. Für Cyberkriminelle war Rarible ein lohnendes Ziel: Der Marktplatz vermeldet 2,1 Millionen aktive Nutzer. Im vergangenen Jahr belief sich der Umsatz auf über 273 Millionen US-Dollar. 

Ausgangspunkt für einen potenziellen Fischzug stellte ein bösartiges NFT dar, das JavaScript-Code enthält. Wird es angeklickt, führt es den Code aus, der versucht, eine setApprovalForAll-Anforderung an das Opfer zu senden. Diese Anforderung bedeutet nichts anderes, als dass dem Angreifer das Recht eingeräumt wird, über sämtliche in der Wallet vorhandene NFTs zu verfügen. Marktplätze wie Rarible und OpenSea haben diese Funktion entwickelt, um NFTs oder andere Krypto-Tokens im Namen der Benutzer zu kontrollieren.

Doch die Funktion ist potenziell gefährlich, denn sie kann Rechte auch auf andere Nutzer übertragen. Und tatsächlich war bereits im Oktober 2021 die setApprovalForAll-Anforderung auch beim OpenSea-Marktplatz für Diebstähle verwendet worden. Benutzern ist nicht immer klar, welche Berechtigungen sie durch das Signieren einer solchen Anforderung erteilen. Da die Transaktion nicht von außen, sondern von Marktplatz selbst kommt, weckt sie nur in den seltensten Fällen das Misstrauen der Nutzer.

Eine scheinbar harmlose Meldung – die bei Bestätigung den Verlust der gesamten Wallet zur folge hätte haben können. <Q>Check Point Software
Eine scheinbar harmlose Meldung – die bei Bestätigung den Verlust der gesamten Wallet zur Folge hätte haben können. Check Point Software

Die CPR-Sicherheitsforscher entwickelten ein SVG-Bild und versahen dieses mit bösartigem Code. Wurde das Bild angeklickt, kam eine Meldung, wonach eine neue Adresse entdeckt worden sei, die zum Adressbuch hinzugefügt werden sollte. Drückt der Nutzer jetzt auf den Button „Bestätigung“, durchläuft die Routine alle NFTs der Wallet und gibt dem Angreifer vollen Zugriff.

Alle technischen Details hat CPR hier veröffentlicht: https://research.checkpoint.com/2022/check-point-research-detects-vulnerability-in-the-rarible-nft-marketplace-preventing-risk-of-account-take-over-and-cryptocurrency-theft/

Prinzipielle Probleme

Check Point Research steckt erhebliche Ressourcen in das Spannungsfeld von Kryptowährungen bzw. Krypto-Assets und IT-Sicherheit, betont Oded Vanunu, Head of Products Vulnerabilities Research bei Check Point Software Technologies. Im Rahmen dessen beobachten die Sicherheitsforscher nach wie vor große Anstrengungen von Cyber-Kriminellen, die versuchen, große Gewinne aus Krypto-Währungen zu schlagen. das gilt insbesondere für NFT-Marktplätze wie OpenSea im Oktober letzten Jahres oder jetzt bei Rarible. In Sachen Sicherheit klafft immer noch eine große Lücke zwischen der Web2- und der Web3-Infrastruktur, warnt Vanunu:

<Q>Check Point Software
Check Point Software

Jede kleine Schwachstelle öffnet Hackern eine Hintertür, um Krypto-Wallets hinter den Kulissen zu kapern. Wir befinden uns immer noch in einem Zustand, in dem Marktplätze, die Web3-Protokolle kombinieren, keine solide Sicherheitspraxis aufweisen.“

Oded Vanunu, Check Point Software Technologies

Die Folgen seien zum Teil erheblich – man habe gesehen, wie Millionen von US-Dollar von Nutzern von Marktplätzen, die Blockchain-Technologien kombinieren, erbeutet wurden. Derzeit rechnet er mit einer weiteren Zunahme von diesen Diebstählen. Daher wird CPR die Auswirkungen der neuen Blockchain-Technologie auf die Sicherheit weiter erforschen.

Schutz-Strategien

CPR empfiehlt, vorsichtig und aufmerksam zu sein, wenn man Anfragen zur Unterzeichnung auf solchen Marktplätzen erhält, auch innerhalb des Marktplatzes selbst. Bevor die Nutzer eine Anfrage genehmigen, sollten sie sorgfältig prüfen, was verlangt wird, und überlegen, ob die Anfrage ungewöhnlich oder verdächtig erscheint. Im Zweifelsfall sollten sie die Anfrage ablehnen und sie weiter prüfen, bevor sie eine Genehmigung erteilen. Den Benutzern wird zudem empfohlen, Token-Genehmigungen unter diesem Link zu prüfen und im Zweifel zu widerrufen.

Daneben hat Vanunu noch einen zweiten Tipp, mit dem sich potenzielle Verluste begrenzen lassen. Er empfiehlt, zwei Arten von Wallets zu führen. Eine für den Großteil der Krypto-Währungen, und eine weitere, über die für gewöhnlich Transaktionen ausgeführt werden. Sollte nur die Wallet für die Transaktionen attackiert werden, bliebe der größte Teil der Krypto-Assets in der anderen „Brieftasche“ unbehelligt. hj

Schreiben Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert