▼ Krintanti
Poveikis
80 · Didelis
„CryptoJS“ pažeidžiamumo dėl kurio galima numatyti piniginės kodą... 5,69 mln. dolerių nuostoliai
BTCETHTRXMATIC
CryptoSlate · Aug 27, 04:48 PMŽiūrėti šaltinį ↗
„Coinspect“, blokų grandinės saugumo įmonė, pranešė, kad mažiausiai 5 kriptovaliutų piniginės programėlės naudojo „CryptoJS“ bibliotekos pažeidžiamą pseudopaslaptų skaičių generatorių kuriant atkūrimo frazes (sėklų frazes), dėl ko užpuolikai galėjo atsekti šias frazes ir pavogė mažiausiai 5,69 milijono dolerių. Šis skaičius yra tik minimalus, apimantis tik nustatytus atvejus, o realus nuostolis gali būti didesnis.
Problema atsirado 2014 m. birželį, kai buvo bandoma patobulinti CryptoJS bibliotekos funkciją WordArray.random(). Šis pakeitimas, įdiegtas per commit ff1f003, reikšmingai sumažino teoriniu būdu turėtų galimų atkūrimo sekų skaičių nuo 2^128 arba 2^256 iki maždaug 2^39–2^47. Toks sumažėjimas leidžia užpuolėjui praktiškai išvardinti visas galimas sekas, išgauti „blockchain“ adresus ir patikrinti likučius.
Ataką sudarė daugybė bangų. Pasak „Coinspect“, gegužės 27 d. buvo pavogta maždaug 3,14 milijono dolerių, o nuo gegužės 30 d. iki liepos 13 d. – dar apie 2,55 milijono dolerių. Liepos 20–21 d. buvo papildomai pavogta apie 40 tūkstančių dolerių iš kinų kalbos mnemonic subset'o. Analizuota daugiau nei 2000 sėklų, priklausančių penkioms skirtingoms tinklams: Bitcoin, Ethereum, Tron, Rootstock ir Polygon.
Paveiktos programėlės yra penkios: RRWallet, Bexo Wallet, NanChat, Bitcoin Libre ir Milo. RRWallet ir Milo jau nebeveikia. Bexo programėlėje problema buvo išspręsta 20.1.0 versijoje, NanChat programėlėje – 1.3.0 versijoje, o Bitcoin Libre programėlėje – 4 versijoje, atitinkamai pakeitus pažeistą pseudopaslaptų skaičių generavimo algoritmą. NanChat programėlė atskairose pranešimuose informavo vartotojus, kurie sukūrė pinigines iki 1.3.0 versijos, kad jų piniginės yra pažeistos ir kad jie turėtų jas pakeisti naujai sukurtomis atkūrimo frazėmis.
Svarbiausia yra tai, kad pažeidžiamumu sukurtos atkūrimo frazės nebus išspręstos tiesiog atnaujinant programą arba importuojant tą pačią frazę į kitą programinę arba aparatinę pinigų paskirstymo sistemą. Pažeidžiamumas priklauso nuo programinės įrangos versijos, kuri buvo naudojama, kai frazė buvo sukurta, o ne nuo pačios programos. „Coinspect“ pristatė įrankį pavadinimu „Unlukey“, leidžiantį vartotojams patikrinti, ar jų adresas nėra įtrauktas į duomenų rinkinį, kuriame buvo užfiksuoti pažeidimai, ir pabrėžė, kad, jei pažeidimas buvo patvirtintas, vienintelis sprendimas yra saugiai sugeneruoti naują atkūrimo frazę ir perkelti lėšas.
AI apibendrintas turinys. Visą straipsnį skaitykite šaltinyje.