Ko galime išmokti studijuodami įsilaužimus? Atskleidžiamos įžvalgos apie privatumą ir kriptovaliutų judėjimą po DAO 2016 įsilaužimo

Simbiozė

Terminas kriptovaliuta beveik tapo įsilaužimo sinonimu. Panašu, kad kiekvieną savaitę biržose, individualių vartotojų piniginėse, išmaniosiose sutartyse ir viešose blokų grandinėse, kuriose jie sėdi, yra stebina didelių įsilaužimų. Daugeliu atvejų atakų vektoriai yra akivaizdūs retrospektyviai: kodas buvo neišbandytas, vidinių procesų, skirtų apsisaugoti nuo sukčiavimo, nebuvo, nebuvo laikomasi pagrindinių kodo standartų ir pan. Ištyrus pačius įsilaužimus dažnai nepavyks gauti daug įdomios informacijos tiems, kurie jau yra susipažinę su pagrindines saugumo praktikas. 

Bet kiekvienas kriptovaliutų įsilaužimas turi du pagrindinius komponentus – yra pats įsilaužimas, o vėliau – metodikos, kuriomis įsilaužėlis ir jų grupės bando išsigryninti pavogtą grobį. Privatumo gynėjams bandymai anonimizuoti šias lėšas yra įdomūs atvejai, susiję su anonimiškumo lygiais, pasiekiamais viešuosiuose blokų grandinės tinkluose.

Kadangi lėšas atidžiai stebi gerai organizuotos ir gerai finansuojamos vyriausybinės agentūros ir verslo subjektai, jos suteikia bendruomenei galimybę stebėti įvairių susijusių privatumo piniginių veiksmingumą. Jei šie įsilaužėliai negali likti privatūs, kokia tikimybė, kad vidutiniai vartotojai, ieškantys privatumo viešuosiuose tinkluose, galės tai pasiekti? 

DAO 2016 įsilaužimas, pavyzdinis atvejis

Nagrinėjant šiuos įsilaužimus ir vėlesnius areštus tampa aišku, kad daugeliu atvejų įsilaužėliai daro esmines klaidas, bandydami anonimizuoti savo kriptovaliutą. Kai kuriais atvejais gedimai atsiranda dėl paprastų vartotojo klaidų. Kitais atvejais jas sukelia naudojamos piniginės programinės įrangos klaidos arba kitos mažiau nei akivaizdžios klaidos konvertuojant kriptovaliutą į realų turtą. 

Neseniai ypač įdomi byla, 2016 m. DAO įsilaužimas, turėjo reikšmingą įvykį – tyrimą. "Forbes" straipsnis buvo paskelbta, kad identifikuojamas įtariamas įsilaužėlis. Procesas, kurio metu buvo nustatytas šis asmuo, suteikia tam tikrų įžvalgų apie plačiai naudojamą privatumo piniginę „Wasabi Wallet“ ir apie tai, kaip netinkamas programinės įrangos naudojimas gali sukelti tariamo įsilaužėlio lėšų „išmaišymą“. 

Buvo padarytos kritinės klaidos

Kalbant apie operacijų tvarką, pirmasis įsilaužėlio žingsnis buvo kai kurias iš Ethereum Classic pavogtas lėšas konvertuoti į Bitcoin. Įsilaužėlis naudojo Shapeshift, kad atliktų apsikeitimo sandorį, kuris tuo metu teikė visą viešą visų platformos sandorių įrašą. Iš Shapeshift dalis lėšų perkelta į Wasabi Wallet. Iš čia viskas eina žemyn.  

Tiems, kurie nėra susipažinę, CoinJoin yra specialaus sandorio sudarymo protokolo, leidžiančio kelioms šalims sujungti savo lėšas į didelę operaciją, slapyvardis, siekiant nutraukti ryšį tarp lėšų, patenkančių į CoinJoin, ir lėšų, ištekančių iš CoinJoin.

