Loading market data...

Zcash korjasi kriittisen haavoittuvuuden, joka mahdollisti rajoittamattoman väärennetyn ZEC:n luonnin

Zcash korjasi kriittisen haavoittuvuuden, joka mahdollisti rajoittamattoman väärennetyn ZEC:n luonnin

Zcashin kehittäjät kiirehtivät hätäpäivitysten julkaisua viime viikolla löydettyään kriittisen haavoittuvuuden Orchard-suojatusta poolista, joka olisi voinut sallia hyökkääjän luoda rajattomasti väärennettyä ZEC:tä. Tietoturvatutkija Taylor Hornby löysi bugin 29. toukokuuta tekoälyavusteisia muodollisia menetelmiä käyttäen, mikä käynnisti hätäharjoituksen, joka päättyi kovaan haarukkaan vain neljä päivää myöhemmin. Mutta koska Zcashin yksityisyysarkkitehtuuri tekee tarjonnan tarkastamisesta mahdotonta, tiimi ei voi todistaa, että haavoittuvuutta olisi hyödynnetty – tai ettei sitä olisi hyödynnetty.

Bugi ja sen löytäminen

Virhe piili alirajoitetussa elementissä elliptisen käyrän kertolaskugadgetissa halo2_gadgets-säiliössä (crate), joka on osa Orchardia tukevaa nollatietotodistusjärjestelmää. Se oli ollut olemassa Orchainin pääverkon aktivoinnista toukokuusta 2022 lähtien – noin neljä vuotta. Tämä tarkoitti, että kuka tahansa, joka tiesi siitä, olisi teoriassa voinut lyödä ZEC:tä tyhjästä jättämättä jälkiä lohkoketjuun.

Hornby löysi ongelman käyttämällä muodollisia verifiointityökaluja, jotka on koulutettu kryptografiselle koodille. Haavoittuvuus koski kaikkia halo2_gadgets-versioita ennen versiota v0.5.0, orchardia ennen versiota v0.14.0 ja zcashd-versioita v5.0.0 – v6.12.3.

Hätäpäivitykset otettiin käyttöön

Tunnistamisen jälkeen tiimi julkaisi muutamassa tunnissa pehmeän haarukan Zebra 4.5.3:n kautta, joka väliaikaisesti esti kaikki Orchard-tapahtumat. Pysyvä korjaus tuli NU6.2-kovan haarukan mukana – Zebra 5.0 – joka aktivoitiin 2. kesäkuuta lohkossa 3 364 600 ja korjasi itse piirin. Haavoittuneilla solmuilla olevien käyttäjien piti päivittää välittömästi pysyäkseen oikeassa ketjussa.

Shielded Labs, joka osallistuu Zcashin kehitykseen, totesi lausunnossaan uskovansa, että aikaisempi hyväksikäyttö on epätodennäköistä, mutta ei voi sitä lopullisesti todistaa. Tuo epävarmuus on sisäänrakennettu järjestelmän suunnitteluun: suojatut poolit piilottavat tapahtumien määrät ja saldot, mikä tekee tarjonnan kokonaismäärän tarkastamisesta kryptografisesti mahdotonta.

Vastaukseton kysymys

Ripplen teknologiajohtaja David Schwartz kommentoi käytännön riskiä. Passiiviset haltijat, jotka eivät koskaan siirrä kolikoitaan, ovat turvassa, hän sanoi – olettaen, että bugia ei ole koskaan aktivoitu. Mutta tuota ehtoa ei voida varmistaa. Ainoa tapa olla varma olisi vaarantaa se suoja, jonka Zcash rakennettiin suojaamaan.

Tämä on harvinainen hetki, jolloin yksityisyyskolikon ydintunnusmerkistä tulee sen suurin haittapuoli. Jos hyökkääjä löi väärennettyä ZEC:tä ja livahti sen kiertoon, sitä ei voi tietää. Tarjonta olisi voinut olla paisutettu, eikä kukaan tietäisi sitä.

Markkinareaktio

ZEC ei odottanut vastauksia. Hinta putosi yli 30 % yhdessä istunnossa 29. toukokuuta tehdyn ilmoituksen jälkeen, saavuttaen lyhyesti alhaisimman tasonsa yli kuukauteen. Myyntiaalto heijasti paitsi itse bugia, myös epävarmuutta sen mahdollisesta vaikutuksesta. Yksityisyyskolikko, joka ei pysty vahvistamaan omaa tarjontaansa, on vaikea myytävä, ainakin lyhyellä aikavälillä.

Päivitykset ovat nyt käytössä, ja Orchard-tapahtumat ovat palanneet verkkoon. Mutta kysymys, joka jää – hyödynnettiinkö bugia koskaan? – on sellainen, johon Zcashin arkkitehtuuri ei ehkä koskaan anna kenenkään vastata.