Un hacker dérobe 30 millions de dollars aux utilisateurs du protocole Grim Finance
Cette semaine encore, la finance décentralisée (DeFi) n'est pas épargnée par les hacks. Un attaquant est parvenu à subtiliser 30 millions de dollars au protocole Grim Finance, grâce à une attaque de type « re-entrancy », pourtant relativement connue.
Grim Finance se fait dérober 30 millions de dollars
Grim Finance (GRIM), un protocole de finance décentralisée (DeFi), a confirmé l'information sur son compte Twitter. Ce samedi, il a été victime d'une attaque entraînant la perte de 30 millions de dollars d'actifs numériques. La faille touchant directement les « vaults » (i.e coffre-fort) l'ensemble des fonds des utilisateurs est actuellement à risque.
Le protocole est implémenté sur la blockchain Fantom Opera, construite en langage Solidity et compatible avec Ethereum (ETH). Grim Finance se veut « optimiseur de rendements composés », c'est-à-dire qu'il promet d'apporter un rendement à vos tokens en les bloquant temporairement dans ses vaults.
Hello Grim Community,
It is with heavy hearts that we inform you that our platform was exploited today by an external attacker roughly 6 hours ago. The attackers address has been identified with over 30 million dollars worth of theft here https://t.co/qA3iBTSepb
— Grim Finance (@FinanceGrim) December 19, 2021
Dans sa documentation technique, Grim déclare vouloir « aider les utilisateurs à récolter plus de récompenses, sans tracas ». Raté, il semblerait.
? Pour approfondir – Un hacker dérobe plus de 130 millions de dollars au protocole Cream Finance
En quoi consiste cette attaque ?
Selon les informations de Grim Finance, le hacker aurait utilisé une attaque assez courante de type « reentrancy ». Il s'agit d'initier une demande de retrait de fonds, puis d'en réaliser plusieurs autres en simultané tant que la première est en exécution. Ainsi, l'attaquant trompe le protocole et effectue un retrait dépassant le montant total du coffre-fort.
Dans ce genre de cas, les protocoles ne disposent généralement que d'une sécurité à l'initiation et à la finalisation de votre demande. Ils vérifient d'abord que votre coffre-fort dispose du montant suffisant pour effectuer le retrait. Puis, une vérification supplémentaire est assurée à la validation de la transaction, principalement pour calculer les frais apposés.
En supposant que l'on arrive à effectuer plusieurs demandes de retrait de la totalité du coffre en simultané avant qu'une seule d'entre elles soit validée. Alors, chacune sera autorisée et l'on pourra donc retirer plus que ce que l'on possède réellement. C'est le principe (très simplifié) d'une « reentrancy attack».
💡 Sur le même thème – Un hacker exploite une faille du protocole BadgerDAO et dérobe 120 millions de dollars aux utilisateurs
Cryptoast Academy : 75% de réduction avant le Black Friday pour fêter le bullrunQuel est l'avenir de Grim Finance ?
Les attaques de type « reentrancy » sont relativement communes sur Ethereum, et commencent à être bien cernées et appréhendées par les protocoles. D'ailleurs, Rugdoc.io, un groupe de surveillance de DeFi composé d'auditeurs d'experts en smart contrats, affirme dans une série de tweets que la faute incombe directement à Grim Finance. Le code aurait dû contenir un « reentrancy guard », à savoir une protection spécifique contre ce type d'attaque.
« Espérons que tous les projets peuvent tirer des leçons de cet incident. Il y a beaucoup de connaissances que la plupart des développeurs Solidity expérimentés ont à portée de main. Si vous ne l'avez pas encore compris, ne construisez pas de projets de plusieurs millions de dollars. Ne vous faites pas auditer par des entreprises dont tout le monde sait qu'elles ne servent à rien, » peut-on lire dans un des tweets.
Grim Finance est passé par la société Solidity Finance pour auditer la sécurité du code des smart-contrats de son protocole. Selon leur rapport, « ReetrancyGuard est utilisé aux endroits où cela est nécessaire pour prévenir les attaques de type reentrancy ». Raté, encore une fois.
Coup dur pour l'économie de l'écosystème Grim Finance, le token GRIM n'a pas tardé à accuser le coup de la nouvelle. Le prix a chuté de plus de 80%, passant d'environ 0,8$ à seulement 0,15$ au plus bas. À l'heure de l'écriture de ces lignes, il s'échange pour 0,2$.
Évolution du cours du token GRIM - Source : CoinGecko
Dans la matinée ce dimanche, certains vaults ont été temporairement ouverts pour que les utilisateurs retirent leurs fonds. Toutefois, depuis la fin d'après-midi, tous les dépôts et retraits dans les vaults de Grim Finance restent en pause pour éviter tout nouvel incident.
? Pour aller plus loin – La société d'audit CertiK lève 80 millions de dollars pour continuer à sécuriser l'écosystème
Recevez un récapitulatif de l'actualité crypto chaque jour par mail 👌