Euler Finance зазнала флеш-атаки на суму 197 мільйонів доларів США, внаслідок вразливості смартконтрактів виникли величезні втрати

robot
Генерація анотацій у процесі

Euler Finance зазнав флеш-атаки, збитки сягнули 1.97 мільярда доларів

13 березня 2023 року проект Euler Finance зазнав масштабної флеш-атаки через вразливість у своєму смарт-контракті. Зловмисник використав недолік перевірки ліквідності в функції donateToReserves в Etoken, здійснивши багаторазові виклики операцій з різними токенами для отримання величезного прибутку. Загальні збитки від цієї атаки становили до 197 мільйонів доларів, задіяно 6 різних токенів.

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

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

Операції зловмисника виглядають наступним чином:

  1. Позичити 30 мільйонів DAI з термінових позик на певній платформі.
  2. Розгорніть два контракти: один для позик, інший для ліквідації.
  3. Поставте 20 мільйонів DAI в контракт протоколу Euler, щоб отримати 195 тисяч eDAI.
  4. Використовуючи функцію кредитування з 10-кратним важелем протоколу Euler, позичити 1,956,000 eDAI та 2,000,000 dDAI.
  5. Використати залишкові 10 мільйонів DAI для часткового погашення боргу та знищити відповідну кількість dDAI.
  6. Знову позичено 195,6 тис. eDAI та 200 тис. dDAI.
  7. Викликайте функцію donateToReserves, щоб пожертвувати в 10 разів більше суми, ніж сума повернення (1000000 eDAI).
  8. Виклик функції ліквідації, отримано 3,1 млн dDAI та 2,5 млн eDAI.
  9. Витягти 389 тисяч DAI, повернути 300 тисяч Термінові позики, в результаті отримати прибуток 88.7 тисяч DAI.

Аналіз вразливості Euler Finance: як зазнати флеш-атаки, втрати 1.97 мільярда доларів!

Аналіз вразливості Euler Finance: як стати жертвою флеш-атаки, втрати 1,97 млрд доларів!

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

Аналіз вразливостей Euler Finance: як стати жертвою флеш-атаки, втратили 1,97 мільярда доларів!

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

Аналіз вразливостей Euler Finance: як стати жертвою флеш-атаки, втративши 1,97 мільярда доларів США!

Аналіз вразливості Euler Finance: як зазнати флеш-атаки, втрати 1,97 мільярда доларів США!

Аналіз вразливостей Euler Finance: як зазнати флеш-атаки, втрати 1.97 мільярда доларів США!

Аналіз вразливостей

Ключем до успіху атаки стало те, що функція donateToReserves від Euler Finance не містила необхідної перевірки ліквідності. У порівнянні з іншими ключовими функціями (наприклад, mint), функція donateToReserves не виконувала крок перевірки ліквідності. Ця недбалість дозволила користувачам маніпулювати станом своїх рахунків, щоб він відповідав умовам ліквідації, а потім отримувати прибуток через ліквідацію.

У нормальних умовах функція checkLiquidity викликає модуль RiskManager, щоб забезпечити, що Etoken користувача завжди більший за Dtoken, для підтримки здорового стану системи. Проте, через відсутність цього ключового перевірки у функції donateToReserves, зловмисники змогли обійти механізми безпеки системи.

Аналіз вразливості Euler Finance: як стати жертвою флеш-атаки, втрати 197 мільйонів доларів!

Рекомендації щодо безпеки

Щодо таких атак, ми пропонуємо такі рекомендації з безпеки:

  1. Перед запуском смарт-контракту необхідно провести всебічний аудит безпеки.
  2. Проекти, пов'язані з кредитуванням, повинні особливо зосередитися на ключових етапах, таких як погашення коштів, перевірка ліквідності та ліквідація боргів.
  3. Забезпечте, щоб усі функції, які можуть вплинути на стан активів користувача, містили необхідні перевірки безпеки.
  4. Регулярно проводити огляд коду, щоб забезпечити, що нові функції не впроваджують потенційні вразливості.
  5. Створення механізму реагування на надзвичайні ситуації для швидкого реагування у разі виникнення інцидентів безпеки.

Ця подія ще раз підкреслила важливість безпеки смарт-контрактів. Проектні команди повинні завжди ставити безпеку на перше місце, захищаючи активи користувачів через постійні практики безпеки та аудити.

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

EUL3.24%
Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
  • Нагородити
  • 7
  • Репост
  • Поділіться
Прокоментувати
0/400
TheMemefathervip
· 08-02 02:56
Знову сталася аварія з контрактом
Переглянути оригіналвідповісти на0
MetaEggplantvip
· 07-30 18:24
Ще одне місце крадіжки монет через вразливість
Переглянути оригіналвідповісти на0
RugPullProphetvip
· 07-30 18:22
Знову бачимо Шахрайство!
Переглянути оригіналвідповісти на0
LiquidationWatchervip
· 07-30 18:22
Ще одна смерть від розумного вразливості
Переглянути оригіналвідповісти на0
CryptoNomicsvip
· 07-30 18:12
Неякісний огляд коду не вдався
Переглянути оригіналвідповісти на0
PaperHandsCriminalvip
· 07-30 18:11
Ще один контракт став поширеним.
Переглянути оригіналвідповісти на0
GateUser-afe07a92vip
· 07-30 17:56
Ще одні кровні гроші втрачено
Переглянути оригіналвідповісти на0
  • Закріпити