miércoles, mayo 06, 2015

Mobile Connect: Una introducción a autenticación con SIM

Una de las iniciativas estrella de la GSMA (Groupe Speciale Mobile Association) - organización que aúna a todas las telcos del mundo - es la de proveer un interfaz común y globalizado de autenticación a través del número de teléfono. La idea es que una persona no necesite generar un nuevo usuario y contraseña en cada nuevo sistema al que se quiere dar de alta y que por medio de un sistema universal basado en el móvil baste con decir cuál es su número de teléfono para autenticarse de forma robusta.

Figura 1: Mobile Connect

Supongamos que soy cliente de una web, por ejemplo un banco y quiero acceder a mis cuentas. En esa parte del proceso, para que la autenticación sea robusta se puede utilizar un usuario y contraseña (autenticación débil) y un segundo factor de autenticación basado en SMS, Latch - como se puede hacer en Cajamar - o la "deprecated" tarjeta de coordenadas.


Figura 2: Latch como 2FAutenticación y 2FAuthorization en Cajamar

Para aumentar aún más la seguridad, al igual que se elimina la tarjeta de coordenadas por un 2FAutenticazión robusto, se puede suplantar la autenticación por un sistema de autenticación basado en la SIM del dispositivo utilizando Mobile Connect. En este escenario, el usuario introduce su número de teléfono en la web de por ejemplo un banco y éste envía una solicitud de autenticación a la operadora de telecomunicaciones. Cuando llega a la operadora, se produce un proceso de routing para que sea la operadora del número de teléfono (Telefónica, Etisalat, Orange o la que sea) la que se encargue de comprobar que la persona que acaba de solicitar ser autenticado es la que tiene el terminal.

Figura 3: Esquema a de autenticación con Mobile Connect de la GSMA

En ese instante, la operadora tiene tres varias formas con varios niveles de seguridad para autenticar el número de teléfono. La más robusta consiste en enviarle un mensaje vía OTA a una aplicación de que corre en la parte segura de la SIM Card que le solicitará un PIN de aprobación para este proceso de autenticación. Cuando lo haga, se enviará al sitio web una respuesta de autenticación positiva, tal y como se ve en el vídeo.


Figura 4: Vídeo demostrativo de autenticación vía Mobile Connect con SIM + PIN

Existen muchas otras posibilidades, como enviar un mensaje a la SIM Card y no solicitar un PIN o enviar un TOKEN OTP vía SMS para que el receptor responda al desafío. Dependiendo del método de autenticación que se haya utilizado, el sitio web será consciente de qué forma se ha utilizado para autenticar al usuario y podrá establecer políticas de seguridad distintas.


Figura 5: Latch con 2FAuthorization en Nevele Bank

Ahora mismo el equipo de Mobile Connect en Telefónica es parte de Eleven Paths, así que nosotros estamos trabajando para que sea parte de nuestro sistema de autenticación robusta SmartID y que los empleados de una empresa puedan autenticarse en sus equipos de trabajo con la SIM, además de tener Latch como 2FAuthorization tal y como puedes probar en Nevele Bank, pero también se puede poner en las webs de Internet. Os iré contando muchos más detalles en el futuro.

Saludos Malignos!

