Plus de 600 millions de dollars en cryptomonnaies ont été volés sur la plateforme Poly Network. Le vol, remarquable par son ampleur, n'en est pourtant peut-être pas un : le hacker a rendu une partie de l'argent.

Le 10 août 2021, la nouvelle tombe : un hacker a volé plus de 600 millions de dollars en cryptomonnaies aux utilisateurs de Poly Network. La somme très importante et la communication de Poly Network font instantanément parler, et l’histoire se retrouve vite au coeur de nombreuses discussions.

Ce sont en effet les responsables de Poly Network qui ont annoncé le hack sur leur compte Twitter. « Nous sommes navrés de vous annoncer que Poly Network a été attaqué sur les blockchains de Binance, Ethereum et Poplygon. Les actifs volés ont été transférés aux portefeuilles du hacker à [trois adresses différentes] », ont annoncé les responsables de Poly Network sur Twitter le 10 août, quelques heures après le vol.

Personne ne sait comment le hacker a pu faire, ni combien de temps il a travaillé sur le hack. On ne sait pas s’il — ou elle — est seul, ou s’il s’agit d’un groupe de hackers. Pendant un temps, des rumeurs de corruptions et de sabotage courent, et sur les réseaux sociaux, tout le monde y va de se théorie. Mais, au final, le « plus gros hack de l’histoire des cryptomonnaies  » n’en est peut-être pas un.

Qu’est-ce que Poly Network ?

Poly Network est un protocole d’interopérabilité entre blockchains, spécialisé dans le secteur de la finance décentralisée. Les protocoles d’interopérabilité sont des processus relativement nouveaux, développés afin de faciliter l’échange d’informations entre blockchains. En effet, les blockchains sont toutes indépendantes les unes des autres. En temps normal, les blockchains ne peuvent pas communiquer entre elles, ce qui peut rendre certaines opérations plus délicates à réaliser. Dans le cas d’applications de finance décentralisée, le problème se pose d’autant plus que de nombreuses blockchains existent dans ce secteur, et qu’elles proposent toutes certaines caractéristiques spéciales.

Poly Network // Source : Poly Network

Poly Network permettait aux utilisateurs d’une blockchain d’échanger leurs jetons contre ceux d’une autre blockchain — un peu comme un agent de change le ferait. « Nous mettons en place un système d’interopérabilité entre plusieurs blockchains afin de construire l’infrastructure d’Internet de demain », explique Poly Network sur son site. « Les blockchains autorisées peuvent se connecter à Poly Network et communiquer avec d’autres blockchains, telles que Bitcoin, Ethereum, Neo, Ontology, Elrond, Ziliqa, et  Binance Smart Chain ».

Que s’est-il passé ?

Poly Network a alerté ses utilisateurs du vol le 10 août en début d’après-midi, et leur a immédiatement conseillé de blacklister les adresses du hacker responsable du vol. Au moment de l’annonce de Poly Network, l’entreprise avait repéré que le hacker avait subtilisé 273 millions de dollars en token sur la blockchain Ethereum, 253 millions de dollars en token sur la blockchain Binance Smart Chain, et 85 millions de dollars en USDC sur la blockchain Polygon, soit un total de 611 millions de dollars volés.

Pendant la journée du 11 août, les experts et les cabinets de cybersécurité ont échangé leurs avis sur les réseaux sociaux, et de nombreuses théories ont circulé. Le cabinet chinois spécialisé dans la cybersécurité des blockchains BlockSec estimait dans un premier rapport que « le hacker pourrait avoir la bonne clé pour s’identifier, ce qui indiquerait que les clés auraient fuité  », et le hacker Mudit Gupta a un temps soutenu sur twitter, où il est très suivi, que les équipes de Poly Network étaient incompétentes, ou qu’une personne pourrait avoir volontairement saboté le projet, voire s’être fait corrompre (il a depuis supprimé ses messages et a publié une autre analyse).

Pour l’instant, une théorie, développée séparément par le cabinet spécialisé Slowmist et par un développeur Ethereum, semble dégager un certain consensus. Il s’agirait d’une faille dans une fonction d’un smart contract, qui permettrait de changer l’identité de son keeper (son propriétaire), et qui aurait ainsi permis de dérouter l’argent vers les adresses du hacker. « Selon nos observations, il s’agit très probablement d’une opération planifiée, organisée et préparée en amont », a expliqué Slowmist. Selon cette théorie, le hacker aurait ainsi utilisé cette fonction particulière afin d’avoir accès à une autre fonction, qui lui aurait permis d’avoir accès aux blockchains. « Nous pensons que dans ce cas-là, il n’y a pas eu de fuite de données », concluent les équipes de Slowmist. Kelvin Fichter, un développeur Ethereum semble arriver à la même conclusion que le cabinet Slowmist.

