web-dev-qa-db-fra.com

L'option "Afficher le mot de passe" sur le formulaire de connexion est-elle sécurisée?

Un site Web que j'utilise occasionnellement a récemment subi une refonte et a ajouté une case à cocher "Afficher" en regard du champ du mot de passe sur son formulaire de connexion. Je comprends pourquoi certaines personnes préfèrent ces informations quand elles tapent leur mot de passe, mais cela ressemble à une faille de sécurité si vous utilisez un gestionnaire de mots de passe qui remplit votre mot de passe.

Dans mon cas, le mot de passe est enregistré dans le gestionnaire de mots de passe de Firefox, lui-même sécurisé avec un mot de passe principal **. Donc, oui, quelqu'un d'autre utilisant temporairement Firefox sur mon ordinateur peut potentiellement se connecter automatiquement à ce site, mais je m'attends au moins à ce qu'ils ne puissent pas voir mon mot de passe actuel.

Cependant, avec cette nouvelle case à cocher, ils peuvent: J'ai visité le site, puis le formulaire de connexion, qui a été pré-rempli par Firefox avec mon mot de passe (masqué sous forme de points). Ensuite, j'ai cliqué sur "Afficher" et suffisamment mon mot de passe a été affiché en clair.

Enfin, s’il s’agit d’un problème de sécurité, quel moyen le plus simple pour le décrire à l’administrateur Web du site? Je ne suis pas un concepteur/administrateur Web moi-même.

** Dans l'intérêt de ce fil, n'entrons pas dans une grande discussion pour savoir si le gestionnaire de mots de passe Firefox est un moyen sûr de sécuriser les mots de passe. Je ne l'utilise que sur les ordinateurs de mon domicile et de mon travail qui sont rarement utilisés par d'autres. De plus, même si vous pensez que je devrais utiliser un gestionnaire plus robuste comme LastPass, je pense qu'une vulnérabilité similaire existerait si quelqu'un s'asseyait devant votre ordinateur alors que LastPass était connecté.

5
SSilk

Il n’existe aucun problème de sécurité inhérent au démasquage du champ de mot de passe per sey. Dans le fonctionnement fonctionnel d'un site, toute méthode pouvant accéder aux champs de formulaire (tels que les messages côté serveur ou javascript) pourra toujours accéder aux données du champ masqué sans aucun effort. Le masquage du mot de passe remplit deux fonctions. D'une part, cela empêche quelqu'un de simplement regarder par-dessus l'épaule de l'utilisateur pour voir quel est son mot de passe. C'est aussi un peu un théâtre de sécurité qui donne l'impression à l'utilisateur que son mot de passe est sécurisé, qu'il soit particulièrement sécurisé ou non.

Avoir une case à cocher qui vous permettrait de démasquer le mot de passe ne constitue pas un problème de sécurité car cela permettrait à l’utilisateur final de décider s’il souhaite voir le mot de passe saisi et de décider s’il se trouve dans une situation où ils estiment qu’il est prudent d’avoir le mot de passe visible sur la page ou non.

La sécurité du mot de passe lui-même dépend davantage de la manière dont l'utilisateur le stocke (c'est-à-dire qu'il n'est écrit nulle part), et si la connexion du navigateur au serveur est sécurisée (HTTPS), le type de champ utilisé par l'utilisateur tapez le mot de passe.

3
Chris Rutherfurd

Si nous ignorons tout ce que vous mentionnez (ordinateur partagé, mots de passe sauvegardés par Firefox, etc.), la fonction de mot de passe "show" n’est en soi pas un risque pour la sécurité. C'est pour la commodité et "l'utilisateur quotidien". Rien n'empêche quelqu'un d'utiliser l'inspecteur de navigateur intégré dans le navigateur et de le remplacer par un type d'entrée textbox à partir de password. Il sert le même objectif (afficher le mot de passe) mais sans avoir à "modifier" le code HTML. Je le fais tout le temps sur des sites qui n'ont pas cette fonctionnalité. Une zone de texte de type password ne masque que les lettres de l'interface utilisateur.

4
Auzi

Mis à part le problème évident de sécurité lié au fait que quelqu'un d'autre puisse voir physiquement le mot de passe que vous tapez - que l'utilisateur connaît de toute façon - il existe quelques "problèmes" de sécurité qui pourraient survenir avec la façon dont il est mis en œuvre et ce qui (digne de confiance) le logiciel est sur le système des utilisateurs, ce qui pourrait potentiellement exposer le mot de passe à des applications/outils tiers inutilement.

Si l'option "Afficher le mot de passe" modifie simplement la type de l'élément d'entrée en text, tous les plug-ins de navigateur (ou applications tierces) qui vérifient l'orthographe des champs de texte seront désormais actifs sur l'élément. Dans Google Chrome, cela pourrait impliquer d'envoyer le texte à Google sous "Demander des suggestions à Google".

J'ai également une application de dictionnaire tierce installée qui va chercher du texte sous le curseur de la souris. Cela ne fonctionne pas sur les champs password, mais sur les champs text.

Les champs de texte sont également copiables (potentiellement par une application tierce), les champs de mot de passe ne le sont pas.

Les formulaires de connexion ne devraient de toute façon pas être activés par autocomplete, mais le fait de changer le type de INPUT en text permet potentiellement de sauvegarder le mot de passe dans la base de données de complétion automatique du navigateur (qui n'est pas nécessairement sécurisée). ), sauf si INPUT redevient password avant la soumission .

Une alternative à la modification de la type du champ password consiste à "afficher le mot de passe" dans un élément non-formulaire. Cela pourrait être "plus sûr".

En résumé ... cela devrait être sûr, mais je pense qu'il y a des risques potentiels que l'utilisateur final ne sait peut-être pas. Mais c’est l’utilisateur final qui doit choisir d’afficher son mot de passe.

4
MrWhite