мир криптовалют версия обмана? Отчет о событии Slow Mist: как хакеры использовали уязвимость кода, чтобы украсть 2,2 миллиона долларов Cetus

Кража протокола Cetus на сумму $220 млн, которая потрясла криптовалютный круг несколько дней назад, вызвала обсуждение во всех сферах жизни. Команда информационной безопасности Slow Fog также опубликовала полный отчет обо всем инциденте, и команда Slow Fog заявила, что атака продемонстрировала мощь уязвимости математического переполнения. Злоумышленник выбирает конкретные параметры путем точных расчетов и использует недостатки в функции checked_shlw для получения ликвидности на миллиарды долларов по цене 1 токена. Это чрезвычайно сложная математическая атака, которая советует разработчикам тщательно проверять граничные условия всех математических функций при разработке смарт-контрактов.

Медленный туман:核心事件 - уязвимость проверки переполнения

Команда Slow Mist заявила, что в центре этого инцидента находится то, что злоумышленники с помощью тщательно сконструированных параметров смогли вызвать переполнение, но при этом обойти обнаружение, в конечном итоге обменяв крайне небольшое количество токенов на огромные ликвидные активы. Это согласуется с предыдущим анализом @neeksec.

(От уязвимости протокола до диалектики децентрализации: подробный разбор событий вокруг Cetus, безопасность языка MOVE поколеблена?

Атакующий сначала занял 10,020,000 haSUI через флеш-кредит, быстро обвалив цену в пуле haSUI/SUI на 99,9%. Затем он добавил ликвидность в диапазоне значений tick от 300000 до 300200, который составляет всего 1% ширины диапазона.

Затем следует ключевая уязвимость события, злоумышленник утверждает, что добавил огромную ликвидность ) более 10 в 27-й степени (, но из-за ошибки кодирования функции checked_shlw контракт взимает с него только 1 токен haSUI.

Формула необходимой ликвидности )Источник: Slow Mist Technology(

Атака на Slow Mist связана с тем, что злоумышленник смог обменять 1 токен на огромную ликвидность. Основная причина этого заключается в наличии уязвимости переполнения в функции get_delta_a в checked_shlw. Злоумышленник воспользовался этим, что привело к серьезному отклонению в расчетах системы о том, сколько haSUI необходимо добавить. Поскольку переполнение не было обнаружено, система ошибочно оценила количество требуемого haSUI, что позволило злоумышленнику обменять лишь незначительное количество токенов на большие объемы ликвидных активов.

Любое входное значение меньше 0xffffffffffffffff << 192 обойдет проверку на переполнение. Однако, когда эти значения сдвигаются влево на 64 бита, результат выходит за пределы представления u256, в результате чего старшие биты отсекаются, что приводит к получению результата, значительно меньшего теоретического значения. Таким образом, система в последующих вычислениях будет недооценивать необходимое количество haSUI.

Код проблемы ) источник: Slow Mist Technology (

Атакующий трижды убрал ликвидность, получив в общей сложности 20,040,000 токенов haSUI и более 5,760,000 SUI. В конце атакующий вернул займ, в итоге чистая прибыль составила более 230 миллионов долларов.

Cetus исправил код

После этого Cetus исправил код, включая:

Замените 0xffffffffffffffff << 192 на правильный порог 1 << 192.

Измените условие с n > mask на n >= mask.

Убедитесь, что при смещении влево на 64 бита, которое может привести к переполнению, корректно обнаруживается и возвращается флаг переполнения.

Исправленная функция checked_shlw ) источник: Slow Mist Technology( Команда Slow Mist: разработчики должны строго проверять все граничные условия математических функций.

Медленный туман сообщает, что злоумышленник подготовил газовый сбор два дня назад, и перед атакой была еще одна попытка, но она провалилась. В настоящее время средства злоумышленника на адресе Sui были заморожены, а адрес EVM также был внесен в черный список для отслеживания.

Команда Slow Mist заявила, что атака продемонстрировала мощь уязвимости к математическому переполнению. Злоумышленник выбирает конкретные параметры путем точных расчетов и использует недостатки в функции checked_shlw для получения ликвидности на миллиарды долларов по цене 1 токена. Это чрезвычайно сложная математическая атака, и команда безопасности Slow Mist рекомендует разработчикам тщательно проверять граничные условия всех математических функций при разработке смарт-контрактов.

Эта статья о том, как мир криптовалют использует обман? Отчет о событии Slow Mist: как хакеры использовали уязвимость в коде, чтобы украсть 2,2 миллиона долларов у Cetus. Впервые опубликовано в Chain News ABMedia.

Посмотреть Оригинал
Содержание носит исключительно справочный характер и не является предложением или офертой. Консультации по инвестициям, налогообложению или юридическим вопросам не предоставляются. Более подробную информацию о рисках см. в разделе «Дисклеймер».
  • Награда
  • 1
  • Поделиться
комментарий
0/400
GateUser-54dccd8dvip
· 20ч назад
Фирма HODL💎
Ответить0
  • Закрепить