Egy 2021-ben kiadott hibás szoftverfrissítés miatt egyes Coldcard hardvertárcák a tervezettnél jóval kiszámíthatóbb helyreállító kulcsokat hoztak létre. A sebezhetőséggel összefüggésbe hozott támadások során az elmúlt napokban 5294 Bitcoin-címről összesen mintegy 1815 bitcoint utaltak át.
A vizsgált tárcák együttes vesztesége a mai árfolyamon körülbelül 114 millió dollárnak, közel 36 milliárd forintnak felel meg, de ez egyelőre csak blokkláncelemzésből és károsulti beszámolókból származó becslés, ezért a károk pontos nagysága később még változhat.
Nem a Bitcoint törték fel
A hardvertárca arra szolgál, hogy a kriptovaluták elköltéséhez szükséges titkos kulcsot hozzáférhetetlenné tegye az internetes támadásokkal szemben. A bitcoin tehát valójában nem magán a készüléken található, hanem a blokkláncon, de amikor valaki fizetni szeretne, a tranzakciót a hardveres tárcán hagyja jóvá, miközben a titkos kulcs nem válik hozzáférhetővé egy feltörhető számítógépen vagy telefonon.
A mostani támadássorozat hátterében a Coldcard típusú tárcák kulcsgenerálási hibája áll, vagyis nem a Bitcoin-hálózatot törték fel, hanem a hibás készülékek által létrehozott, kiszámíthatóbb titkos kulcsokat használták ki.
A hardvertárca az első beállításakor létrehoz egy úgynevezett seed jelszót, amit általában 12 vagy 24 szó formájában kap meg a felhasználó. A seed nem csak egy egyszerű jelszó, hanem a tárcához tartozó összes titkos kulcs kiindulópontja. Elsősorban arra szolgál, hogy a tárca hozzáférése akkor is helyreállítható legyen, ha a hardvertárca elveszik, elromlik vagy megsemmisül. Ilyenkor a 12 vagy 24 helyreállító szót egy másik kompatibilis készüléken vagy tárcaprogramban megadva ismét hozzá lehet férni a segítségével tárolt bitcoinhoz.
A seed birtokában tehát a pénz akkor is elkölthető, ha az eredeti Coldcard készülék internetkapcsolat nélkül egy fiókban pihen.
A biztonság alapját az adja, hogy a seedet egy megfelelően nagy és véletlenszerű szókészletből hozza létre a készülék. Ha ez a véletlenszám-generálás kiszámíthatóvá válik, jelentősen leszűkül a lehetséges kulcsok köre.
A támadók egy ilyen hiba ismeretében megpróbálhatják előállítani a hibás program által létrehozható seedeket, majd összevethetik azokat a Bitcoin-blokkláncon látható nyilvános adatokkal, és találgatással megpróbálhatják a titkos kulcsokat és a hibás firmware kiadása után létrehozott tárcacímeket összekapcsolni.
A megfelelő számítástechnikai ismeretek birtokában ez a folyamat automatizálható, így rövid idő alatt sok cím ellenőrizhető és kiüríthető.
Egy 2021-es frissítésben jelent meg a hiba
A Coldcardot gyártó kanadai Coinkite vizsgálata szerint a probléma 2021 márciusáig vezethető vissza. A cég ekkor módosította a seed létrehozásához használt kriptográfiai programkönyvtárat.
A változtatás után a firmware a készülék a beépített hardveres véletlenszám-generátora helyett egy gyengébb, szoftveres tartalékmegoldást kezdett használni. A hibás generátor korábban is szerepelt a forráskódban, a fejlesztők azonban állításuk szerint nem tudták, hogy a seed létrehozásakor ténylegesen ez fut le.
Egy mérnöki csapat tagjai a biztonsági rés felfedezése után külön is megvizsgálták a firmware-t, és elemzésük megerősítette, hogy a program a hardveres forrás helyett egy determinisztikus véletlenszám-generátort hívott meg.
Több Coldcard-generáció is érintett lehet
Az egyes Coldcard-modelleket nem egyformán gyengítette a hiba. Az Mk2 és Mk3 készülékek a tervezettnél sokkal szűkebb körből választották ki a tárcához tartozó helyreállító kulcsot, ezért a támadóknak lényegesen kevesebb jelszólehetőséget kellett végigpróbálniuk.
Az újabb Mk4, Mk5 és Q modellek más adatokból is gyűjtöttek némi véletlenszerűséget, így nehezebb kiszámítani a kulcsaikat, de ezek is jóval gyengébbek maradtak a tervezettnél.
A Coinkite becslése szerint a régebbi modellek körülbelül 40, az újabbak 72 bites biztonságot nyújtottak az elvárt legalább 128 bit helyett. Minél alacsonyabb ez a szám, annál kevesebb lehetséges kulcscariációt kell egy támadónak ellenőriznie.
A Coinkite biztonsági tájékoztatója szerint az érintettséget az határozza meg, hogy milyen firmware futott a készüléken a seed létrehozásakor.
A veszélyeztetett verziók:
- Coldcard Mk2 és Mk3: 4.0.1-től 4.1.9-ig;
- Coldcard Mk4 és Mk5: az 5.6.0 standard, illetve a 6.6.0X Edge előtti kiadások;
- Coldcard Q: az 1.5.0Q standard, illetve a 6.6.0QX Edge előtti kiadások.
Az ugyancsak a Coinkite által forgalmazott Coldcard Mk1, Tapsigner, Opendime és a Satscard termékek a gyártó szerint nem érintettek.
Azok a felhasználók is veszélyben lehetnek, akik időközben frissítették a firmware-t, mert a frissítés csak az új kulcsok létrehozását javítja meg; a korábban előállított seed véletlenszerűségén már nem változtat.
A Coinkite már minden érintett modellhez kiadta a javított firmware-t, de az érintett felhasználóknak a javított firmware telepítése után teljesen új seedet és új tárcát kell létrehozniuk, majd a bitcoinjaikat ide átutalniuk.
A Coinkite a hiba megerősítése után leállította a kiszállításokat, és közlése szerint megsemmisítette a telephelyein maradt, sebezhető firmware-rel előkészített készülékeket. A károsultaktól azt kérte, hogy ne dobják ki a régi eszközeiket, mert azokra egy későbbi hatósági vagy jogi vizsgálat során még szükség lehet.
A hardvertárcák ellenőrzését is átírhatja az eset
A Coldcard hibája rámutatott az iparági ellenőrzés hiányosságaira. Más kriptográfiai eszközöknél már léteznek olyan független vizsgálati szabványok, amelyekkel ellenőrizhető, hogy a forgalomba került készülék valóban a dokumentációban szereplő véletlenszám-generátort használja-e. A hardvertárcáknál viszont nincs általánosan elfogadott, ezzel egyenértékű rendszer.
A Coldcard forráskódja emellett nyilvánosan is hozzáférhető volt, a hiba mégis körülbelül öt évig észrevétlen maradt. Ez azt is megmutatja, hogy a nyílt forráskód önmagában nem jelent folyamatos vagy teljes körű biztonsági ellenőrzést.
Mivel a legtöbb kriptotulajdonos a hardvertárcákat tekinti a bitcoinjai legbiztonságosabb tárolási módjának és utolsó védelmi vonalának, a történtek egyetlen gyártó problémájánál jóval messzebbre is mutathatnak, és a hardvertárcák biztonságába vetett évtizedes bizalmat is próbára tehetik.




