Взлом Thetanuts на $2,1 млн: старая уязвимость, возврат средств и уроки для DeFi
Протокол децентрализованных финансов (DeFi) Thetanuts Finance подвергся эксплуатации, в результате которой злоумышленник вывел около $2,1 млн из устаревшего хранилища. Однако, что примечательно, «белые хакеры» уже вернули большую часть средств — примерно $2 млн. Давайте разберемся в деталях этого инцидента.
Как произошла атака?
Первыми тревогу забили компании, специализирующиеся на безопасности блокчейн-проектов. Согласно данным аналитиков, причиной взлома стала ошибка целочисленного деления во внутренней функции минтинга смарт-контракта. Суть проблемы заключалась в том, что после вывода средств формула для депозитов начала выдавать ноль из-за особенностей округления при делении целых чисел. Это позволило хакеру выпускать токены практически бесплатно и в неограниченном количестве.
Важно подчеркнуть, что атака затронула только одно, давно не используемое хранилище. Команда Thetanuts официально заявила, что этот контракт не связан с текущими продуктами и работающей инфраструктурой. Они пообещали опубликовать подробный отчет после выяснения всех обстоятельств.
Движение средств и возврат
По данным блокчейн-детективов, хакер обменял $105 000 в USDC на примерно 60 Ethereum (ETH). В кошельке злоумышленника также остаются опционные токены на сумму около $34 000. Однако ключевой момент — возврат средств. «Белые хакеры» или, возможно, сам злоумышленник, вернули почти всю украденную сумму, что является позитивным сигналом для сообщества.
Тренд на атаки «забытых» контрактов
Случай с Thetanuts — не единичный. Мы наблюдаем тревожный тренд: хакеры все чаще нацеливаются на заброшенные или устаревшие смарт-контракты. Даже после прекращения поддержки такие контракты продолжают существовать в блокчейне, и их уязвимости могут быть использованы. Ранее подобные атаки были зафиксированы на Aztec Connect (вывод $2,1 млн) и Raydium (потеря $1,3 млн из старых пулов ликвидности).
Мое экспертное мнение: Этот инцидент — суровое напоминание о том, что в DeFi «мертвые» контракты не исчезают бесследно. Командам проектов необходимо внедрять процедуры «уничтожения» или полной блокировки устаревших смарт-контрактов, а пользователям — тщательнее проверять, с какими версиями протоколов они взаимодействуют. Безопасность — это непрерывный процесс, а не разовое действие.