
Zcash a remediat o vulnerabilitate majoră care ar fi permis actorilor rău intenționați să sustragă fonduri din pool-ul protejat (shielded pool) Sprout, al protocolului, care a fost deprecizat.
Un raport de divulgare al cercetătorului de securitate Alex “Scalar” Sol, publicat marți, afirmă că a fost descoperită o eroare critică în nodurile zcashd, care a dus la omiterea verificării dovezilor pentru tranzacțiile care implică pool-ul Sprout moștenit.
Pool-ul Sprout al Zcash este „pool-ul protejat” (shielded pool) original, lansat odată cu rețeaua în 2016. A fost prima implementare a dovezilor cu cunoștințe zero (zero-knowledge proofs - zk-SNARKs) într-o criptomonedă de producție, permițând utilizatorilor să trimită și să primească ZEC în mod privat.
Deși pool-ul a fost închis pentru depuneri noi în noiembrie 2020, acesta deține în continuare aproximativ 25.424 ZEC, care urmează să fie migrate către versiuni mai noi de pool-uri protejate (shielded pool).
Conform divulgării, vulnerabilitatea a afectat versiuni lansate începând cu iulie 2020, dar a fost remediată prin v6.12.0, care a fost lansată marți. Până în prezent, eroarea nu a fost exploatată, iar fondurile utilizatorilor rămân în siguranță.
Marile pool-uri de mining, inclusiv Luxor, F2Pool, ViaBTC și AntPool, au implementat deja remedierea până la 26 martie, a adăugat raportul.
Raportul a adăugat că implementarea nodului complet (full node) Zebra nu a fost afectată. În cazul unei încercări de exploatare, aceasta ar fi dus la o bifurcație a lanțului (chain fork), acționând ca o garanție suplimentară.
În ciuda gravității problemei, Echipa de Dezvoltare Deschisă Zcash a clarificat că mecanismul „turnstile” al rețelei, care impune ca orice monede care părăsesc pool-ul Sprout să fi intrat anterior în acesta, ar fi prevenit o inflație mai amplă a ofertei (supply inflation).
Pentru rețeaua Zcash, aceasta marchează a doua oară când o vulnerabilitate critică, sistemică, a fost descoperită în cadrul pool-urilor sale protejate (shielded pools). În 2019, echipa Zcash a dezvăluit o eroare de „contrafacere”, o defecțiune în criptografia subiacentă care ar fi putut permite unui atacator să creeze o cantitate infinită de ZEC fără a fi detectat.