Euler Finance a subi une attaque par Prêts Flash de 200 millions de dollars, la vulnérabilité des smart contracts étant la cause.

Euler Finance a subi une attaque par prêts flash, avec une perte de près de 200 millions de dollars.

Le 13 mars 2023, le projet Euler Finance a subi une attaque par prêts flash en raison d'une vulnérabilité dans son contrat intelligent, entraînant une perte d'environ 197 millions de dollars. L'attaquant a exploité la vulnérabilité du manque de vérification de liquidité dans la fonction donateToReserves du contrat, obtenant d'énormes profits grâce à de multiples opérations.

Analyse de la faille d'Euler Finance : comment subir une attaque par Prêts Flash, perte de 1,97 milliard de dollars !

Analyse du processus d'attaque

  1. L'attaquant a d'abord emprunté 30 millions de DAI via un Prêt Flash sur une plateforme de prêt, puis a déployé deux contrats : un contrat de prêt et un contrat de liquidation.

  2. Payer 20 millions de DAI empruntés dans le contrat du protocole Euler, pour obtenir environ 19,5 millions d'eDAI.

  3. Utilisez la fonction de levier de 10x du protocole Euler pour emprunter 195,6 millions d'eDAI et 200 millions de dDAI.

  4. Utiliser les 10 millions de DAI restants pour rembourser une partie de la dette et détruire l'équivalent de dDAI, puis emprunter à nouveau la même quantité de eDAI et dDAI.

  5. Appeler la fonction donateToReserves pour faire un don de 100 millions d'eDAI, puis procéder à la liquidation via la fonction liquidate, afin d'obtenir 310 millions de dDAI et 250 millions d'eDAI.

  6. Enfin, retirer 38,9 millions de DAI, rembourser les 30 millions de DAI du Prêts Flash, et réaliser un bénéfice net d'environ 8,87 millions de DAI.

Analyse des vulnérabilités d'Euler Finance : comment subir une attaque par prêts flash, perte de 197 millions de dollars !

Analyse des vulnérabilités d'Euler Finance : comment subir une attaque par Prêts Flash, perte de 1,97 milliard de dollars !

Analyse de la vulnérabilité d'Euler Finance : comment subir une attaque par Prêts Flash, perte de 197 millions de dollars !

Analyse de la vulnérabilité d'Euler Finance : comment subir une attaque de Prêts Flash, perte de 1,97 milliard de dollars !

Analyse des vulnérabilités d'Euler Finance : comment subir une attaque par Prêts Flash, perte de 1,97 milliard de dollars !

Analyse de la vulnérabilité d'Euler Finance : comment subir une attaque par Prêts Flash, perte de 197 millions de dollars !

Analyse des vulnérabilités d'Euler Finance : comment subir une attaque par Prêts Flash, perte de 1,97 milliard de dollars !

Analyse de la vulnérabilité d'Euler Finance : comment subir une attaque de Prêts Flash, perte de 1,97 milliard de dollars !

Analyse de la vulnérabilité d'Euler Finance : comment subir une attaque par Prêts Flash, perte de 197 millions de dollars !

Raison de la vulnérabilité

La principale raison du succès de l'attaque est que la fonction donateToReserves manque de vérifications de liquidité nécessaires. Contrairement à d'autres fonctions clés (comme mint), donateToReserves n'appelle pas la fonction checkLiquidity pour valider l'état de liquidité de l'utilisateur. Cela permet à l'attaquant de manipuler son propre compte pour entrer dans un état pouvant être liquidé et d'en tirer profit.

Dans des conditions normales, la fonction checkLiquidity appelle le module RiskManager pour s'assurer que le nombre d'Etoken de l'utilisateur est supérieur au nombre de Dtoken, afin de maintenir la santé du compte. Cependant, la fonction donateToReserves a sauté cette étape cruciale, créant ainsi une opportunité pour une attaque.

Analyse de la vulnérabilité d'Euler Finance : Comment subir une attaque par Prêts Flash, perte de 197 millions de dollars !

Leçons et conseils

Cet événement met de nouveau en évidence l'importance des audits de sécurité des contrats intelligents. Pour les projets de prêt, il est particulièrement nécessaire de se concentrer sur les aspects suivants :

  1. L'intégrité du mécanisme de remboursement des fonds
  2. Exhaustivité de la détection de liquidité
  3. Sécurité du processus de liquidation de la dette

Avant le lancement du contrat, l'équipe du projet doit effectuer un audit de sécurité complet et rigoureux afin d'assurer la sécurité et la stabilité du contrat. De plus, une surveillance continue de la sécurité et des corrections rapides des vulnérabilités sont également indispensables.

Avec le développement rapide de la finance décentralisée, des événements de sécurité similaires pourraient continuer à se produire. Les développeurs et les équipes de projet doivent rester vigilants, apprendre et s'améliorer continuellement afin de construire un écosystème blockchain plus sûr et plus fiable.

EUL5.51%
Voir l'original
Cette page peut inclure du contenu de tiers fourni à des fins d'information uniquement. Gate ne garantit ni l'exactitude ni la validité de ces contenus, n’endosse pas les opinions exprimées, et ne fournit aucun conseil financier ou professionnel à travers ces informations. Voir la section Avertissement pour plus de détails.
  • Récompense
  • 6
  • Reposter
  • Partager
Commentaire
0/400
ChainComedianvip
· Il y a 10h
Encore un projet de bull qui a échoué.
Voir l'originalRépondre0
OfflineNewbievip
· Il y a 10h
Les pigeons ont encore été pris pour des idiots~
Voir l'originalRépondre0
SmartMoneyWalletvip
· Il y a 10h
197 millions de dollars ? Cette méthode d'opération est trop basique, mais le montant des fonds n'est pas négligeable.
Voir l'originalRépondre0
SolidityStrugglervip
· Il y a 10h
Encore un coupable des smart contracts
Voir l'originalRépondre0
MetaRecktvip
· Il y a 10h
Encore piégé.
Voir l'originalRépondre0
FadCatchervip
· Il y a 11h
Un autre projet de type Rug Pull.
Voir l'originalRépondre0
  • Épingler
Trader les cryptos partout et à tout moment
qrCode
Scan pour télécharger Gate app
Communauté
Français (Afrique)
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)