Punk Protocol - REKT



Punk is dead.

Le 10 août, Punk Protocol a été hacké pour une somme de 8,95 millions de dollars, dont 5 millions ont été rendus par la suite.

La plateforme prévoyait de proposer un plan de rente DeFi garanti par des ETH, des WBTC et des stablecoins.

Parce que bon, il n'y a rien de plus "Punk" qu'un plan de rente.

Fort heureusement, un whitehat a pu frontrunner les transactions et restituer plus de la moitié des fonds.

Mais pas sans prendre un million de dollars pour lui-même au passage.

Le projet prévoyait d'utiliser un Fair Launch pour recueillir 3 millions de dollars de dépôts dans 3 pools de stablecoins : USDC, DAI et USDT.

Le post-mortem de Punk détaille la vulnérabilité qui a conduit à l'attaque, et décrit la cause racine comme étant un Modifier manquant dans la fonction initialize() du code CompoundModel.

Le hacker a utilisé delegateCall() pour remplacer ce qui aurait dû être la forgeAddress du protocole par son propre contrat malveillant en tant que paramètre de la fonction initialize() du CompoundModel.

L'absence d'un Modifier "initializer" a permis d'exécuter la fonction manipulée bien qu'elle soit associée à un contrat inconnu (et dans ce cas malveillant).

L'adresse du contrat étant désormais mise à jour, l'assaillant a pu call withdrawToForge, envoyant les actifs contrôlés par le CompoundModel directement vers le contrat malveillant, et dans son propre wallet.

Bien que les mécanismes de retrait soient protégés par le Modifier OnlyForge, la fonction initialize() avait déjà défini le contrat malveillant comme forgeAddress, et OnlyForge n'a donc pas détecté d'anomalie.

Les USDC volés ont été échangés contre des ETH via 1inch, puis envoyés sur TornadoCash par des transactions de 100 ETH. Les autres actifs n'ont pas été échangés car le whitehat les a interceptés.

Le plan du hacker n'a cependant porté ses fruits que pour l'une des trois pools. En effet, le propriétaire d'un bot de frontrunning a décidé de mettre son chapeau blanc lorsqu'il a repéré les transactions.

Le sauveur a fait connaître ses motivations par le biais de données d'input de tx. Les négociations ont alors débuté via email.

Tx d'attaque d'origine : 0x7604c7dd6e9bcdba8bac277f1f8e7c1e4c6bb57afd4ddf6a16f629e8495a0281

Tx frontrun du Whitehat : 0x597d11c05563611cb4ad4ed4c57ca53bbe3b7d3fefc37d1ef0724ad58904742b

Le whitehat n'a toutefois pas réussi à empêcher tous les fonds de parvenir à l'assaillant :

Malheureusement, il semble que mon frontrun n'était pas parfait, car j'ai fini par envoyer 3 millions de dollars US au hacker initial. La réécriture des txs peut être piégeuse.

Après un bref échange entre les deux, l'équipe Punk a réussi à convaincre le whitehat que l'incident n'était pas un coup monté de l'intérieur.

Une prime de 1 million de dollars a été établie par l'allié anonyme du protocole et, après une brève tentative de négociation peu convaincante, l'équipe a fini par accepter. Environ 5 millions de dollars ont alors été restitués.

Environ 1,95 millions de dollars en DAI : 0x008dd92f8bcfcee400aed26d13495fbfc8351f9b21289792fc2bb9e771668147

Environ 3M en USDT : 0xace7c07695ec1bbf917486c3c81ee7de79c04e0309d4f6a149688463e6f83247

Punk Protocol déclare que tous les fonds récupérés serviront à indemniser les utilisateurs, et annonce qu'une mise à jour sera publiée dans les jours à venir.

L'équipe Punk espère toujours un revirement de la part de l'assaillant, bien que le montant du remboursement soit insignifiant par rapport aux événements de la veille chez Poly Network.

Un whitehat est-il toujours si blanc s'il refuse de rendre une partie de l'argent qu'il a sauvé ?

Bien que l'acteur anonyme n'ait gardé que 16 % de ce qui a été volé, cela représentait tout de même 1 million de dollars au moment où celui-ci a imposé l'accord au protocole Punk.

C'est certes toujours mieux que rien, et l'équipe de Punk a peu de raisons d'être en colère contre le whitehat, mais cet argent aurait tout de même pu revenir à ses propriétaires initiaux...

Les anti-héros sont partout dans la DeFi. On est whitehat le jour, et blackhat la nuit.

Les salaires des auditeurs de sécurité ne sont rien comparés à ce qu'ils peuvent gagner en utilisant leurs compétences pour eux-mêmes, et on ne cesse de leur donner la première et la meilleure occasion de le faire.

Les whitehats fixent leurs propres salaires, tandis que les auditeurs de sécurité encaissent leurs salaires et les reproches.


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.