23 comentarios:

  1. La tarjeta de coordenadas quizá esté deprecated, pero se sigue usando de forma masiva.

    ResponderEliminar
  2. Me impresiona ver como últimamente hay una auténtica tormenta de ideas para fortificar las autenticaciones. Están saliendo ideas interesantes.

    ResponderEliminar
  3. Me parece un sistema interesante.

    ¿Esta sistema funcionará en los móviles simples, los que no son smathphones?

    ¿Se sabe fechas de implantación?

    ResponderEliminar
  4. No sé si esto es nuevo o tiene ya algún tiempo, pero está claro que, más pronto o más tarde, el ingenio humano desencripta lo que sea.
    Es lo bonito del asunto. Así se mejora la seguridad.
    El depredador es bueno. El depredador mejora la presa...

    http://www.dragonjar.org/rompiendo-redes-inalambricas-wpa-y-wpa2-con-wps-en-segundos.xhtml

    Salut

    ResponderEliminar
  5. Una idea interesante, imagino que sería mejor con solamente una pregunta en su teléfono al usuario del tipo "¿seguro que quieres entrar a sitio X?" para no complicar el asunto con clave o pin u otra cosa.
    También hay que considerar la protección anti-NSA, recordemos que les encanta hacerse pasar por antenas de red móvil.

    ResponderEliminar
  6. El sistema funciona en los móviles más simples puesto que el applet se ejecuta en la SIM card y no en el teléfono, de ahí que sea más seguro ya que es un entorno de ejecución segura que está aislado.

    En cuanto a la idea de simplificar su uso mediante una pregunta del tipo ¿Seguro que quieres entrar en el sitio X? también es posible pero es menos segura. Aquí entra el juego el número de factores: algo que tu tienes (el móvil) y algo que conoces (el PIN). En caso de no solicitar el PIN el sistema podría ser violado en caso de que te roben el teléfnoo.

    ResponderEliminar
  7. Facebook da la opción de imprimirte una "tarjeta de coordenadas" con 10 usos, por si no tienes el smartphone para la verificación en 2 pasos. Deprecated pero se sigue usando.

    ResponderEliminar
  8. me parece un sistema muy pensado y útil, ademas de practico. Ojala no estemos tan lejos de que sea aplicado

    ResponderEliminar
  9. Le veo un problema: ¿Y si roban el movil?

    ResponderEliminar
  10. @Anónimo, si pierdes el móvil nadie puede usar tu identidad porque está protegida por un PIN y tu pides un duplicado de la SIM. Más fácil y más seguro... imposible.

    Saludos!

    ResponderEliminar
  11. @Miniyo, eso no es una tarjeta de coordenadas, son tokens OTP asíncronos, que es distinto.

    Saludos!

    ResponderEliminar
  12. si pierdes el móvil nadie puede usar tu identidad porque está protegida por un PIN y tu pides un duplicado de la SIM. Más fácil y más seguro... imposible

    En la mayoría de los teléfonos no se introduce el PIN para desbloquearlos, solo al arrancarlos. En el tiempo que pasa en que lo pierdes y detectas la pérdida y avisas a la compañia telefónica pasa un tiempo.

    En cualquier caso me parece una buena idea siempre en combinación de otras como usuario + contraseña. Le veo otra ventaja: Si alguien pretende iniciar sesión con tu usuario y contraseña lo vas a saber porque el teléfono te va a pedir autorización.

    ResponderEliminar
  13. ¿No es similar a vuestro sistema latch?

    Creo que con una ventaja añadida, es más difícil atacar a este sistema infectando el sistema con malware.

    ResponderEliminar
  14. @Anónimo, si pierdes el móvil son dos PIN, el del móvil y el de Mobile Connect (y si quieres el PIN de la SIM que sería el tercero). Son distintos los pins.

    Saludos!

    ResponderEliminar
  15. @Anónimo, no es similar a Latch. Latch es un 2F de Autorización, no de autenticación, y además no está ligado a ninguna identidad, es totalmente anónimo.

    Saludos!

    ResponderEliminar
  16. Gracias Maligno por la explicación. Si hay un segundo PIN retiro mi objeción.

    Se que Latch está orientado a la autorización, sería un poco bizarro hacer un sistema de autenticación con un interruptor de dos posiciones, pero no imposible: Tras introducir las credenciales en el formulario, disponer de unos segundos para accionar latch.

    Así mismo el sistema Mobile Connect se podría usar para autorizar, como por ejemplo, autorizar una transferencia o autorizar el reinicio de un servidor o la entrada a un CPD.

    A Mobile Connect le veo una ventaja sobre Latch: No requiere ni smarthphone ni conexión de datos.

    ResponderEliminar
  17. Puede ser una observación chorra pero, ¿Se ha tenido en cuenta el cambio de operadora?

    ResponderEliminar
  18. @Anónimo, si cambias de operadora no pasa nada, te autentica la otra. ¿Pasa eso cuando usas una cuenta de una red social?

    Saludos!

    ResponderEliminar
  19. Fallo mio, no me he planteado la pregunta con claridad. Lo que quería decir es que si el servicio en el que te has autenticado con Mobile Connect tiene preferencias de usuario y cambias de compañia telefónica, ¿Mobile Connect tiene previsto algún mecanismo para que el servicio conozca que se ha cambiado de compañia para no perder esas configuraciones?

    Leyendo la especificación del protocolo (https://developer.mobileconnect.io) quiero entender que no debería perderse, porque en primer lugar aplicación resuelve la operadora del usuario con el servicio Discovery. Conozco el funcionamiento de OAuth porque lo he tenido que implementar, pero no el de OpenID.

    ResponderEliminar
  20. En el caso de tener multi-sim comose resolveria el tema de la validacion, y a que sim enviaria la solicitud el sistema?

    Saludos

    ResponderEliminar
  21. Ojalá así se simplifique el uso de tantas apps con usuarios, contraseñas, y datos que al cambiar el móvil jamás se recuperan :(

    ResponderEliminar
  22. A mi entender no es similar a Latch ni en la forma en que funciona. Igualmente deseo también que se simplifique el uso de usuarios passwords y demás datos, tan engorrosos para recordar siempre...

    ResponderEliminar
  23. En que servicios está disponible

    ResponderEliminar