Temps de lecture: 4 minutes
Résumé :
Le 7 octobre 2022, un exploit affectant le pont inter-chaînes natif appelé "BSC Token Hub" a eu lieu. Le bogue est dans le vérificateur de preuve du pont. Un total de 2 millions de BNB a été retiré et Binance a temporairement suspendu le réseau BSC pour éviter d'autres dommages. Les fonds retirés de BSC sont estimés entre 100 et 110 millions de dollars.
Présentation de Binance Smart Chain & Token Hub Bridge :
Binance Smart Chain (BSC) est un réseau basé sur la Blockchain utilisé pour exécuter des applications ancrées dans des contrats intelligents. BSC fonctionne en parallèle avec la Binance Chain (BC) native de Binance, permettant aux utilisateurs de profiter de la capacité de transaction rapide du BC ainsi que des fonctionnalités de contrat intelligent de BSC.
- Chaîne de balises BNB (anciennement Chaîne Binance) – Gouvernance de la chaîne BNB (Staking, Vote)
- Chaîne intelligente BNB (BSC) (anciennement Binance Smart Chain) – Compatible EVM, couches de consensus, et avec des hubs à multi-chaînes
Consultez les article pour plus de détails.
Concentrateur de jetons BSC :
BSC Token Hub est le pont inter-chaînes entre BNB Beacon Chain (BEP2) et BNB Chain (BEP20 ou BSC). Découvrez l'officiel Documentation de Binance pour plus de détails.
Analyse de vulnérabilité et impact :
Détails de la transaction d'attaque :
Adresse du pirate : 0x489a8756c18c0b8b24ec2a2b9ff3d4d447f79bec
1er hachage Txn : 0xebf83628ba893hd35b496121fb8201666b8e09f3cbadf0e269162baa72efe3b8b
2e hachage Txn : 0x05356fd06ce56a9ec5b4eaf9c075abd740cae4c21eab1676440ab5cd2fe5c57a
Contrat de concentrateur de jetons BSC : Assistance
Hachage Txn d'origine (avec une hauteur de bloc de 110217401) : 0x79575ff791606ef2c7d69f430d1fee1c25ef8d56275da94e6ac49c9c4cc5f433
L'insecte:
BSC Token Hub utilise un contrat précompilé pour valider les arborescences IAVL (Immutable AVL) lors de la vérification des transactions inter-chaînes. L'exploiteur a tiré parti d'un bogue dans la logique de vérification de la preuve en adaptant une preuve légitime pour leur faire imprimer le pont 2M BNB.
La cause profonde semble être ceci en ligne:
Le problème est que lpath.Right pourrait être inutilisé dans le calcul du hachage racine de l'arbre.
Pour résoudre ce problème, la ligne doit changer
À partir de
```
if !bytes.Equal(derivedRoot, lpath.Right) ...
à quelque chose comme :
“`
À:
```
expectedHash := lpath.Left
if len(lpath.Left) == 0 {
expectedHash = lpath.Right }
if !bytes.Equal(derivedRoot, expectedHash) ...
“`
L'attaque:
1. L'attaquant a utilisé le hachage d'un bloc soumis avec succès qui a été créé il y a 2 ans (bloc spécifié : 110217401) pour construire une charge utile en tant que nœud feuille afin de vérifier l'arborescence IAVL. Les détails de la transaction d'origine peuvent être trouvés ici.
2. L'attaquant a injecté un nœud feuille contenant comme clé le packageSequence actuel et comme valeur le hachage de charge utile maléfique (c'est-à-dire 1M de BNB à leur adresse). Puis ajouté un nœud interne vide à la feuille pour satisfaire la preuve d'implémentation.
3. L'attaquant a défini le chemin de gauche sur Right dans le hachage du nœud feuille qui vient d'être créé pour rendre le hachage racine égal au hachage racine soumis avec succès et a finalement construit la preuve de retrait pour le bloc particulier et a soumis la transaction.
4. Après avoir soumis avec succès la transaction et reçu 1 million de dollars de BNB. L'attaquant a répété les étapes à nouveau et a gagné 1 million de BNB supplémentaires. Dont le total s'élevait à 2 Millions de BNB soit 570 Millions de $.
L'attaquant a essayé 17 fois de frapper 1M BNB mais ils ont échoué 15 fois et il n'a frappé que 2M BNB. La raison en était qu'ils avaient une concurrence avec d'autres transactions légitimes qui précédaient l'exploiteur tx en utilisant le même packageSequence.
Après l'exploit :
Quelques heures après l'attaque, le PDG de Binance CZ a annoncé l'incident via un tweet et a arrêté le réseau BSC pour éviter de nouveaux dommages.
Quelques heures plus tard, Binance a corrigé le problème avec la dernière version v1.1.15. Il a bloqué le flux de fonds des attaquants en mettant sur liste noire l'adresse de l'attaquant.
Binance a mis l'adresse de l'attaquant sur liste noire dans le récent commettre.
État des fonds :
Actifs actuels détenus par l'attaquant dans différentes chaînes :
Le flux de fonds :
Source de l'image: https://twitter.com/BeosinAlert/status/1578290676793384961/photo/1
Référence supplémentaire / crédit :
https://github.com/emilianobonassi/bsc-hack-analysis-2022-10-06
Sécurité Web3 - Besoin de l'heure
Pourquoi QuillAudits pour la sécurité Web3 ?
Audits de plume est bien équipé avec des outils et une expertise pour fournir des solutions de cybersécurité permettant d'économiser la perte de millions de fonds.
9 Vues
- chaîne de binance
- Bitcoin
- blockchain
- conformité de la blockchain
- conférence blockchain
- coinbase
- cognitif
- Consensus
- conférence cryptographique
- extraction de crypto
- crypto-monnaie
- Décentralisé
- DeFi
- Actifs numériques
- Ethereum
- machine learning
- jeton non fongible
- Platon
- platon ai
- Intelligence des données Platon
- Platoblockchain
- PlatonDonnées
- jeu de platogamie
- Polygone
- la preuve de la participation
- Quillhasch
- Sécurité des contrats intelligents
- tendances
- W3
- zéphyrnet