Nomad, service de transfert de crypto-monnaie interblockchain, perd plus de 150 millions de dollars en raison d’erreurs de codage, des contrats intelligents de service à blâmer

Written By Sara Rosso

Rédactrice passionnée, Sara vous présente les nouveaux faits d'actualité 

&#xD ;

Les pirates auraient drainé plus de 150 millions de dollars en crypto-monnaies de Nomad, un service qui permet aux utilisateurs de transférer des jetons d’une blockchain à une autre, dans une nouvelle attaque exposant 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 compteur 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 déclaré que son objectif était d’identifier les comptes impliqués et de retrouver et récupérer les fonds.

Nomad est un protocole pont permettant le transfert de jetons de crypto-monnaie 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’ils ne peuvent pas communiquer de manière native et que les jetons ne peuvent pas circuler librement entre les blockchains. Ainsi, des passerelles existent pour relier 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 vrai pont relie deux emplacements physiques, un pont dans l’espace DeFi relie deux écosystèmes de blockchain. Les ponts facilitent la communication entre les blockchains en transférant des informations et des actifs. Nomad se décrit comme un protocole d’interopérabilité optimiste qui permet une communication interblockchain sécurisée. Mais plus tôt cette 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 à se calmer et affirmant qu’une enquête était en cours.

&#xD ;

« Nous sommes au courant de l’incident impliquant le pont à 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 avons informé les forces de l’ordre et fait appel à des entreprises leaders dans le domaine du renseignement et de la criminalistique blockchain. Notre objectif est d’identifier les comptes impliqués et de retracer et récupérer les fonds », a déclaré Nomad dans un fil Twitter mardi. Jusqu’à présent, Nomad n’a pas donné d’explication sur la manière dont l’attaque a été orchestrée.

À Lire  Hyundai : technologie V2G mise en œuvre dans la ville d'Utrecht

Cependant, un chercheur en sécurité de Paradigm avec le pseudo « samczsun » sur Twitter a déclaré que Nomad avait été exploité suite à un bug dans ce qu’on appelle un « contrat intelligent ». Par coïncidence, ce bogue semble avoir été cité parmi un certain nombre de failles identifiées dans un audit de sécurité du code Nomad daté du 6 juin 2022. Identifié comme « QSP-19 Proving With An Empty Leaf », le rapport de l’audit rapporte un contrôle de validation qui accepte une valeur « bytes32 » vide et recommande ce qui suit : « confirmez 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 Nomad a mal compris la question. » Le code insuffisamment validé semble résider dans la fonction process() du contrat Nomad ERC20 Bridge (Replica.sol:process), dans une partie du programme qui a un objectif similaire à la fonction proof() citée dans le rapport d’audit. Il est censé accepter une valeur d’entrée et voir si elle fait partie d’un arbre Merkle, une structure de données arborescente qui stocke des valeurs de données hachées dans ses nœuds feuilles.

&#xD ;

Le code est censé vérifier les messages pour voir s’ils contiennent une racine 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 un « gratuit pour tous ». Selon eux, toute personne connaissant l’exploit et son fonctionnement pourrait profiter de la faille et retirer un certain nombre de jetons à Nomad. Soit dit en passant, il a été rapporté que des dizaines d’adresses ont participé au vol.

« C’est pourquoi le piratage a été si chaotique. Vous n’aviez pas besoin de connaître Solidity, les arbres Merkle ou quoi que ce soit d’autre. Tout ce que vous aviez à faire était de trouver une transaction qui fonctionnait, 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 hacks 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èrent comme un simple « buzzword ».

À Lire  Hostinger Review (2022): Est-ce le meilleur hébergeur Web?

En attendant, Nomad espère récupérer au moins une partie des jetons volés, en supposant que certains des voleurs se sont livrés à un vol de protection pour épuiser les fonds afin que les personnes moins charitables n’en aient pas. Fidèle à son label « optimiste », Nomad a remercié « ces utilisateurs bienveillants qui auraient agi de manière proactive pour protéger les fonds ». Incidemment, Nomad n’est pas le premier pont de l’espace DeFi qui a été piraté et vidé de ses fonds ces derniers temps. Cinq de ces ponts ont récemment été piratés, ce qui représente plus d’un milliard de dollars de pertes pour les investisseurs.

&#xD ;

Les vulnérabilités et la mauvaise conception ont fait des ponts une cible de choix pour les pirates qui cherchent à escroquer des millions d’investisseurs. En avril, un pont appelé Ronin a perdu 600 millions de dollars en crypto-monnaies. 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 lors d’une attaque similaire. Il avait également les hacks de : Qubit Bridge (80 millions de dollars) ; Pont Wormhole (320 millions); Pont Meter.io (4,4 millions) ; et Poly Network Bridge (610 millions auraient été retournés).

Comme Ronin et Harmony, Nomad était ciblé par une faille dans son code, mais il y avait quelques différences. Grâce à 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 pont de routine a permis aux utilisateurs de simuler des transactions et de voler des millions de dollars en crypto-monnaies.

Sources : samczsun, Nomad, rapport d’audit du code Nomad

Quelle est votre opinion sur le sujet ?