IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Nomad, un service de transfert de cryptomonnaies interblockchain, a perdu plus de 150 millions de dollars à cause d'une erreur de codage,
Le contrat intelligent du service est en cause

Le , par Bill Fassinou

186PARTAGES

13  0 
Des pirates auraient drainé plus de 150 millions de dollars en cryptomonnaies de Nomad, un service qui permet aux utilisateurs de transférer des jetons d'une blockchain à une autre, dans une nouvelle attaque mettant en évidence les faiblesses de la finance décentralisée (DeFi). Les chercheurs en sécurité ont révélé que la vulnérabilité exploitée par les attaquants résidait dans le contre intelligent de Nomad. Un audit du code de Nomad aurait révélé cette faille un mois plus tôt, mais l'entreprise ne l'a pas corrigée. Après l'attaque, Nomad a indiqué que son objectif était d'identifier les comptes impliqués et de tracer et récupérer les fonds.

Nomad est un protocole de pont permettant le transfert de jetons de cryptomonnaie entre différentes blockchains. En effet, toutes les blockchains se développent dans des environnements isolés et ont des règles et des mécanismes de consensus différents. Cela signifie qu'elles ne peuvent pas communiquer de manière native et que les jetons ne peuvent pas circuler librement entre les blockchains. Ainsi, les ponts existent pour connecter les blockchains, permettant le transfert d'informations et de jetons entre elles. Les ponts entre les blockchains fonctionnent exactement comme les ponts que nous connaissons dans le monde physique.

Tout comme un pont réel relie deux endroits physiques, un pont dans l'espace DeFi relie deux écosystèmes de blockchain. Les ponts facilitent la communication entre les blockchains par le transfert d'informations et d'actifs. Nomad se décrit comme un protocole d'interopérabilité optimiste qui permet une communication interblockchain sécurisée. Mais au début de la semaine, la plateforme a été vidée de ses jetons qui valent théoriquement 190,7 millions de dollars s'ils sont échangés contre des dollars américains. Nomad a reconnu l'exploit dans un tweet lundi soir, appelant les clients au calme et indiquant qu'une enquête est en cours.



« Nous sommes conscients de l'incident impliquant le pont de jetons Nomad. Nous enquêtons actuellement et fournirons des mises à jour lorsque nous les aurons. Nous travaillons 24 heures sur 24 pour remédier à la situation et nous avons informé les forces de l'ordre et fait appel à des entreprises de premier plan dans le domaine de l'intelligence et de la criminalistique des blockchains. Notre objectif est d'identifier les comptes impliqués et de tracer et récupérer les fonds », a déclaré Nomad dans un fil de discussion mardi sur Twitter. Jusque-là, Nomad n'a pas donné une explication sur la façon dont l'attaque a été orchestrée.

Cependant, un chercheur en sécurité de Paradigm portant le pseudonyme "samczsun" sur Twitter a déclaré que Nomad a été exploité à la suite d'un bogue dans ce que l'on appelle un "contrat intelligent". Comme par hasard, ce bogue semble avoir été cité parmi un certain nombre de failles identifiées dans un audit de sécurité du code de Nomad datant du 6 juin 2022. Identifié sous le nom de "QSP-19 Proving With An Empty Leaf", le rapport de l'audit signale un contrôle de validation qui accepte une valeur "bytes32" vide et recommande ce qui suit : "confirmer que l'entrée _leaf de la fonction Replica.sol:prove n'est pas vide."

La réponse de Nomad à cette recommandation a été de la rejeter, ce à quoi l'auditeur a répondu : « nous pensons que l'équipe de Nomad a mal compris la question ». Le code insuffisamment validé semble résider dans la fonction process() du Nomad ERC20 Bridge Contract (Replica.sol:process), dans une partie du programme qui a un objectif similaire à celui de la fonction prove() citée dans le rapport d'audit. Elle est censée accepter une valeur d'entrée et voir si elle fait partie d'un arbre de Merkle, une structure de données arborescente qui stocke les valeurs de données hachées dans ses nœuds de feuille.



Le code est censé vérifier les messages pour voir s'ils contiennent une racine de Merkle valide. Mais l'équipe Nomad a apparemment initialisé la racine de confiance avec la valeur 0x00, ce qui a eu pour effet de valider chaque message. Le piratage rendu possible par cette erreur de codage s'est avéré si simple que les experts en sécurité de la blockchain ont décrit l'exploit comme une "mêlée générale". Selon eux, toute personne ayant connaissance de l'exploit et de son fonctionnement pouvait profiter de la faille et retirer un certain nombre de jetons de Nomad. D'ailleurs, il a été signalé que des dizaines d'adresses ont participé au vol.