Vietoj to, kad sandoryje būtų vienas mokėtojas ir gavėjas, CoinJoin sandoryje yra keli mokėtojai ir gavėjai. Tarkime, kad turite CoinJoin su 10 dalyvių – jei CoinJoin yra tinkamai sukonstruotas ir tinkamai laikomasi visų sąveikos taisyklių, lėšos, išplaukiančios iš CoinJoin, turės 10 anonimiškumo rinkinį. ty bet kuris iš 10 "mišrių rezultatų “ iš operacijos gali priklausyti bet kuriam iš 10 (ar daugiau) „nesumaišytų įvesčių“ į operaciją. 

Nors CoinJoins gali būti labai galingas įrankis, dalyviams yra daug galimybių padaryti kritinių klaidų, kurios labai pablogina arba visiškai pakerta bet kokį privatumą, kurį jie galėjo įgyti naudodami CoinJoin. Tariamo DAO įsilaužėlio atveju tokia klaida buvo padaryta. Kaip skaitysite toliau, gali būti, kad ši klaida buvo vartotojo klaida, tačiau taip pat gali būti, kad „Wasabi Wallet“ buvo (nuo pataisytos) klaida, dėl kurios įvyko privatumo pažeidimas. 

Wasabi Wallet naudoja ZeroLink protokolas, kuri sukuria CoinJoins su mišriomis vienodos vertės išvestimis. Tai reiškia, kad visi vartotojai turi sumaišyti tik nurodytą, iš anksto nustatytą Bitcoin kiekį. Bet kokia vertė, viršijanti šią sumą, patenkanti į „CoinJoin“, turi būti grąžinta atitinkamiems vartotojams kaip nesumaišytas „Bitcoin“.

Pavyzdžiui, jei Alisa turi vieną 15 Bitcoin išvestį, o CoinJoin priima tik 1 Bitcoin vertės išvestį, užbaigus CoinJoin, Alisa turėtų .1 mišrią Bitcoin išvestį ir 05 nemaišytą Bitcoin išvestį. .05 Bitcoin yra laikomas „nesumaišytu“, nes jį galima susieti su pradine Alice išvestimi .15. Mišri išvestis nebegali būti tiesiogiai susieta su įvestimi ir turės anonimiškumo rinkinį, kurį sudarys visi kiti CoinJoin dalyviai. 

Siekiant išsaugoti CoinJoin privatumą, būtina, kad mišrūs ir nesumaišyti išėjimai niekada nebūtų susieti vienas su kitu. Jei jie atsitiktinai sujungiami bitkoinų blokų grandinėje viename arba operacijų rinkinyje, stebėtojas gali naudoti šią informaciją, kad atsektų mišrius išėjimus iki jų šaltinio. 

DAO įsilaužėlio atveju atrodo, kad naudodamas Wasabi Wallet jie naudojo vieną adresą keliose CoinJoins; vienu atveju adresas buvo naudojamas kaip nesumaišytas keitimo išvestis, antruoju atveju buvo naudojamas kaip mišrus išėjimas.

Tai gana neįprasta klaida CoinJoin kontekste, nes šiai kaltės pagal asociaciją metodą reikia atlikti operaciją pasroviui nuo CoinJoins, kad būtų galima „sujungti“ nesumaišytus ir mišrius išėjimus ir juos susieti. Tačiau šiuo atveju nereikėjo analizuoti jokių operacijų, išskyrus dvi CoinJoins, nes tas pats adresas buvo naudojamas prieštaringai dviejose atskirose CoinJoins. 

