web-dev-qa-db-fra.com

Pourquoi certaines banques Internet forcent la déconnexion sur le bouton Retour?

Un modèle de conception que j'ai remarqué sur les sites bancaires par Internet est que vous êtes automatiquement déconnecté et envoyé à une page d'avertissement si/lorsque vous appuyez sur le bouton Retour de votre navigateur, mettant fin à votre session et vous obligeant à vous reconnecter.

Je suppose que cela est dû à une sorte de considération de sécurité, mais je ne sais pas quoi. Quelle est la justification de ce comportement?

41
Nick F

Un scénario que ces banques pourraient vouloir vous protéger pourrait être le suivant:

  1. vous visitez votre site Web bancaire et faites vos affaires bancaires.
  2. une fois que vous avez terminé, vous vous déconnectez, puis accédez à un autre site Web pour regarder des photos de chats ou autre chose.
  3. vous quittez votre ordinateur avec le site Web de l'image de chat ouvert. Parce qu'il n'y a rien d'incriminant sur votre écran, vous vous sentez en sécurité.
  4. votre colocataire maléfique arrive et appuie plusieurs fois sur le bouton de retour.
  5. ils arrivent à la version en cache de votre site bancaire, voient votre compte bancaire et voient que vous encore n'avez pas payé votre part du loyer même si vous clairement avez assez d'argent pour faire ça.

C'est l'une des raisons pour lesquelles les sites Web bancaires ne fonctionnent pas lorsque vous accédez à ceux-ci à l'aide du bouton de retour du navigateur.

Mais une raison encore plus probable pourrait être la paresse du côté des développeurs Web.

Permettre à l'utilisateur d'utiliser la navigation avant et arrière crée une variable supplémentaire dans une application Web qui doit être gardée à l'esprit à tout moment. Le simple fait de rendre cela impossible supprime cette variable et permet aux développeurs de créer beaucoup plus facilement une application sécurisée et sans bogue. Étant donné que les bogues dans les applications bancaires peuvent causer beaucoup de dommages financiers, les développeurs de ce secteur sont plutôt conservateurs et ont tendance à limiter la convivialité lorsqu'il en résulte un modèle d'utilisation des applications plus prévisible.

56
Philipp

Il se passe deux ou trois choses ici:

Les sites bancaires utiliseront des en-têtes de contrôle de cache pour interdire la mise en cache des pages. Ainsi, lorsque vous cliquez en arrière, le navigateur doit recharger la page à partir du serveur.

Certaines parties du site peuvent avoir un flux de pages strict, par exemple vous entrez les détails de la transaction, entrez votre SMS code, affichez la confirmation de la transaction. Ceux-ci nécessitent un suivi strict de la page sur laquelle vous êtes censé être. Donc, si vous cliquez en arrière, cela casse cela, et vous obtenir une erreur.

Cela peut également se produire en raison de tentatives douteuses pour améliorer la sécurité du site. Par exemple, certaines banques ont des jetons de session dans l'URL qui changent à chaque demande, et si vous revenez en arrière, votre jeton n'est plus valide.

Le site n'a généralement pas strictement besoin de ce comportement. Il y a une dizaine d'années, c'était très courant, mais moins maintenant.

27
paj28

Ce n'est plus aussi courant maintenant, mais il y a quelque temps, de nombreux sites Web n'étaient que des wrappers HTML autour d'applications classiques de terminaux ( IBM 327 et similaires) qui étaient grattées avec état, et cela était particulièrement répandu dans les industries héritées où l'idée d'une séparation entre la vue et le modèle est très, très nouvelle. Il est possible que de nombreux sites Web bancaires soient toujours mis en œuvre de cette manière, ou qu'ils aient été et aient toujours le comportement de prévention des boutons "au cas où".

8
fluffy