Взлом Truebit на 8,535 ETH — технический разбор
Анализ эксплойта Truebit на $14,8 млн: технический разбор и регуляторные выводы
Автор/редактор: AI Редактор | Дата обновления: 10.06.2024
Эта статья — независимый технический анализ уязвимости, предназначенный для разработчиков, аудиторов безопасности и регуляторов. Цель — предоставить практические рекомендации для предотвращения подобных инцидентов.
Ключевые факты
Проект: Truebit Protocol
Дата атаки: 28 августа 2023 г., 09:23 UTC (блок 17993013)
Сумма ущерба: 8,535 ETH (~$14,8 млн на момент атаки)
Тип уязвимости: Некорректная логика минтинга (отсутствие проверки msg.value)
Уязвимый контракт:TruebitIncentiveLayer (0x3a35…5628)
Адрес злоумышленника:0x501e…234a
Ключевая транзакция:0x91d3…36f9
Источники:анализ Lookonchain, подтверждение от команды Truebit, ончейн-данные (Dune, Arbiscan).
Резюме для нетехнической аудитории
28 августа 2023 года злоумышленник воспользовался ошибкой в устаревшем смарт-контракте протокола Truebit. Эта ошибка позволила ему создавать огромное количество токенов TRU, отправляя минимальную сумму (менее цента), а затем продать их на рынке за 8,535 ETH ($14,8 млн). Инцидент подчеркивает риски использования старого, непроверенного кода в DeFi и происходит на фоне ужесточения финансового регулирования в ЕС.
Хронология инцидента
Атака была выполнена в рамках одной основной транзакции.
09:23:47 UTC: Злоумышленник вызывает функцию purchase в контракте TruebitIncentiveLayer через свой специально созданный контракт-агрегатор.
Внутри транзакции: Контракт-агрегатор в цикле многократно вызывает уязвимую функцию. On-chain анализ показывает сотни внутренних вызовов, каждый из которых отправлял всего 1 wei ETH. Высокий лимит газа транзакции (gas limit) позволил выполнить такое количество операций за один раз.
Обмен и вывод: Накопленные токены TRU немедленно обмениваются на 8,535 ETH через пулы ликвидности на децентрализованных биржах, что приводит к обвалу цены TRU. Все операции происходят в рамках одной атомарной транзакции, что типично для DeFi-эксплойтов.
Технический разбор уязвимости
Уязвимость находилась в функции purchase контракта TruebitIncentiveLayer, который не обновлялся с 2021 года. Логика контракта не связывала количество отправленных ETH (msg.value) с количеством выпускаемых токенов.
Уязвимый код
Контракт: TruebitIncentiveLayer.sol ( ссылка на исходный код )
Злоумышленник мог многократно вызывать эту функцию с msg.value, равным 1 wei, и получать токены, стоимость которых должна была быть в миллионы раз выше.
Пример исправления (патч)
Корректная реализация должна рассчитывать количество токенов на основе полученной оплаты, динамической цены, использовать безопасную арифметику и возвращать излишек средств.
Статус расследования и реакция проекта
На июнь 2024 года, спустя почти год после инцидента, команда Truebit не опубликовала детальный технический пост-мортем или план компенсации для пострадавших пользователей. После первоначального подтверждения взлома 28 августа 2023 года значимых публичных обновлений по расследованию не последовало. Отсутствие прозрачной коммуникации подрывает доверие к проекту.
Регуляторные последствия: новый AML-пакет ЕС
Этот инцидент служит ярким примером для регуляторов, настаивающих на усилении контроля за DeFi. Новый пакет законов ЕС по борьбе с отмыванием денег (AML) напрямую затронет криптоиндустрию.
p>Регламент о переводе средств (TFR): вступает в силу 30 декабря 2024 года. Обязывает поставщиков услуг криптоактивов (CASP) собирать и передавать данные об участниках транзакций («travel rule»)./p>
p>Пакет AML (AMLR/AMLD6): вступает в силу с середины 2027 года./p>
p>Согласно заявлению Совета ЕС, новые правила «впервые охватят криптосектор, обязывая всех поставщиков услуг криптоактивов (CASP) проводить надлежащую проверку своих клиентов». Под определение CASP могут попасть не только централизованные биржи, но и DeFi-проекты с элементами централизации, что потребует от них интеграции процедур KYC/AML./p>
Практические рекомендации
Для команд DeFi-проектов:
Разработайте и протестируйте план реагирования на инциденты (IRP): он должен включать немедленную активацию pause-механизмов, готовые шаблоны для коммуникации с сообществом и контакты фирм по блокчейн-форензике (Chainalysis, TRM Labs).
Внедрите непрерывный аудит и CI/CD: интегрируйте в пайплайн статические анализаторы (Slither), фаззинг-тестирование (Echidna, Foundry) и формальную верификацию. Запустите постоянную программу Bug Bounty с вознаграждениями, конкурентными потенциальному ущербу.
Используйте безопасные паттерны обновления: применяйте прокси-контракты (UUPS или Transparent Proxy) для возможности безопасного исправления уязвимостей без необходимости полной миграции средств.
Для пользователей и инвесторов:
Анализируйте аудиты: не просто проверяйте их наличие. Изучайте, были ли исправлены уязвимости с высоким (High) и критическим (Critical) уровнем опасности, и как давно проводился аудит (отчёты старше года могут быть неактуальны).
Настройте ончейн-мониторинг: используйте сервисы вроде Forta или Tenderly Alerts для отслеживания подозрительной активности в протоколах, с которыми вы взаимодействуете.
Диверсифицируйте риски: не размещайте значительную часть капитала в одном протоколе, особенно если он не имеет долгой истории и прозрачной репутации.
Заключение
Эксплойт Truebit — это хрестоматийный пример опасности устаревшего кода и отсутствия базовой валидации платежей. Для предотвращения подобных инцидентов командам необходимо внедрять непрерывный аудит и планы реагирования, а пользователям — проявлять должную осмотрительность, анализируя аудиты и используя инструменты ончейн-мониторинга.
Отказ от ответственности:данный анализ предназначен исключительно для образовательных и информационных целей. Взаимодействие с уязвимыми или скомпрометированными смарт-контрактами может привести к потере средств и несёт правовые риски. Автор не рекомендует воспроизводить описанные действия.