TRANSFORMACIÓN DIGITAL

La autentificación de doble factor en SMS es insegura

6 de Noviembre, 2018

Tiempo estimado de lectura: 2 minutos

La autenticación de doble factor (2FA) no sería tan fiable como se cree.

En los últimos dos años, el concepto de autenticación de doble factor (2FA), defendido a ultranza por los geeks, ha conseguido implementarse de forma masiva. No obstante, la charla sigue limitándose al uso de la 2FA para contraseñas de un solo uso a través de SMS. Y, aunque suene triste, no es la opción más fiable.

 1. Cualquiera pueda ver las contraseñas que recibes por SMS si están activadas las notificaciones en la pantalla de bloqueo.

2. Los mensajes SMS con contraseñas pueden ser interceptados por un troyano que acecha dentro de tu smartphone.

3. Empleando tácticas ocultas (persuasión, soborno, etc.), los ciberdelincuentes pueden hacerse con una nueva tarjeta SIM con el número de la víctima en cualquier tienda de teléfonos móviles. Entonces, los mensajes SMS irán a esta tarjeta y el teléfono de la víctima se desconectará de la red.

4. Los mensajes SMS con contraseñas se pueden interceptar con un error básico en el protocolo SS7 utilizado para transmitir los mensajes.

Ten en cuenta que ya se han puesto en práctica los métodos de robo de contraseñas en SMS (explotación del SS7) más intensivos y de alta tecnología. El resto es pan comido para los malos. Dicho esto, no nos enfrentamos a hipótesis, sino a amenazas reales.

En general, las contraseñas en SMS no son muy seguras, de hecho, a veces pueden ser muy inseguras. Por lo que tiene sentido que se analicen alternativas en lo que respecta a la 2FA, y de esto vamos a hablar hoy.

Códigos de un solo uso en un archivo o en papel

La forma más simple de sustituir las contraseñas de un solo uso en SMS es utilizar, sí, contraseñas de un solo uso, pero elaboradas previamente. No es la peor de las opciones, sobre todo en servicios en los que no inicias sesión frecuentemente. Incluso para el bueno de Facebook, este método puede hacer lo mismo, sobre todo a modo de plan de emergencia.

Es bastante directo: a petición, el servicio genera y muestra una docena de códigos de un solo uso que puedan utilizarse después para autentificar un inicio de sesión. Estos códigos se pueden imprimir o apuntar y guardar en un lugar seguro. O, más simple aún, se pueden guardar en notas cifradas en Kaspersky Password Manager.

Si los códigos se guardan en formato físico o digital da más igual, lo importante es que (1) no se pierdan y que (2) nadie los robe.

También hay una aplicación para ello: Aplicaciones de autentificación.

Un único conjunto de códigos de un solo uso cuenta con un inconveniente: tarde o temprano se acabará y te quedarás sin códigos en el momento más inoportuno. Afortunadamente, hay un método más efectivo: los códigos de un solo uso se pueden generar al momento a través de una pequeña aplicación de autentificación (generalmente) muy simple.

También hay una aplicación para ello: Aplicaciones de autentificación

Un único conjunto de códigos de un solo uso cuenta con un inconveniente: tarde o temprano se acabará y te quedarás sin códigos en el momento más inoportuno. Afortunadamente, hay un método más efectivo: los códigos de un solo uso se pueden generar al momento a través de una pequeña aplicación de autentificación (generalmente) muy simple.

Cómo funcionan las aplicaciones de autentificación

– Es muy fácil utilizar aplicaciones de 2FA. Esto es lo que tienes que hacer:

– Instala la aplicación de autentificación en tu smartphone.

– Ve a ajustes de seguridad del servicio con el que quieres utilizar la aplicación.

– Selecciona 2FA (damos por hecho que esta opción existe); el servicio mostrará un código QR que se puede escanear directamente en la aplicación 2FA.

– Escanea el código con la aplicación, generará un nuevo código cada 30 segundos.

Los códigos se crean sobre la base de una clave (que solo conocéis tú y el servidor) y la hora actual, redondeada en 30 segundos. Ambos componentes son los mismos para ti y el servicio, por lo que los códigos se generan de forma sincronizada. Este algoritmo se conoce por sus siglas en inglés, OATH TOTP (contraseña de un solo uso basada en el tiempo), y es de lejos el más utilizado.

La alternativa es OATH HOPT (siglas en inglés de “contraseña de un solo uso basada en HMAC”). En lugar de la hora actual, este algoritmo utiliza un contador que aumenta en 1 por cada código recién creado. Pero no se utilizan mucho, ya que su uso complica la generación sincrónica de códigos por parte de la aplicación y el servicio. En pocas palabras, existe el riesgo de que el contador se averíe en el momento más inoportuna y tu contraseña de un solo uso no funcione.

Por lo que, OATH TOTP se puede considerar el estándar de facto (aunque oficialmente no es ni siquiera un estándar, según insisten los creadores en las especificaciones).

Compatibilidad del servicio y la aplicación 2FA

La gran mayoría de las aplicaciones 2FA utilizan el mismo algoritmo, por lo que se puede utilizar cualquiera para servicios que admitan autenticadores; la elección es cosa tuya.

Evidentemente, en toda regla hay excepciones. Por razones que solo ellos conocen, algunos servicios prefieren generar sus propias aplicaciones 2FA que funcionan solo para ellos. Además, los mismos servicios no trabajan con otra aplicación que no sea la suya.

Esto es muy común entre los principales editores de videojuegos, como, por ejemplo, Blizzard Authenticator, Steam Mobile con Steam Guard incorporado, Wargaming Auth y demás, todos incompatibles con aplicaciones y servicios de terceros. Estas aplicaciones personalizadas solo pueden utilizarse con las plataformas de los juegos pertinentes.

Adobe también tiene su propia aplicación, Adobe Authenticator, que funciona solo con cuentas AdobeID. No obstante, puedes utilizar otras aplicaciones para autentificarte en AdobeID, por lo que no queda claro por qué se necesita una aplicación diferente.

En cualquier caso, la mayoría de las compañías informáticas normales no restringen a los usuarios en su elección de aplicaciones de 2FA. Y aunque las empresas decidan generar su propia aplicación, la mayoría de las veces se pueden utilizar para proteger no solo sus propias cuentas, sino también aquellas de otros servicios.

Elige la aplicación de autentificación que más te guste por sus funciones adicionales y esta funcionará en la mayoría de los servicios que admitan aplicaciones de 2FA.

 

Fuente: Kaspersky.es

Te puede interesar