Métodos de autenticación de dos factores: contraseña + SMS / mensaje de voz vs. contraseña + código generado por la aplicación.

0

Estoy pensando en qué métodos de autenticación de dos factores son más confiables y seguros al usar Pebble como usuario final que tiene la capacidad de ver sus mensajes SMS pero no contestar llamadas telefónicas:

  • contraseña + SMS (dos lugares donde se muestran) O contraseña + llamada de voz (solo recibida por su teléfono)

Ambos son visibles en el caso de robo de su teléfono. Compare este método con el uso de una aplicación de contraseña + teléfono generada por código único en el sistema Android . No puedo evaluar la seguridad de la aplicación para generar códigos de acceso únicos en el teléfono Android. El acceso a él depende de tener su código de acceso a su teléfono. La intuición sugiere que podría ser más fuerte que la llamada de SMS / voz. Pero ¿qué pasa con posibles vulnerabilidades en la aplicación.

¿Cómo puedes evaluar la seguridad de estos dos métodos? ¿Por qué una aplicación bien diseñada en Android es más segura que SMS / llamada de voz?

    
pregunta Léo Léopold Hertz 준영 17.11.2015 - 22:12
fuente

2 respuestas

1

Una aplicación bien diseñada en tu teléfono es más segura.

Hay un gran conjunto de vulnerabilidades en la entrega de llamadas telefónicas o mensajes de texto. Incluyen el uso de tablas de enrutamiento telefónico y sistemas como los que pueden recopilar mensajes de texto y enviarlos como correo electrónico.

Si su teléfono está ejecutando una aplicación, estos problemas de distribución y enrutamiento no importan. Si es inseguro, ya sea porque fue robado o tomado por un atacante, entonces no tiene suerte en ninguno de los dos escenarios.

    
respondido por el Adam Shostack 18.11.2015 - 07:51
fuente
1

Como extensión de la respuesta de Adam, vale la pena señalar dónde se encuentran las vulnerabilidades.

Aparte de los problemas con la intercepción de mensajes en ruta (no conozco una gran cantidad de información sobre los sistemas internos de enrutamiento telefónico, o lo fácil que sería manipularlos), la gran diferencia es que los SMS / Llamadas son típicamente al dispositivo, y tienden a evitar muchas restricciones de acceso (la mayoría de los mensajes SMS aparecen como notificaciones en una pantalla de bloqueo, y no conozco muchos teléfonos que requieren el código de acceso para responder).

Sin embargo, una aplicación sería un sistema de extracción, la persona necesitaría acceder al sistema operativo de los teléfonos, abrir la aplicación y solicitar el código. Eso significa que las funciones de seguridad del teléfono refuerzan la seguridad del producto.

Considere el escenario en el que el teléfono de un empleado es robado (no está fuera del alcance de la posibilidad), y que el perpetrador puede saber / adivinar / deducir la contraseña del empleado. Una vez que se realiza la comprobación, se realiza la llamada telefónica / se envía SMS y se accede a ellos fácilmente sin tocar los controles de acceso del teléfono (o transfiriendo la tarjeta SIM, si es lo que se necesita). Sin embargo, el mismo autor no podría acceder a la aplicación y no podría iniciar sesión.

Hay una extensión de este mismo problema relacionado con la simultaneidad. Si está utilizando un código generado por una aplicación, se puede ingresar al mismo tiempo que el nombre de usuario y la contraseña, lo que significa que los 3 deben ser correctos, y no se puede dar una pista sobre el campo incorrecto si hay una coincidencia no se encontró.

Debido a que las llamadas y los SMS se envían, el nombre de usuario y la contraseña deben verificarse antes de la autenticación del segundo factor, lo que le da al atacante el conocimiento de que sus credenciales se han adivinado correctamente.

    
respondido por el Jozef Woods 18.11.2015 - 17:05
fuente

Lea otras preguntas en las etiquetas