Aller au contenu
Fondé MMXXVIVol. VI · № 273RSS
Blockchain Breaches

Archive des incidents de sécurité dans les cryptomonnaies — piratages, exploits, défaillances de ponts et rug pulls, documentés avec des preuves on-chain.

Dossier № 038Attaque par flash loan

Vault multi-stratégies de Belt Finance

Des prêts flash de 385 M$ ont manipulé une stratégie beltBUSD, faussant le calcul du prix par part pour extraire 6,23 M$ sur 50 M$ perdus.

Date
Chaîne(s)
Statut
Fonds dérobés

Le 29 mai 2021, l'agrégateur de rendement BSC Belt Finance a perdu un combiné de ~50 millions de dollars depuis son vault multi-stratégies beltBUSD — l'attaquant est parti avec 6,23 millions de dollars de profit personnel, les ~43,8 M$ restants en frais et slippage ayant été détruits dans la manipulation. L'exploit était une manipulation de prix par part de vault classique financée par 385 millions de dollars en prêts flash depuis PancakeSwap.

Ce qui s'est passé

Le vault beltBUSD de Belt Finance était un agrégateur multi-stratégies : les dépôts utilisateurs étaient répartis sur plusieurs stratégies de rendement sous-jacentes (Venus, Ellipsis, etc.). Pour valoriser les parts du vault — et donc la valeur de rachat de la position de chaque utilisateur — le contrat de Belt calculait les actifs totaux sur toutes les stratégies et divisait par l'offre de parts du vault.

L'hypothèse fatale : toutes les stratégies seraient équilibrées. Les mathématiques de prix par part de Belt lisaient une seule stratégie (Ellipsis) et extrapolaient que la valeur de toutes les autres stratégies pouvait être dérivée de la lecture d'Ellipsis. En conditions de marché normales, c'était approximativement vrai ; sous manipulation adversariale, c'était catastrophique.

L'attaque :

  1. Emprunt flash de 385 millions de BUSD depuis PancakeSwap.
  2. Pompage du pool stablecoin Ellipsis avec un volume massif de BUSD, déformant la tarification interne du pool de manière à pousser la valeur de stratégie rapportée vers le haut.
  3. Le calcul de prix par part, lisant le chiffre Ellipsis gonflé et extrapolant à toutes les stratégies, a calculé une valeur par part supérieure à ce que les réserves réelles du vault supportaient.
  4. Dépôt d'un petit montant de BUSD dans le vault, puis retrait au prix par part gonflé — recevant plus de BUSD qu'il n'en avait mis.
  5. Cycle répété 8 fois, à chaque fois extrayant une portion des réserves du vault.
  6. Remboursement du prêt flash, parti avec 6,23 M$ de profit.

La perte restante de ~43,8 M$ n'a pas été extraite par l'attaquant — elle a été détruite via le slippage et l'impact des frais alors que l'oscillation du prix par part du vault a produit de mauvaises exécutions pour les utilisateurs légitimes détenant encore des positions.

Conséquences

  • Belt Finance a mis en pause les vaults affectés et annoncé un plan d'indemnisation.
  • Les utilisateurs affectés ont vu leurs positions beltBUSD réduites de 21,36 % et leurs positions 4Belt de 5,51 %.
  • L'équipe a engagé 3 millions de dollars pour un fonds d'indemnisation utilisateur.
  • La vulnérabilité a été corrigée en remplaçant le calcul de prix par part « une stratégie comme proxy pour toutes » par des lectures agrégées explicites.

Pourquoi c'est important

Belt Finance illustre un schéma DeFi récurrent : les calculs de prix par part qui extrapolent d'un échantillon au tout sont vulnérables à la manipulation du composant échantillonné. Le même problème structurel est apparu à travers :

  • Belt Finance (mai 2021) — valeur de la stratégie Ellipsis extrapolée au vault entier.
  • Harvest Finance (oct. 2020) — prix Curve YPool actuels utilisés comme proxy.
  • Cream Finance (oct. 2021) — prix yUSD lu directement depuis le vault Yearn.
  • Lodestar Finance (déc. 2022) — ratio part/actif du GlpDepositor supposé.

La réponse défensive est conceptuellement simple mais opérationnellement exigeante : les calculs de prix par part doivent lire chaque position sous-jacente indépendamment, sans extrapoler. Cela coûte du gas et de la complexité ; les protocoles qui sautent le coût l'ont payé plus tard en pertes réelles.

Le ratio « 50 M$ de perte totale pour 6,23 M$ de profit attaquant » est aussi instructif. Beaucoup d'exploits DeFi détruisent plus de valeur économique que l'attaquant n'en extrait — via l'impact des frais, le slippage, les cascades de dépeg et les paniques bancaires pilotées par la perte de confiance. Le chiffre titre du vol sous-estime le coût réel.

Sources & preuves on-chain

  1. [01]coindesk.comhttps://www.coindesk.com/markets/2021/05/30/belt-finance-victim-of-flash-loan-attack-in-latest-exploit-of-a-bsc-defi-protocol
  2. [02]cryptoslate.comhttps://cryptoslate.com/flash-loan-attack-on-defi-platform-belt-finance-sees-6-2-million-gone/
  3. [03]halborn.comhttps://halborn.com/explained-the-belt-finance-hack-may-2021/

Dépôts liés