Што мы можам даведацца, вывучаючы хакі? Раскрыццё інфармацыі аб прыватнасці і руху криптовалюты пасля ўзлому DAO 2016

Сімбіёз

Тэрмін криптовалюта амаль стаў сінонімам хакерства. Здаецца, што кожны тыдзень на біржах, кашальках індывідуальных карыстальнікаў, смарт-кантрактах і публічных блокчейнах, на якіх яны знаходзяцца, адбываюцца ашаламляльна вялікія ўзломы. У многіх выпадках вектары атакі відавочныя ў рэтраспектыве: код не быў правераны, унутраныя працэсы для прадухілення фішынгу не існавалі, асноўныя стандарты кода не выконваліся і г.д. Вывучэнне саміх узломаў часта не дае шмат цікавай інфармацыі для тых, хто ўжо знаёмы з асноўныя метады бяспекі. 

Але кожны ўзлом крыпты мае два асноўныя кампаненты — ёсць сам узлом, а затым метадалогіі, з дапамогай якіх хакер і яго кагорты спрабуюць абнаявіць скрадзенае здабычу. Для прыхільнікаў канфідэнцыяльнасці спробы ананімізацыі гэтых сродкаў з'яўляюцца цікавымі тэматычнымі даследаваннямі ўзроўню ананімнасці, дасягальнага ў агульнадаступных сетках блокчейн.

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

Ўзлом DAO 2016, паказальны выпадак

Пры вывучэнні гэтых узломаў і наступных арыштаў становіцца ясна, што ў большасці выпадкаў хакеры робяць сур'ёзныя памылкі, спрабуючы ананімізаваць сваю крыптавалюту. У некаторых выпадках віной збояў з'яўляюцца простыя памылкі карыстальніка. У іншых выпадках яны выкліканы памылкамі ў праграмным забеспячэнні кашалька, які яны выкарыстоўвалі, або іншымі невідавочнымі памылкамі на шляху да пераўтварэння крыптавалюты ў рэальныя актывы. 

Нядаўна асабліва цікавы выпадак, узлом DAO 2016, атрымаў значнае развіццё - расследаванне артыкул Forbes было апублікавана, што ідэнтыфікуе меркаванага хакера. Працэс, з дапамогай якога быў ідэнтыфікаваны гэты чалавек, дазваляе даведацца пра шырока выкарыстоўваны кашалёк Wasabi Wallet і пра тое, як няправільнае выкарыстанне праграмнага забеспячэння можа прывесці да "размяшчэння" сродкаў меркаванага хакера. 

Былі зроблены крытычныя памылкі

Што тычыцца парадку дзеянняў, першым крокам хакера было пераўтварэнне часткі выкрадзеных сродкаў з Ethereum Classic у біткойны. Хакер выкарыстаў Shapeshift для абмену і выканання свопу, які ў той час забяспечваў поўны публічны запіс усіх здзелак на платформе. З Shapeshift частка сродкаў перайшла ў Wasabi Wallet. Адсюль усё ідзе ўніз.  

Для тых, хто не знаёмы, CoinJoin - гэта псеўданім спецыяльнага пратаколу пабудовы транзакцый, які дазваляе некалькім бакам аб'ядноўваць свае сродкі ў вялікую транзакцыю з мэтай разрыву сувязі паміж сродкамі, якія паступаюць у CoinJoin, і сродкамі, якія выцякаюць з CoinJoin.

Замест транзакцыі, якая мае аднаго плацельшчыка і атрымальніка, транзакцыя CoinJoin мае некалькі плацельшчыкаў і атрымальнікаў. Скажам, напрыклад, у вас ёсць CoinJoin з 10 удзельнікамі - калі CoinJoin правільна пабудаваны і правільна выконваюцца ўсе правілы ўзаемадзеяння, сродкі, якія выцякаюць з CoinJoin, будуць мець ананімны набор 10. Гэта значыць, любы з 10 «змешаных выхадаў» » з транзакцыі можа належаць да любога з 10 (ці больш) «незмешаных уваходаў» у транзакцыю. 

Нягледзячы на ​​тое, што CoinJoins можа быць вельмі магутным інструментам, ва ўдзельнікаў ёсць шмат магчымасцей рабіць крытычныя памылкі, якія істотна пагаршаюць або цалкам падрываюць прыватнасць, якую яны маглі атрымаць ад CoinJoin. У выпадку з меркаваным хакерам DAO такая памылка была дапушчана. Як вы прачытаеце далей, існуе верагоднасць таго, што гэтая памылка была памылкай карыстальніка, аднак таксама магчыма, што ў кашальку Wasabi была (з таго часу выпраўлена) памылка, якая прывяла да гэтага збою прыватнасці. 

Wasabi Wallet выкарыстоўвае Пратакол ZeroLink, які стварае CoinJoins са змешанымі вынікамі роўнага значэння. Гэта азначае, што ўсе карыстальнікі павінны змешваць толькі пэўную загадзя вызначаную колькасць біткойнаў. Любое значэнне, якое перавышае гэтую суму, якое паступае ў CoinJoin, павінна быць вернута адпаведным карыстальнікам як незмешаны біткойн.

