Актуальные темы
#
Bonk Eco continues to show strength amid $USELESS rally
#
Pump.fun to raise $1B token sale, traders speculating on airdrop
#
Boop.Fun leading the way with a new launchpad on Solana.
Похоже, что @ImpermaxFinance был ВЗЛОМАН с ~110 ETH ($380K).
Мой предварительный анализ 👇
Impermax — это протокол кредитования для изолированного кредитного LP-фермерства. Каждый изолированный рынок имеет несколько imxToken — это хранилище, куда вы вносите базовый токен и получаете imxToken. Уязвимость заключается в функции "exchangeRate", где, если totalBalance или totalSupply равны нулю, возвращается инициализированное значение 1e18. Также функция mint/redeem имеет проблему округления.
Кроме того, существует контракт, похожий на куратора, который управляет хранилищами пользователей и распределяет их по различным рынкам. Еще одна уязвимость заключается в том, что эти кураторы имеют незащищенную функцию распределения, позволяющую любому перераспределять свои средства на разные рынки.
Атака использовала несколько транзакций.
(1) Сначала злоумышленник погашает все активные кредиты на рынке, что снижает totalBorrows до 0; и злоумышленник также выделяет 0 этому рынку;
(2) Злоумышленник многократно создает и выводит средства с рынка, пока totalBalance не округляется до 0. В настоящее время totalSupply не равен 0 и удерживается только злоумышленником.
(3) Злоумышленник выделяет все средства от куратора этому рынку. Этот депозит будет по обменному курсу 1e18, но злоумышленник уже владеет некоторыми долями.
(4) Злоумышленник выводит свои доли в (2) для получения прибыли.
Пожалуйста, ПРИОСТАНОВИТЕ затронутые рынки как можно скорее @ImpermaxFinance. Обратите внимание, что только некоторые хранилища затронуты, которые имеют только депозиты куратора. Если хранилище имеет депозиты, сделанные пользователями, оно, похоже, безопасно.
---
Это не финансовый совет, и это всего лишь мой предварительный анализ, и я могу ошибаться. Я связался с командой, но команда не ответила.


@ImpermaxFinance Обновление, команда уже в курсе проблемы и активно ее исследует
Обновите (2) шаг атаки, он неверен, на самом деле:
(2.1) создайте новую позицию uni v3 в качестве залога
(2.2) займитесь 1 wei на целевом рынке;
(2.3) займитесь максимум из рынка другого токена пары;
(2.4) дождитесь блока; затем ликвидируйте заемную позицию
(2.5) вызовите collateral.restructureBadDebt
Это успешно выведет 1 wei из totalbalance на рынок, в то время как totalsupply останется без изменений. Атакующий, делая это несколько раз, уменьшает общий баланс до 0 и ненулевой totalsupply.
32,42K
Топ
Рейтинг
Избранное

