Une vulnérabilité sur OpenSea a permis à des hackers de vider les portefeuilles de crypto-monnaies des utilisateurs et utilisatrices de la plateforme.
Les attaquants ont offert des NFT contenant du code malveillant à leurs victimes afin de pouvoir accéder à leurs comptes dès qu'elles cliquaient dessus.
Une simple image malveillante nécessaire
Sur Twitter, plusieurs utilisateurs et utilisatrices d'OpenSea, la populaire plateforme de vente et d'achat de NFT, ont indiqué avoir perdu le contenu de leur portefeuille de crypto-monnaie après avoir accepté un cadeau sur la plateforme. Suite à ces témoignages, les chercheurs de l'entreprise Check Point ont décidé de se pencher sur la question et ont trouvé une vulnérabilité.
Première étape nécessaire pour que l'attaque fonctionne, créer un NFT malveillant. OpenSea permet à tout le monde d'uploader des images pour créer un NFT et les chercheurs ont donc opté pour une image en format SVG. Ils ont ajouté à celle-ci du code JavaScript malveillant ainsi qu'un iFrame qui charge du HTML et leur donne accès à « window.ethereum », nécessaire pour pouvoir établir des communications avec le portefeuille de la victime.
Deuxième étape, faire en sorte que l'utilisateur ou utilisatrice se connecte à son portefeuille. Si la victime clique sur l'image malveillante, le pop-up de connexion à son portefeuille s'affichera. Une demande inhabituelle sur la plateforme, où aucune identification n'est nécessaire pour voir une image, mais cette connexion étant demandée pour de nombreuses autres actions, la victime peut s'exécuter malgré tout par habitude. Pour récupérer l'argent, l'attaquant doit faire apparaître une deuxième pop-up demandant à la victime de signer une transaction entre leurs deux comptes. Check Point note que ces pop-up sont standards sur les plateformes et qu'en ne lisant pas attentivement, la victime peut valider l'action, encore une fois par habitude.
Une vulnérabilité corrigée en une heure
Cette vulnérabilité est dangereuse pour deux raisons. Premièrement, les URL des images ouvertes dans un nouvel onglet utilisent un sous-domaine d'OpenSea. C'est également le cas de la page HTML intégrée par les attaquants grâce à <iframe>, ce qui peut faire croire aux victimes qu'elles continuent d'interagir avec la plateforme. Deuxièmement, chaque pop-up est parfaitement légitime, les demandes proviennent juste d'un acteur malveillant plutôt que d'une plateforme sûre.
Check Point a partagé ses découvertes avec OpenSea le 26 septembre. La plateforme a réagi très rapidement, corrigeant la vulnérabilité une heure après la notification de l'entreprise. De son côté, OpenSea a déclaré « ne pas avoir été en mesure d'identifier des cas où cette vulnérabilité a été exploitée » mais de continuer à travailler avec ses partenaires pour protéger ses utilisateurs et utilisatrices et les éduquer sur les risques qu'ils encourent.
Les chercheurs de Check Point continuent de conseiller la plus grande prudence lors de la connexion à son portefeuille sur des sites et de lire attentivement toute demande de transaction avant de l'approuver. Entre ce genre de vulnérabilités et de potentielles arnaques présentes sur les plateformes, méfiance est donc parfois de mise en ce qui concerne les NFT.
Sources : BleepingComputer, Check Point