La vulnerabilidad CVE-2023-39910, en la herramienta Bitcoin Explorer de Libbitcoin y el conjunto de vulnerabilidades BitForge, que afecta los criptomonederos a nivel del protocolo MPC, podrían haber permitido potenciales robo de criptomonedas.
Los investigadores de seguridad del proyecto Milk Sad han descubierto una vulnerabilidad, denominada CVE-2023-39910, que afecta a los monederos de criptomonedas generados utilizando la herramienta Bitcoin Explorer, de Libbitcoin.
Según el equipo de investigadores, formado por el equipo central de Distrust Anton Livaja, Lance Vick, Ryan Heywood, Shane Engelman y un grupo de 8 investigadores independientes, la vulnerabilidad CVE-2023-39910 permite a los actores maliciosos acceder a las claves privadas de los criptomonederos creados con versiones anteriores a la v3.0.0 de Libbitcoin que utilizan el generador de números pseudoaleatorios Mersenne Twister (PRNG). Esto es posible debido a un error que se origina en PRNG, que afecta al mecanismo entropy seeding de los criptomonederos y que permite a los atacantes explotar el generador de números pseudoaleatorios para forzar las claves privadas de los criptomonederos en pocos días.
Esta vulnerabilidad fue descubierta mientras los investigadores analizaban algunos robos de criptomonedas que habían ocurrido de forma misteriosa, entre ellos, un robo de $850.000 dólares en Bitcoin que ocurrió entre los meses de junio y julio.
Pero además de CVE-2023-39910, una investigación aparte realizada por el equipo de Fireblocks dio con otra vulnerabilidad denominada BitForge, que afecta a varias de las implementaciones más ampliamente adoptadas de protocolos de computación multipartita (MPC), incluidos GG-18, GG-20 y Lindell17.
BitForge fue catalogada por Fireblocks como una vulnerabilidad de “día cero” que pone en riesgo a unos 15 criptomonederos al permitir que un atacante pueda acceder a las claves privadas de estos monederos de activos digitales.
Los riesgos los criptomonederos generados con Libbitcoin
El universo que ofrecen las criptomonedas y la tecnología blockchain está lleno de grandes beneficios, pero también de grandes riesgos. Aunque la seguridad siempre ha sido el apremiante de los desarrolladores de blockchain, las vulnerabilidades, errores y desafíos siguen existiendo.
En el caso de CVE-2023-39910, los investigadores de Milk Sad destacaron que la vulnerabilidad puede robar los fondos de un criptomonedero, incluso si su usuario mantiene las claves privadas en papel dentro de un caja fuerte. ¿Y cómo es esto posible?
Los investigadores explicaron que el punto clave de la vulnerabilidad es el generador de números aleatorios débil.
La seguridad práctica de un criptomonedero generado con alguna versión de Libbitcoin anterior a la v3.0.0, se reduce de 128 bits, 192 bits o 256 bits a solo 32 bits de información clave desconocida. “Un espacio de claves de 32 bits es 2^32, o 4.294.967.296 combinaciones únicas diferentes de frases mnemotécnicas BIP39 derivadas u otros formatos de clave (BIP32)… No son tantas combinaciones como parece”, indicaron los investigadores de seguridad.
Debido a la “insuficiente” cantidad de combinaciones únicas de frases mnemotécnicas, un atacante podría realizar una búsqueda de fuerza bruta para dar con la combinación de una billetera de criptomonedas en menos de un día, utilizando un ordenador o una PC de juegos decente y, en este punto, no importaría si el propietario del criptomonedero mantiene su frase semilla muy bien guardada, ya que el atacante al estar en posesión de la claves privadas podría robar los fondos de forma remota.
La recomendación de los investigadores de Milk Sad a los usuarios que utilicen criptomonederos generados con Libbitcoin es mover sus fondos a una nueva billetera segura, para evitar a posibilidad de ser afectados por esta vulnerabilidad.
Más de 15 criptomonederos afectados por BitForge
Por otro lado, la vulnerabilidad descubierta por Fireblocks afecta a más de 15 proveedores de monederos de criptomonedas importantes, incluyendo también a cadenas de bloques y proyectos de código abierto.
La vulnerabilidad permite a un atacante filtrar la clave privada completa de un monedero de criptomonedas debido a una prueba de conocimiento cero faltante en los protocolos GG18 y GG20. En el caso del protocolo Lindell17, la vulnerabilidad puede ser explotada en aquellas implementaciones que se desvían de la especificación del documento académico y que manejan mal las firmas fallidas, creando una puerta trasera que permite a los atacantes acceder a las claves privadas cuando falla la firma.
Actualmente, los desarrolladores y proveedores de los criptomonederos afectados están actualizando sus implementaciones para parchear la vulnerabilidad y garantizar la seguridad de los usuarios.
Continúa leyendo: Chema Alonso: «La IA puede ser utilizada para hacer ataques de phishing»