web-dev-qa-db-fra.com

Comment les «images de confiance» sur la page de connexion de ma banque améliorent-elles la sécurité?

Ma banque a récemment modifié son processus de connexion pour afficher une image présélectionnée qu'elle qualifie d '"image de confiance" - apparemment pour permettre à un utilisateur de site Web humain d'authentifier le site Web de la banque comme n'étant pas une usurpation d'identité.

L'ancien processus de connexion était:

  1. Visitez BankName.com (l'ensemble du site est sécurisé avec un certificat EV)
  2. Cliquez sur le lien de connexion, une demande de GET à leur page de connexion
  3. Entrez le nom d'utilisateur et le mot de passe, POST soumettez le formulaire
  4. Recevoir HTTP 303 redirection vers la page du tableau de bord du compte

Le nouveau processus est le suivant:

  1. Visitez BankName.com (l'ensemble du site est sécurisé avec un certificat EV)
  2. Cliquez sur le lien de connexion, une demande de GET à leur page de connexion
  3. Entrez le nom d'utilisateur et le mot de passe, POST soumettez le formulaire
  4. Recevoir HTTP 303 redirection vers la page "Image de confiance", qui montre une photo que j'ai précédemment sélectionnée, elle m'invite également à ressaisir mon mot de passe une deuxième fois. Après POSTing ce formulaire, il redirige vers la page du tableau de bord de mon compte.

Je ne vois pas comment cela ajoute une sécurité réelle - tout MITM, ou tout proxy d'ailleurs (en supposant que la sécurité TLS est compromise d'une manière ou d'une autre) pourrait transmettre l'image de confiance et je la reconnaîtrais. De même, un site Web usurpé n'a besoin que de transmettre mes propres informations d'identification à la page de connexion de la banque réelle, d'obtenir une copie de l'image de confiance et de la restituer - ce qui tromperait très facilement un utilisateur moins sophistiqué.

Seul un site Web usurpé très basique (avec une page d'image de confiance codée en dur) ferait en sorte que les utilisateurs voient la différence, mais le plus gros problème est qu'il n'affiche l'image qu'après J'ai déjà entré mon mot de passe - la fonctionnalité est donc inutile car le site Web de fraude ou d'attaque a déjà une copie de mon nom d'utilisateur et de mon mot de passe.

Je me souviens qu'à un moment donné, la page de connexion OpenID de Yahoo montrait une image de confiance, alors que c'était après avoir entré mon nom d'utilisateur, c'était surtout avant que j'entrais mon mot de passe (donc le processus de connexion a été divisé en deux formulaires) - je crois qu'il était également basé sur un cookie HTTP uniquement, donc la connexion à Yahoo dans un navigateur propre ne déclencherait pas l'image de confiance.

L'utilisation de l'intelligence humaine pour effectuer l'authentification mutuelle semble être une mauvaise idée - les certificats X.509 remplissent déjà le rôle d'authentification de serveur, et les certificats EV facilitent la tâche pour les utilisateurs moins sophistiqués ("recherchez le vert"). Je ne vois pas la motivation ... ou le succès derrière ce mouvement, et je suis frustré d'avoir à sauter à travers un autre cerceau pour me connecter à ma banque.

MISE À JOUR: Quelques semaines après que ma banque a présenté ces images de confiance, elles ont changé le processus de connexion afin que vous saisissiez votre mot de passe après avoir vu l'image:

  1. Visitez BankName.com, cliquez sur le lien de connexion
  2. Saisissez uniquement le nom d'utilisateur.
  3. La page de réponse a l'image de confiance et une boîte de saisie de mot de passe
  4. Soumettez avec le mot de passe correct pour accéder au tableau de bord de votre compte

n commentaire intéressant de Joshua suggère que ces images pourraient aider dans les situations MITM à condition que chaque demande d'image soit enregistrée et puisse être utilisée comme preuve d'une attaque de phishing, comme ceci:

  1. L'utilisateur clique sur le lien dans un e-mail de phishing, ouvre TotallyNotFakeBank.com/login
  2. Cette page de connexion n'a qu'une invite de nom d'utilisateur.
  3. Après avoir soumis le nom d'utilisateur, le serveur MITM fait une nouvelle demande au site Web de la vraie banque et obtient l'image de confiance réelle. Cette demande proviendra de la propre adresse IP du MITM (en théorie, le site MITM pourrait utiliser le client/la victime pour effectuer une AJAX demande d'image, mais si CORS et d'autres restrictions sont correctement configurés) cela devrait être impossible)
  4. Le MITM génère la fausse page d'image de confiance et restitue l'image à la victime, et la victime passe son mot de passe.
  5. La victime perd ensuite de l'argent après que les agresseurs ont utilisé les informations d'identification pour obtenir de l'argent sur le compte.
  6. La victime informe sa banque et la banque vérifie les journaux d'accès de l'image de confiance et constate que la demande d'origine de l'image de confiance ne provient pas de son navigateur Web habituel, ce qui conduit la banque à croire l'histoire de son client au lieu de la supposer. était un faux rapport.
22
The D

Vous décrivez une variation de SiteKey .

Votre banque ne l'implémente pas correctement car elle demande à la fois le nom d'utilisateur et le mot de passe avant d'afficher l'image. Si la page était un attaquant, il ne pourrait pas vous montrer l'image correcte, mais cela n'a pas d'importance car il a déjà votre nom d'utilisateur et votre mot de passe.

S'il est correctement implémenté, il est toujours très inefficace .

39
Sjoerd