web-dev-qa-db-fra.com

Réduire la complexité des mots de passe?

Depuis le début de mon nouveau rôle, j'ai constaté que 20% des sessions de connexion entraînaient un abandon.

De regarder des enregistrements d'utilisateurs, je crois que cela revient aux utilisateurs d'oublier leur mot de passe. Les utilisateurs se connectent avec leur adresse e-mail et un mot de passe composé de:

  • Lettre majuscule
  • Lettre minuscule
  • Nombre
  • Caractère spécial

J'examine maintenant les moyens de résoudre ce problème et de réduire ce pourcentage. J'ai déjà vu la question concernant l'affichage de la complexité des mots de passe sur la page de connexion, mais c'est un non-aller de la sécurité.

La réduction de la complexité des mots de passe pour les futures inscriptions/réinitialisations de mot de passe serait-elle une option viable? Une invite de réinitialisation peut-elle être envoyée par e-mail aux utilisateurs en leur offrant la possibilité de réinitialiser leur mot de passe avec moins de complexité s'ils ont eu des problèmes dans le passé?

23
danwood

Une personne moyenne a 19 mots de passe

Plus d'un sur trois (35%) des personnes interrogées ont déclaré avoir du mal à se souvenir de mots de passe forts, ce qui n'est pas surprenant étant donné que le Britannique moyen en a maintenant 19 à retenir.

https://nakedsecurity.sophos.com/2014/10/17/average-person-has-19-passwords-but-1-in-3-dont-make-them-strong-enough/ =, 2014

Imaginez le nombre de mots de passe dont l'utilisateur doit se souvenir! Demander à votre utilisateur d'avoir 5 exigences

  • Lettre majuscule
  • Lettre minuscule
  • Nombre
  • Caractère spécial

augmente la sécurité, mais augmente également la complexité. Donc 20% des décrocheurs semblent logiques.

Option 1 La diminution des exigences est une option logique, tant qu'elle ne rend pas le système moins sûr.

Option 2 L'envoi d'un e-mail à vos utilisateurs lorsqu'ils essaient de se connecter après x nombre d'essais et leur demandant de réinitialiser leur mot de passe est une option intéressante car bien. L'inconvénient est qu'ils devront toujours créer un mot de passe complexe.

Penser à haute voix Qu'en est-il de leur rappeler que leur mot de passe répond aux exigences suivantes? S'ils savent à quelles exigences répond leur mot de passe, ils se souviendront peut-être aussi du mot de passe. C'est une sorte de méthode d'ingénierie inverse pour vos utilisateurs.

Par conséquent, la meilleure option est l'option 1 . Vous devrez convaincre votre sécurité que c'est la voie à suivre. Il doit y avoir un moyen de régler cela au milieu, car l'utilisateur doit pouvoir se connecter facilement, mais la sécurité ne doit pas être compromise.

