Euler Finance подвергся флеш-атака займа на 200 миллионов долларов. Уязвимость смарт-контрактов стала причиной бедствия.

Euler Finance подвергся флеш-атака займа, убытки составили почти 200 миллионов долларов

13 марта 2023 года проект Euler Finance пострадал от флеш-атаки займа из-за уязвимости в смарт-контракте, что привело к убыткам около 197 миллионов долларов. Злоумышленник воспользовался уязвимостью отсутствия проверки ликвидности в функции donateToReserves контракта и получил огромную прибыль, проведя множество операций.

Анализ уязвимости Euler Finance: как произошла флеш-атака займа, убыток составил 197 миллионов долларов!

Анализ процесса атаки

  1. Злоумышленник сначала взял в долг 30 миллионов DAI через Срочные займы на одной из платформ и развернул два контракта: контракт займа и контракт ликвидации.

  2. Заложите 20 миллионов DAI, взятых в долг, в контракт Euler Protocol, чтобы получить около 19,5 миллионов eDAI.

  3. Используя функцию 10-кратного кредитного плеча Euler Protocol, занять 195.6 миллионов eDAI и 200 миллионов dDAI.

  4. Используйте оставшиеся 10 миллионов DAI для частичного погашения долга и уничтожения соответствующего dDAI, затем снова займитесь таким же количеством eDAI и dDAI.

  5. Вызовите функцию donateToReserves, чтобы пожертвовать 100 миллионов eDAI, а затем проведите ликвидацию через функцию liquidate, чтобы получить 310 миллионов dDAI и 250 миллионов eDAI.

  6. В конце извлекли 3890 тысяч DAI, вернули Срочные займы в размере 3000 тысяч DAI, чистая прибыль составила около 887 тысяч DAI.

Анализ уязвимости Euler Finance: как произошла флеш-атака займа, убыток составил 1.97 миллиарда долларов!

Анализ уязвимости Euler Finance: как произошла флеш-атака займа, убыток составил 197 миллионов долларов!

Анализ уязвимости Euler Finance: как произошла флеш-атака займа, убыток составил 197 миллионов долларов!

Анализ уязвимости Euler Finance: как произошла флеш-атака займа, убыток 1,97 миллиарда долларов!

Анализ уязвимости Euler Finance: как произошла флеш-атака займа, убыток составил 197 миллионов долларов!

Анализ уязвимости Euler Finance: как произошла флеш-атака займа, убыток составил 197 миллионов долларов!

Анализ уязвимости Euler Finance: как произошла флеш-атака займа, убытки составили 1.97 миллиарда долларов!

Анализ уязвимости Euler Finance: как произошла флеш-атака займа, убытки составили 1.97 миллиарда долларов!

Анализ уязвимости Euler Finance: как произошла флеш-атака займа, убытки составили 197 миллионов долларов!

Причины уязвимости

Основная причина успешной атаки заключается в том, что функция donateToReserves не содержит необходимых проверок ликвидности. В отличие от других ключевых функций (таких как mint), donateToReserves не вызывает функцию checkLiquidity для проверки состояния ликвидности пользователя. Это позволяет злоумышленникам манипулировать своими аккаунтами, приводя их в состояние, подлежащее ликвидации, и извлекать из этого прибыль.

В нормальных условиях функция checkLiquidity вызывает модуль RiskManager, чтобы гарантировать, что количество токенов E больше, чем количество токенов D, для поддержания здоровья счета. Однако функция donateToReserves пропускает этот ключевой шаг, создавая возможность для атаки.

Анализ уязвимости Euler Finance: как произошла флеш-атака займа, убыток составил 197 миллионов долларов!

Уроки и советы

Это событие еще раз подчеркивает важность аудита безопасности смарт-контрактов. Для кредитных проектов особенно важно обратить внимание на следующие аспекты:

  1. Целостность механизма возврата средств
  2. Полнота проверки ликвидности
  3. Безопасность процесса ликвидации долгов

Команда проекта должна провести полную и строгую проверку безопасности перед запуском контракта, чтобы гарантировать его безопасность и стабильность. В то же время постоянный мониторинг безопасности и своевременное устранение уязвимостей также являются необходимыми.

С быстрым развитием децентрализованных финансов подобные инциденты безопасности могут продолжать возникать. Разработчики и проектные группы должны сохранять бдительность, постоянно учиться и совершенствоваться, чтобы создать более безопасную и надежную экосистему блокчейна.

EUL-1.74%
Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
  • Награда
  • 6
  • Репост
  • Поделиться
комментарий
0/400
ChainComedianvip
· 08-12 11:55
Еще один бычий проект провалился.
Посмотреть ОригиналОтветить0
OfflineNewbievip
· 08-12 11:53
неудачники опять被 разыгрывайте людей как лохов~
Посмотреть ОригиналОтветить0
SmartMoneyWalletvip
· 08-12 11:46
197 миллионов долларов? Этот способ действий слишком примитивен, объем средств, впрочем, немаленький.
Посмотреть ОригиналОтветить0
SolidityStrugglervip
· 08-12 11:46
Снова смарт-контракты на себя взяли вину
Посмотреть ОригиналОтветить0
MetaRecktvip
· 08-12 11:32
又双叒в ловушке了
Посмотреть ОригиналОтветить0
FadCatchervip
· 08-12 11:28
Ещё один проект железного дурака Мошенничество
Посмотреть ОригиналОтветить0
  • Закрепить