Проект Euler Finance зазнав флеш-атаки, збитки склали близько 200 мільйонів доларів
13 березня проєкт Euler Finance зазнав флеш-атаки через вразливість у смарт-контракті, що призвело до втрати приблизно 197 мільйонів доларів. Ця подія стосується 6 видів токенів і є однією з найбільших DeFi атак останнього часу.
Аналіз процесу атаки
Атакуючий спочатку отримав термінові позики на 30 мільйонів DAI з певної платформи позик, а потім розгорнув два контракти: на позики та ліквідацію. Атака складається з кількох основних етапів:
Залучити 20 мільйонів DAI в Euler Protocol для отримання 19,5 мільйона eDAI.
Використовуючи функцію 10-кратного кредитного плеча протоколу Euler, позичити 195,6 млн eDAI та 200 млн dDAI.
Використати залишок у 10 мільйонів DAI для часткового погашення боргу та знищити відповідну кількість dDAI, а потім знову позичити таку ж кількість eDAI та dDAI.
Через функцію donateToReserves вкласти 100 мільйонів eDAI та негайно виконати операцію ліквідації, отримавши 310 мільйонів dDAI та 250 мільйонів eDAI.
Наприкінці витягнули 3890万DAI, повернувши Термінові позики, отримали прибуток приблизно 887万DAI.
Причина уразливості
Основна вразливість атаки полягає в тому, що функція donateToReserves протоколу Euler не має необхідної перевірки ліквідності. На відміну від інших ключових функцій, таких як mint, функція donateToReserves не викликає checkLiquidity для перевірки ліквідності користувача. Це дозволяє зловмисникам маніпулювати станом свого рахунку, щоб він відповідав умовам ліквідації, і таким чином здійснити атаку.
функція checkLiquidity зазвичай викликає модуль RiskManager, щоб переконатися, що кількість Etoken у користувача більша за кількість Dtoken. Однак, оскільки функція donateToReserves пропустила цей етап, зловмисник зміг скористатися цим уразливістю для отримання величезного прибутку.
Рекомендації з безпеки
Щодо таких атак, команди DeFi проектів повинні звернути особливу увагу на такі пункти:
Зміцнення безпеки аудиту смарт-контрактів, особливо увага на ключові етапи, такі як повернення коштів, перевірка ліквідності та ліквідація боргів.
Забезпечте, щоб усі функції, що стосуються операцій з активами користувачів, містили необхідні перевірки безпеки.
Регулярно проводити кодовий аудит та програми винагород за вразливості, своєчасно виявляти та усувати потенційні ризики.
Створити механізм реагування на надзвичайні ситуації, здатний швидко реагувати на можливі безпекові інциденти.
Ця подія ще раз підкреслила важливість безпеки проектів DeFi. З розвитком галузі команди проектів повинні більше уваги приділяти безпеці дизайну та реалізації смарт-контрактів, щоб захистити активи користувачів.
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
13 лайків
Нагородити
13
9
Репост
Поділіться
Прокоментувати
0/400
MainnetDelayedAgain
· 08-14 02:16
Згідно з базою даних, цього року 13-й проект, який навчить бути людиною.
Переглянути оригіналвідповісти на0
AirdropHunter
· 08-13 12:46
Знову мене обдерли.
Переглянути оригіналвідповісти на0
BearMarketGardener
· 08-12 05:01
Ще один надіслав
Переглянути оригіналвідповісти на0
OvertimeSquid
· 08-12 01:52
Знову вразливість контракту?
Переглянути оригіналвідповісти на0
GasFeeNightmare
· 08-11 08:12
Ще один великий проект провалився
Переглянути оригіналвідповісти на0
SigmaBrain
· 08-11 08:11
Знову перевищило два мільйони, це занадто жорстко.
Переглянути оригіналвідповісти на0
LiquidityWitch
· 08-11 08:09
ммм... спостерігаючи, як темні мистецтва флеш-кредитів забирають ще одну душу. заборонений гримуар знову наносить удар
Euler Finance зазнав флеш-атаки, внаслідок чого було втрачено близько 200 мільйонів доларів.
Проект Euler Finance зазнав флеш-атаки, збитки склали близько 200 мільйонів доларів
13 березня проєкт Euler Finance зазнав флеш-атаки через вразливість у смарт-контракті, що призвело до втрати приблизно 197 мільйонів доларів. Ця подія стосується 6 видів токенів і є однією з найбільших DeFi атак останнього часу.
Аналіз процесу атаки
Атакуючий спочатку отримав термінові позики на 30 мільйонів DAI з певної платформи позик, а потім розгорнув два контракти: на позики та ліквідацію. Атака складається з кількох основних етапів:
Залучити 20 мільйонів DAI в Euler Protocol для отримання 19,5 мільйона eDAI.
Використовуючи функцію 10-кратного кредитного плеча протоколу Euler, позичити 195,6 млн eDAI та 200 млн dDAI.
Використати залишок у 10 мільйонів DAI для часткового погашення боргу та знищити відповідну кількість dDAI, а потім знову позичити таку ж кількість eDAI та dDAI.
Через функцію donateToReserves вкласти 100 мільйонів eDAI та негайно виконати операцію ліквідації, отримавши 310 мільйонів dDAI та 250 мільйонів eDAI.
Наприкінці витягнули 3890万DAI, повернувши Термінові позики, отримали прибуток приблизно 887万DAI.
Причина уразливості
Основна вразливість атаки полягає в тому, що функція donateToReserves протоколу Euler не має необхідної перевірки ліквідності. На відміну від інших ключових функцій, таких як mint, функція donateToReserves не викликає checkLiquidity для перевірки ліквідності користувача. Це дозволяє зловмисникам маніпулювати станом свого рахунку, щоб він відповідав умовам ліквідації, і таким чином здійснити атаку.
функція checkLiquidity зазвичай викликає модуль RiskManager, щоб переконатися, що кількість Etoken у користувача більша за кількість Dtoken. Однак, оскільки функція donateToReserves пропустила цей етап, зловмисник зміг скористатися цим уразливістю для отримання величезного прибутку.
Рекомендації з безпеки
Щодо таких атак, команди DeFi проектів повинні звернути особливу увагу на такі пункти:
Зміцнення безпеки аудиту смарт-контрактів, особливо увага на ключові етапи, такі як повернення коштів, перевірка ліквідності та ліквідація боргів.
Забезпечте, щоб усі функції, що стосуються операцій з активами користувачів, містили необхідні перевірки безпеки.
Регулярно проводити кодовий аудит та програми винагород за вразливості, своєчасно виявляти та усувати потенційні ризики.
Створити механізм реагування на надзвичайні ситуації, здатний швидко реагувати на можливі безпекові інциденти.
Ця подія ще раз підкреслила важливість безпеки проектів DeFi. З розвитком галузі команди проектів повинні більше уваги приділяти безпеці дизайну та реалізації смарт-контрактів, щоб захистити активи користувачів.