Проект Euler Finance подвергся флеш-атаке займа, убытки составили почти 200 миллионов долларов
13 марта проект Euler Finance стал жертвой флеш-атаки займа из-за уязвимости смарт-контракта, что привело к потерям средств в размере около 197 миллионов долларов. В данном инциденте участвуют 6 видов токенов, что делает его одним из крупнейших атак DeFi в последнее время.
Анализ процесса атаки
Атакующий сначала получает флеш-займ в 30 миллионов DAI с какой-то платформы займа, затем разворачивает два контракта: займ и ликвидацию. Атака в основном делится на следующие несколько этапов:
Залог 20 миллионов DAI в протоколе Euler для получения 19,5 миллионов eDAI.
Используя функцию кредитного плеча 10x протокола Euler, занять 195,6 миллиона eDAI и 200 миллионов dDAI.
Использовать оставшиеся 10 миллионов DAI для частичного погашения долга и уничтожить соответствующее количество dDAI, затем снова занять такое же количество eDAI и dDAI.
Пожертвовать 100 миллионов eDAI через функцию donateToReserves и немедленно выполнить операцию ликвидации, чтобы получить 310 миллионов dDAI и 250 миллионов eDAI.
В конце извлекли 38,9 миллиона DAI, после погашения Срочных займов получили прибыль около 8,87 миллиона 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 для получения 19,5 миллионов eDAI.
Используя функцию кредитного плеча 10x протокола Euler, занять 195,6 миллиона eDAI и 200 миллионов dDAI.
Использовать оставшиеся 10 миллионов DAI для частичного погашения долга и уничтожить соответствующее количество dDAI, затем снова занять такое же количество eDAI и dDAI.
Пожертвовать 100 миллионов eDAI через функцию donateToReserves и немедленно выполнить операцию ликвидации, чтобы получить 310 миллионов dDAI и 250 миллионов eDAI.
В конце извлекли 38,9 миллиона DAI, после погашения Срочных займов получили прибыль около 8,87 миллиона DAI.
Причины уязвимости
Основной уязвимостью этой атаки является отсутствие необходимых проверок ликвидности в функции donateToReserves протокола Euler. В отличие от других ключевых функций, таких как mint, функция donateToReserves не вызывает checkLiquidity для проверки ликвидности пользователя. Это позволяет злоумышленнику манипулировать состоянием своего аккаунта, чтобы оно соответствовало условиям ликвидации, что и позволяет осуществить атаку.
Функция checkLiquidity обычно вызывает модуль RiskManager, чтобы убедиться, что количество Etoken у пользователя больше, чем количество Dtoken. Однако, поскольку функция donateToReserves пропускает этот шаг, злоумышленник смог воспользоваться этой уязвимостью для получения огромной прибыли.
Рекомендации по безопасности
В связи с такими атаками, командам DeFi-проектов следует обратить особое внимание на следующие моменты:
Укрепить безопасность аудита смарт-контрактов, особенно уделяя внимание ключевым этапам, таким как возврат средств, проверка ликвидности и расчет долгов.
Убедитесь, что все функции, связанные с операциями с активами пользователей, содержат необходимые проверки безопасности.
Регулярно проводить ревизию кода и программу вознаграждений за уязвимости, чтобы своевременно выявлять и устранять потенциальные риски.
Создание механизма реагирования на чрезвычайные ситуации, способного быстро реагировать на возможные события безопасности.
Это событие еще раз подчеркивает важность безопасности DeFi проектов. С учетом постоянного развития отрасли, проектные команды должны больше внимания уделять безопасному проектированию и реализации смарт-контрактов для защиты активов пользователей.