La seguridad de Bitcoin volvió a quedar bajo la lupa después de que un ataque permitiera sustraer más de 1.000 BTC, valuados en unos USD 70 millones, en apenas 41 minutos.
Una investigación desarrollada por Galaxy Research reconstruyó la secuencia del episodio y atribuyó el robo a una vulnerabilidad presente durante la generación de claves en determinadas billeteras de hardware Coldcard.
El hallazgo incrementó la preocupación entre especialistas porque los fondos pudieron ser vaciados sin acceder físicamente a los dispositivos ni comprometer de manera directa a sus propietarios.
Cómo lograron vaciar miles de billeteras de Bitcoin
Galaxy Research estableció que el 30 de julio fueron retirados 1.082,65 de Bitcoin entre las 01:10 y las 01:51 UTC, una secuencia concentrada en apenas cuarenta y un minutos.
Las operaciones quedaron distribuidas en seis bloques separados por otros tres sin movimientos, una característica que para los investigadores sugiere que las transacciones fueron enviadas mediante distintos lotes previamente preparados.
El análisis también determinó que los activos terminaron agrupados en cuatro direcciones que permanecen inmóviles, ampliando los primeros reportes, que solo habían detectado una y subestimaban el monto robado.
Aunque el volumen sustraído quedó por debajo de otros ataques registrados este año, la modalidad utilizada despertó especial preocupación porque el problema no surgió de un exchange ni de phishing.
Los investigadores explicaron que el inconveniente apareció durante la generación de las claves privadas, proceso mediante el cual cada billetera crea la semilla aleatoria que permite derivar direcciones y controlar fondos.
El firmware de Coldcard debía obtener esa semilla mediante un generador de aleatoriedad por hardware, aunque una configuración interna omitía ese mecanismo y aceptaba un procedimiento alternativo basado únicamente en software.
Como resultado, las claves quedaron vinculadas al número de serie del chip y registros del reloj interno, reduciendo drásticamente las combinaciones posibles y facilitando su reproducción mediante fuerza computacional.
El método que permitió encontrar las claves privadas
Galaxy concluyó que la vulnerabilidad afectaba con certeza a los modelos Mk2 y Mk3, mientras para Mk4, Q y Mk5 estimó cerca de cuatro mil millones de semillas posibles.
Aunque esa cantidad parece extremadamente elevada, los investigadores consideraron que sigue siendo abordable para un atacante con suficiente capacidad de procesamiento destinada a reproducir combinaciones de manera sistemática.
El procedimiento consistía en generar millones de semillas candidatas, derivar sus direcciones y compararlas con la blockchain pública de Bitcoin sin interactuar jamás con la billetera de cada víctima.
Eso permitía realizar toda la operación desde la computadora del atacante, incluso cuando el dispositivo permanecía apagado y guardado dentro de una caja fuerte, sin conexión alguna.
El análisis de Galaxy reforzó esa hipótesis al comprobar que 1.183 de las 1.196 billeteras afectadas utilizaban direcciones SegWit nativas, mientras las restantes conservaban formatos anteriores.
Para los investigadores, esa distribución demuestra que no existió una selección previa de víctimas, sino una búsqueda sistemática de semillas posibles hasta identificar aquellas que todavía controlaban Bitcoin.
Qué puede pasar con las billeteras afectadas
Coinkite alertó a los propietarios de dispositivos Mk3 y sostuvo que los modelos más recientes permanecían fuera de riesgo, aunque un informe posterior de Block amplió el alcance de la vulnerabilidad detectada.
Según ese análisis, también podrían estar comprometidos los modelos Mk2, Mk4, Q y Mk5, por lo que los especialistas recomendaron considerar en riesgo cualquier semilla creada mediante las versiones afectadas.
Galaxy advirtió que podrían producirse nuevas oleadas de robos mientras continúen existiendo usuarios con semillas generadas mediante el firmware vulnerable, quienes además carecen de herramientas para comprobar si sus billeteras están comprometidas.
Pese a la complejidad técnica del ataque, Clay Garrett, investigador de Block, afirmó que el responsable habría cometido un error al utilizar una cuenta paga de un proveedor de datos blockchain.
Los registros internos de ese servicio coincidieron en cantidad, horario y secuencia con el patrón observado durante las barridas de direcciones, evidencia que posteriormente fue entregada por los investigadores a las autoridades.