Protéger les sessions sur un compte potentiellement compromis
Il n'est pas nécessaire de rediriger vers la page de connexion si la gestion de session lors du changement de mot de passe est effectuée en toute sécurité. Autrement dit, tant que tous les identifiants de session en cours sont invalidés et que la session en cours est attachée à un nouvel identifiant de session (généralement émis sous forme de jeton dans un cookie d'authentification - le cookie est uniquement envoyé à la session qui vient de changer le mot de passe), alors là il n'y a aucun risque qu'un attaquant qui est déjà dans le compte reste connecté.
Article OWASP
La justification de l'article OWASP est expliquée ci-dessous. Il n'y a rien de mal avec l'aspect sécurité de celui-ci, mais il y a quelques problèmes d'utilisabilité.
La fonctionnalité de réinitialisation du mot de passe est souvent utilisée lorsqu'un utilisateur souhaite sécuriser son compte.
En invalidant tout sessions existantes lors de la réinitialisation du mot de passe, le système s'assure que seule la personne avec le nouveau mot de passe peut se connecter.
Disons, par exemple, qu'un attaquant qui a obtenu l'accès au compte en utilisant l'ancien mot de passe est connecté . La réinitialisation de toutes les sessions déconnectera l'attaquant.
Pourquoi déconnecter l'utilisateur actuel, je vous entends demander?
Eh bien, disons que l'attaquant utilise la session de l'utilisateur actuel, disons en utilisant une vulnérabilité de fixation de session. Cela signifie que l'attaquant a la même session que l'utilisateur réel. La réinitialisation de la session en cours garantira également que personne n'est sur le compte qui n'est pas censé y avoir accès.
La redirection vers la page de connexion dans votre devis ci-dessus décrit vraiment le fait que vous devez déconnecter l'utilisateur des sessions en cours et de toutes les sessions (mais il n'y a aucun risque de vous empêcher de les déposer dans une nouvelle session avec un nouvel identifiant).