#数字资产市场观察 Сколько стоит одна строка кода? Ответ — 1,6 миллиарда долларов — это не преувеличение, а горький урок, который только что пережила крупнейшая DEX платформа экосистемы Sui, Cetus. Хакер с помощью искусно продуманной уязвимости прямо украл 230 миллионов долларов.
Ключ к событию скрыт в одном, казалось бы, обычном пограничном контроле: злоумышленник создал набор специальных входных данных, который позволяет значению n точно соответствовать условию n <= mask, и успешно преодолел первую линию защиты. Но настоящая смертельная опасность кроется во второй части — это n одновременно больше или равно 2^192, и при выполнении операции сдвига влево на 64 бита, весь результат вычислений напрямую превышает предел хранения u256. В момент переполнения функция возвращает совершенно ошибочное значение, и ворота ликвидного пула таким образом оказываются открытыми.
Хорошая новость в том, что команда Cetus оперативно исправила кодовую базу. Но этот случай снова напоминает всем: безопасность аудита смарт-контрактов не терпит ни малейшей хитрости, даже ошибка в обработке границы битовых операций может обойтись в астрономическую сумму. В мире DeFi код — это закон, а баги — это лазейки в законе.
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
15 Лайков
Награда
15
4
Репост
Поделиться
комментарий
0/400
QuietlyStaking
· 11-26 09:13
Офигеть, ошибка битовых операций взорвала 230 миллионов, вот почему у меня всегда были сомнения по поводу аудита Cetus.
Уже не могу сдерживаться, переполнение u256 — такая примитивная ошибка могла пройти аудит?
Код — это закон, так что хакер — это судья?
Посмотреть ОригиналОтветить0
SellTheBounce
· 11-26 09:08
Снова эта ловушка. Ошибка в коде, ошибка аудита, быстрое исправление... Я слышал это уже несколько лет. Проблема в том, где следующий Cetus будет ждать? Всегда есть более низкие точки, и в Децентрализованных финансах это тоже верно — всегда есть более крупные уязвимости.
Посмотреть ОригиналОтветить0
ContractHunter
· 11-26 09:04
Чёрт возьми, переполнение u256 сразу пробивает 230 миллионов, вот почему я никогда не лезу в непроверенные пулы.
Посмотреть ОригиналОтветить0
CountdownToBroke
· 11-26 08:58
Чёрт возьми, из-за бага с битовыми операциями потерял 230 миллионов, это же слишком жестоко!
#数字资产市场观察 Сколько стоит одна строка кода? Ответ — 1,6 миллиарда долларов — это не преувеличение, а горький урок, который только что пережила крупнейшая DEX платформа экосистемы Sui, Cetus. Хакер с помощью искусно продуманной уязвимости прямо украл 230 миллионов долларов.
Ключ к событию скрыт в одном, казалось бы, обычном пограничном контроле: злоумышленник создал набор специальных входных данных, который позволяет значению n точно соответствовать условию n <= mask, и успешно преодолел первую линию защиты. Но настоящая смертельная опасность кроется во второй части — это n одновременно больше или равно 2^192, и при выполнении операции сдвига влево на 64 бита, весь результат вычислений напрямую превышает предел хранения u256. В момент переполнения функция возвращает совершенно ошибочное значение, и ворота ликвидного пула таким образом оказываются открытыми.
Хорошая новость в том, что команда Cetus оперативно исправила кодовую базу. Но этот случай снова напоминает всем: безопасность аудита смарт-контрактов не терпит ни малейшей хитрости, даже ошибка в обработке границы битовых операций может обойтись в астрономическую сумму. В мире DeFi код — это закон, а баги — это лазейки в законе.