Un investigador de seguridad descubrió una vulnerabilidad crítica en los nodos de Zcash que podría haber permitido a mineros maliciosos drenar más de 25,000 ZEC del pool blindado Sprout en desuso de la red, una suma que equivale a aproximadamente $6.5 millones a la fecha de redacción.
Alex “Scalar” Sol divulgó la falla el 23 de marzo, según un informe de divulgación publicado el martes, revelando que los nodos zcashd estaban omitiendo la verificación de pruebas para transacciones que involucraban el pool legado Sprout. El fallo no se explotó y, según la divulgación, los fondos de todos los usuarios permanecen seguros.
La vulnerabilidad abarcó versiones desde julio de 2020 hasta la actualidad, y los desarrolladores de Zcash lanzaron la v6.12.0 el martes para contener la solución. Los principales pools de minería se movieron rápidamente para parchear sus sistemas: el pool de minería Luxor confirmó el despliegue el 25 de marzo, mientras que F2Pool, ViaBTC y AntPool implementaron el arreglo para el 26 de marzo, según el mismo informe.
La implementación del nodo completo Zebra no se vio afectada por la vulnerabilidad, dijo el informe, y habría activado un fork de cadena si se hubiera intentado la explotación, proporcionando una capa adicional de protección de red.
Sol, quien descubrió la vulnerabilidad con ayuda de IA, la reportó a Shielded Labs el 23 de marzo. La organización coordinó con el Zcash Open Development Lab (ZODL), cuyo ingeniero Jack “str4d” Grigg redactó el parche.
Por su divulgación, Sol recibirá una recompensa total de 200 ZEC—valorada en más de $51,000—con Shielded Labs, ZODL, la Zcash Foundation y Bootstrap, cada uno contribuyendo con 50 ZEC.
El pool Sprout se cerró a nuevos depósitos en noviembre de 2020, lo que lo convirtió en un componente en desuso pero aún activo que mantiene aproximadamente 25,424 ZEC que los usuarios aún no han migrado a versiones más nuevas de pools blindados.
Si bien la vulnerabilidad podría haber permitido drenar estos fondos, el Zcash Open Development Team (ZODL) dijo que el mecanismo de “turnstile” de Zcash habría evitado una inflación de oferta más amplia. El turnstile exige que cualquier moneda que salga del pool Sprout deba haber entrado en él de manera verificable, creando una salvaguarda contra la creación de nuevos tokens más allá de la circulación total de la red de alrededor de 16.63 millones de ZEC.
Esto no es la primera gran vulnerabilidad que enfrenta la red. En 2019, la red corrigió un fallo descrito como un generador cripto de “contracopia infinita” (“infinite counterfeit”), aunque se parcheó antes de convertirse en un problema importante para la red de la moneda de privacidad.
Zcash es la mayor ganadora de las últimas 24 horas entre las 100 principales monedas por capitalización de mercado, según los datos de CoinGecko, subiendo más de 14% hasta un precio reciente por encima de $255. El precio de la moneda de privacidad se disparó el otoño pasado desde un precio de alrededor de $50 hasta un máximo de varios años cercano a $700, pero ha caído junto con Bitcoin y otras criptomonedas en los últimos meses.