Мільйон доларів BSC Token Hub Bridge Hack Analysis PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Аналіз зламу BSC Token Hub Bridge за мільйон доларів

Час читання: 4 протокол

Основна інформація:

7 жовтня 2022 року відбувся експлойт, що вплинув на нативний перехресний міст під назвою «BSC Token Hub». Помилка в верифікаторі доказів мосту. Загалом було вилучено 2 мільйони BNB, і Binance тимчасово призупинив мережу BSC, щоб запобігти подальшим збиткам. Кошти, вилучені з BSC, оцінюються від 100 до 110 мільйонів доларів США.

Вступ до Binance Smart Chain & Token Hub Bridge:

Binance Smart Chain (BSC) — це мережа на основі блокчейну, яка використовується для запуску додатків, заснованих на смарт-контрактах. BSC працює паралельно з рідною ланцюгом Binance Binance (BC), дозволяючи користувачам скористатися перевагами швидкої транзакції BC, а також функціями смарт-контрактів BSC.

  • BNB Beacon Chain (раніше Binance Chain) – Управління мережею BNB (ставлення, голосування)
  • BNB Smart Chain (BSC) (раніше Binance Smart Chain) – Сумісність з EVM, рівні консенсусу та з концентраторами для кількох ланцюжків

Перевірте наш стаття для більш докладної інформації.

BSC Token Hub:

BSC Token Hub — це перехресний міст між BNB Beacon Chain (BEP2) і BNB Chain (BEP20 або BSC). Перевірте офіційну документація Binance для отримання додаткової інформації.

Аналіз вразливості та вплив:

Деталі транзакції атаки:

Адреса хакера: 0x489a8756c18c0b8b24ec2a2b9ff3d4d447f79bec

1-й хеш Txn: 0xebf83628ba893hd35b496121fb8201666b8e09f3cbadf0e269162baa72efe3b8b

2-й хеш Txn: 0x05356fd06ce56a9ec5b4eaf9c075abd740cae4c21eab1676440ab5cd2fe5c57a

Контракт BSC Token Hub: 0x0000000000000000000000000000000000001004

Оригінальний хеш Txn (з висотою блоку 110217401): 0x79575ff791606ef2c7d69f430d1fee1c25ef8d56275da94e6ac49c9c4cc5f433

Помилка:

BSC Token Hub використовує попередньо скомпільований контракт для перевірки дерев IAVL (Immutable AVL) під час перевірки крос-ланцюжків транзакцій. Експлуататор використав помилку в логіці перевірки доказів, адаптувавши законний доказ для того, щоб зробити монетний двір мосту 2M BNB для них.

Здається, основна причина полягає в цьому лінія:

Мільйон доларів BSC Token Hub Bridge Hack Analysis PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Проблема полягає в тому, що lpath.Right може не використовуватися під час обчислення кореневого хешу дерева.

Щоб це виправити, слід змінити лінію

от:

```
if !bytes.Equal(derivedRoot, lpath.Right) ...

до чогось на зразок:

"

До:

```
expectedHash := lpath.Left
 if len(lpath.Left) == 0 {
   expectedHash = lpath.Right }
 if !bytes.Equal(derivedRoot, expectedHash) ...

"

Атака:

1. Зловмисник використав хеш успішно надісланого блоку, створеного 2 роки тому (вказаний блок: 110217401), щоб створити корисне навантаження як листовий вузол для перевірки дерева IAVL. Деталі оригінальної транзакції можна знайти тут.

Мільйон доларів BSC Token Hub Bridge Hack Analysis PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.
Мільйон доларів BSC Token Hub Bridge Hack Analysis PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

2. Зловмисник вставив листовий вузол, що містить як ключ поточну послідовність пакетів, а як значення — злий хеш корисного навантаження (тобто карбування 1M BNB на їх адресу). Потім до листка додали порожній внутрішній вузол, щоб задовольнити доказ реалізації.

Мільйон доларів BSC Token Hub Bridge Hack Analysis PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

3. Зловмисник встановив лівий шлях як правий у хеші щойно створеного кінцевого вузла, щоб зробити кореневий хеш рівним успішно надісланому кореневому хешу та, нарешті, створив підтвердження зняття для конкретного блоку та надіслав транзакцію.

Мільйон доларів BSC Token Hub Bridge Hack Analysis PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

4. Після успішної відправки транзакції та отримання $1 млн BNB. Зловмисник повторив кроки ще раз і отримав додатковий 1 мільйон BNB. Загальна сума склала 2 мільйони BNB, тобто 570 мільйонів доларів.

Мільйон доларів BSC Token Hub Bridge Hack Analysis PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Зловмисник 17 разів намагався викарбувати 1M BNB, але 15 разів йому це не вдалося, і він відкарбував лише 2M BNB. Причиною цього було те, що у них була конкуренція з іншими законними транзакціями, які передували експлуататору tx, використовуючи той самий packageSequence.

Після експлойту:

Через кілька годин після атаки генеральний директор Binance CZ оголосив про інцидент у твіті та зупинив мережу BSC, щоб запобігти подальшій шкоді.

Кілька годин потому Binance вирішила проблему з останньою версією v1.1.15. Він блокував потік коштів зловмисників, вносячи адресу зловмисника в чорний список.

Binance внесла адресу зловмисника в чорний список нещодавно commit.

Мільйон доларів BSC Token Hub Bridge Hack Analysis PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Стан коштів:

Оборотні активи, які знаходяться у зловмисника в різних ланцюгах:

Мільйон доларів BSC Token Hub Bridge Hack Analysis PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Потік коштів:

Мільйон доларів BSC Token Hub Bridge Hack Analysis PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Джерело зображення: https://twitter.com/BeosinAlert/status/1578290676793384961/photo/1

Додаткова довідка / кредит:

https://github.com/emilianobonassi/bsc-hack-analysis-2022-10-06


Безпека Web3 - вимога часу

Чому QuillAudits для безпеки Web3?

QuillAudits добре оснащений інструментами та досвідом, щоб надавати рішення з кібербезпеки, щоб заощадити мільйонні втрати.

9 думки

Часова мітка:

Більше від Квілхаш