Ledger Nano X y Bluetooth: el modelo de seguridad de una billetera de hardware inalámbrica
Ledger ha anunciado recientemente el lanzamiento del Ledger Nano X. Este nuevo producto está creado en torno a una nueva arquitectura de hardware y aprovecha las ventajas de nuestro versátil sistema operativo de seguridad BOLOS.
El Ledger Nano X cuenta con conectividad Bluetooth Low Energy (BLE), que permite usarlo con dispositivos Android o iOS sin necesidad de un cable. Aunque esta función mejora mucho la experiencia del usuario, suscita ciertas dudas sobre la seguridad de la conexión inalámbrica. Y queremos abordarlas.
En resumen:
- A través de Bluetooth solo se transportan los datos públicos. Los datos críticos, como las claves privadas y la semilla, nunca abandonan el dispositivo.
- Aunque se piratee la conexión Bluetooth, la seguridad del Ledger Nano X se basa en el Elemento Seguro (SE), que solicitará tu consentimiento para cualquier acción.
- La conectividad Bluetooth se ha implementado en el Ledger Nano X con un protocolo Bluetooth de última generación. Este protocolo Bluetooth garantiza la autenticación mediante el emparejamiento, que se basa en una comparación numérica y garantiza la confidencialidad mediante cifrado basado en AES.
- Si en algún momento no te da seguridad usar tu Nano X con una conexión inalámbrica, puedes desactivar el Bluetooth y usar el cable USB tipo C.
Analicemos con más detalle cómo funciona y por qué no afecta al modelo de seguridad de esta billetera de hardware.
Arquitectura
La nueva arquitectura es un poco diferente a la del Ledger Nano S, aunque guarda bastantes similitudes.
Cuenta con 2 chips:
- Un nuevo elemento seguro de última generación (ST33J2M0)
- Un MCU de doble núcleo con conectividad inalámbrica (STM32WB55)
El MCU STM32 se encarga de la conexión entre el smartphone o PC y el elemento seguro y actúa simplemente como proxy.
El elemento seguro se encarga de obtener la información que introduce el usuario y de manejar la pantalla donde se muestra la información crítica. Por supuesto, también se encarga de la seguridad del producto. Guarda la semilla y las claves privadas e implementa todas las operaciones criptográficas para gestionar tus criptodivisas.
Bluetooth Low Energy:
cómo afecta a nuestro modelo de seguridad
La conexión Bluetooth solo se utiliza como capa de transporte para la información pública. Las claves secretas y la semilla nunca se exponen a la pila BLE, y jamás abandonan el elemento seguro.
Por ejemplo, cuando realizas una transacción, esta se prepara en la aplicación Ledger Live de tu smartphone o PC y, luego, se envía mediante Bluetooth o USB al MCU (STM32), que la transmite directamente al elemento seguro. A continuación, se te solicita que verifiques el importe y la dirección del receptor que se muestran en la pantalla. Si todo es correcto, puedes aprobar la transacción presionando ambos botones.
Si alguna vez tu smartphone o PC, la conexión Bluetooth o el MCU STM32 sufren algún tipo de manipulación, el elemento seguro te solicitará en última instancia que verifiques la información de la transacción. En la pantalla se mostrarán los datos reales de la transacción. No se firmará ninguna transacción sin tu consentimiento explícito.
Cómo usamos el protocolo BLE
Sin embargo, la pila Bluetooth puede transportar tus direcciones o claves públicas, lo que podría plantear problemas de privacidad. Por eso hemos implementado un protocolo Bluetooth de última generación.
Una conexión BLE es un protocolo de 2 fases.
- Intercambio de claves
- Uso del canal BLE
En primer lugar, ambas partes (el Ledger Nano X y el smartphone) generan sus propios pares de claves con un generador aleatorio.
Después, hay una fase de emparejamiento en la que, después de la aprobación del usuario, el Ledger Nano X y el smartphone se someten a un intercambio de claves mediante el protocolo de curva elíptica Diffie Hellman. Esta fase es crítica, ya que es la fase en la que el Ledger Nano X confía en el smartphone con el que se empareja y viceversa. El protocolo Bluetooth se puede configurar de manera específica para evitar los ataques de intermediario (MiTM), que son los que suelen afectar al protocolo BLE.
Hemos implementado una configuración de seguridad de última generación para evitar los ataques MiTM: la comparación numérica. Cuando se genera el secreto común, tanto el Ledger Nano X como el smartphone muestran un código numérico, y el usuario debe verificar si se trata del mismo. Este código numérico se calcula mediante AES-CMAC a partir de las claves públicas de ambas partes y de nonces aleatorios. Esto evita los ataques de colisión y degradación, a la vez que impone la autenticación de las claves públicas. Si este es el caso, ambas partes se consideran legítimas y pueden comunicarse, con la autenticación y la confidencialidad garantizadas.
Una vez completado este protocolo de intercambio de claves, se puede establecer un canal seguro entre el smartphone y el Ledger Nano X con un esquema de cifrado basado en AES.
En versiones anteriores de Android, es posible que no se aplique la comparación numérica. En este caso, el elemento seguro enviará al usuario un mensaje para advertirle de que podría producirse un ataque MiTM. Para ello, un atacante ubicado en un lugar cercano tendría que emparejar primero un dispositivo fraudulento con el Ledger Nano X y el smartphone. Entonces ya podría interceptar y reenviar cada paquete. Esto le permitiría espiar la comunicación entre el Ledger Nano X y el smartphone o incluso enviar comandos al elemento seguro. No obstante, al usuario se le pedirá igualmente que verifique y de su consentimiento para cualquier transacción.
Auditoría de seguridad
Nuestra pila BLE se implementa a través de la pila ST. El El Donjon de Ledger, nuestro equipo de seguridad, ha evaluado la seguridad de esta implementación frente a los más recientes ataques, como los de punto no válido.
El cable USB de toda la vida
No obstante, si no te da seguridad utilizar una conexión inalámbrica con tu Ledger Nano X, solo tienes que desactivar la conectividad Bluetooth y usar el conector USB tipo C con tu PC para disfrutar del resto de funciones del Ledger Nano X.
Ya puedes reservar tu Ledger Nano X. Haz clic en el siguiente banner para obtener más información.