Hack Binance Bridge : les premières informations sur les 500 millions de $ dérobés
Les premiers détails du hack de BNB Smart Chain – La nuit dernière, l’écosystème de Binance a été secoué par un hack d’envergure. Au total, plus de 500 millions de dollars ont été dérobés sur la BNB Smart Chain. Quelques heures après les faits, les premiers détails concernant ce casse d’envergure sont disponibles.
La BNB Smart Chain de Binance victime d’un hack d’envergure
La nuit fut longue pour les équipes de Binance. En effet, aux alentours de 00h20 heure française, BNB Smart Chain annonce plusieurs irrégularités sur la blockchain. Celle-ci est directement mise en pause pour tenter de minimiser l’impact et arrêter l’hémorragie.
Suite à cette annonce, les premières estimations tombent. Initialement estimées aux alentours d’un million de BNB, les pertes s’avèrent rapidement être colossales. Jusqu’ici, quasiment aucune information sur le hack n’avait filtré.
Un peu plus d’une heure après la première annonce, le CEO de Binance, Changpeng Zhao dévoile sur Twitter que le pont inter-chain BSC Token Hub a été la cible d’une attaque. Celui-ci en profite pour tenter de rassurer les utilisateurs en annonçant que les fonds sont en sécurité.
Hack Binance Bridge : 500 millions de dollars extraits
Évidemment, aux quatre coins du monde des crypto-enquêteurs se sont mis à investiguer l’affaire à la recherche de réponses. Parmi eux, @Samczsun a alimenté un thread tout au long de la nuit, compilant l’ensemble de ses trouvailles.
De prime abord, celui-ci a émis l’hypothèse que le hack avait ciblé la plateforme Venus Finance, après avoir identifié un dépôt de 200 millions de dollars. Cependant, celui-ci s’est rapidement rendu compte que les fonds en question provenaient d’une attaque d’une tout autre envergure.
En effet, l’attaquant a réussi à obtenir deux fois 1 million de jetons BNB de la part du Binance Bridge.
Face à ce constat, notre crypto-enquêteur a poursuivi ses recherches pour tenter de déceler la source du problème.
Déroulement du hack sur la BNB Smart Chain
Pour mener ses recherches, Samczsun a dans un premier temps analysé les transactions du hacker avec d’autres transactions légitimes à la recherche d’indices. Rapidement, celui-ci identifie deux irrégularités :
- La variable height utilisée dans les transactions du hacker était à chaque fois la même, et bien inférieure à celle utilisée dans des retraits légitimes ;
- La preuve quant à elle était significativement plus courte que celles utilisées dans des retraits classiques.
Ces éléments l’ont amené à penser que l’attaquant a trouvé un moyen de générer de fausses preuves et ainsi berner le BNB Bridge.
« Ces deux faits m’ont amené à penser que l’attaquant avait trouvé un moyen de falsifier une preuve pour ce bloc spécifique – 110217401. Maintenant, je devais comprendre comment ces preuves fonctionnaient. »
Ainsi, le Binance Bridge intègre un contrat précompilé qui permet de vérifier les arbres de IAVL. Sans entrer dans le détail, pour vérifier les arbres IAVL le Binance Bridge a besoin de deux opérations valides. Une opération « iavl:v » et une opération « mutistore ».
« Afin de forger une preuve, nous avons besoin que les deux opérations réussissent, et nous avons besoin que la dernière opération (le multistore) renvoie une valeur fixe (le hash du bloc spécifié : 110217401). »
Après différentes tentatives, Samczsun a été en mesure de générer une preuve frauduleuse en modifiant l’arbre IAVL à son avantage.
Par conséquent, il était possible de générer une fausse preuve en partant d’une preuve légitime et en la modifiant.
« En résumé, il y avait un bug dans la façon dont le pont Binance vérifiait les preuves, ce qui aurait pu permettre aux attaquants de falsifier des messages arbitraires. Heureusement, l’attaquant n’a falsifié que deux messages, mais les dommages auraient pu être bien pires. »
Retour à la normale
De leur côté, les équipes de la BNB Smart Chain ont publié un correctif pour mitiger la faille. Cela a notamment permis d’empêcher les comptes de l’attaquant d’agir.
De surcroît, les équipes en accord avec les validateurs ont décidé d’implémenter un nouveau mécanisme de gouvernance on-chain afin d’être en mesure de se défendre dans de tels cas.
Finalement, la BNB Smart Chain a pu être relancée aux alentours de 9h, heure française.
Binance devrait continuer les communications dans les jours à venir et proposer un post mortem revenant en détail sur les évènements.
Ce hack est d’une envergure rarement rencontrée. En effet, celui-ci s’avère être le 3e hack le plus important de l’écosystème DeFi. Il se positionne derrière les hacks de Ronin Network et PolyChain qui avaient respectivement entraîné la perte de 624 et 611 millions de dollars. Les bridges constituent une faiblesse de l’écosystème crypto, mise en lumière par Vitalik Buterin lui-même en début d’année 2022.