Cet article ( https://uxplanet.org/why-complex-passwords-are-bad-design-and-5-ways-to-do-better-affcc4516406 ) pourrait être d'une grande aide et il fournit 5 façons qui peuvent aider vos utilisateurs à améliorer leurs mots de passe.

  1. Expliquez pourquoi ils ont besoin de mots de passe sécurisés
  2. Créez facilement un mot de passe
  3. Utiliser la connexion sociale
  4. Utilisez uniquement l'adresse e-mail dans votre formulaire de connexion
  5. Supprimer complètement le mur d'inscription
12
Dimitra Miha

La solution la plus courante que j'ai vue à ce sujet inclut la connexion Facebook et Google, étant donné que la plupart des utilisateurs seront déjà connectés à l'un des sites sociaux.

Buttons for ‘Login with Facebook’ and ‘Sign in with Google+’

28
Ameen Akbar

Les très célèbres bandes dessinées xkcd à propos de la force des mots de passe me vient à l'esprit.

Ce que vous voulez vraiment, ce n'est pas un mélange de minuscules, de majuscules, de chiffres et de caractères spéciaux. Vous voulez un mot de passe avec beaucoup d'entropie et l'utilisateur ne soit pas dérangé inutilement. Je pense donc que ce que vous devez faire, c'est vous débarrasser de l'ensemble arbitraire de règles et vous concentrer sur l'entropie du mot de passe. Le mot de passe est-il difficile à déchiffrer? Assez long ? Pas seulement le nom de l'utilisateur avec son numéro de téléphone à la fin? Pas seulement "mypassword" en l33t parler?

Pour ce faire, vous pouvez utiliser la bibliothèque zxcvbn . Vous fournissez le mot de passe, des informations sur l'utilisateur et vous obtenez une note entre 0 et 4. Ensuite, vous pouvez rejeter le mot de passe s'il est noté moins de x. Il fournit des indications sur la façon de rendre le mot de passe plus difficile à déchiffrer si la note est suffisamment basse. Vous bénéficiez de la sécurité et les utilisateurs peuvent utiliser le mot de passe qu'ils souhaitent s'il est suffisamment fort.

Je travaille dans un environnement où les exigences dont vous parlez sont appliquées et certains des mots de passe de mes utilisateurs sont classés de 1 à 4 par zxcvbn, car un mot de passe utilisé très souvent peut répondre aux exigences (par exemple "Myp @ ssword1" , "1Azertyuiop ^" ou "3.1451592Pi"). Il est donc plus efficace d'utiliser cette bibliothèque pour des raisons de sécurité strictes.

10
Pierre.Sassoulas

Il y a une discussion similaire dans les commentaires de cette réponse à une question similaire la réponse à cette question .

Des restrictions de mot de passe strictes sont fantastiques pour augmenter le trafic vers votre page de réinitialisation de mot de passe, dans la mesure où vous pourriez aussi bien faire en sorte que tous les utilisateurs se connectent par e-mail plutôt que de fournir un mot de passe.

Une suggestion que je vois régulièrement est de n'avoir aucune restriction sur les mots de passe et d'avoir un indicateur de force du mot de passe pour encourager l'utilisateur à fournir un mot de passe sécurisé. Mais tout cela permet à l'utilisateur de décider entre le piratage de son compte ou l'utilisation du formulaire de réinitialisation du mot de passe à chaque connexion.

Jusqu'à présent, la meilleure solution que j'ai trouvée est d'autoriser la connexion via Google/Facebook/Twitter, mais je n'ai pas encore vu de preuves récentes de l'efficacité de cela. En 2012 ce n'était certainement pas bien adopté , mais cela pourrait valoir la peine de demander à vos utilisateurs de voir si cela les concerne.

3
Joel Tebbett

Aidez l'utilisateur à trouver des mots de passe plus intuitifs. C'est décourageant lorsque vous rencontrez un ensemble d'exigences qui dit quelque chose comme:

  • Vous devez trouver un MOT DE PASSE SECRET.
  • Il doit y avoir des CHIFFRES (les Américains détestent les mathématiques).
  • Elle doit être au moins aussi longue.
  • Il doit être au plus longtemps. (ed: pourquoi?!)
  • Cela doit ressembler à ceci: @ # $ 346% ^ & * (D

Si je concevais encore des applications destinées au public de nos jours, au lieu d'un bloc de bêtises comme ci-dessus, je dirais à l'utilisateur:

  • "Quelle est la première chose que quelqu'un t'a jamais dite qui t'a vraiment rendu heureux?" Ajoutez quelques autres invites/suggestions pertinentes pour votre analyse de rentabilisation, mais essayez d'éviter les invites qui ne concernent que l'ici et maintenant ou qui sont très courantes, c'est-à-dire les paroles de chansons préférées, etc.).
  • Mettez-le en majuscule et ponctuez-le comme un bon anglais.
  • Ajoutez un nombre au début ou à la fin.

Avec cela, vous avez satisfait à toutes les exigences de complexité des mots de passe, introduit un ton d'entropie dans le mot de passe de chaque utilisateur, atténué les aspects effrayants et surfaits de la complexité des mots de passe et s'ils ont du mal à s'en souvenir, rappelez-leur que ils sont sur ce site étrange qui leur a fait utiliser une phrase entière écrite en anglais approprié pour un mot de passe et quel était le contexte suggéré.

2
Ivan

Pour ajouter aux autres réponses, une autre façon de permettre aux utilisateurs de se souvenir plus facilement de leur mot de passe est d'offrir une image de rappel et/ou du texte qu'ils peuvent définir lors de la première configuration de leur compte. Montrez cette image ou ce texte lorsqu'ils doivent entrer leur mot de passe pour les aider à se souvenir.

Par exemple, je pourrais avoir "piZza2014! MeLike" comme mot de passe. Je voudrais mettre une photo de la pizza que j'ai eue pendant mes vacances en Italie en 2014 et peut-être le mot "facebook" pour me rappeler la partie "meLike".

Les humains se souviennent des indices visuels beaucoup plus facilement que des mots.

1
snaplemouton

Les mots de passe sont nuls. Je l'ai dit tant de fois et je le dirai tant de fois à l'avenir. Ils ont été brisés depuis l'époque d'Aladen et de sa grotte et n'ont fait qu'empirer depuis. couper la tête des gens avec de mauvais mots de passe est un excellent moyen d'empêcher le forçage brutal, mais pas exactement populaire ou facile à mettre en œuvre sur Internet. J'ai examiné différentes méthodes pour remplacer les mots de passe. Tout, des kerberos aux certificats SSL. J'ai joué avec des mots de passe uniques, des modules matériels et de la biométrie. La seule chose qu'ils ont tous en commun: ils ne travaillent pas dans des endroits sur lesquels je n'ai aucun contrôle. Je ne peux pas les utiliser à la banque ou pour vérifier les e-mails. ils ne sont pas utilisés pour la vérification des cartes de crédit (bien que cela commence à peine à s'améliorer) ou pour commander des pièces de plomberie. J'ai même envisagé de faire fonctionner mon propre serveur de serment, mais personne n'était disposé à s'authentifier. J'utilise donc un gestionnaire de mots de passe et maudis bruyamment quand quelqu'un rend difficile l'utilisation d'un gestionnaire de mots de passe au nom de la sécurité.

