Los investigadores de seguridad de NinjaLab han desarrollado una técnica de ataque de canal lateral que puede clonar claves ECDSA almacenadas en tokens criptográficos YubiKey 5 y otros dispositivos que utilizan la biblioteca criptográfica de Infineon. El ataque recibió el nombre en código EUCLEAK y, además de tokens con chips Infineon SLE78, como YubiKey 5, se puede aplicar a muchos otros sistemas con microcontroladores Infineon, incluidos los chips Infineon Optiga Trust M e Infineon Optiga TPM.
La posibilidad de realizar un ataque se ha confirmado en la práctica para las llaves YubiKey 5Ci y TPM en los chips SLB96xx, pero para otros dispositivos es teórica. En las claves YubiKey 5, la vulnerabilidad se solucionó en la versión de firmware 5.7 reemplazando la biblioteca criptográfica (la solución solo se aplica a dispositivos nuevos, ya que los dispositivos YubiKey ya lanzados no tienen la capacidad de actualizar el firmware). Se desarrollaron correcciones que bloquean la vulnerabilidad para la biblioteca Infineon, pero aún no se han implementado porque no han sido certificadas.
Además de las claves YubiKey 5, el problema afecta potencialmente a los chips TPM (Trusted Platform Module) de los portátiles Lenovo, Dell y HP, a enclaves aislados de los teléfonos inteligentes Samsung y OnePlus, a las criptomonederos de hardware, a las tarjetas inteligentes, a las tarjetas SIM y a los chips EMV de las tarjetas bancarias. así como chips de pasaportes electrónicos, utilizados en China, India, Brasil, Estados Unidos y algunos otros países asiáticos y europeos.
El peligro de clonar claves se ve compensado por las condiciones y la complejidad del ataque: el atacante debe obtener acceso físico a la clave y desmontarla, deshaciéndose de la caja de plástico y la carcasa protectora. Después de dicha manipulación, la carcasa se puede restaurar con una impresora 3D, pero hacer que las manipulaciones con la llave sean invisibles es bastante difícil. Escanear la clave lleva unos minutos, pero se necesita aproximadamente otra hora para desmontarla con cuidado y crear una nueva carcasa. Después del escaneo, el dispositivo se puede devolver al propietario, pero recrear una clave ECDSA privada basada en los datos recibidos requiere aproximadamente 24 horas más de cálculos (se observa que el proceso se puede reducir a una hora automatizando las operaciones manuales y realizando optimizaciones ).
Además del acceso físico a la clave, para llevar a cabo con éxito un ataque a servicios con autenticación multifactor, el atacante también necesita encontrar de alguna manera el nombre de usuario y la contraseña del servicio, para cuya autenticación adicional se utiliza la clave de hardware recibida. , y en el caso de utilizar autenticación sin contraseña en los modos FIDO2 Sin contraseña o Clave de acceso, es necesario reproducir un factor biométrico único (por ejemplo, una huella digital).
El método de ataque se reduce a recrear las claves ECDSA almacenadas en el token a partir de datos obtenidos mediante el análisis de la señal electromagnética emitida por el token durante la generación de firmas digitales y correlacionándolas con información sobre la clave ECDSA efímera, que es suficiente para recuperar la clave secreta utilizando métodos de aprendizaje automático. En el caso de YubiKey, para iniciar operaciones con firma digital es necesario conocer el nombre de usuario y la contraseña en uno de los servicios en los que se utiliza el token como enlace de autenticación adicional.
El problema es causado por el uso en la biblioteca Infineon de un algoritmo inseguro para calcular el módulo del elemento inverso, cuyos cálculos toman tiempo dependiendo de los valores de los datos de entrada (para diferentes vectores hay diferentes tiempos para calcular el inverso módulo del elemento). Esta característica permite, basándose en el análisis de cambios de señal, extraer información sobre bits individuales durante las operaciones con el vector de inicialización. En el caso de ECDSA, la definición de incluso unos pocos bits con información sobre el vector de inicialización (nonce) es suficiente para realizar un ataque para recuperar secuencialmente toda la clave privada. Para recrear con éxito la clave, es necesario interceptar la actividad durante la generación de aproximadamente 40 firmas digitales.
Para analizar la radiación electromagnética durante la generación de firmas digitales se requiere equipo profesional que cuesta más de 10 mil dólares. Por ejemplo, durante el ataque, los investigadores utilizaron un sistema de medición Langer ICR HH 500-6 ($2300) utilizado para probar la compatibilidad electromagnética de microcircuitos, un amplificador Langer BT 706, un micromanipulador Thorlabs PT3/M ($1000) con una resolución de 10 micrones y un microscopio digital Dino-Lite AM4113TL ($450) y un osciloscopio PicoScope 6424E ($7500) de cuatro canales con resolución ADC de 8 bits.
El escenario de ataque del token YubiKey 5 consta de los siguientes pasos:
- Determinar el nombre de usuario y la contraseña de una cuenta protegida por un token, por ejemplo, mediante un ataque de phishing.
- Obtener acceso físico discretamente a un token.
- Análisis de la radiación electromagnética de un token durante las operaciones de autenticación mediante un login y contraseña obtenidos previamente.
- Devolver la ficha a la víctima.
- Reconstrucción de la clave privada ECDSA asociada a la cuenta en estudio mediante el análisis de información interceptada sobre radiación electromagnética.
- Crear un clon de un token que brinda la posibilidad de iniciar sesión en una cuenta sin que la víctima se dé cuenta sin tener el token original.
Fuente: opennet.ru