DeFi-проект Harvest Finance лишился боле 24 миллионов долларов из-за хакерской атаки, которую разработчики протокола называют «экономической атакой» и «инженерной ошибкой». Сейчас они выпустили более подробную информацию.
В отчете говорится, что злоумышленник использовал функции арбитража и временных убытков, которые повлияли на стоимость отдельных активов внутри Y пула Curve Finance.
Злоумышленник задействовал в атаке около $18 млн USDT и $50 USDC из платформы Uniswap. Смарт-контракт конвертировал USDT через своп внутри пула Y, накачивая более высокую стоимость находящимся в пуле монетам USDC, в то время как другие активы несли временные убытки.
Злоумышленник также поместил USDC в хранилище протокола, получив взамен в общей сложности 51,4 млн fUSDC по цене 0,97 USDC за токен, что снизило стоимость токенов примерно на 1%. Затем USDC были конвертированы обратно в USDT через пул Y, чтобы получить исходное более низкое значение USDC из-за восстановления эффекта временных потерь.
Потом злоумышленник вывел USDC из хранилища, обменяв все токены fUSDC обратно по более высокой цене, поскольку стоимость USDC в пуле Y снизилась. Это обеспечило ему прибыль в размере около 620 тысяч долларов США. Затем за следующие семь минут злоумышленник повторил этот процесс 30 раз, что принесло ему доход около $24 млн в USDT и USDC. Но цены на токены в обоих хранилищах стабильных монет резко упали, что сделало общий убыток еще больше.
«Утерянная сумма составляет около 33,8 миллиона долларов, что соответствует примерно 3,2% от общего количества активов, заблокированных в протоколе до начала атаки», — говорится в отчете.
Разработчики отмечают, что это не взлом, а очень изощренное и продуманное использование функции срочных кредитов, поэтому код смарт-контракта не был скомпрометирован.
«Такое мастерское получение флеш-кредитов — это все равно что приехать на рыцарский турнир XII века на мотоцикле Harley Davidson с двумя автоматами AK47. Такого никто не ожидает и местные плебеи оказываются уничтожены», — говорится в пояснении.
Разработчики Harvest Finance пообещали, что подобное больше никогда не произойдет. Команда также потребовала от злоумышленника вернуть средства, чтобы пострадавшие пользователи могли получить компенсацию.
«Мы допустили инженерную ошибку, мы признаем ее. Тысячи людей получили ущерб, поэтому мы смиренно просим злоумышленника вернуть средства, чтобы они были полностью распределены среди пользователей», — говорят разработчики.