Qubit Finance - REKT



Parmi les autres nouvelles…

Qubit Finance, un protocole de prêt basé sur BSC lancé par l'équipe derrière le récidiviste PancakeBunny, a été victime d'un exploit de 80 millions de dollars.

Il occupe la septième place de notre classement.

Mais quelqu'un s'en souviendra-t-il la semaine prochaine ?

Qubit permet la collatéralisation inter-blockchain, en verrouillant les actifs sur Ethereum pour les emprunter sur BSC via la fonction de dépôt QBridge.

L'assaillant a profité d'un bug de logique dans le code qui rendait xETH disponible pour être utilisé sur BSC sans avoir déposé aucun ETH sur Ethereum.

L'adresse Ethereum de l'assaillant a été financée via Tornado Cash peu avant le début de l'exploit, à environ 21h30 +UTC le 27 janvier 2022.

Extrait du post-mortem de l'équipe Qubit :

1. L'assaillant a call la fonction de dépôt QBridge sur le réseau ethereum, qui call la fonction de dépôt QBridgeHandler.

2. QBridgeHandler est censé recevoir le token WETH, qui est le tokenAddress original, et si la personne qui a effectué la transmission n'a pas de token WETH, le transfert ne doit pas avoir lieu.

3. tokenAddress.safeTransferFrom(depositer, address(this), amount) ;

4. Dans le code ci-dessus, tokenAddress est 0. Ainsi, safeTransferFrom n'a pas échoué et la fonction de dépôt s'est terminée normalement, quelle que soit la valeur du montant.

5. De plus, tokenAddress était l'adresse WETH avant l'ajout de depositETH, mais lorsque depositETH est ajouté, il est remplacé par l'adresse zéro qui est le tokenAddress de ETH.

6. En résumé, la fonction de dépôt était une fonction qui ne devait pas être utilisée après le nouveau développement de depositETH, mais celle-ci est restée dans le contrat.

Selon l'analyse de Certik :

L'une des causes profondes de la vulnérabilité était le fait que tokenAddress.safeTransferFrom() ne rétablit pas la situation lorsque tokenAddress est l'adresse zéro (null) (0x0...000).

Bien que n'ayant pas verrouillé d'ETH dans le contrat Ethereum, l'adresse BSC de l'assaillant avait maintenant accès à 77 162 qXETH (185 millions de dollars) pour les utiliser comme collatéral contre des prêts sur Qubit.

L'assaillant a utilisé ce collatéral pour emprunter des WETH, des BTC-B, des stablecoins USD, ainsi que des CAKE, BUNNY et MDX. Il a ensuite échangé le tout contre un total de 200k BNB (~$80M), qui demeure toujours sur l'adresse BSC.

Selon la documentation de Qubit, la fonction de collatéral cross-chain a été auditée en décembre 2021.

L'ensemble de la fonctionnalité X-Collateral (y compris les contrats et les scripts) a été audité par Theori, une société d'audit professionnelle. Le résultat de l'audit est publié ici.

Le projet a une prime maximale de 250 000 $ sur Immunefi, mais il semble que l'équipe de Qubit soit disposée à négocier.

En mai 2021, le hacker de Pancake Bunny nous avait fait don de 100 000 DAI.

Nous avions retourné les fonds, et dit à l'équipe de "ne pas les perdre cette fois", et nous voilà pourtant à nouveau dans cette situation.

Notre adresse de donation est indiquée ci-dessous.


partager cet article

REKT sert de plateforme publique pour des auteurs anonymes, nous déclinons toute responsabilité quant aux opinions ou contenus hébergés sur REKT.

faites un don (ETH / ERC20): 0x3C5c2F4bCeC51a36494682f91Dbc6cA7c63B514C

avertissement:

REKT n'est responsable en aucune manière du contenu publié sur notre site Web ou en lien avec nos Services, qu'il soit publié ou occasionné par l'Auteur Anon de notre site Web, ou par REKT. Bien que nous fournissions des règles pour la conduite et les publications de l'Auteur Anon, nous ne contrôlons pas et ne sommes pas responsables de ce que l'Auteur Anon publie, transmet ou partage sur notre site Web ou nos Services, et ne sommes pas responsables de tout contenu offensant, inapproprié, obscène, illégal ou autrement répréhensible que vous pourriez rencontrer sur notre site Web ou nos Services. REKT ne saurait être tenu responsable de la conduite, en ligne ou hors ligne, de tout utilisateur de notre site Web ou de nos services.