
Zcash ha parcheado una vulnerabilidad importante que habría permitido a actores maliciosos drenar fondos del pool blindado Sprout, ya obsoleto, del protocolo.
Un informe de divulgación del investigador de seguridad Alex “Scalar” Sol, publicado el martes, afirma que se descubrió un fallo crítico en los nodos zcashd que resultó en la omisión de la verificación de pruebas para transacciones que involucraban el pool legado de Sprout.
El pool Sprout de Zcash es el “pool blindado” original que se lanzó con la red en 2016. Fue la primera implementación de pruebas de conocimiento cero (zk-SNARKs) en una criptomoneda en producción, permitiendo a los usuarios enviar y recibir ZEC de forma privada.
Aunque el pool se cerró a nuevos depósitos en noviembre de 2020, todavía contiene aproximadamente 25,424 ZEC, que aún no han sido migrados a versiones más recientes de pools blindados.
Según la divulgación, la vulnerabilidad abarcó versiones desde julio de 2020 en adelante, pero fue corregida a través de la v6.12.0, que fue lanzada el martes. Hasta el momento, el fallo no ha sido explotado y los fondos de los usuarios permanecen seguros.
Los principales pools de minería, incluidos Luxor, F2Pool, ViaBTC y AntPool, ya habían implementado la solución para el 26 de marzo, añadió el informe.
El informe añadió que la implementación del nodo completo Zebra no se vio afectada. En caso de un intento de explotación, habría resultado en una bifurcación de la cadena, actuando como una salvaguarda adicional.
A pesar de la gravedad del problema, el Equipo de Desarrollo Abierto de Zcash ha aclarado que el mecanismo de "torniquete" de la red, que exige que cualquier moneda que salga del pool Sprout haya entrado previamente en él, habría evitado una inflación más amplia de la oferta.
Para la red Zcash, esta es la segunda vez que se descubre una vulnerabilidad crítica y sistémica dentro de sus pools blindados. En 2019, el equipo de Zcash reveló un error de "falsificación", un fallo en la criptografía subyacente que podría haber permitido a un atacante crear una cantidad infinita de ZEC sin ser detectado.