Existe-t-il des risques de sécurité lorsque j'utilise OpenID comme méthode d'authentification sur mon site?

StackOverflow https://stackoverflow.com/questions/182258

  •  05-07-2019
  •  | 
  •  

Question

OpenID est-il une méthode sécurisée d'authentification des utilisateurs sur un site Web?

Et si non, quels sont les risques de sécurité associés à OpenID?

Était-ce utile?

La solution

En fait, j'ai toujours détesté OpenID pour diverses raisons.

  • Je dois faire confiance au fournisseur OpenID à qui j'ai donné mes données. Je fais confiance à certains côtés à certains degrés, mais juste parce que je peux faire confiance à Stack Overflow, je ne fais automatiquement confiance à aucun des fournisseurs OpenID bien connus.

    1. Si mon mot de passe OpenID est compromis, tous les sites sur lesquels j'utilise OpenID le sont également. En général, je choisissais un mot de passe différent pour chaque site que j'utilisais, mais je ne peux pas utiliser OpenID.

    2. Je n'aime pas du tout le concept Persona. Même si on me demande avant d'envoyer des données, il semble anormal qu'un fournisseur ait ces informations et que d'autres services puissent les demander. D'accord, je n'ai pas besoin de l'utiliser si je n'aime pas, mais le concept me semble imparfait.

    3. Comme cela a déjà été mentionné, les données sont envoyées entre un site et le fournisseur OpenID et inversement. Chaque fois que des données sont échangées, elles peuvent être compromises. Aucun système n'est sécurisé à 100%; pas même SSL (HTTPS). C'est une différence si les données voyagent de moi d'un côté à l'autre et de retour à moi-même ou si elles voyagent également de ce côté à l'autre d'un côté à l'autre.

    4. Si un fournisseur OpenID est piraté et que le pirate informatique récupère les informations de connexion de tous les utilisateurs (après tout, ils sont centralisés à un seul endroit!), pensez à l'impact!

Juste pour en nommer quelques-uns. Je ne vois pas non plus le gros avantage d'OpenID. Pour l'utilisateur, ils disent

  1. Plus rapide & amp; inscription et connexion plus faciles
    • Réduction de la frustration causée par le nom d'utilisateur / mot de passe oublié
    • Maintenir à jour les données personnelles sur les sites préférés
    • Réduisez les risques de sécurité liés aux mots de passe

D'accord, analysons cela.

(1) À quelle fréquence vous enregistrez-vous pour une page par jour? 200 fois? Si je m'inscris pour 2 pages par semaine, c'est déjà un sacré lot. Habituellement, cela prend environ 2-3 mois au maximum (en fait, Stack Overflow, ou mon fournisseur OpenID utilisant Stack Overflow, était la dernière page que j'ai enregistrée et ce n'était pas tout à fait hier). Ainsi, lorsque vous vous inscrivez pour 2 sites par mois, vous ne disposez pas des 5 minutes nécessaires pour remplir un formulaire? Allez, ne sois pas ridicule.

(2) Comment? Parce qu'il utilise le même mot de passe partout? "Ce n'est pas un avenir, c'est un bug", diraient la plupart des experts en sécurité. Ou parce que cela me permet de récupérer mon mot de passe par mail? En fait, presque tous les côtés que j'utilise me permettent de le faire. Malgré cela, mon Firefox se souvient très bien de mes mots de passe, les stocke chiffrés sur disque (en utilisant un mot de passe principal) et cette base de données chiffrée est sauvegardée régulièrement pour ne jamais être perdue.

(3) Eh bien, c’est probablement quelque chose de positif ... Cependant, mon nom n’a jamais changé, mon adresse de messagerie ne changera pas non plus, car c’est l’un des domaines que j’utilise et qui est transféré vers une adresse réelle ( donc le vrai peut changer, je viens de mettre à jour le transfert et tout fonctionne comme avant). Mon adresse postale? Eh bien, certaines personnes bougent beaucoup. Je n'ai déménagé qu'une fois dans toute ma vie jusqu'à présent. Cependant, la plupart des parties n'ont pas besoin de connaître mon adresse postale. Les sites sur lesquels je ne vois aucune raison de faire connaître cette information aux personnes, mais qui me demandent de la remplir pour pouvoir m'inscrire, en obtiennent une fausse. Il y a très peu de sites sur Internet qui connaissent ma véritable adresse (en fait, seuls ceux qui doivent peut-être m'envoyer un courrier postal ou où je pourrais commander des marchandises).

