Le sauvetage de SushiSwap - 0XMAKI se livre
Directement dans le feu sans passer par le wok.
Le développeur anonyme 0xMaki a pris le rôle de développeur principal de SushiSwap après que son fondateur, Chef Nomi, ait sombré dans la cupidité.
Après la fin de l’été de la DeFi et la chute du farming de tokenfood, beaucoup ont cru que SushiSwap était mort et enterré. Mais les développeurs n’ont jamais cessé de construire et SushiSwap est revenu avec un nouveau menu.
いらっしゃいませ!!!
Mais tout n’a pas été facile dans le bar Omakase.
Tard au cours de la nuit dernière, un acteur anonyme a fait une brèche dans le smart contract et volé pour ~15,000 $ avant que l’équipe des chefs Sushi ne le chasse de la cuisine.
Rekt a contacté 0xMaki pour entendre sa version de l'histoire.
0xMaki:
Depuis le rapport de Nansen, je sers moi-même au Sushibar afin d’atténuer les risques d’arbitrage. J’ai vu quelques transactions bizarres, mais je trouvais que cela restait correct dans l’ensemble puisque le bar fonctionnait toujours correctement.
La première micro transaction a eu lieu il y a peut-être 2-3 jours mais ce n’est devenu automatique qu’hier, à un “niveau industriel” pour ainsi dire.
Voici la première remontée d’un problème avec le Sushibar (Discord).
Monstar
@0xMaki 源 義経 qu’est ce qu’il se passe avec le sushibar ? Il y a plein de transactions bizarres et il semble que les gens qui stackent au bar n’en tirent aucun sushi ?
0xMaki 源 義経 répond à Monstar
Cela fonctionne comme ça devrait, ça concerne vraiment une très très très très petite somme de ce que je comprends.
Ça ressemble à une transaction perdue, je vais regarder ça
Monstar
Je pense qu’il y a un problème
Parce que le montant dans le bar disponible à claim a drastiquement chuté depuis ces transactions.
Ils semblent qu’ils sont en train de claim les LP tokens pour eux-mêmes (je sais pas comment c’est possible) au lieu de claim de la bonne façon.
Donc ça ne se convertit pas en sushi et ça ne récompense pas les stakers.
0xMaki 源 義経 :
Je suis en train de regarder ça avec quelqu’un en ce moment
C’est peut-être juste la boring app qui agit bizarrement
Monstar :
Je pense que les gens ont trouvé un moyen de contourner la boring app (modifié)
et de ne pas partager les sushi avec tout le monde dans le bar
mais je ne sais pas comment reproduire ce qu'ils font donc je ne peux pas le tester
ouais, c’est sûr que c’est ce qu’ils font
https://etherscan.io/tx/0x7c6af5ca27ceb04aad514ddcaee8afc6dd4eb79d0816e24b007e7db205e93ce3
https://etherscan.io/address/0x1925e832c22522e0d9947ee4677120b2f28e4cd4#internaltx
tu peux voir tous les claims depuis ce portefeuille ici (modifié)
0xMaki 源 義経
@Monstar nous sommes en train de travailler à la résolution du problème actuellement et aucun fonds n’est en danger, c’est juste un exploit du sushibar pour les frais, c’est chiant mais c’est une prime aux bugs.
Nous allons renoncer à environ 10k pour les gens du Sushibar
rekt :
Merci pour le lien. Quelles ont été tes premières réactions ?
0xMaki :
Je me suis d’abord dit : c’est impossible que le bar rencontre un problème non ? Ça doit venir de l’interface utilisateur… La transaction n’avait aucun sens. Mais il se trouve que le bar ne rapportait plus d’argent et qu’il aurait dû en contenir beaucoup plus.
Environ 15 minutes plus tard, je me rends compte que ça ne va pas, et je contacte donc immédiatement Banteg
Banteg ne pouvait pas donner de coup de main, il était 6 heures du matin pour lui et il avait travaillé toute la journée sur le truc de Pickle. Tous les devs de Sushi étaient en train de dormir - Fuseaux horaires Europe / Tokyo, je suis le seul basé en Amérique du Nord.
rekt :
Qui t’a aidé ?
0xMaki :
J'ai reçu de l'aide d'Andy stratège chez yEarn / ex-makerdao smart contract engineer et de Daniel Que, un ancien de chez Coinbase
rekt :
Combien de temps cela a-t-il pris pour résoudre le problème ?
0xmaki :
Je dirais 3 à 4 heures pour reproduire et trouver le problème.
rekt :
A combien s'élèvent les pertes ?
0xmaki :
Il n’y a eu que 15k de perdus car le sushibar n’augmente que de 20-30k par jour. 0.05% vont dans les pools, et tout doit être fait manuellement, avec le risque que la transaction échoue.
rekt :
Hack ou exploit ?
0xMaki :
C’est clairement un exploit, et un intelligent - il mérite de toucher les fonds. Je pense d'ailleurs que j’ai fini par le retrouver…
rekt :
Es-tu plutôt impressionné ou gêné ?
0xMaki :
Je suis réellement impressionné ! Il n’y a pas de raison d’être gêné. C’est fascinant de voir tous ces hacks / exploits arriver, même avec les audits les plus solides il y a toujours une sorte de nouveau scénario que nous n'avions prévu ou auquel on aurait même pas pensé qui émerge.
Cela rend l’écosystème plus solide et plus résilient.
Nous n’avons perdu que 15k à cause de cet assaillant, peut-être y a-t-il eu d’autres personnes à faire ça, il faudra que je m’y penche - nous avons débusqué celui-là car il a commencé à affecter tout le bar.
Bref, il était environ 23h28 chez moi quand nous (0xMaki et Andy) avons commencé à résoudre le problème.
Ensuite, nous avons inspecté les petites transactions, juste pour vérifier qu'elles étaient anodines, et là - merde - il s'avère qu'elles ne l’étaient pas.
Andy venait de rentrer d'un vol, il subissait le décalage horaire et ne pouvait pas rester debout, il a dû aller dormir, je me suis retrouvé seul, jusqu’à ce que…
rekt :
Comment a-t-il été mis au courant ?
0xMaki:
Je l’ai contacté puisque je me suis retrouvé tout seul sans aucun .sol jedi.
rekt :
.sol-diers
0xMaki:
Mais malheureusement... il était tard et il avait des trucs de prévu comme toute personne normale un samedi soir j’imagine ?!
Retour à la case départ, et personne pour m’aider…
J’ai essayé de contacter Chef Nomi et tous les core devs, en laissant un guide étape par étape dans le groupe de l’équipe principale dans l’espoir que quelqu’un se réveille
Puis je me suis souvenu de Daniel, quelqu’un avait qui on était en contact depuis le début, je l’ai contacté, appelé et briefé
rekt:
Tu parles toujours à Nomi ?
0xMaki:
Non.
0xMaki :
02h35 et nous avions enfin une reproduction ! Nous avions compris comment l'exploit fonctionnait et avons pu le reproduire, afin de travailler sur un correctif.
À 03h19 nous avions la correction
0xMaki:
Les choses allaient mieux, l’équipe était en train de se réveiller et on travaillait sur un correctif. Pendant ce temps-là je suis allé voir celui qui avait fait l’exploit, et j’ai vu que c’était principalement un détenteur de SNX et de ETH.
J’ai regardé un peu ses transactions - ça n’était pas à un compte créé pour le hack, on avait affaire à quelqu’un qui fouinait à droite à gauche et a trouvé un exploit.
rekt :
Qu’est-ce qui te fait dire ça ?
0xMaki:
Les pourboires. Il a reçu des pourboires en SNX et ESD, c'est donc quelqu'un qui traîne dans les deux communautés, probablement via Discord.
J’ai croisé des sources et listé qui envoyait et qui recevait des pourboires sur plusieurs dates, et bingo…
Un initié de la communauté SNX m'a aidé à identifier les destinataires des pourboires.
On en était donc là, toute l'équipe était réveillée, nous avions une correction préliminaire et l'attaque avait été arrêtée. C’est à ce moment que la nouvelle est arrivée sur Twitter.
Note de l’éditeur Nous avons depuis reçu cette irréfutable preuve d'innocence de la part du suspect :
"c’est impossible que ça soit moi"
0xMaki:
Personne n'a perdu de fonds puisque l'argent était des purs profits destinés aux détenteurs de xSushi. Nous enverrons de notre trésorerie une valeur de 15k en Sushi divisé au prorata.
Rekt :
Rien de grave donc, un repas léger ! Un message de fin pour le suspect ?
0xMaki:
Contacte moi ! Nous avons d'autres smart contracts dont il faut que tu trouves des brèches : nous offrons des récompenses ! Je voudrais également remercier toutes les personnes impliquées dans l’histoire, y compris l’assaillant.
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.