Безпековий дослідник, який відомий як 0xflorent, працював із командою, що стояла за ICO-контрактом ethereum (ETH) 2016 року, щоб розблокувати близько $2 мільйонів ефіру, які дев’ять років залишалися заблокованими, у координованому білому хаті-відновленні, яке використало вразливість переповнення цілого числа, яку початкові розробники ніколи не виправляли.
Контракт належить HongCoin, токен-розпродажу 2016 року, який не досяг своєї мети збору коштів і мав автоматично повернути інвесторам їх ефір, але не зміг цього зробити через баг у функції повернення коштів.
Шлях 0xflorent розморозив 1 003,62 ETH, і 48 початкових інвесторів тепер можуть вимагати виплату. Двоє з них це зробили, отримавши разом 96,5 ETH, що становить приблизно $193 000, сказав він у нитці на X у неділю.
Перший білий хат-експлойт на Ethereum: Я розблокував 1,003.62
Ξ ($2 000 000) застрягли у смартконтракті ICO 2016 року
протягом 9 років.
48 початкових інвесторів тепер можуть отримати свої кошти. pic.twitter.com/lyh5iyaDu7
Логіка повернення коштів контракту відхилила будь-кого, хто мав баланс токенів, що перевищує глобальний лічильник, який роки часткових повернень знизили до 356, обмеживши подальші повернення на рівні 3,56 ETH.
0xflorent виявив, що адміністративна функція в контракті, обмежена мультипідписним гаманцем HongCoin, не мала захисту від переповнення цілих чисел, який пізніше був реалізований у мові Solidity. Виклик її з певним значенням вхідних даних скидав баланс учасника до одиниці, що дозволило перевірці повернення коштів пройти і вивільнити кошти.
Відновлення не було одностороннім експлуатуванням. Оскільки адміністративна функція вимагала мультипідпису HongCoin для виконання, 0xflorent надіслав листа команді, перевірив послідовність розблокування на тестовому форку мейннету ethereum, і сама команда підписала транзакції розблокування.
Він підписав 41 транзакцію, по одній на кожного заблокованого утримувача, звільнивши приблизно 1 000 ETH, які були справді заблоковані. Ще сім утримувачів мали достатньо малий баланс, щоб повернути кошти без використання обхідного шляху.
Це вже друге таке відновлення, яке 0xflorent оприлюднив за вісім днів.
24 травня він сказав, що повернув 19,329 ETH, що становить близько $40 590, їхнім початковим власникам, включаючи 5,141 ETH з невдалого ICO у січні 2018 року та 14,190 ETH з семи закінчених атомарних обмінів у акаунті користувача Liquality Wallet, який став недоступним після закриття гаманця у 2024 році.
Відновлення відбувається під час серйозного періоду експлойтів у DeFi, коли лише в квітні було викрадено сотні мільйонів доларів у різних протоколах, головним чином через втрати приблизно на $293 мільйони в Kelp DAO.

