Un nouveau piratage secoue le monde des cryptomonnaies. En exploitant une faille de sécurité passée inaperçue pendant huit mois, des hackers ont pu voler 197 millions de dollars en monnaies numériques.
Ce lundi 13 mars 2023, Euler Finance, un service de la finance décentralisée, a été victime d’une attaque informatique. Le protocole, qui permet à ses utilisateurs d’emprunter des cryptomonnaies sur la blockchain, a perdu 196,9 millions de dollars au terme de l’opération. Dans le détail, les attaquants se sont évaporés avec 8,7 millions de dollars de stablecoin DAI, 8,5 millions de dollars de Wrapped Bitcoin, 135,8 millions de dollars de Staked Ethereum et 33,8 millions de dollars d’USDC. À ce stade, il s’agit du plus important piratage de l’année 2023.
À lire aussi : Record historique pour les cryptomonnaies – pourquoi les pirates n’ont jamais gagné autant
Une faille dans le protocole
Ce sont les chercheurs en cybersécurité de PeckShield, une firme spécialisée dans la blockchain, qui ont tiré la sonnette d’alarme. Les équipes d’Euler Finance ont alors pris des mesures pour limiter les dégâts. Une enquête a été rapidement ouverte, en collaboration avec des tiers, dont la firme Chainalysis, et les forces de police américaines et britanniques.
D’après les experts de PeckShield, les pirates sont parvenus à exploiter une faille dans le code du protocole. Les chercheurs ont identifié une « logique imparfaite » dans le code de la plate-forme destiné à gérer les prêts et les liquidations. Une partie du code, censée s’assurer que le prêteur a garanti tous ses actifs avec des collatéraux, s’est avérée défaillante. Cette section a été incorporée l’été dernier et auditée par les experts en sécurité de Sherlock. Euler Finance a corroboré le constat de PeckShield, évoquant « un code vulnérable ».
Le mois dernier, David Schwed, responsable de la société de cybersécurité blockchain Halborn, regrettait le manque de prudence des développeurs de la finance décentralisée en matière de sécurité. D’après l’expert, les concepteurs négligent trop souvent d’auditer l’entièreté du code de leurs protocoles avant de les mettre en ligne. Dans ce cas-ci, Euler Finance précise que le code défaillant a bien été analysé par ses partenaires, mais qu’aucune faille n’a été identifiée par ceux-ci. Finalement, la première personne à découvrir la brèche était un pirate.
Un prêt instantané
Tous les experts s’accordent à dire que les pirates sont passés par un prêt instantané (« flash loan » en anglais) pour dépouiller les caisses d’Euler Finance. Ce type d’opération, très répandu dans le monde de la finance décentralisée, permet d’emprunter des cryptomonnaies sans déposer la moindre garantie. Les devises empruntées servent ensuite à acheter un actif sur une plate-forme décentralisée. L’actif est rapidement revendu sur une autre plate-forme, idéalement à un prix plus élevé pour dégager des bénéfices. L’emprunteur rembourse alors son prêt et les intérêts dus. Tout se déroule instantanément par le biais d’une seule transaction sur la blockchain.
One of our auditing partners, @Omniscia_sec, prepared a technical post-mortem and analysed the attack in great detail. You can read their report here:https://t.co/u4Z2xdutwe
In short, the attacker exploited vulnerable code which allowed it to create an unbacked token debt… https://t.co/FGnPqvYUGB
— Euler Labs (@eulerfinance) March 14, 2023
En exploitant la vulnérabilité d’Euler Finance, le prêt instantané a permis aux pirates de « créer une position de dette symbolique non garantie en donnant des fonds aux réserves du protocole ». D’après l’enquête menée par le cabinet Omniscia, les hackers ont pu prêter des fonds, sans que leur compte dispose d’assez d’argent pour le remboursement immédiat nécessaire. Ils ont ensuite liquidé les comptes impliqués dans l’opération afin d’obtenir les primes de liquidation.
À cause de la faille, les créances normalement exigées par le protocole n’ont pas pu être exigées sur la blockchain. Sans connaissance de la brèche, les attaquants n’auraient jamais pu activer le mécanisme de prêt. C’est pourquoi les pirates en sont sortis gagnants. Ils ont pu conserver les actifs qu’Euler Finance devait récupérer dans le processus. Il n’est pas rare qu’un prêt instantané soit impliqué dans une attaque contre un service de la finance décentralisée.
« L’attaque est née d’un mécanisme de don incorrect et n’a pas tenu compte de l’état de la dette du donateur, lui permettant de créer une dette non garantie qui ne sera jamais liquidée », résume Omniscia, dans un post-mortem publié sur Medium.
Sans surprise, les développeurs d’Euler Finance se démènent actuellement pour récupérer les fonds volés. Les responsables de l’attaque ont été contactés par le biais de la blockchain. Pour le moment, rien n’indique que les hackers aient l’intention de collaborer avec les développeurs et les forces de l’ordre.
L’an dernier, plusieurs protocoles de la finance décentralisée ont été piratés. D’après les observations des experts de Beosin, le secteur a essuyé 113 piratages en l’espace d’un an. On se souviendra notamment du hack de la blockchain Harmony, qui s’est soldé par le vol de 100 millions de dollars, du piratage de Wormhole (326 millions), du braquage de Nomad (190 millions) et de l’attaque de Celer Network (240 000 dollars). D’après Beosin, il faut s’attendre à ce que les attaques de cet acabit se multiplient dans les mois à venir.
Source :
Medium