Апошняе ўзлом Harmony's Horizon bridge і яго тэхнічнае патока

гармонія, адкрыты і хуткі блокчейн ўзроўню 1, які прапануе двухбаковы Эфириума мост, пацярпелі няўдалы ўзлом 24 чэрвеня. Horizon, яго крос-ланцуговы мост да Ethereum, зафіксаваў гэты эксплойт коштам амаль 100 мільёнаў долараў у ETH. Хоць платформа спыніла пашкоджаны мост, некаторыя пытанні застаюцца без адказу.

Каб лепш разабрацца ў сітуацыі, вось глыбокае паглыбленне ў тое, што стала прычынай гэтага ўзлому.

Выкрыццё гаспадара, праўда?

Эксперты па бяспецы в CertiK team, у блогу, апублікаваным 25 чэрвеня, агульныя глыбокі аналіз з вылучэннем ключавых падзей, якія прывялі да крадзяжу. Wu Blockchain, вядомае інфармацыйнае агенцтва, пазней падзялілася гэтай падзеяй у сваім Twitter.

Папярэдні аналіз прадэманстраваны што меркаваны адрас быў 11 здзелак ад моста за розныя жэтоны. Акрамя таго, чалавек адправіў токены а розны кашалёк для абмену на ETH на Адмяніць дэцэнтралізаванай біржы (DEX), затым адправіў ETH назад у зыходны кашалёк.

Пасля таго, як некаторыя далейшае расследаванне, экспертны аналіз выявіў 12 транзакцый нападаў і тры адрасы нападу. Падчас гэтых транзакцый зламыснік атрымліваў розныя токены на мосце, уключаючы ETH, USDC, WBTC, USDT, DAI, BUSD, AAG, FXS, SUSHI, AAVE, WETH і FRAX.

«Зламыснік дасягнуў гэтага, нейкім чынам кантралюючы ўладальніка MultiSigWallet для непасрэднага выкліку confirmTransaction() для перадачы вялікай колькасці токенаў з моста на Harmony. Гэта прывяло да поўнай страты актываў у ланцужку Harmony на суму каля 97 мільёнаў долараў, якія зламыснік аб'яднаў у адзін асноўны адрас».

Гэта падзея адбылася ў паслядоўнасці, як паказана ніжэй.

Ланцуг падзей

Уладальнік кантракту MultiSigWallet (0xf845a7ee8477ad1fb446651e548901a2635a915) выклікаў функцыю submitTransaction(), каб адправіць транзакцыю. Ён уключыў наступную карысную нагрузку для стварэння ідэнтыфікатара транзакцыі 21106 у транзакцыі.

Крыніца: Certik

Затым у эксплойт-транзакцыі ўладальнік выклікаў функцыю confirmTransaction() з MultiSigWallet з ідэнтыфікатарам уводу транзакцыі 21106. Функцыя executeTransaction() выклікала знешні выклік з уваходнымі дадзенымі. Гэты крок запусціў функцыю unlockEth() у кантракце Ethmanager.

Крыніца: Certik

Улічваючы той факт, што зламыснік кантраляваў паўнамоцтвы ўладальніка, разблакіроўка прывяла да згаданага эксплойта перакрыжаванага моста. Блог таксама дадаў,

«Зламыснік выканаў транзакцыю з ідэнтыфікатарам 21106, якая перавяла 13,100 XNUMX ETH на адрас зламысніка».

Але гэта не тое. Меркаваны хакер працягнуў папярэдні працэс, выкарыстоўваючы розныя ідэнтыфікатары транзакцый у іншых кантрактах ERC20Manager, каб перадаць велізарную колькасць токенаў і стейблкоинов ERC20.

У цэлым такія інцыдэнты пагоршылі ўвесь скептычны сцэнар выкарыстання крыжаваныя масты. Раней у гэтым годзе мы сталі сведкамі абодвух Мост Роніна эксплуатаваць і Чарвякоў подзвіг.

Крыніца: https://ambcrypto.com/latest-in-harmonys-horizon-bridge-hack-and-its-technical-post-mortem/