(4) En fait, je vois l'inverse. Cela maximise le risque de sécurité. Comment minimiserait-il le risque?

Autres conseils

Je suis d'accord avec de nombreux points soulevés par David ci-dessus. Je soulève donc certains points simplement pour les besoins de la discussion.

Pour l'utilisateur averti, je dirais qu'OpenID est une forme d'authentification sécurisée plus que celle fournie par de nombreux sites Web. Permettez-moi maintenant de revenir sur cette déclaration. Premièrement, qu'est-ce que je veux dire par un utilisateur averti ? Je définirais cette personne comme une personne consciente des faiblesses d’OpenID et qui prend des mesures pour les atténuer:

  • Conserve plusieurs personnes si elles ne souhaitent pas que les sites Web puissent les suivre efficacement.
  • Enregistre deux ou plusieurs fournisseurs OpenID sur des sites Web où l'accès 24/7 est un problème.
  • Toujours vous connecter à leur fournisseur OpenID directement. Ils ne se connectent jamais à une page vers laquelle un site Web tiers les a redirigés.

De nombreux sites Web ne savent pas comment gérer en toute sécurité les mots de passe des utilisateurs . La très bonne chose avec OpenID est que je peux choisir mon fournisseur OpenID et donc le niveau d'authentification nécessaire pour se connecter à une partie de confiance. Par exemple, je peux choisir de déléguer l’authentification à Verisign ou Trustbearer - qui fournissent des techniques d’authentification beaucoup plus strictes que la plupart des sites Web sur le Web. Je préférerais de beaucoup faire confiance à une organisation spécialisée dans la sécurité avec mon mot de passe plutôt qu’à un site Web aléatoire sur le Web. Je dirais donc que pour l'utilisateur averti, OpenID peut être plus sécurisé que chaque site Web mettant en œuvre son propre système d'authentification.

Cela dit, la plupart des utilisateurs ne sont pas conscients des facteurs de risque inhérents à OpenID et ne prendront pas les mesures nécessaires pour atténuer les risques.

OpenID est intrinsèquement peu sécurisé. Cela fonctionne si votre site redirige l'utilisateur vers son site de fournisseur d'identifiants ouvert, puis accepte un identifiant de ce site. Cela fournit des insécurités dans les deux sens. Vous devez faire confiance à l'identifiant qui vous est renvoyé (vous n'avez aucun moyen d'authentifier l'utilisateur vous-même) et il est facile d'utiliser un proxy pour le fournisseur d'identifiant ouvert de l'utilisateur, qui vous permet de voler son nom d'utilisateur et son mot de passe.

OpenID convient à quelque chose comme Stack Overflow, dans lequel il n’importe pas vraiment si quelqu'un vous imite. Utiliser OpenID pour les sites plus sérieux & # 8211; à un niveau personnel & # 8211; le contenu est extrêmement risqué. Si vous utilisez OpenID pour votre courrier électronique par exemple, toute personne qui volera votre identifiant pourra accéder à votre courrier électronique. Ils pourraient ensuite envoyer des demandes de rappel de mot de passe à d'autres sites que vous utilisez afin d'obtenir des mots de passe pour ces sites. Dans le pire des cas, vous pouvez utiliser OpenID pour un compte bancaire ou demander à une banque d'envoyer des rappels de mot de passe à votre compte de messagerie ...

Il existe de nombreux autres problèmes de sécurité avec OpenID. Vous pouvez trouver plus d'informations dans " Confidentialité sur Internet & <; a>.

Vous pouvez sécuriser davantage OpenID si vous choisissez d'ignorer tous les fournisseurs OpenID qui ne prennent pas en charge le protocole HTTPS

Je pense que la principale faiblesse de la plupart des fournisseurs OpenID est qu’ils offrent la récupération de mot de passe par courrier électronique. Cela réduit la sécurité OpenId à la sécurité de mon fournisseur de messagerie. Si quelqu'un a accès à mon compte de messagerie, il peut effectivement voler mon identité (avec ou sans OpenId).

