L’agrégateur de swaps Li Finance a été victime d’un piratage de smart contract qui a entraîné la perte d’environ 600 000 dollars provenant des portefeuilles de 29 utilisateurs.

Le piratage a eu lieu à 2 h 51 UTC le 20 mars. Le pirate a pu voler des quantités variables de 10 tokens différents des portefeuilles qui avaient donné une « approbation infinie » au protocole Li Finance. Parmi les tokens volés figurent USD Coin (USDC), Polygon (MATIC), Rocket Pool (RPL), Gnosis (GNO), Tether (USDT), Metaverse Index (MVI), Audius (AUDIO), AAVE (AAVE), Jarvis Reward Token (JRT) et DAI (DAI).

LI.FI : TLDR :
- ~600 000 $ ont été volés dans 29 portefeuilles.
- L’utilisateur n’a rien à faire
- Le bug a été corrigé et est déjà déployé https://t.co/fqOxJxDrZs - LI.FI - Any-2-Any Swaps (,) (@lifiprotocol) 21 mars 2022

Lorsque l’équipe a pris connaissance du piratage 12 heures plus tard, à 14 h 15 UTC, elle a fermé toutes les fonctions d’échange sur la plateforme afin d’éviter toute perte supplémentaire.

À 2 h 50 UTC le 21 mars, l’équipe a publié un rapport post mortem détaillant les événements de l’attaque. L’équipe a déclaré que le pirate avait échangé les tokens volés contre un total d’environ 205 Ether (ETH) d’une valeur approximative de 600 000 dollars. Au moment de la rédaction de cet article, les ETH volés n’avaient pas encore été déplacés du portefeuille du pirate. LiFi a également assuré aux utilisateurs que le bug a été identifié et corrigé.

Daniel Von Fange : Le piratage de LiFi ce jour a eu lieu parce que sa fonction interne swap() pouvait demander à n’importe quelle adresse d’utiliser n’importe quel message transmis par l’attaquant. Cela permettait à ce dernier de faire en sorte que le contrat transfère les fonds de toute personne ayant approuvé le contrat. pic.twitter.com/NA3xW7ReUd- Daniel Von Fange (@danielvf) 20 mars 2022

Sur les 29 portefeuilles qui ont été touchés par cette attaque, 25 ont été remboursés par les fonds de trésorerie pour leurs pertes. Ces 25 portefeuilles ne représentaient que 80 000 dollars, soit 13 % de la valeur totale perdue. Les propriétaires des quatre portefeuilles restants, qui ont perdu un total de 517 000 $, ont été contactés et se sont vu proposer un accord pour les dédommager en honorant leurs pertes en tant qu’investisseurs providentiels dans le protocole.

Ils recevraient des tokens LiFi dans les mêmes conditions que les autres investisseurs providentiels pour un montant égal à leurs pertes pour chaque portefeuille. Cela permettrait également d’atténuer les dommages subis par la trésorerie de la plateforme.

Le pirate a également été contacté et s’est vu offrir une prime pour restituer les fonds.

L’équipe de Li Finance a contacté le pirate pour lui offrir une prime.

L’attaque semble être survenue à un moment malheureux. Philipp Zentner, PDG de Li Finance, a déclaré à Cointelegraph le 21 mars : « nous sommes littéralement à une semaine de notre audit », ajoutant que « nous avons plusieurs sociétés qui nous auditent. »

Cependant, même un audit approfondi du code pourrait ne pas avoir détecté ce bug particulier, selon un chercheur « Transmissions11 » de la société d’investissement en cryptomonnaie Paradigm. Il a expliqué dans un tweet du 21 mars que l’erreur dans le code de Li Finance est facile à manquer et « subtile si vous n’êtes pas dans le bon état d’esprit. »

Voir aussi : Pas de chance : les protocoles DeFi d’Agave et de Hundred Finance ont été piratés pour 11 millions de dollars

Ce dernier cas de piratage dans le secteur de la finance décentralisée (DeFi) démontre comment le fait de donner des approbations infinies aux smarts contracts expose les fonds d’un utilisateur à un plus grand risque. Les approbations infinies permettent aux utilisateurs d’échanger des tokens avec un exchange décentralisé (DEX) un nombre illimité de fois sans avoir besoin d’approuver d’autres transactions.