Los desarrolladores de Bitcoin Core revelaron un error de alta gravedad que podría permitir a los mineros hacer caer de forma remota algunos nodos de Bitcoin.
El problema, identificado como CVE-2024-52911, afectó a las versiones de Bitcoin Core posteriores a la 0.14.0 y anteriores a la 29.0. El error fue corregido en Bitcoin Core 29.0, que fue lanzado en abril de 2025.
Bitcoin Core hizo público el problema el 5 de mayo de 2026, después de que la última línea de versiones vulnerables 28.x llegara al fin de su vida útil el 19 de abril.
El problema involucró al intérprete de scripts de Bitcoin Core durante la confirmación de bloques. Bitcoin Core indicó que un bloque especialmente diseñado podría causar que un nodo accediera a la memoria después de que esos datos ya hubieran sido liberados.
Durante la validación, Bitcoin Core pre-calcula los datos de entrada de las transacciones y envía comprobaciones de scripts a hilos en segundo plano. En algunos casos, un bloque no válido podría destruir los datos en caché mientras otro hilo aún intentaba leerlos.
Bitcoin Core señaló que esto podría permitir a un atacante con suficiente prueba de trabajo hacer caer los nodos víctimas. También indicó que "es posible" que el fallo pudiera posibilitar la ejecución remota de código, aunque las limitaciones en los datos del bloque hacían que ese resultado fuera "poco probable".
El ataque no era sencillo de ejecutar. Un minero necesitaría producir un bloque especialmente diseñado con suficiente prueba de trabajo para alcanzar la punta de la cadena.
Eso hizo que el ataque resultara costoso porque dicho bloque sería inválido. No podría obtener una recompensa de bloque normal, lo que obligaría al atacante a gastar hashpower sin cobrar el pago habitual de minado.
Bitcoin Core no afirmó que el error hubiera sido utilizado en ataques reales. El aviso se centró en el fallo, la corrección y el cronograma de divulgación.
El error no modificó las reglas de consenso de Bitcoin. Estaba vinculado al manejo de memoria en el software de Bitcoin Core, no a las reglas que definen las transacciones o bloques válidos de Bitcoin.
Cory Fields, de la MIT Digital Currency Initiative, reportó el error de forma privada el 2 de noviembre de 2024. Bitcoin Core indicó que el informe incluía una prueba de concepto y una forma propuesta para reducir el riesgo.
Pieter Wuille aplicó una corrección encubierta cuatro días después a través del PR 31112. La solicitud de extracción fue fusionada el 3 de diciembre de 2024, antes de que Bitcoin Core 29.0 se lanzara con la corrección en abril de 2025.
El aviso siguió la política de divulgación de Bitcoin Core para errores de alta gravedad. Su política establece que los problemas de alta gravedad se divulgan después de que la última versión afectada llegue al fin de su vida útil.
Además, los operadores de nodos que utilizan versiones de Bitcoin Core anteriores a la 29.0 aún se enfrentan al antiguo error. Bitcoin Core no se actualiza automáticamente, por lo que los usuarios deben instalar las versiones más recientes de forma manual.
Un informe anterior sobre los riesgos de descentralización de blockchain citó una investigación que señalaba que el 21% de los nodos de Bitcoin ejecutaban software de Bitcoin Core desactualizado en junio de 2021. Ese contexto muestra por qué las versiones antiguas de los clientes pueden seguir siendo una preocupación de seguridad mucho tiempo después de que se publiquen las correcciones.