Que pouvez-vous faire pour me faciliter la vie?

Un: autorisez plusieurs formes d'authentification. Si je veux utiliser Google, ça marche. Si je ne fais pas confiance à Google, ça n'est pas obligatoire. Si Google tombe en panne, il y a bien d'autres options.

Deux: autoriser les formes expérimentales d'authentification. (mais pas comme la seule méthode) Permettez-moi de jouer avec des mots de passe uniques basés sur le temps. Ils pourraient sucer, mais ils pourraient ne pas. permettez-moi de jouer avec les certificats côté client ou les modules de sécurité matérielle. Bien que rien de tout cela ne soit la solution que nous recherchons, nous ne le saurons pas avant d'essayer, mais nous savons que les mots de passe sont nuls, nous l'avons déjà essayé.

1
hildred

Non seulement la complexité du mot de passe obligatoire est une nuisance, mais les changements de mot de passe obligatoires sont fréquents, selon le Chief Tech Officer de la Federal Trade Commission des États-Unis . Je me souviens quand j'ai lu pour la première fois ce sentiment exalté que quelqu'un finalement l'obtienne !

0
A.fm.

Je supprimerais les exigences de complexité, mais réduirais la flexibilité. Voici ce que je veux dire par là:

Au lieu de dire à l'utilisateur

"Choisissez un mot de passe qui suit ces règles, et j'espère que vous en choisirez un qui est si compliqué que personne ne pourra le déchiffrer, mais pas si complexe que vous aurez du mal à vous en souvenir"

ce serait

"Voici votre mot de passe. Mémorisez-le."

Pour des raisons de sécurité, ce mot de passe doit être généré de manière aléatoire. Pour faciliter la mémorisation, au lieu de combinaisons aléatoires de lettres/chiffres/symboles, vous pouvez suivre la suggestion de XKCD et utiliser mots aléatoires .

0
jkdev