Partager cet article

Les plateformes d'échange de Crypto suspendent leurs services en raison de bugs contractuels

Une paire de bugs récemment publiés permet à un attaquant de créer un nombre excessif de jetons ERC-20

Il a été découvert qu'une douzaine ou plus de contrats intelligents ERC-20 basés sur Ethereum contenaient des bugs qui permettent aux attaquants de créer autant de jetons qu'ils le souhaitent.

Bien que les bugs – identifiés pour la première fois le 22 avril <a href="https://peckshield.com/2018/04/22/batchOverflow/">(https://peckshield.com/2018/04/22/batchOverflow/</a> ) et le 24 avril <a href="https://peckshield.com/2018/04/25/proxyOverflow/">(https://peckshield.com/2018/04/25/proxyOverflow/</a> ) respectivement, dans deux publications publiées par PeckShield, une entreprise spécialisée dans la sécurité blockchain – ne soient T liés à la norme ERC-20 elle-même, ils ont incité plusieurs plateformes d'échange à suspendre leurs jetons ERC-20 pendant leurs investigations. Parmi ces plateformes, on compte OKEx,Poloniex,Changelly,Quoine et HitBTC.

Продолжение Читайте Ниже
Ne manquez pas une autre histoire.Abonnez vous à la newsletter Crypto for Advisors aujourd. Voir Toutes les Newsletters

Huobi.Pro

Poloniex a annoncé séparément le 25 avril la suspension de toutes les cryptomonnaies, mais a depuis limité cette suspension aux jetons ERC-20. Au moment de la mise sous presse, Poloniex avait décidé de rétablir les services pour les jetons ERC-20.

Dans un exemple, un attaquant a transféré un nombre impressionnant de 57,9 * 10^57 jetons BeautyChain, comme le montrent les données de transaction. sur Etherscan– le 22 avril, un développement qui a déclenché l’enquête initiale sur la question.

« Notre étude montre que ce transfert provient d'une attaque en temps réel exploitant une vulnérabilité jusqu'alors inconnue du contrat. Pour plus de détails, nous avons appelé cette vulnérabilité batchOverflow », explique PeckShield dans son article du 22. « Nous soulignons que batchOverflow est essentiellement un problème classique de dépassement d'entier. »

D'innombrables pièces

L'article batchOverflow explique comment la fonction batchTransfer d'un contrat fixe un nombre maximal de jetons pouvant être envoyés lors d'une transaction, précisant que la valeur des jetons transférés doit être inférieure au nombre total de jetons générés. Cependant, le paramètre « _value » – ONEun des deux qui déterminent le nombre total de jetons – peut être manipulé, ce qui modifierait une autre variable, permettant ainsi à un attaquant de créer autant de jetons qu'il le souhaite.

De plus, l’attaquant peut contourner les barrières du contrat qui garantiraient normalement qu’un nombre raisonnable de jetons sont transférés.

"Avec montant« Si la valeur est mise à zéro, un attaquant peut alors passer les contrôles de cohérence des lignes 258 à 259 et rendre la soustraction de la ligne 261 non pertinente », explique le message, notant :

« Enfin, voici la partie intéressante : comme le montrent les lignes 262 à 265, le solde des deux récepteurs serait ajouté par la valeur extrêmement élevée sans coûter un centime à l'attaquant ! »

Bien que les rapports initiaux indiquent que tous les jetons ERC-20 peuvent être affectés, la fonction « batchTransfer » ne fait pas partie de la norme de jeton.

La publication Medium ne mentionnait pas les projets vulnérables, mais précisait que BeautyChain était le premier projet découvert. Signe de la gravité de ce bug, OKExditle 24 avril, il annulait les transactions sur le jeton BeautyChain.

L'échange a également annoncé à cette époque qu'à la lumière des bugs, il suspendait les dépôts et les retraits d'un projet appeléSmartMeshtransactions en raison d'« activités commerciales anormales ». PeckShield a noté que cela était peut-être dû àbogue proxyOverflow, qui, comme batchOverflow, est un problème classique de dépassement d'entier. Certaines variables peuvent être manipulées pour générer spontanément de grandes quantités de jetons.

Un utilisateur de Twitter a noté qu'un attaquant a créé 5 octodécillions de dollars en jetons SmartMesh.

Comme l’a noté ONEun des articles, il existe un danger que quelqu’un puisse utiliser une Cryptomonnaie vulnérable pour manipuler les prix en sa faveur en négociant avec du Bitcoin, de l’éther ou une autre paire de trading.

Les représentants des projets BeautyChain et SmartMesh n'ont pas immédiatement répondu aux demandes de commentaires. Cependant, une déclaration a été publiée sur le site web de BeautyChain.reconnaît le buget indique que les échanges reprendront à un moment indéterminé dans le futur.

De même, SmartMesh a annoncé qu'il prendrait des mesures pour empêcher la manipulation des prix, en déclarant :

« La Fondation SmartMesh prendra la quantité équivalente de SMT à la quantité contrefaite et la détruira pour compenser les pertes causées, et KEEP l'approvisionnement total de SMT à la valeur de 3 141 592 653. »

Fabian Vogelsteller, le développeur qui a proposé pour la première fois la norme ERC-20, a déclaré à CoinDesk que les bugs « montrent simplement que nous avons besoin de meilleures pratiques et de meilleurs outils pour détecter ces erreurs ».

Note:Cet article a été mis à jour avec un commentaire d'un développeur et pour clarifier le rôle de PeckShield dans la découverte des bugs.

Image de billesvia Shutterstock

Nikhilesh De

Nikhilesh De est rédacteur en chef de CoinDesk pour la Juridique et la réglementation mondiales. Il couvre les régulateurs, les législateurs et les institutions. Lorsqu'il ne traite pas des actifs numériques et des Juridique, on le trouve en train d'admirer Amtrak ou de construire des trains LEGO. Il possède moins de 50 $ en BTC et moins de 20 $ en ETH. Il a été nommé Journaliste de l'année 2020 par l'Association des journalistes et chercheurs en Cryptomonnaie .

Nikhilesh De