« Nous devrions parler »

Les équipes de Poly Network ont depuis confirmé qu’il s’agissait bien d’une faille avec les smart contracts, mais n’ont pas donné plus de détails. « Après une première enquête, nous avons localisé la source de la vulnérabilité. Le hacker a exploité une faille entre deux contrats, et non pas une clé comme cela a pu être dit ».

Mais les équipes n’ont pas fait que parler du hack sur Twitter : elles se sont directement adressées au hacker. Dans un message publié quelques heures seulement après avoir annoncé le vol, les équipes ont demandé au hacker de « rendre les actifs volés  ». « La somme d’argent que vous avez volée est la plus importante jamais dérobée de l’histoire de la finance décentralisée. Un tel acte est considéré comme un crime économique majeur dans tous les pays, et vous serez poursuivi. Il serait peu judicieux d’essayer de faire des transferts. L’argent que vous avez volé vient de dizaines de milliers de personnes de la communauté crypto, et donc du peuple. Nous devrions parler pour trouver ensemble une solution. »

Le message a été largement moqué et critiqué sur Twitter. Mais pourtant, contre toute attente, le hacker a répondu.

« Pour le fun :) »

Le hacker a répondu aux équipes de Poly Network d’une manière très particulière : en s’envoyant à lui-même une transaction Ethereum, et en y inscrivant un message. Son adresse Ethereum ayant été rendue publique, de nombreux observateurs ont pu voir le message — dont les membres de Poly Network. Le hacker a depuis créé un site dédié à ses échanges avec eux.

Dans l’un des tout premiers messages à Poly Network, le hacker semble les narguer. « J’aurais pu faire un hack à un milliard si j’avais bougé les shitcoins (les cryptomonnaies ayant peu de valeur, ndlr) ! Est-ce que je viens de sauver le projet ? Pas trop intéressé par l’argent, je vais peut-être rendre quelques token ou les laisser là ».

L’un des messages du hacker // Source : Capture d’écran

Il semble néanmoins avoir changé d’avis, malgré ses bravades. Depuis quelques heures, le hacker a initié toute une série de transferts d’argent. Pour l’instant, 252 millions de dollars en token sur la blockchain de Binance ont été restitués, de même que 85 millions de dollars en token sur Polygon, et 4,6 millions en Ethereum. Au total, ce sont plus de 324 millions de dollars qui ont été restitués selon Poly Network.

Le hacker a aussi choisi de partager ses états d’âme sur le site. Dans un « Q&A » en quatre parties, la personne explique avoir fait le hack « pour le fun :) », et avoir choisi Poly Network en particulier parce que les « protocoles d’interopérabilités sont hot ».

Dans un anglais parfois un peu approximatif, le hacker a également expliqué sa motivation sur le transfert. « Pourquoi avoir transféré les jetons ? Pour les garder en sécurité . » Il aurait repéré le bug par hasard, et n’aurait pas immédiatement su quoi faire. « Je me suis demandé ce que quelqu’un ferait en s’apercevant qu’une si grosse fortune était à portée de main. Est-ce que demander aux équipes de Poly Network allait marcher ? Tout le monde pourrait être un traître pour un milliard. Je ne pouvais faire confiance à personne », justifie-t-il.

Il est également revenu sur sa manière de faire. « J’avais prévu de faire une attaque sur quatre blockchains : ETH, BSC, Polygon et HECO. Ça n’a pas marché pour la blockchain HECO, […]. J’aurais dû stopper à ce moment-là, mais j’ai décidé de continuer. Je me suis dit ‘est-ce qu’ils pourraient patch le bug sans avertir personne ?’ Mais je n’ai pas voulu créer de panique dans le monde des cryptos, donc j’ai choisi de ne pas cibler les shitcoins, et de ne pas les vendre ».

Le hacker, qui se présente comme un white hat, a néanmoins reconnu qu’il avait eu un motif un peu égoïste. «  Je voulais faire quelque chose de cool avec cette énorme somme. Puis je me suis dit que le hack le plus cool que je pouvais faire était d’être un leader moral ». Reste à voir désormais si la totalité de la somme volée sera rendue.

Partager sur les réseaux sociaux

La suite en vidéo