¿La autenticación con una cantidad de preguntas memorables es mejor que la autenticación de contraseña normal?

1

No es demasiado fácil crear una contraseña confiable y al mismo tiempo memorable.

Entonces, ¿qué tal una serie de preguntas memorables en lugar de una sola contraseña? (Esta idea está relacionada con este )

Deje que el usuario cree las preguntas por sí mismo. Podría ser cualquier cadena, incluso un número aleatorio de símbolos, siempre que le recuerde algo. Hará la inscripción mucho más tiempo, sí.

UPD : cuando un usuario inicia sesión, ve la pregunta que está respondiendo actualmente, de modo que las preguntas funcionan como sugerencias de contraseña. Solo para aclarar.

Las respuestas se almacenan con hash (con sal de curso) (¿será útil el cifrado adicional?). Las preguntas se almacenan encriptadas en una cadena, excepto la primera. La respuesta a la primera pregunta es la clave para descifrar la siguiente, y así sucesivamente. Eso garantiza que un infractor potencial tendrá que obtener la respuesta para cada pregunta una por una en una secuencia estricta, lo que hará que sea más difícil hacerlo con la ingeniería social.

Restablecer en caso de respuesta olvidada para una de las preguntas: la parte olvidada de la cadena se elimina y el usuario puede "crecer" una nueva en lugar de ella. Por supuesto, primero le preguntamos al usuario si realmente quiere hacerlo por correo electrónico.

Restablecer en caso de respuestas comprometidas: se elimina toda la cadena y el usuario puede crear una nueva. Nuevamente, confirmación por correo electrónico.

(esta idea se basa en el correo electrónico, podría ser un problema)

¿Podría ser mejor que la autenticación de contraseña estándar?

    
pregunta Andrew Che 11.10.2017 - 21:31
fuente

3 respuestas

5

El problema con cualquier esquema como este es que la gente en general es tonta al elegir buenas preguntas, y mucho menos recordar las respuestas.

En teoría, hay una gran cantidad de entropía, ya que hay múltiples instancias de preguntas esencialmente infinitas y posibles respuestas.

En la práctica, un número significativo de personas todavía elegiría preguntas y respuestas comunes. Primera mascota, coche, calle, lugar de nacimiento, etc.

Estas respuestas son vulnerables tanto a los ataques de diccionario como a la ingeniería social y / o la investigación de código abierto.

    
respondido por el ste-fu 11.10.2017 - 22:13
fuente
3

Ciertamente, hay un precedente en la industria para usar "Preguntas de seguridad" como alternativa para "Olvidé mi contraseña".

La pregunta básicamente se reduce a "una contraseña segura frente a varias contraseñas débiles".

Algunos pensamientos:

  • Ataques de registro de teclas: si un atacante logra plantar un registrador de teclas, el registro de varias contraseñas es lo mismo que registrar una contraseña.
  • Ataques de fuerza bruta: se ha capacitado a las personas para crear contraseñas seguras que no sean de diccionario. No han sido entrenados para dar respuestas firmes a las preguntas y usualmente usan palabras de un solo diccionario. Nunca he visto datos sobre si es más fácil responder a la seguridad de fuerza bruta 5 que a una contraseña buena de fuerza bruta, pero imagino que son similares.

Respuestas directas a sus preguntas:

  

Las respuestas se almacenan con hash (con sal de curso) (¿será útil el cifrado adicional?).

No, estas son esencialmente contraseñas, así que trátelas como contraseñas y usa el hashing de contraseñas de sal y amp; hash de mejores prácticas.

  

la respuesta para la primera pregunta es la clave para descifrar la siguiente, y así sucesivamente. Eso garantiza que un infractor potencial tendrá que obtener la respuesta para cada pregunta una por una en una secuencia estricta, lo que hará que sea más difícil hacerlo con la ingeniería social.

Sí, pero abre un agujero de seguridad aún mayor: los ataques de grabación y repetición. Su protocolo de autenticación depende de HTTPS para proporcionar su mitigación contra los ataques de reproducción. Eso está bien, a menos que el atacante haya roto HTTPS; tienen un keylogger en la máquina de la víctima, han descifrado (o han robado) la clave privada del servidor, han instalado un certificado raíz de MitM en el sistema operativo de la víctima, etc. Ahora el atacante puede ver las contraseñas / respuestas que se envían.

¿Mejor que las contraseñas?

Este es el principal inconveniente de las contraseñas tradicionales. Los esquemas de autenticación que tienen como objetivo mejorar las contraseñas realmente deberían solucionar esto o, de lo contrario, no es una mejora en absoluto.

Si reclama que su método de autenticación es mejor que las contraseñas, entonces debería estar en la misma categoría que los métodos 2FA como las aplicaciones OTP de generación de código, los códigos SMS u otros métodos de respuesta de desafío; todos los cuales tienen la propiedad de que los códigos son un solo uso , por lo que incluso si un atacante puede registrar uno, el servidor no aceptará una repetición de eso.

Aleatorizar qué preguntas se presentan, o el orden, brinda al menos una mínima protección de repetición. Por ejemplo, ayuda con la falsificación de solicitudes entre sitios donde el atacante envía una solicitud a ciegas sin poder ver la página de inicio de sesión para determinar qué preguntas se están preguntando en qué orden.

    
respondido por el Mike Ounsworth 11.10.2017 - 22:20
fuente
2

Simplemente recapitularé para asegurarme de que entiendo correctamente. Propone pedirle al usuario un número de pares de preguntas / respuestas, luego haga un hash en la base de datos con información sobre la siguiente pregunta oculta en la anterior.

Para ser honesto, me gusta, es un servicio muy secreto y todo, sin embargo, parece que básicamente se trata de pedirle al usuario varias contraseñas, y luego pedirles que ingresen estas contraseñas de manera secuencial. Eso suena brutal, pero supongo que dos contraseñas son más seguras que una.

Para mejorar eso, puede asignar al azar el orden en cada inicio de sesión exitoso para que la próxima vez, las respuestas se proporcionen en un orden diferente.

    
respondido por el Félix Gagnon-Grenier 11.10.2017 - 22:21
fuente

Lea otras preguntas en las etiquetas