¿Las contraseñas anteriores persistentes no representan una vulnerabilidad?

4

Recientemente intenté iniciar sesión en Facebook, pero había olvidado que había cambiado mi contraseña. Facebook me devolvió a la pantalla de inicio de sesión y me informó que intenté ingresar una contraseña antigua.

Cubiertos miles de veces, si no más, en varios artículos / temas son razones que justifican la necesidad de caducidad de la contraseña. Básicamente, es mejor no seguir usando la misma contraseña para siempre. Así que habría asumido que esto se traduce en que es mejor que las mismas contraseñas no se mantengan en una base de datos para siempre.

Pregunta:

Con las contraseñas antiguas aún en la base de datos, entonces el sistema (por ejemplo, Facebook) no se ha tenido en cuenta. ¿Qué se considera una medida de seguridad segura?

    
pregunta JᴀʏMᴇᴇ 18.09.2018 - 10:40
fuente

3 respuestas

2

Puedo ver un par de problemas potenciales con una solución como esta:

  • Si se compromete la contraseña de un usuario (antigua), se puede usar un intento de iniciar sesión para confirmar que el usuario existe y tiene una cuenta, probablemente no sea un gran problema en el Contexto de FB, donde la mayoría de las cuentas se pueden buscar de todos modos, pero sigo pensando que el principio se mantiene en general.
  • Si alguien sospecha que tiene su contraseña, se puede usar para al menos confirmar que el usuario tiene una contraseña específica previamente . Para los usuarios promedio, es muy probable que esa misma contraseña se utilice también para cualquier otro número de servicios.

Esos dos se mantienen incluso si un usuario tiene una buena contraseña (es decir, una larga cadena de caracteres difíciles de adivinar). Como el usuario promedio de FB probablemente use el nombre de su gato / perro / niño / hámster / novio / novia / lo que sea, el hecho de poder confirmar el uso anterior de una contraseña determinada puede proporcionar una perspectiva que puede ayudar a alguien a adivinar una nueva contraseña también.

Como ejemplo concreto, conozco a alguien que durante mucho tiempo usó el siguiente esquema basado en los nombres de sus hijos (nombres cambiados, obviamente):

  • Primer hijo: Mark
  • Segundo hijo: Emma
  • Tercer hijo: Carl

Según estos, el usuario cambiaría entre contraseñas como esta:

  • MarkEmmaCarl
  • MaEmCa
  • MarEmmCar
  • ... y así sucesivamente.

Claro, adivinar una próxima contraseña basada en algún esquema cuasialeatorio como este puede requerir una cantidad significativa de trabajo, pero una gran cantidad de esta puede ser automatizada, y en cualquier caso será mucho más fácil que para una cadena aleatoria . Sin embargo, si puede establecer un patrón confirmando la existencia de una o dos contraseñas anteriores como esta, tiene un incentivo bastante fuerte para seguir intentando ...

    
respondido por el Kjartan 18.09.2018 - 11:27
fuente
0

Los motivos de la rotación de la contraseña (en situaciones distintas al compromiso esperado) son bastante escasos en estos días. Los viejos argumentos de "para evitar que un atacante tenga acceso para siempre" y "para que el atacante no pueda forzar su contraseña antes de cambiarla" son un caso grave de "en ese momento, ya se terminó el juego" y significa que el servicio en cuestión tiene serios problemas con su protección de fuerza bruta o que alguien invirtió una cantidad realmente extraña de recursos intentando romper el hash de su contraseña, respectivamente (si el hash de la contraseña es débil, es decir, rápido, entonces regresó al caso "ya finalizado el juego", respectivamente.

No puedes iniciar sesión con la contraseña anterior. Además, no es como si estuvieran guardados en texto plano o algo así. Como tal, no hay ningún daño real en el almacenamiento de las contraseñas antiguas, y puede ser una medida fácil de usar. La única razón por la que almacenar las contraseñas antiguas sería mala es si hubiera reutilizado esa contraseña en otro lugar, lo que, por supuesto, nunca debería hacer.

    
respondido por el CBHacking 18.09.2018 - 11:30
fuente
0

Dos cosas.

  1. En primer lugar, estás comparando manzanas y naranjas. La caducidad de la contraseña y el almacenamiento de las contraseñas antiguas están relacionadas pero no son lo mismo. ¿Por qué un sitio no debería almacenar contraseñas antiguas? ¿Cuáles son los riesgos involucrados? Si un atacante los roba, tiene datos inútiles, que quizás se pueden usar para adivinar nuevas contraseñas para los usuarios después de que se hayan resquebrajado los hashes de los antiguos. Parece un gran esfuerzo para un atacante, si el volcado de hash no incluye por coincidencia una contraseña de un objetivo de alta prioridad. Un volcado de contraseña anterior es tan interesante como el documento de ayer. Lo que significa, absolutamente aburrido, ¡es papel!

  2. En segundo lugar, es cierto, se ha cubierto mil veces que los usuarios deben seguir cambiando las contraseñas. ¿Pero sabes qué más es verdad? Lo opuesto también tiene been < a href="https://www.ncsc.gov.uk/articles/problems-forcing-regular-password-expiry"> cubierto a mil times .

Lo más famoso fue esto - después de que muchos expertos lo hayan predicado durante años - se les llamó la atención por la publicación renovada de Publicación especial NIST 800-63b , donde dice:

  

“Los verificadores NO DEBEN requerir que los secretos memorizados se cambien arbitrariamente (por ejemplo, periódicamente). Sin embargo, los verificadores DEBERÁN forzar un cambio si hay evidencia de compromiso del autenticador ".

Además, el NIST dice:

  

Al procesar solicitudes para establecer y cambiar secretos memorizados, los verificadores DEBEN comparar los posibles secretos con una lista que contenga valores que se sabe que son utilizados, esperados o comprometidos. Por ejemplo, la lista PUEDE incluir, pero no se limita a :

     
  • Contraseñas obtenidas de corpuses de infracciones anteriores.
  •   
  • palabras del diccionario.
  •   
  • Caracteres repetitivos o secuenciales (por ejemplo, "aaaaaa", "1234abcd").
  •   
  • Palabras específicas del contexto, como el nombre del servicio, el nombre de usuario y sus derivados.
  •   

(énfasis mío)

Entonces, si Facebook tiene la regla de no reutilizar las contraseñas, entonces es absolutamente correcto verificar si el hash de la nueva contraseña es el mismo que el anterior.

    
respondido por el Tom K. 18.09.2018 - 12:01
fuente

Lea otras preguntas en las etiquetas