Mint infini de Qubit QBridge
Un attaquant a trompé le pont BSC de Qubit créant 77 162 qXETH (185 M$ nominal) sans déposer d'ETH, empruntant 206 809 BNB (80 M$).
- Date
- Victime
- Qubit Finance
- Statut
- Fonds dérobés
Le 27 janvier 2022, le protocole de prêt BNB Chain Qubit Finance a perdu 206 809 BNB (~80 millions de dollars) en un seul exploit. L'attaquant a créé 77 162 qXETH — une représentation pontée d'Ethereum, valant nominalement 185 M$ — sans jamais déposer d'ETH du côté Ethereum du pont, et a utilisé la fausse garantie pour emprunter tout ce qui était disponible sur Qubit.
Ce qui s'est passé
Le QBridge de Qubit connectait Ethereum et BNB Chain. Le flux prévu côté Ethereum :
- L'utilisateur dépose de l'ETH (ou un autre actif) dans le contrat de pont.
- Le pont émet un événement.
- Un relayeur détecte l'événement et crée le qXETH correspondant sur BNB Chain.
Le contrat QBridge sur Ethereum avait une fonction deposit() qui gérait l'ETH réel. Il avait également un chemin séparé depositETH(), qui n'aurait dû être appelable que dans le cadre d'un transfert ETH réel. Le bug : depositETH() était implémenté d'une manière qui pouvait être déclenchée sans transfert réel d'ETH — le côté relayeur traitait l'événement émis comme légitime et créait du qXETH sur BSC.
Étapes :
- L'attaquant a appelé le chemin de fonction vulnérable sur le pont Ethereum avec zéro ETH transféré.
- Le pont a émis un événement de dépôt pour l'adresse de l'attaquant.
- Le relayeur cross-chain a créé 77 162 qXETH pour l'attaquant sur BSC.
- L'attaquant a utilisé qXETH comme garantie dans les marchés de prêt de Qubit et a emprunté chaque actif que Qubit avait à prêter — principalement 206 809 BNB (80 M$), mais aussi BTC-B, stablecoins, CAKE, BUNNY et MDX.
- Est parti. Le côté Ethereum du pont ne détenait essentiellement aucun ETH réel adossant l'offre gonflée de qXETH.
Conséquences
- Qubit a mis le protocole en pause en quelques heures et a offert une prime de 250 000 $ pour la restitution des fonds (sous son programme Immunefi de bug-bounty), restée sans réponse.
- L'attaquant a blanchi via Tornado Cash ; aucune récupération.
- Qubit Finance ne s'est jamais véritablement rétabli en tant que protocole.
Pourquoi c'est important
Qubit est l'exploit d'école du « faux dépôt » de pont. Chaque pont cross-chain a le même risque structurel : la chaîne de destination crée une représentation basée sur une prétention concernant l'état de la chaîne source, et tout ce qui permet à un attaquant de fabriquer cette prétention casse le pont entièrement. La classe de bug s'est depuis répétée sous différentes formes chez Nomad, Wormhole, BNB Bridge et autres — chacune par un mécanisme spécifique différent, toutes se lisant de la même manière on-chain : « X jetons créés sur la destination, zéro verrouillé sur la source ».
Sources & preuves on-chain
- [01]coindesk.comhttps://www.coindesk.com/markets/2022/01/28/defi-protocol-qubit-finance-exploited-for-80m
- [02]certik.medium.comhttps://certik.medium.com/qubit-bridge-collapse-exploited-to-the-tune-of-80-million-a7ab9068e1a0
- [03]bankinfosecurity.comhttps://www.bankinfosecurity.com/defi-platform-qubit-finance-hacked-for-80-million-a-18406