¿Es una mala práctica pedir solo caracteres individuales de una contraseña? [duplicar]

11

Algunos sitios web financieros que utilizo usan contraseñas de una manera peculiar. En lugar de pedirme la cadena de contraseña completa, solo me piden que ingrese, por ejemplo. "3º, 5º y 8º carácter de su contraseña", es decir, una combinación aleatoria de caracteres de la cadena de contraseña.

Creo que esto tendría sentido si se hace usando una tabla de números aleatorios, etc. Pero esta es una contraseña. Para hacer esto, tendrían que almacenar mi contraseña sin hash, o almacenar los hashes para todas las combinaciones que quieren preguntar, lo que también suena mal. ¿Tengo razón al pensar que esta es una mala práctica de seguridad para las hadas?

    
pregunta Enno Shioji 03.08.2014 - 19:21
fuente

2 respuestas

31

Básicamente tienes razón; Esta es una mala práctica, por varias razones:

  • Como usted observa, requiere un almacenamiento del lado del servidor de la contraseña como texto sin formato o en algún formato reversible.
  • Escribir una contraseña funciona repetidamente en " muscle memory ", que permite al usuario "recordar" su contraseña como una secuencia de gestos en el teclado; pedir letras específicas ejercita distintas partes del cerebro y es probable que induzca conductas peligrosas, es decir, escribiendo la contraseña.
  • Si el sitio solo solicita tres caracteres, entonces un atacante tiene una buena oportunidad de obtener acceso simplemente respondiendo con tres letras al azar. Los ataques de diccionario en línea también pueden funcionar. (Por supuesto, los sitios web de los bancos a menudo combinan eso con un sistema de bloqueo de activación del disparador, pero un atacante inteligente cambiará a otra cuenta de destino antes de alcanzar el límite de bloqueo automático).

Las tres razones principales por las que los sitios de los bancos hacen eso son:

  1. Si solo piden tres letras, no siempre lo mismo, entonces un registrador de teclas o un surfista no podrá inmediatamente su conocimiento adquirido de forma ilegítima. Se puede considerar como una especie de contención de daños, donde la contraseña solo se divulga parcialmente.

  2. Solicitar solo algunas letras es una medida de seguridad aprobada por Hollywood. Hace un gran espectáculo. Los clientes, sin darse cuenta de lo que realmente implica la seguridad de la información, verán eso y pensarán "wow, ¡eso es seguro!".

  3. Muchas personas en la industria no son menos impresionables que los clientes promedio. Unos cuantos "arquitectos de seguridad" verán tal sistema y también pensarán "wow, ¡eso es seguro!".

respondido por el Thomas Pornin 03.08.2014 - 19:40
fuente
2

Esta es una muy mala práctica. Las contraseñas de hoy DEBEN estar codificadas para cubrir la posible pérdida de la base de datos de contraseñas. El hecho de que se puedan usar elementos individuales de la contraseña para la autenticación significa que se está utilizando un cifrado reversible en lugar de hash, como TP ya se ha indicado. Esto es malo porque si la base de datos Y la clave de cifrado son robadas, se pierden TODAS las contraseñas. Hashing (con contraseñas seguras) hace esto imposible. Al menos las personas que UTILIZAN contraseñas seguras están seguras si las contraseñas están ocultas.

Creo que la razón por la que algunas instituciones cifran en lugar de hash es que la contraseña completa puede ser necesaria en el backend para algún propósito, como una autenticación adicional. Algunos sitios utilizan los últimos 4 dígitos de la contraseña como una "pregunta de seguridad" cuando se contacta con el servicio de asistencia. Pero esta es una razón horrible, y probablemente se haga ya que aún no se ha implementado el enfoque de pregunta de seguridad que el uso de sitios más reputados.

Incluso he visto aparecer la contraseña real en mi correo electrónico cuando tuve que solicitar un restablecimiento. ¡Es más complicado implementar un restablecimiento de contraseña por correo electrónico y luego solicitar una nueva contraseña, que simplemente enviarla por correo electrónico! La conclusión es que es más fácil simplemente mantener la contraseña cifrada (o incluso sin cifrar) y utilizarla para otros fines que no sea simplemente implementar un mecanismo de restablecimiento de contraseña para solicitar una nueva contraseña.

Otra razón por la que esto es malo es que la mayoría de las personas que actualmente se preocupan por las contraseñas solo usan un administrador de contraseñas. Requerir elementos individuales de una contraseña segura es propenso a errores y es mucho más difícil que usar un administrador de contraseñas seguro.

Finalmente, en los casos en que las contraseñas débiles se usan comúnmente, el cifrado con una clave tan fuerte puede ser más seguro que el hash, ya que los hashes de contraseñas débiles se pueden descifrar rápidamente hoy. Pero en este caso, se prefiere el cifrado Y de hash, no solo el cifrado.

    
respondido por el Ken Clubb 04.08.2014 - 05:47
fuente

Lea otras preguntas en las etiquetas