Получи случайную криптовалюту за регистрацию!

Как произошел хак протокола Euler на $175М? Вектор атаки закл | All About Crypto

Как произошел хак протокола Euler на $175М?

Вектор атаки заключался в использовании функции пожертвования части средств из аккаунт в протокол.

Логика действий была такова:

1 Протокол Euler позволял минтить ссуду, существенно превышавшую положенный депозит, в том случае, если леверидж ссуда тут же использовалась внутри протокола, не покидая его.

2 Хакер кладет депозит DAI на сумму $30M от AAVE для подготовки к атаке.

3 Хакер минтит взамен $20М DAI - 20M токенов etoken от euler (токен, подтверждающий депозит)

4 Злоумышленник минтит $200М, искусственно заставляет протокол думать, что он внес 200М депозита и занял 200М ссуду у протокола. Т к на балансе есть 20M токенов etoken от euler - они используются как обеспечение этой $200М ссуды/одновременного депозита. Позиция не в убытке.

5 Злоумышленник возвращает $10М и «минтит» еще 200 миллионов как депозита, так и долга.

6 Хакер вызывает функцию «donateToReserve», отправляя протоколу 100 миллионов EToken (эквивалент $100М), мгновенно его аккаунт становится в убытке, следом цена Etoken искусственно пампится.

7 Используя другую учетную запись для погашения долга, злоумышленник с адреса №2 ликвидирует около $260М необеспеченного долга + выплачивает комиссию протоколу в обмен на залог на сумму около $300М.

Это в том числе одна из фишек ликвидационного движка Euler.

8 Ликвидатор получает $38.87М, из которых возмещает $30М DAI, взятых в долг у AAVE, получает профит в $8.87M DAI.

9 Атака повторяется многократно с другими токенами, таким образом - весь протокол опустошается.