Помилка обчислення, яка дала змогу зламати Truebit на 8535 ETH
Оригінальна назва: «Truebit Протокол 26,44 млн $ злам: аналіз уразливості контракту»
Першоджерело: ExVul Security
08.01.2026 протокол Truebit зламали, унаслідок чого було втрачено 8,535.36 ETH (приблизно 26,44 млн $). Офіційне повідомлення протоколу Truebit опублікували рано наступного дня. Команда з безпеки ExVul провела детальний аналіз уразливості, використаної під час цієї атаки. Результати наведено нижче:
Процес атаки
Адреса зловмисника:
0x6c8ec8f14be7c01672d31cfa5f2cefeab2562b50
Хеш транзакції атаки:
0xcd4755645595094a8ab984d0db7e3b4aabde72a5c87c4f176a030629c47fb014
Зловмисник здійснив атаку, чотири рази повторивши цикл викликів транзакцій getPurchasePrice→0xa0296215→0xc471b10b. Для прикладу в аналізі розглядається перший цикл.
1. Спершу зловмисник викликав функцію getPurchasePrice(240442509453545333947284131), яка повернула 0.

2. Зловмисник викликав функцію 0xa0296215(c6e3ae8e2cbab1298abaa3) зі значенням msg.value, що дорівнювало 0, і успішно створив 240442509453545333947284131 токенів TRU.

3. Зловмисник викликав функцію 0xc471b10b(c6e3ae8e2cbab1298abaa3). Потім він спалив 240442509453545333947284131 токенів TRU та отримав 5105.06 ETH.
Аналіз логіки атаки
З аналізу описаного процесу атаки видно, що проблеми є в логіці функцій getPurchasePrice та 0xa0296215. Нижче наведено детальний аналіз (оскільки код контракту не є відкритим, поданий далі код декомпільовано).


Порівнявши дві функції, можна виявити, що функція 0x1446 визначає, скільки ETH потрібно для купівлі певної кількості TRU. Очевидно, у логіці функції 0x1446 є помилка, через яку розрахунок ETH дає неправильний результат. Нижче детально розглянуто логіку цієї функції.

З огляду на логіку функції 0x1446, оскільки кінцевий результат обчислення v13 == 0, можна впевнено стверджувати, що описана вище логіка розрахунку має ваду. Важливо зазначити, що функція 0x18ef еквівалентна _SafeMul, тож проблема полягає у використанні звичайного додавання v12 + v9 (версія контракту — ^0.6.10, тому перевірка переповнення відсутня).
Значення v12 та v9 означають:
З наведеного вище аналізу випливає, що зловмисник передав величезне значення _amountIn, щоб через переповнення перетворити v12 + v9 на дуже мале число. У результаті (v12 + v9) / v6 == 0.
Висновок
Основною причиною цієї атаки на протокол Truebit стала серйозна помилка переповнення цілого числа в логіці розрахунку ціни купівлі токенів. Оскільки в контракті використано версію Solidity ^0.6.10 і не передбачено перевірок безпеки для критично важливих арифметичних операцій, зрештою було втрачено значну суму — 8,535.36 ETH. У новіших версіях Solidity проблему вразливостей переповнення вже частково усунуто. Цю атаку слід розглядати як приклад того, як хакер за допомогою ШІ автоматично сканує деякі активні, але застарілі протоколи DeFi, щоб знаходити вразливості (зокрема, у нещодавніх атаках на Balancer і yETH). Ми вважаємо, що найближчим часом такі атаки на застарілі протоколи DeFi із застосуванням ШІ траплятимуться частіше. Тому рекомендуємо проєктам проводити нові аудити безпеки коду своїх контрактів. Якщо буде виявлено вразливості, потрібно якнайшвидше оновити контракт або перевести активи, стежити за активністю в блокчейні, оперативно виявляти аномалії та мінімізувати збитки.
Цю статтю надано автором; вона не обов’язково відображає погляди BlockBeats.
Ціна --
Цей контент надано лише для загальних інформаційних цілей і не є фінансовою, інвестиційною, юридичною чи податковою консультацією. Події, нагороди, онлайн-акцій або пов’язану інформацію, згадана тут, не слід розглядати як рекомендацію, прохання чи запрошення до купівлі, продажу, торгівлі чи інших операцій з криптоактивами. Криптоактиви є дуже волатильними та можуть призвести до збитків. Доступність послуг, продуктів WEEX та пов’язаних із ними подій може відрізнятися залежно від регіону. Ви несете відповідальність за забезпечення відповідності вашої участі чинному місцевому законодавству та нормативним актам.
Вам також може сподобатися

Міхаель ван де Поппе бачить чотири криптотренди: ШІ, Ethereum, Sui та цифрові активи

Ethereum зафіксував сигнал, який спостерігався перед стрибком у червні; чи повториться історія?

Крива Коппока та криптотрейдинг: як використовувати індикатор розвороту тренда

Зниження важелів ETH наближається до завершення, ринкова капіталізація зменшилася на 54 мільярди доларів

Очікування інфляції в США зростають напередодні засідання Федеральної резервної системи

Пропозиція Aave V3.8 зберігає ліквідації флеш-кредитів

Aave запускає перші зовнішньо куровані ринки V4 з Sentora
![[Колонка] Robinhood Chain: Хоча бум мемкоінів закінчився, зростання триває](/public-static/075_ade8940e45.png?format=avif)
[Колонка] Robinhood Chain: Хоча бум мемкоінів закінчився, зростання триває

Circle Gateway додає підтримку cirBTC та EURC

Ethereum зазнає найбільшого виведення з бірж за чотири місяці, оскільки втрати ETF у жовтні перевищують 1 мільярд доларів

Ліквідація CoinShares BTF підтверджує виплату готівки та закінчення опціонів 20 листопада

Лубін прогнозує злиття ШІ та криптовалют на інфраструктурі Ethereum

Aave знижує ставку запозичення USDT до 92% на ринку Ethereum

Затримка оновлення Glamsterdam на Ethereum відтерміновує активацію на Hoodi

Ethereum лідер у хакерських атаках, 91 інцидент і 519,54 млн доларів збитків

JPMorgan тепер пропонує два токенізовані грошові фонди на Solana

Розбіжності між Solana та Hedera щодо стандартів звільнення від токенізації цінних паперів

Винагорода за стейкінг Ethereum програє грошовим ставкам, чому ж інвестори все ще чергують?

Ethereum пропонує скоротити час підтвердження транзакцій з 16 до 4 хвилин, що може знизити витрати на міжланцюгові перекази

Хакерська атака на Initia, витік 2,7 мільйона доларів

唐华斑竹 аналізує динаміку AVAX, ринкові настрої низькі

Голосування з управління Starknet підтримує дослідження пост-квантових L1

Uniswap запускає агрегаторні хуки для маршрутизації ліквідності зовнішніх DEX

CZ попереджає, що фішинг є більш небезпечним, ніж зламування біткоїн-криптографії

Robinhood Chain за три місяці заробила 51 мільйон доларів комісій, а Ethereum отримала лише 69 тисяч?

Ethereum відклала тест оновлення Glamsterdam

Ethereum включив дві пропозиції стандартів AI від Finch

Очікується закриття основної мережі Forma 5 листопада

Sam Price розкриває динаміку великих переказів Ethereum






