Vulnerabilidades críticas en protocolos FIDO2 afectan autenticación sin contraseña en Google Titan Key y YubiKey

Especialistas en ciberseguridad publicaron un informe detallando el hallazgo de lo que describen como una “falla de diseño” en el sistema de autenticación sin contraseñas Fast Identity Online Alliance (FIDO). El informe, titulado “Análisis de Seguridad Demostrable de FIDO2”, fue publicado por la Asociación Internacional para la Investigación Criptológica.

La FIDO Alliance fue lanzada en 2013 como una iniciativa impulsada por proveedores de tecnología como Microsoft, Google, Facebook y Apple, con la misión de desarrollar y promover estándares de autenticación alternativos al uso de contraseñas para mejorar la experiencia de los usuarios en línea. Esta tecnología es empleada por múltiples servicios y dispositivos, como Google Titan Key y YubiKey.

La autenticación sin contraseñas se basa en dos protocolos: WebAuthn y CTAP2. Mientras que WebAuthn usa un dispositivo de autenticación (smartphones, tokens, etc.) para establecer una clave privada, CTAP2 se encarga de vincular un cliente de confianza al autenticador. Según los investigadores, el objetivo de CTAP2 es vincular un cliente de confianza con el autenticador configurado, para lo que un usuario debe proporcionar un PIN; de este modo, el autenticador solo aceptará comandos autorizados por el cliente vinculado.

Los investigadores han puesto en duda la seguridad de CTAP2, argumentando que dos factores específicos podrían hacer este protocolo vulnerable a algunos vectores de ataque.

Fallas de diseño                                                            

En primer lugar, los expertos mencionan que CTAP2 usa un intercambio de claves Diffie-Hellman no autenticado, lo que permitiría dos escenarios de riesgo:

  • Un ataque Man-in-The-Middle (MiTM) que brindaría a los hackers acceso a las claves de seguridad, comprometiendo las comunicaciones del usuario
  • Los actores de amenazas podrían suplantar la identidad de un cliente ante el autenticador

La segunda falla potencial es que el smartphone o PC usando FIDO2 para iniciar sesión genera un solo “pinToken” al inicio. Este pinToken es empleado en todas las comunicaciones posteriores, lo que pondría en integridad del usuario si estas sesiones se ven comprometidas.

Como una posible solución, los investigadores recomendaron reemplazar la parte CTAP2 del protocolo FIDO2, reemplazándolo con un esquema que pueda deshacerse de estos datos sin dejar cabos sueltos en el proceso. En el informe participaron expertos de la Universidad de Oporto, el Instituto Tecnológico de Georgia, la Universidad Técnica de Darmstadt, y la Universidad de Bristol.  

Para conocer más sobre riesgos de seguridad informática, malware, vulnerabilidades y tecnologías de la información, no dude en ingresar al sitio web del Instituto Internacional de Seguridad Cibernética (IICS).