source avatarJoseph Hurtado - Founder Granata Consulting

Compartir

EL DESASTRE DE SEGURIDAD DEL MONEDERO HARDWARE BITCOIN COLDCARD, ¿QUÉ PASÓ REALMENTE? El mejor informe de IA: Claude Opus 5 Max sobre lo que realmente sucedió con @COLDCARDwallet. Para verificar, pero parece bastante probable, y eso significa que Trezor y Ledger deberían estar bien: "El fallo de Coldcard **no** fue un chip TRNG defectuoso. Fue un error de configuración de compilación que omitió silenciosamente el TRNG de hardware por completo. La configuración de la placa de Coldcard establece `MICROPY_HW_ENABLE_RNG` en cero porque Coinkite incluye su propio wrapper de RNG de hardware. Pero la biblioteca libngu verificaba únicamente si esa macro estaba *definida*, no si estaba *habilitada*, por lo que la compilación tuvo éxito y se vinculó silenciosamente con la alternativa de software de MicroPython: un generador no criptográfico llamado "Yasmarang" sembrado con el UID del chip, los registros SysTick y RTC.¹ Ninguno de estos es un secreto: el UID son metadatos de fábrica parcialmente expuestos como el número de serie USB, y los valores del temporizador son controlables.¹ Consecuencias por generación:¹ - **Mk2/Mk3 con firmware v4.0.0–v4.1.9** — ninguna entropía criptográfica en absoluto. Con UID conocido, estado del temporizador e historial de llamadas, la generación de semillas es *determinista*. El límite realista en un arranque en frío: aproximadamente 2^16 a 2^40 candidatos en lugar de 2^256. - **Mk4/Q/Mk5** — el arranque añade entropía del elemento seguro, pero la hashea y conserva solo cuatro bytes, y `reseed()` sobrescribe solo una palabra de estado de 32 bits. Límite: 2^32, promediando ~2^31 intentos. Dos detalles hacen esto instructivo. Libngu XORea la alternativa contra una *segunda* secuencia Yasmarang inicializada con constantes publicadas — el XOR de dos entradas reproducibles sigue siendo reproducible.¹ Y la verificación de salud solo rechazaba salidas adyacentes idénticas, lo cual un PRNG determinista supera fácilmente.¹ El SHA256d sobre el resultado no ayuda: el hash no puede ampliar el conjunto de candidatos.¹ Aproximadamente 594 BTC (~$38M) fueron transferidos desde ~500 monederos de firma única en una ventana de 25 minutos, 1.324 UTXOs en un rango de tres bloques.³ El aviso propio de Coinkite cubre el firmware Mk3 4.0.1 a 5.0.3 y afirma que Mk4/Q/Mk5 no se ven afectados en un análisis inicial;² el informe independiente de Block discrepa en este último punto y sitúa a los modelos actuales en el límite de 2^32.¹ Trátelos ambos como preliminares. Dos cosas que sorprenden a la gente: la exposición depende del firmware que se ejecutaba **cuando se creó la semilla**, no de la fecha de compra o del firmware actual — actualizar no repara una semilla existente.¹ Y exportar una semilla débil a otro monedero tampoco la arregla.¹ ## Cómo generan entropía las principales billeteras **Ledger** — fuente única, pero una altamente certificada. El TRNG está dentro del Elemento Seguro; la entropía se genera allí y se mapea a palabras BIP39.⁵ El laboratorio de seguridad de Ledger describe los TRNG del SE como diseños de oscilador libre validados por laboratorios externos hasta EAL5+ y AIS-31, probados en temperatura, voltaje y frecuencia con detección de defectos incorporada.⁴ Nano X usa EAL5+; Nano S Plus y Stax usan componentes EAL6+.⁶ La compensación es honesta: obtienes certificación pero no verificabilidad — el sistema operativo es cerrado y no hay mezcla de entropía del host que puedas verificar independientemente. **Trezor** — multi-fuente por diseño, y esta es la respuesta arquitectónica al modo de fallo de Coldcard. Model One y Model T XORean la entropía del sistema operativo host con el TRNG de hardware STM32. Safe 3 y Safe 5 añaden una tercera fuente, el elemento seguro Optiga. Safe 7 añade una cuarta, el chip TROPIC01.⁷ La idea es que un atacante necesitaría que todas las fuentes fallaran simultáneamente.⁷ Crucialmente, puedes verificarlo: `trezorctl` te permite ver la entropía enviada por el host y pedir al dispositivo que muestre su entropía interna, luego reconstruir tú mismo la semilla y verificar que coincida.⁸ Trezor Suite 25.2.2 (febrero 2025) automatizó una versión de esto como la "verificación de entropía", y es un flujo de trabajo en el `ResetDevice` del firmware.⁹ ¹⁰ **BitBox02** — cinco fuentes: aleatoriedad de fabricación, tu contraseña del dispositivo, la computadora host, el microcontrolador y el chip seguro, combinadas para que cada una solo pueda añadir entropía, nunca restarla.¹¹ El firmware es de código abierto con compilaciones reproducibles verificadas independientemente por WalletScrutiny.¹² ## ¿Qué tan seguras son estas contra el hacking? La respuesta honesta es que el silicon TRNG casi nunca es lo que se ataca. Cada gran falla real de entropía ha sido una falla de *integración* en software: - El bug de `SecureRandom` de Android drenó monederos en 2013⁴ - Milksad (2023) — Libbitcoin Explorer usó Mersenne Twister sembrado desde un valor de reloj de 32 bits; ~2.600 monederos comprometidos, ~$900k confirmados⁷ - Coldcard (2026) — un `#ifndef` que debería haber sido `#if`¹ Atacar un TRNG certificado del SE requiere posesión física, equipo de laboratorio y habilidad especializada. Explotar un bug de entropía requiere un xpub o una dirección — que son públicas y actúan como un oráculo de validación gratuito, permitiendo al atacante probar semillas candidatas fuera de línea a gran escala.¹ Esa asimetría es por qué la arquitectura vence a la certificación aquí. Entonces, el ranking práctico: 1. **Mezcla multi-fuente** donde componentes independientes contribuyen cada uno. Una fuente defectuosa no hunde la semilla. 2. **Verificabilidad** — firmware de código abierto, compilado reproduciblemente, más una forma para *ti* confirmar que la entropía que proporcionaste fue realmente usada. La verificación de entropía de Trezor y las compilaciones reproducibles de BitBox son ejemplos concretos. 3. **Certificación** — valor real contra ataques físicos (EAL5+/6+, AIS-31), pero certifica el componente, no el firmware que lo llama. El Mk4 de Coldcard *tenía* un elemento seguro; el firmware desechó 28 de sus 32 bytes.¹ ## Si deseas eliminar completamente la confianza en el RNGDice. Cada tirada de D6 aporta 2.585 bits, por lo que 50 tiradas proporcionan seguridad de 128 bits y 99 tiradas, de 256 bits.¹³ La ruta dedicada de dados de Coldcard hashiza la secuencia de tiradas directamente con SHA256 y omite por completo el generador del dispositivo². ¹³ — ten en cuenta que esto solo funciona mediante `Importar existente > Tiradas de dados`, no en el flujo normal de Nueva Billetera.² BitBox02 publica un procedimiento equivalente.¹¹ Nunca fotografíes las tiradas ni las ingreses en una computadora conectada a la red.² Una contraseña BIP39 sólida es el otro factor: añade entropía externa al RNG del dispositivo, por eso Coinkite dice que las billeteras Mk3 protegidas con contraseña enfrentan un riesgo mínimo.² Es una verdadera mitigación, no un sustituto para la migración. Si generaste una semilla en una Coldcard afectada, tanto Coinkite como Block recomiendan mover los fondos — y ten en cuenta que un quórum multisig compuesto enteramente por dispositivos vulnerables no ofrece protección.¹ ² --- **Fuentes** 1. Block Engineering — *Fallback predecible del RNG y resemilla de 32 bits en el firmware COLDCARD* — https://t.co/YrOOIe9vZq 2. Blog de Coinkite — *Advertencia de seguridad Mk3* — https://t.co/ZSVtMGe7wr 3. CoinDesk — *Flaqueza importante en billetera de bitcoin drena 594 BTC en un barrido de 25 minutos* — https://t.co/IoK6xqEUOi 4. Ledger Donjon — *Modelo de amenaza: Generación de números aleatorios* — https://t.co/L3pZxe9McO 5. Ledger Academy — *¿Qué es la entropía en cripto?* — https://t.co/WckSL8rTFM 6. Ledger Academy — *El chip Secure Element* — https://t.co/0e1bv1VnBr 7. Base de conocimiento de Trezor — *¿Qué es la entropía y cómo genera Trezor tu monedero?* — https://t.co/BNQ0E9trcK 8. Foro de Trezor — *Verificación de entropía en Trezor Model One* — https://t.co/y1sTJpp10u 9. Trezor — *Actualización de Trezor Suite febrero 2025* — https://t.co/HV77m2i5uk 10. Firmware de Trezor — *core/CHANGELOG.md* — https://t.co/Zllvf7bw5F 11. Centro de soporte de BitBox — *¿Puedo crear una billetera con mi propia entropía?* — https://t.co/TnGyVIDb2J 12. BitBox — *Seguridad en cada nivel* — https://t.co/Gon18TlnkH 13. Documentación de COLDCARD — *Verificación matemática de las tiradas de dados* — https://t.co/hATD4o7yI4

Descargo de responsabilidad: La información contenida en esta página puede proceder de terceros y no refleja necesariamente los puntos de vista u opiniones de KuCoin. Este contenido se proporciona solo con fines informativos generales, sin ninguna representación o garantía de ningún tipo, y tampoco debe interpretarse como asesoramiento financiero o de inversión. KuCoin no es responsable de ningún error u omisión, ni de ningún resultado derivado del uso de esta información. Las inversiones en activos digitales pueden ser arriesgadas. Evalúa con cuidado los riesgos de un producto y tu tolerancia al riesgo en función de tus propias circunstancias financieras. Para más información, consulta nuestras Condiciones de uso y la Declaración de riesgos.