Utiliser OpenId pour l'authentification facilite le vol d'identité ym. Il suffit d’avoir accès à mon compte de messagerie et de réinitialiser mon mot de passe OpenId. Rien de plus à faire (au lieu de 100 demandes de réinitialisation de mot de passe, une pour chacun de mes comptes sur le Web).

Pire encore, si l'attaquant modifie le mot de passe de mon compte de messagerie, il sera très difficile pour moi de prouver que je suis le propriétaire d'origine de ce compte OpenId. L’attaquant peut changer le compte de messagerie associé en son propre compte, ainsi je ne peux pas réinitialiser le mot de passe, même si je récupère mon compte de messagerie plus tard.

Cela pourrait suffire d’avoir accès au courrier électronique de récupération de mot de passe envoyé par mon fournisseur OpenId pour voler mon identité.

Les fournisseurs OpenID doivent désactiver la récupération de mot de passe de messagerie et fournir un moyen plus sécurisé de récupérer un mot de passe perdu. Quelque chose est basé sur une adresse postale, un passeport ou un compte bancaire (des choses qui me font plus confiance qu'un compte de messagerie).

Tant qu'un compte OpenId peut être repris simplement en accédant à un seul courrier électronique, il ne s'agit que d'un point de défaillance supplémentaire.

Voir aussi: http://danielmiessler.com/blog/from-password-reset-mechanisms-to-openid-a-brief-discussion-of-on-line-password-security où " Le lien le plus faible: Email Mécanismes de réinitialisation de mot de passe " est également adressée.

Alors que ce fil est vieux, je voulais ajouter mes 2 centimes. Je pense qu'OpenId a un défaut dont personne ne semble se soucier. Lorsque je m'authentifie auprès de Yahoo, cela me connecte à Yahoo. Il ne devrait pas vous connecter à yahoo, il devrait simplement authentifier que vous disposez des informations d'identification appropriées avec yahoo. Lorsque vous vous déconnectez de mon application, vous êtes toujours connecté à Yahoo. Si vous quittez un ordinateur partagé et qu'une autre personne se connecte à Yahoo, vous serez connecté. Parce que, lorsque vous vous êtes authentifié auprès de Yahoo, il vous connecte également à son service. Ils devraient juste vous authentifier, pas vous connecter. J'ai parlé de cela à plusieurs personnes et je l'ai même démontré avec stackoverflow.com (qui a un mécanisme de déconnexion terrible, lorsque je clique sur la déconnexion, je m'attends à être déconnecté, ne cliquez pas un autre bouton de déconnexion). Essayez cette déconnexion de Yahoo ou Gmail. Fermez tous vos onglets, puis connectez-vous à stackoverflow avec yahoo / gmail. Déconnectez-vous ensuite du dépassement de capacité de la pile .. (assurez-vous de cliquer deux fois sur la déconnexion) .. naviguez maintenant vers yahoo ou gmail, vous êtes connecté (e). Maintenant, la réponse rapide que je reçois est "Ne pas utiliser un ordinateur partagé, vous devez vous connecter sur Yahoo / gmail, etc. "... Tout le monde n’est pas un développeur diplômé en informatique, ma belle-mère penserait qu’elle ne serait pas encore connectée à yahoo quand elle se déconnecterait de Stackoverflow .. Peut-être Il me manque quelque chose ou quelque chose qui va forcer ce que je veux, mais ce n'est sûrement pas dans la documentation qui vous dit à quel point OpenId est génial !!!

Aïe. MyOpenID signale des adresses électroniques non confirmées, vient de faire un test pour cela. Il semblerait que les informations par courrier électronique ne doivent être approuvées que par certains fournisseurs figurant sur la liste blanche tels que Google / Yahoo et quelques autres. Je lie le code ici si quelqu'un est intéressé.

J'aime l'accès VIP de Verisign auquel les sites peuvent accéder, et il existe une jolie petite application pour iPhone qui vous permettra d'entrer votre jeton généré, un peu comme SecureID

.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top