¿Se debería permitir a los usuarios restablecer su contraseña a la actual?

4

He intentado responder la siguiente pregunta pero parece que no puedo encontrar una respuesta clara ...

  

Cuando un usuario restablece su contraseña después de olvidarla, ¿se le debería permitir cambiarla a la contraseña que ya está configurada?

Entiendo que la razón detrás de que el usuario haya restablecido su contraseña es que la olvidó, pero en términos de seguridad, ¿no tendría sentido que cambien a una contraseña diferente? En la Hoja de referencia de contraseña olvidada y Hoja de referencia de autenticación , no puedo encontrar ninguna mención a la reutilización de contraseñas antiguas.

Si se debe usar esta regla, ¿sería este un mensaje de error adecuado para ella?

  

La contraseña debe ser diferente a la existente.

    
pregunta ub3rst4r 22.09.2017 - 22:01
fuente

4 respuestas

4

Creo que la aplicación de restringir a los usuarios para reutilizar las contraseñas dependerá en gran medida de la aplicación y su aceptación del riesgo. Las "mejores prácticas" de contraseñas son probablemente uno de los temas más divisibles en Seguridad de la información, y es probable que la razón por la que esas hojas de trucos no lo mencionan.

Para las organizaciones que tienen una política de contraseña que requiere que los usuarios cambien su contraseña cada X días, restringir al usuario de cambiar su contraseña a algo que ya ha tenido sentido. La lógica detrás de esto es que obligar a los usuarios a cambiar su contraseña regularmente reduce la posibilidad de que una contraseña antigua, si se encuentra comprometida, pueda usarse en un ataque de Repetición de contraseña.

Con una política de este tipo, es probable que se establezca un valor de "Contraseñas recordadas". Esta política recordará el número de contraseñas X de los usuarios anteriores para garantizar que cumplan con la política de contraseñas y no reutilicen contraseñas antiguas. La reutilización de contraseñas antiguas efectivamente inutilizaría la política de contraseñas. Es en este caso que desearía forzar a un usuario a establecer una nueva contraseña si está haciendo clic en la opción "contraseña olvidada". Sin obligarlos a hacerlo, un usuario podría usar la función de "contraseña olvidada" en su aplicación para asegurarse de que siempre pueda tener la misma contraseña, sin verse obligado a cambiarla por algo nuevo.

Yendo un paso más allá, también es común que haya un tiempo de "congelación" de contraseña donde los usuarios no pueden cambiar su contraseña por X días después de que se modificó. Esto es para evitar que las personas pasen rápidamente por 3 contraseñas cambiadas para poder utilizar la que les gusta. De esta manera, si la contraseña que le gusta a un usuario caduca, no pueden cambiar rápidamente su contraseña X para volver al que más le guste.

EDIT: tome de esto lo que quiera, pero NIST ha emitido una guía recomendando en contra de políticas de contraseña que requieren que los usuarios cambien sus contraseñas.

    
respondido por el DKNUCKLES 22.09.2017 - 22:13
fuente
4

Regla general: la mayoría de las políticas de contraseñas son basura. Se basan en supuestos antiguos y nunca validados. Solo este año tuvimos el brillante ejemplo con el estándar NIST que incluso llegó a ser la noticia principal.

Forzar a los usuarios a cambiar las contraseñas, ya sea regularmente o debido a algún evento, también hace que sea más difícil para ellos recordar cuál era la contraseña. Los humanos no son buenos para el manejo variable. Una causa muy común de las contraseñas olvidadas en realidad son los cambios forzados de las contraseñas, y muchas de las quejas de la mesa de ayuda son, básicamente, "No puedo recordar cuál era", no un completo no recuerdo.

Un cambio PODRÍA ser beneficioso, ya que hay una razón por la cual el usuario olvidó la contraseña. Tal vez fue elegido mal (difícil de recordar). Pero esto debería ser una elección del usuario.

Una consideración importante que casi siempre veo que falta es tener en cuenta el tipo y la importancia de su sistema desde la perspectiva del usuario. Las reglas para un sistema que la mayoría de los usuarios usan todos los días deben ser diferentes de las que la mayoría de los usuarios usan de manera irregular y / o con pausas más largas entre los usos.

    
respondido por el Tom 24.09.2017 - 07:27
fuente
3

Hay dos razones para cambiar una contraseña, según las directrices más recientes de NIST, que poco a poco se están convirtiendo en el estándar de la industria:

  1. Al usuario no le gusta su contraseña actual.
  2. La contraseña actual se ha comprometido o se sospecha que está comprometida.

A los usuarios les puede disgustar su contraseña actual por una variedad de razones: la olvidaron, es difícil de escribir, piensan que es insegura, les gusta rotar sus contraseñas ellos mismos, etc. Si el usuario elige restablecer su contraseña y la configura a la contraseña actual, no hay problema, son lo que yo llamo 'restablecimientos de usabilidad', no están relacionados con la seguridad en absoluto. Si el usuario desea restablecer su contraseña a lo que es actualmente, ¿a quién le importa? No se comprometió, por lo que no importa si es lo mismo que era.

En la otra cara, si una contraseña está comprometida, debe cambiarse, y no puede cambiarse a la misma contraseña.

En un sistema en el que se diferencian entre restablecimientos de contraseña iniciados por el usuario y por administrador / iniciados por el sistema, puede permitir que los usuarios utilicen la misma contraseña (o rechazar restablecer), al tiempo que aplica los requisitos del historial de contraseñas en los restablecimientos administrativos. La mayoría de los sistemas no hacen esto y tratan todos los reinicios bajo las reglas más estrictas, pero no existe ningún problema de seguridad que permita a los usuarios elegir restablecer las contraseñas no comprometidas a su contraseña actual.

    
respondido por el Adonalsium 17.12.2018 - 15:11
fuente
1

Para evitar que un usuario reutilice contraseñas antiguas significa que, en el mejor de los casos, debe mantener los hashes antiguos. Desde una perspectiva de seguridad, esto solo puede disminuir la seguridad de su contraseña, ya que aumenta la cantidad de información que tiene un atacante. En el caso de una infracción de su DB de hash de contraseña, esto solo facilita el trabajo de los atacantes.

Por ejemplo, no es tan infrecuente para las personas iterar contraseñas o reutilizar contraseñas. Si mantuvieras 5 hashes de contraseñas antiguas alrededor, y los hashes son pa $$ word1, pa $$ word2, pa $$ word3, pa $$ word4 y pa $$ word5, si los hashes estaban comprometidos, ahora has ambos aumentaron las posibilidades de descifrar cualquier contraseña única en 5, y también aumentaron la información sobre cuál es el patrón para la contraseña activa (obviamente pa $$ word6).

Esto tiene el efecto adicional de disminuir la seguridad en otros sitios web no relacionados donde un usuario podría reutilizar o reciclar contraseñas antiguas.

Como han señalado otros, las reglas que rodean las contraseñas se basan en el vudú, las suposiciones deficientes y no toman en cuenta los costos asociados con ellas. Evitar que los usuarios reutilicen contraseñas es un buen ejemplo de esto.

    
respondido por el Steve Sether 17.12.2018 - 18:06
fuente

Lea otras preguntas en las etiquetas