Калі, напрыклад, Аліса мае адзін вывад 15 біткойна, а CoinJoin прымае вывады толькі значэннем 1 біткойна, пасля завяршэння CoinJoin у Алісы будзе вывад 1 змешанага біткойна і 05 незмешанага біткойна. .05 Bitcoin лічыцца «незмешаным», таму што яго можна звязаць з першапачатковым выхадам Алісы ў .15. Змешаны выхад больш не можа быць непасрэдна звязаны з уваходам, і ён будзе мець набор ананімнасці, які складаецца з усіх іншых удзельнікаў CoinJoin. 

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

У выпадку з хакерам DAO, здаецца, што ў працэсе выкарыстання Wasabi Wallet яны выкарыстоўвалі адзін адрас у некалькіх CoinJoins; у адным выпадку адрас выкарыстоўваўся ў якасці незмешанага вываду змены, у другім выпадку ён выкарыстоўваўся ў якасці змешанага вываду.

Гэта адносна незвычайная памылка ў кантэксце CoinJoin, таму што гэтая тэхніка віны па асацыяцыі патрабуе транзакцыі ўніз па плыні CoinJoins, каб «аб'яднаць» незмешаныя і змешаныя вынікі, звязваючы іх разам. Але ў гэтым выпадку не патрабавалася аналізаваць транзакцыі, акрамя двух CoinJoins, таму што адзін і той жа адрас выкарыстоўваўся супярэчлівымі спосабамі ў двух асобных CoinJoins. 

Па сутнасці, такая магчымасць існуе з-за дызайнерскага рашэння ў праграмным забеспячэнні Wasabi Wallet: Wasabi Wallet выкарыстоўвае адзіны шлях вываду як для змешаных, так і для незмешаных вынікаў. Гэта лічыцца дрэнная практыка. Супрацоўнік Wasabi заявіў, што гэта зроблена для таго, каб зрабіць аднаўленне кашалька сумяшчальным з іншымі кашалькамі, аднак BIP84 (гэта схема вываду Wasabi Wallet выкарыстоўвае) сапраўды мае стандартны спосаб распазнавання шляху вывядзення, прызначанага для змены вынікаў.

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

Высновы і высновы

Такім чынам, што мы даведаемся з гэтага? Нягледзячы на ​​тое, што гэтая памылка з Wasabi - гэта яшчэ не канец гісторыі, яна стала важным кампанентам у вышуку меркаванага хакера. Яшчэ раз пацвярджаецца наша вера ў тое, што прыватнасць - гэта цяжка. Але на практыцы ў нас ёсць яшчэ адзін прыклад важнасці прадухілення забруджвання выходных дадзеных пры выкарыстанні інструментаў канфідэнцыяльнасці і таго, наколькі пільны «кантроль манет» патрабуецца як карыстальнікам, так і праграмнаму забеспячэнню. Узнікае пытанне, якія пратаколы канфідэнцыяльнасці прызначаны для мінімізацыі гэтага класа нападаў? 

Адным з цікавых рашэнняў з'яўляецца CoinSwap, дзе замест таго, каб аб'ядноўваць вынікі ў вялікую транзакцыю, вы абменьваецеся выхадамі з іншым карыстальнікам. Такім чынам вы абменьваецеся гісторыямі манет, а не далучаецеся да гісторый манет. Больш моцна, калі CoinSwap выконваецца ў кантэксце па-за ланцугом (як гэта рэалізавана ў Mercury Wallet), увогуле не трэба мець справу з адназначнымі вынікамі змяненняў. 

Нягледзячы на ​​​​тое, што магчымыя памылкі карыстальнікаў, якія могуць прывесці да «адмены абмену» CoinSwap, гэтыя памылкі, магчыма, значна больш відавочныя для канчатковага карыстальніка, таму што любое аб'яднанне вынікаў, якое парушае канфідэнцыяльнасць, можа быць зроблена толькі шляхам відавочнага змешвання памянялі выхад на адзін, які яшчэ не быў памяняны месцамі, у адрозненне ад аб'яднання двух выхадаў, якія ўжо прайшлі праз CoinJoin, толькі адзін з якіх фактычна змешаны.

Кашалёк Меркурый у цяперашні час з'яўляецца адзіным пазаланцужковым сродкам CoinSwap, даступным для канчатковых карыстальнікаў. Гэта дазваляе карыстальнікам заблакіраваць свае манеты ў пратаколе другога ўзроўню (вядомым як ланцужок станаў), а затым сляпую памяняць іх вынікі з іншымі карыстальнікамі ланцужка станаў. Гэта вельмі цікавая тэхніка, з якой варта паэксперыментаваць тым, хто зацікаўлены ў вывучэнні новых інструментаў прыватнасці з захапляльнай функцыянальнасцю і прымальнымі кампрамісамі.

Атрымайце штодзённае рэзюмэ Bitcoin, Defi, NFT і Web3 навіны ад CryptoSlate

Гэта бясплатна, і вы можаце адмовіцца ад падпіскі ў любы час.

Атрымаць Край на крыпта-рынку?

Станьце ўдзельнікам CryptoSlate Edge і атрымайце доступ да нашай эксклюзіўнай суполкі Discord, больш эксклюзіўнага кантэнту і аналізу.

Аналіз на ланцугу

Здымкі коштаў

Больш кантэксту

Далучайцеся зараз за $ 19 / месяц Вывучыце ўсе перавагі

Крыніца: https://cryptoslate.com/what-can-we-learn-from-studying-hacks-revealing-insights-on-privacy-and-cryptocurrency-movements-after-the-dao-2016-hack/