Флорент разморозил белым хакером ICO HongCoin на 2 миллиона долларов, хакер 9 лет не обращал внимания на контракт

ETH-1,85%

HongCoin ICO資金解凍

Исследователь безопасности Florent 31 мая подтвердил The Block, что помог вернуть примерно 1 003 ETH (около 2 млн долларов), которые были заблокированы в контракте HongCoin ICO с 2016 года в течение девяти лет. На момент публикации 2 инвестора уже получили в общей сложности 96,5 ETH и добровольно выплатили Florent белую хакерскую награду.

Технические причины и решения подтверждённой уязвимости целочисленного переполнения

Florent подтвердил The Block, что контракт HongCoin был развернут в старой версии Solidity и не имел защитных мер от целочисленного переполнения (позже это было исправлено с помощью библиотеки SafeMath). Функция возврата отклоняла владельцев токенов, если их баланс превышал глобальный счётчик. В течение многих лет часть возвратов уменьшала счётчик до 356, из-за чего верхний лимит возврата составлял лишь 3,56 ETH (около 7 000 долларов), тогда как балансы большинства держателей были значительно выше этого значения.

Решение, которое подтвердил Florent, заключалось в использовании управленческой функции команды HongCoin — она изначально предназначалась для чеканки бонусных токенов. При вызове с определёнными входными значениями, из-за отсутствия защиты от переполнения баланс держателя сбрасывался до 1, проверка на возврат сразу проходила, и заблокированный ETH высвобождался.

Не односторонняя атака: команда HongCoin самостоятельно подписывает транзакции на разблокировку

Florent подтвердил, что это не было односторонним взломом. Сначала он отправил команде HongCoin электронное письмо, а затем на разветвлении Foundry mainnet проверил номера операций (sequence). После этого команда HongCoin сама подписала транзакции на разблокировку. От отправки первого письма до завершения всего процесса прошло около недели. 41 держателю нужно было сбросить балансы, что соответствовало примерно 1 000 реально замороженных ETH, а оставшиеся 7 могли сразу получить возврат; команда всего подписала 41 транзакцию.

Florent подтвердил, что причина, по которой хакер ранее не попытался взломать этот контракт, была в том, что «в контракте не существует ни одной уязвимости прав собственности, которая позволила бы хакеру украсть средства; единственным результатом любой атаки будет возврат ETH на Ethereum исходным инвесторам» — то есть для хакера не было возможности получить прибыль.

Методология подтверждения: сканер и известные ограничения Claude Code

Florent подтвердил, что он развернул self-hosted узел Ethereum и запустил сканер, который помечал контракты с более чем 100 ETH, после чего он по очереди отфильтровал находки. Он подтвердил, что использовал Claude Code для ускорения сортировки и кластеризации контрактов, но отметил, что у ИИ есть ограничения при анализе конкретных уязвимостей смарт-контрактов: «ИИ часто находится под влиянием того факта, что контракт ранее не был взломан, поэтому он часто по умолчанию предполагает “это невозможно взломать”, и это обычно неверно».

Florent 24 мая подтвердил, что ранее ему также удалось вернуть 19,329 ETH (около 40 590 долларов) из двух старых контрактов, включая провалившийся в 2018 году ICO-контракт и пользовательские средства в Liquality после закрытия приложения в 2024 году.

Часто задаваемые вопросы

Как уязвимость целочисленного переполнения в контракте HongCoin привела к блокировке средств на 9 лет?

По подтверждению Florent, функция возврата требует, чтобы баланс токенов владельца не превышал глобальный счётчик. Многолетние частичные возвраты снизили счётчик до 356, а максимальная сумма возврата упала до 3,56 ETH, тогда как балансы большинства держателей были значительно выше. Отсутствие защиты от целочисленного переполнения в старой версии Solidity было корневой технической причиной, а позже этот вопрос был исправлен библиотекой SafeMath.

Почему ранее хакер не атаковал этот контракт с большим объёмом ETH?

По подтверждению Florent, в контракте нет каких-либо уязвимостей прав собственности, которые позволили бы злоумышленнику украсть средства. Любая атака имела единственный результат — возврат ETH исходным инвесторам, а значит, у хакера не было пространства для прибыли, поэтому отсутствовала мотивация атаковать.

Как использовался Claude Code в этом белом хакерском действии и какие у AI ограничения?

Florent подтвердил, что он использовал Claude Code для ускорения сортировки и кластеризации контрактов, но также подтвердил, что у ИИ есть ограничения при анализе уязвимостей смарт-контрактов: он часто под влиянием факта «контракт ранее не был взломан» по умолчанию выбирает невозможность взлома, и Florent указал, что такое суждение часто оказывается ошибочным.

Дисклеймер: Информация на этой странице может быть получена из источников третьих сторон и предоставляется только для ознакомления. Она не отражает взгляды или мнения Gate и не является финансовой, инвестиционной или юридической рекомендацией. Торговля виртуальными активами связана с высоким риском. Пожалуйста, не основывайте свои решения исключительно на данных этой страницы. Подробнее смотрите в Дисклеймере.
комментарий
0/400
Нет комментариев