Mirando a personas que se quejan de que Yahoo obliga a los usuarios a cambiar sus contraseñas . Podemos ver que a las personas no les gusta particularmente cambiar las contraseñas (y si los cambiamos regularmente es un aumento de la seguridad es discutible ). Estos dos casos (violaciones de Yahoo y cambios periódicos de contraseña) se refieren al hecho de que los hashes de contraseña han sido (o podrían ser) robados.
Sin embargo, este no es el único caso en el que es recomendable cambiar una contraseña. El otro caso es secuestro de sesión .
Suponiendo una aplicación en red y de varias sesiones (por ejemplo, de diferentes unidades al mismo tiempo), cuando un usuario sospecha que su sesión a menudo aconsejamos que cambie su contraseña . Esto tiene sentido hasta cierto punto porque OWASP argumenta que todas las sesiones actuales deben ser invalidadas en el cambio de contraseña . Y además, debido a que los tokes de sesión a menudo se derivan del hash de la contraseña.
En lugar de recomendar a este usuario que cambie su contraseña, ¿no podemos simplemente reutilizar la misma contraseña y simplemente volver a agregarla?
Mirando el antiguo ¿Está utilizando las contraseñas regularmente para aumentar / reducir la seguridad? Estoy pensando si existen desventajas al permitir que un usuario guarde sus contraseñas. Para realizar la re-sal necesitamos que el usuario nos dé la contraseña, por lo que un secuestrador no podría hacerlo.
Entonces, sí, es una ventaja de usabilidad para un usuario que puede seguir usando la misma contraseña pero:
- Al realizar la re-sal, ¿sería esto más vulnerable (que un simple cambio de contraseña) a un atacante que conoce parte del hash (por ejemplo, desde el token de sesión)? (Creo que no)
- ¿Evitar cualquier información del hash de contraseña que se filtra en el token de sesión lo mitigaría?
- ¿Sería mejor proporcionar una lista de sesiones abiertas para el usuario y permitirle deshabilitarlas? (Creo que no, ya que el atacante también podría hacerlo)