ELLIPAL lanzó su primer monedero frío en 2018 y se convirtió instantáneamente en un referente de la nueva generación de monederos físicos. Gracias al exclusivo modelo de seguridad y a la facilidad de uso de ELLIPAL, atrajo mucha atención tanto de los usuarios como de otros fabricantes de monederos físicos. Actualmente, el segundo modelo de ELLIPAL, el ELLIPAL Titan, está dejando huella para convertirse en la mejor solución de monedero frío móvil y aislado.
Tras el lanzamiento de nuestro modelo original —el ELLIPAL EC01 atrajo la atención de Ledger, que estaba interesado en el modelo de seguridad de ELLIPAL. Ledger realizó una prueba de seguridad sobre el ELLIPAL EC01 y activó la cláusula de recompensas de ELLIPAL, por la que les recompensamos por encontrar la vulnerabilidad. Ledger presentó el resultado en la Convención Breaking Bitcoin de 2019. En la siguiente tabla se puede consultar un resumen del estudio y de la respuesta de ELLIPAL a los hallazgos. Ten en cuenta que Ledger no extrajo ninguna semilla del ELLIPAL EC01.

Hallazgos de Ledger
Seguridad del hardware
La vulnerabilidad más común de casi todos, si no todos, los monederos físicos son los ataques físicos. Un ataque físico ocurre cuando un hacker obtiene acceso físico a tu dispositivo y planea un ataque. Esto puede incluir ataques a la cadena de suministro (por ejemplo, malware instalado antes del envío al usuario final) o ataques de la doncella malvada (por ejemplo, piratear físicamente el dispositivo cuando el propietario no está presente). Este estudio revela la vulnerabilidad del ELLIPAL EC01 frente a este tipo de ataques.
1) Encontrar la interfaz UART
UART significa transmisor/receptor asíncrono universal. Es una interfaz que permite a los dispositivos electrónicos comunicarse entre sí y es muy común en todos los dispositivos electrónicos. En este caso, Ledger identificó un puerto UART en ELLIPAL y pudo recibir señales de salida. Según el informe, estas salidas son «útiles para un atacante», por ejemplo, para un ataque de ingeniería inversa (explicado en la siguiente parte).
A partir de ahí, Ledger accedió al reinicio de fábrica del dispositivo ELLIPAL EC01 y pudo localizar mediante el software las capacidades WiFi de la placa base. A través del modo de fábrica, el componente WiFi pudo conectarse al punto de acceso cuando se conectó una antena externa. No obstante, Ledger no comprobó más a fondo si el sistema Android altamente personalizado de ELLIPAL admite WiFi.
2) Interfaz USB
El puerto USB de ELLIPAL solo sirve para cargar. No hay conexión entre el puerto USB y la CPU principal. Sin embargo, las señales de datos del puerto USB pueden soldarse a la placa base principal para permitirle comunicarse con la CPU, creando un puerto USB modificado. Este nuevo puerto USB conecta ELLIPAL con el mundo exterior. El firmware de ELLIPAL podría someterse a ingeniería inversa y volcarse en el ELLIPAL EC01 para extraer semillas. No obstante, esto es solo una teoría y no se probó.
Con acceso físico con el dispositivo ELLIPAL, es posible un escenario de ataque a la cadena de suministro o de «la criada malvada». Un hacker podría reactivar el WiFi del dispositivo y conectarlo a Internet. Después, podría intentar aplicar ingeniería inversa al firmware de ELLIPAL y volcar el firmware falso en el dispositivo. Con la combinación de estos dos esfuerzos, el hacker podría hacer que el firmware extraiga la semilla y la envíe por WiFi al hacker. Si tu ELLIPAL se pierde o es robado, esta vulnerabilidad puede producirse.
Seguridad del software
Ledger realizó una breve prueba de la seguridad del software y no encontró vulnerabilidades.
3) Mecanismo de actualización
El archivo de actualización de ELLIPAL está cifrado para garantizar que solo se puedan copiar archivos de actualización auténticos en ELLIPAL. En este estudio, Ledger identificó el mecanismo de cifrado ECB que utiliza ELLIPAL como una «mala práctica»; sin embargo, no logró cargar ningún firmware modificado mediante el mecanismo de actualización. ELLIPAL utiliza cifrado de varias capas y no es débil, como se afirmó. Los usuarios pueden consultar en Github la herramienta de verificación de archivos de actualización de código abierto.
Conclusiones principales
Al estudiar la billetera ELLIPAL EC01, se encontraron vulnerabilidades en el hardware de la billetera, donde es posible explotar los componentes UART y WiFi. Un posible ataque consiste en realizar un ataque de volcado para instalar un firmware falso a través del puerto USB modificado. El firmware falso puede programarse para robar la clave privada y enviarla de vuelta al atacante cuando el dispositivo se conecte a Internet mediante WiFi.
No es posible instalar un firmware falso mediante el mecanismo de actualización, como Ledger demostró. La única forma de explotar el ELLIPAL EC01 es tener acceso físico y tiempo suficiente para hacer lo siguiente:
1) Modificar los puertos UART y USB.
2) Instalar un firmware falso a través del puerto modificado.
3) Acceder al modo de reinicio de fábrica y activar el WiFi.
4) Conectar una antena para recibir la señal WiFi.
5) Volver a ensamblarlo todo sin que el usuario sospeche nada.
Respuesta de ELLIPAL
Antes de que Ledger publicara el estudio, ELLIPAL ya había preparado una actualización de seguridad suficiente para contrarrestar la vulnerabilidad. Tras la publicación, ELLIPAL lanzó nuestro firmware v.2.0, que garantizaba que no fuera posible realizar un ataque de volcado y evitaba cualquier modificación. Sin embargo, estamos convencidos de que esto no será suficiente para nosotros ni para la comunidad, que considera la seguridad la máxima prioridad. Esta pasión por mejorar la seguridad impulsó el rediseño de la billetera fría ELLIPAL.
ELLIPAL Titan
En septiembre de 2019, ELLIPAL lanzó su modelo más reciente de billetera fría, la billetera fría ELLIPAL Titan. Basada en las vulnerabilidades detectadas en el modelo EC01 anterior, la ELLIPAL Titan está protegida tanto contra ataques remotos como contra ataques físicos.
Mejoras del hardware
ELLIPAL Titan fue rediseñado para garantizar que los hackers no puedan acceder a la placa base de ELLIPAL ni modificar la UART para acceder al reinicio de fábrica. Originalmente, ELLIPAL EC01 alojaba su placa base dentro de una carcasa de plástico que podía abrirse aflojando los tornillos. En ELLIPAL Titan, la placa base se encuentra dentro de una carcasa metálica herméticamente sellada, diseñada para no abrirse nunca. El sellado es tan resistente que cuenta con clasificación IP65 de protección contra el polvo y el agua. La carcasa metálica también es lo bastante resistente como para soportar que un automóvil pase por encima sin sufrir daños. Debido a la resistencia del hardware, forzar la apertura del dispositivo es muy difícil y dejará daños permanentes, lo que alertará al usuario.
Además, ELLIPAL Titan incluye un mecanismo antimanipulación que ayuda a proteger sus datos confidenciales. Cuando el dispositivo ELLIPAL Titan detecta una vulneración del hardware, el sistema se eliminará automáticamente para inutilizar la unidad y hacer que sus datos sean inaccesibles.
Mejoras de «Air-gapped»
Fuimos más allá para garantizar que ELLIPAL Titan esté 100 % Air-gapped y no pueda modificarse. Nos aseguramos de que ELLIPAL Titan no tenga componentes ni puertos disponibles para conectarse a internet ni a otro dispositivo.
Reemplazamos todo el chipset para garantizar que no sea posible ninguna conexión. El nuevo chipset (Allwinner A64) no admite conexiones de red como 4G, Bluetooth ni Wi‑Fi. También eliminamos el puerto USB y lo reemplazamos por un puerto de carga de contacto. Ahora se garantiza que ELLIPAL Titan nunca podrá conectarse a otro dispositivo para exportar ni importar información.
Información adicional
Ha habido mucho debate en torno a la idea de que una cartera (o cualquier aspecto relacionado con la cadena de bloques) sea de código abierto. El código abierto es código que puede ser revisado por el público. Si hay algo sospechoso o un error, el público puede señalarlo directamente a la empresa propietaria del código. Muchas personas consideran esto una ventaja de seguridad porque el código abierto puede demostrar que la empresa no tiene objetivos maliciosos hacia el usuario y es transparente.
Por otro lado, el código abierto puede provocar fácilmente que el código se copie, reproduzca y edite para convertirlo en una versión maliciosa. Con acceso físico, puede producirse un ataque de volcado en una cartera de hardware de código abierto. Una determinada cartera de hardware de código abierto ya ha sufrido este tipo de ataque.
Entre las diversas razones de seguridad, ELLIPAL opta por mantener el código cerrado, pero conserva abiertas las partes importantes para que los usuarios puedan verificar nuestra seguridad. En primer lugar, ELLIPAL ha recibido algunas críticas dirigidas a nuestro sistema de generación de códigos QR, cuestionando si puede filtrar claves privadas o no. La respuesta sencilla es no, y puede demostrarse.
La transferencia de datos de ELLIPAL del dispositivo físico a la aplicación se basa en un código QR de formato abierto (https://github.com/ELLIPAL/air-gapped_qrcode_data_format). El escaneo del código QR también está controlado manualmente por el usuario. Todos los datos transferidos dependen por completo del escaneo del usuario y no habrá datos ocultos. Cualquiera puede verificar los datos del código QR. Proporcionamos una biblioteca de Javascript de código abierto (https://github.com/ELLIPAL/js-ellipal). La firma o el nonce transferido desde la billetera de hardware puede comprobarse en todo momento en el código QR.
Otra preocupación tiene que ver con la creación de claves privadas. A menudo se dice que las billeteras de código cerrado pueden proporcionar claves privadas pregeneradas a los usuarios y que no hay forma de que estos las comprueben. ELLIPAL no tiene malas intenciones hacia nuestros usuarios, pero no disponemos de código abierto que nos respalde. No obstante, permitimos a los usuarios importar sus propias claves privadas de confianza para mantenerlas seguras en ELLIPAL. Esta función de importación no está disponible en muchas billeteras y hace que ELLIPAL sea única. No obligamos a nuestros usuarios a confiar en las claves privadas que generamos. Si no confía en ELLIPAL, utilice sus propias claves privadas. Otra solución más sencilla es usar una frase de contraseña y hacer que el conjunto de mnemónicos sea único para usted.
Por último, algunas personas afirman que las billeteras de hardware de código cerrado pueden enviar las claves privadas de los usuarios al fabricante. Esto es imposible en ELLIPAL porque ya está 100 % libre de conexiones, lo que significa que sus claves no pueden enviarse a ningún sitio. La única salida de ELLIPAL es mediante el código QR. Esto no debe preocupar a los usuarios, ya que esta parte del código tiene un formato abierto y puede verificarse.
También hay otros códigos, como la herramienta de verificación de archivos de actualización y más, disponibles en GitHub de ELLIPAL.
Conclusión
Ledger identificó vectores de vulnerabilidad en ELLIPAL y nos permitió corregirlos para mantener seguro nuestro ecosistema de criptomonedas. A continuación, resumiremos los problemas encontrados y cómo los solucionó ELLIPAL.
1) Se encontró una interfaz UART que permitía acceder al modo de restablecimiento de fábrica para activar la capacidad Wi‑Fi de la CPU.
Respuesta de ELLIPAL:
Utiliza un chipset completamente nuevo para ELLIPAL Titan, que no tiene ninguna capacidad de conexión.
Incluye funciones antimanipulación y antidesmontaje para impedir que los hackers accedan a la CPU.
2) La interfaz USB puede modificarse para realizar un ataque de extracción de datos
Respuesta de ELLIPAL:
ELLIPAL sustituyó un puerto de carga USB por un puerto de carga de contacto. Más importante aún, la función antidesmontaje evita que el puerto se modifique en primer lugar.
Casi todas las billeteras de hardware son vulnerables cuando un atacante obtiene acceso físico a ellas. ELLIPAL ha ido más allá para evitar que eso ocurra, asegurándose de que siga estando protegido incluso si su ELLIPAL Titan es robado o se pierde. ELLIPAL Titan también está 100 % aislado de redes, lo que garantiza que sus claves privadas siempre se mantengan seguras y aisladas dentro del ELLIPAL Titan.
Si tiene alguna pregunta, póngase en contacto con: cs@ellipal.com