« C'est la raison pour laquelle le piratage a été si chaotique. Vous n'aviez pas besoin de connaître Solidity, les arbres de Merkle ni quoi que ce soit d'autre. Tout ce que vous aviez à faire était de trouver une transaction qui a fonctionné, de trouver/remplacer l'adresse de l'autre personne par la vôtre, puis de la relancer », a expliqué "samczsun". Ce dernier a décrit l'exploit comme "l'un des piratages les plus chaotiques que Web3 ait jamais vus" - Web3 étant une future itération hypothétique d'Internet construite autour de la technologie blockchain. Mais le Web3 ne fait pas l'unanimité, certains le considérant comme un simple "buzzword".

Entre-temps, Nomad espère récupérer au moins une partie des jetons volés, en partant du principe que certains des voleurs se sont livré à un chapardage protecteur pour épuiser les fonds afin que les personnes moins charitables n'en aient pas. Fidèle à son qualificatif d'"optimiste", Nomad a remercié "ces utilisateurs bienveillants qui auraient agi de manière proactive pour protéger les fonds". Par ailleurs, Nomad n'est pas le premier pont de l'espace DeFi qui a été piraté et vidé de ses fonds au cours des derniers. Cinq de ces ponts ont récemment été piratés, représentant plus d'un milliard de dollars de pertes pour les investisseurs.



Des vulnérabilités et une mauvaise conception ont fait des ponts une cible de choix pour les pirates qui cherchent à escroquer des millions aux investisseurs. En avril, un pont appelé Ronin a perdu 600 millions de dollars en cryptomonnaies. Les responsables américains ont attribué le piratage à l'État nord-coréen. Quelques mois plus tard, Harmony, un autre pont, a été vidé de 100 millions de dollars dans une attaque similaire. Il a également eu les piratages de : Qubit Bridge (80 millions de dollars) ; Wormhole Bridge (320 millions) ; Meter.io Bridge (4,4 millions) ; et Poly Network Bridge (610 millions qui auraient été rendus).

Comme Ronin et Harmony, Nomad était visé par une faille dans son code, mais il y avait quelques différences. Avec ces attaques, les pirates ont pu récupérer les clés privées nécessaires pour prendre le contrôle du réseau et commencer à distribuer des jetons. Dans le cas de Nomad, c'était beaucoup plus simple que cela. Une mise à jour de routine du pont a permis aux utilisateurs de falsifier des transactions et de s'emparer de millions de dollars en cryptomonnaies.

Sources : samczsun, Nomad, Rapport de l'audit du code de Nomad

Et vous ?

Quel est votre avis sur le sujet ?
Que pensez-vous de la vulnérabilité exploitée par les pirates de Nomad ?
Que pensez-vous de la finance décentralisée (DiFi) ? Ses avantages l'emportent-ils sur les inconvénients ?

Voir aussi

L'utilisation des cryptomonnaies est plus répandue dans les pays corrompus, d'après une récente étude du FMI

Christine Lagarde préoccupée par le rôle du Bitcoin dans la facilitation des activités criminelles, la présidente de la Banque centrale européenne voudrait une régulation mondiale de la cryptomonnaie

La catastrophe du marché des cryptomonnaies a fait perdre plus de 1 000 milliards de dollars de capitalisation boursière, le bitcoin chute de 9,3 % à 36 955 $

Bill Gates affirme que les cryptomonnaies et les NFT sont une imposture "basée à 100 % sur la théorie du plus grand fou", ajoutant que ces actifs sont voraces en énergie et nuisent à l'environnement

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de Bundy*Al
Membre habitué https://www.developpez.com
Le 04/08/2022 à 14:14
Mais quel amateurisme de leur part ! Dire qu'ils avaient connaissance de la faille de sécurité et qu'ils n'ont pas corrigé... On ne peut rien faire pour eux.
Quand on voit la portion de code impliqué cela a été fait à la va-vite et j'imagine qu'une revue de code d'un membre de leur équipe aurait permis de corriger le problème.
Dire que c'est le fondateur de la boîte qui a commité (sûrement pour ça qu'il n'y a pas besoin de revues et de tests).
0  0