Iš esmės ši galimybė egzistuoja dėl „Wasabi Wallet“ programinės įrangos dizaino sprendimo: „Wasabi Wallet“ naudoja vieną išvedimo kelią tiek mišrioms, tiek nemaišytoms išvestims. Tai laikoma bloga praktika. Wasabi darbuotojas pareiškė, kad taip buvo siekiama, kad piniginės atkūrimas būtų suderinamas su kitomis piniginėmis, tačiau BIP84 (tai yra išvedimo schema „Wasabi Wallet“ naudoja standartinį būdą, kaip atpažinti išvesties būdą, priskirtą keisti išvestį.

Gedimai, atsirandantys dėl šio dizaino pasirinkimo, labiausiai pastebimi, kai vartotojas naudoja du „Wasabi Wallet“ egzempliorius tuo pačiu metu, kai naudoja tą pačią sėklą. Pagal šį scenarijų du egzemplioriai galėtų pasirinkti tą patį adresą tokiu nesuderinamu būdu, kai vienu metu bandoma paleisti mišinį iš kiekvieno egzemplioriaus. Įspėjama dėl to oficialūs dokumentai. Taip pat gali būti, kad kaltininkė buvo žinomos „Wasabi“ piniginės klaidos.

Išvados ir išvados

Taigi ko mes iš to pasimokome? Nors ši klaida su Wasabi dar nėra istorijos pabaiga, ji veikė kaip esminis elementas susekant tariamą įsilaužėlį. Dar kartą patvirtinamas mūsų įsitikinimas, kad privatumas yra sunkus. Tačiau praktiškai turime dar vieną pavyzdį, kaip svarbu užkirsti kelią išvesties užteršimui naudojant privatumo įrankius ir kaip kruopščiai „monetų valdymo“ reikalauja vartotojai ir programinė įranga. Kyla klausimas, kokie privatumo protokolai yra sukurti siekiant sumažinti šios klasės atakas? 

Vienas įdomus sprendimas yra CoinSwap, kai užuot sujungę išvestis į didelę operaciją, jūs keičiate išvestis su kitu vartotoju. Tokiu būdu jūs keičiate monetų istorijas, o ne prisijungiate prie monetų istorijų. Dar efektyviau, jei CoinSwap atliekamas ne grandinėje (kaip įgyvendinama Mercury Wallet), nėra jokių nesumaišytų pakeitimų rezultatų, su kuriais būtų galima susidoroti. 

Nors yra galimų vartotojo klaidų, dėl kurių CoinSwap gali būti „iškeistas“, šios klaidos, be abejonės, yra daug akivaizdesnės galutiniam vartotojui, nes bet koks išvesčių sujungimas, pažeidžiant privatumą, gali būti atliktas tik aiškiai sumaišius sukeisti išvestį su dar nepakeista, o ne sujungti du išėjimus, kurie jau praėjo per CoinJoin, iš kurių tik vienas iš tikrųjų yra sumaišytas.

Mercury piniginė šiuo metu yra vienintelė ne grandinės CoinSwap priemonė, prieinama galutiniams vartotojams. Tai leidžia vartotojams užfiksuoti savo monetas antrojo sluoksnio protokole (žinomame kaip būsenos grandinė) ir tada aklai apsikeisti išvestis su kitais būsenos grandinės naudotojais. Tai labai įdomi technika ir verta eksperimentuoti tiems, kurie domisi naujų privatumo įrankių, pasižyminčių įdomiomis funkcijomis ir priimtinais kompromisais, tyrinėjimu.

Gaukite savo dienos santrauką Bitcoin, defi, NFT ir Web3 naujienos iš CryptoSlate

Tai nemokama ir galite bet kada atsisakyti prenumeratos.

Gaukite kraštas kriptovaliutų rinkoje?

Tapkite „CryptoSlate Edge“ nariu ir pasiekite mūsų išskirtinę „Discord“ bendruomenę, išskirtinį turinį ir analizę.

Grandininė analizė

Kainos momentinės nuotraukos

Daugiau konteksto

Prisijunkite dabar už 19 USD per mėnesį Naršykite visus privalumus

Šaltinis: https://cryptoslate.com/what-can-we-learn-from-studying-hacks-revealing-insights-on-privacy-and-cryptocurrency-movements-after-the-dao-2016-hack/