web-dev-qa-db-fra.com

Règles de mot de passe: dois-je interdire les mots de passe du dictionnaire "leetspeak" comme Tr0ub4dor & 3 de XKCD

TLDR: Nous avons déjà besoin de authentification à deux facteurs pour certains utilisateurs. Je hache, sale et fais des choses pour encourager les longues phrases de passe. Je ne suis pas intéressé par les mérites des règles de complexité des mots de passe en général. Une partie de cela est requise par la loi, et une partie est requise par le client. Ma question est assez étroite: devrais-je détecter les mots de passe leetspeak tels que Tr0ub4dor & 3 comme étant un mot de dictionnaire, et donc échouer les mots de passe qui consistent principalement en un seul mot de dictionnaire (même s'il est supprimé). Les mots de passe multiples Word sont toujours acceptés, qu'ils soient ou non lus, il ne s'agit que de ceux qui choisissent d'utiliser des mots de passe courts plus traditionnels.

Je suis le développeur principal d'un site Web gouvernemental à venir qui exposera des informations personnelles sensibles (antécédents criminels, SSN , etc. principalement). Le site Web sera utilisé par le grand public pour effectuer des vérifications des antécédents des employés, etc.

Sur le backend, je stocke les mots de passe hachés avec PBKDF2 salé par utilisateur avec des itérations très élevées, donc les attaques de hachage par force brute contre des mots de passe plus forts ne sont pas réalistes (actuellement), et le site Web verrouille l'utilisateur pendant 10 min après cinq mauvais essais, vous ne pouvez pas non plus utiliser la force brute de cette façon.

Je reçois des commentaires de mes clients/partenaires sur la gravité des règles de mot de passe que j'ai mises en œuvre.

Évidemment, je veux que les gens utilisent des mots de passe de 16 à 20 caractères, mais c'est une bureaucratie lente. Donc, en plus d'autoriser/d'encourager ces bons mots de passe, je dois autoriser des mots de passe "durs" plus courts. J'essaie juste de limiter notre exposition.

En particulier, l'exigence "pas de mot de dictionnaire" provoque la frustration des gens, car je rejette les mots de passe classiques en leetspeak tels que le célèbre Tr0ub4dor & 3 de XKCD . (Pour les curieux, je lance le mot de passe proposé via un traducteur de permutation leetspeak (y compris la suppression du caractère), puis je compare chaque permutation à un dictionnaire)

Suis-je trop sévère? Je suis un grand partisan de la "règle de convivialité Avids" - La sécurité au détriment de la convivialité se fait au détriment de la sécurité. Mais dans ce cas, je pense que c'est plus une question d'habitude/d'éducation. J'autorise les mots de passe diceware/passphrase lisibles sans restrictions, seuls les mots de passe "normaux" ont des exigences plus strictes. XKCD # 936: mot de passe complexe court ou longue phrase de passe du dictionnaire?

Dois-je essayer de résoudre ce problème avec une meilleure aide d'interface utilisateur? Dois-je m'en tenir à mes armes? Les multiples hacks récents de haut niveau, en particulier ceux qui ont révélé des mots de passe, me font penser que j'ai raison, mais je ne veux pas non plus rendre les choses stupides sans raison. Puisque je suis assez bien protégé contre les attaques par force brute (je pense/j'espère), est-ce une complexité inutile? Ou juste une bonne défense en profondeur?

Pour ceux qui ne peuvent pas grogner des mots de passe ou des mots de passe vraiment aléatoires, les mots de passe "deux mots plus num/symboles" semblent à la fois assez faciles et au moins plus difficiles à pirater, si je peux amener les gens à lire les instructions ...

Idées:

  • Meilleurs conseils de mot de passe/affichés de manière plus visible (trop subjectif?)
  • Meilleur indicateur de force (quelque chose basé sur zxcvbn? - échouerait les mots du dictionnaire côté client plutôt qu'après une soumission)
  • Interdire tous les mots de passe "courts", forcer les gens à n'utiliser que des phrases secrètes, ce qui simplifie les règles?
  • bouton "me faire un mot de passe" qui génère une phrase secrète pour eux et leur fait le copier dans les champs de mot de passe
  • Abandonner et laisser passer les mots de passe leetspeek?

Voici ce que j'ai actuellement dans mes instructions/règles de mot de passe:

  • Phrase de passe de 16 caractères ou plus (max illimité)

    ou

  • Au moins huit caractères

  • Contient trois des Suivants
    • MAJUSCULE
    • minuscule
    • Numéros 0123456789
    • Symboles! @ # $% ^ & * () _- + =,./<>?;: '"
  • Pas basé sur un dictionnaire Word
  • Pas votre nom d'utilisateur

Exemples de mots de passe qui ne seront pas acceptés

  • Troubador (mot de dictionnaire unique)
  • Troubador & 3 (mot de dictionnaire unique plus chiffres et symboles)
  • Tr0ub4dor & 3 (basé sur un seul dictionnaire Word)
  • 12345678 (ne contient pas de types de caractères 3/4)
  • abcdefgh (ne contient pas de types de caractères 3/4)
  • ABCDEFGH (ne contient pas de types de caractères 3/4)
  • ABCdefgh (ne contient pas de types de caractères 3/4)
  • ABC @ # $%! (Ne contient pas de types de caractères 3/4)
  • ab12CD (trop court)

Exemples de mots de passe qui seront acceptés (n'utilisez aucun de ces mots de passe):

  • agrafe de batterie de cheval correcte (mot de passe Diceware)
  • les choses flottantes devraient-elles façonner le mandat (phrase de passe lisible - lien vers makemeapassword.org)
  • GoodPassword4! (plusieurs mots, supérieur, inférieur, chiffres, symboles)
  • Yyqlzka6IAGMyoZPAGpP (chaîne aléatoire utilisant des majuscules, des minuscules et des nombres)
115
Jason Coyne

Un index de entropie valeurs ( divisent les temps par le nombre de nœuds - les acteurs étatiques ont beaucoup de nœuds):

 BIT ~ Rand CRACK CRACK 
 DICTIONARY COUNT ENTROPY CHARS MD5 PBKDF2 
 ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ ̅ .____.] Alphamumériques (lettres, chiffres) 62 5,95 0,9 0s 0s 
 Caractères imprimables aléatoires (n'importe quelle touche d'un clavier américain) 94 6,55 1,0 0s 0s 
 Dictionnaire Diceware Word 7776 12,92 2,0 0s 0s 
 Anglais américain standard (en_US) dict Word 100k 16,61 2,5 0s 0s 
 Grand dictionnaire anglais américain Word 650k 19,31 2,9 0s 1s 
 N'importe quel mot dans n'importe quel Wikipedia (n'importe quelle langue) 58,4M 25,80 3,9 0s 58s 
 
 Dictionnaire standard en_US avec raNDomIZed c ASE 6.3M 22.60 3.4 0s 6s 
 Dictionnaire standard en_US avec variations de l33t 6.3M 22.60 3.4 0s 6s 
 Std en_US w/typos + (cas Rand ou leet) 38M 25.18 3.8 0s 38s 
 Std en_US w/Rand case + typos + leet 2.4B 31.18 4.8 0s 41m 
 Wikipedia Word with raNDomIZed cASE (or l33t) 3.7B 31.80 4.9 0s 1h 
 Wikipedia Word w/typos + ( Cas Rand xor leet) 22B 34,39 5,2 0s 6h 
 
 Ordre Rand: 5 inférieur, 1 spécial, 1 num, 1 supérieur 1e11 36,52 5,6 2s 1d 
 Ordre Rand: 6 inférieur et deux de supérieur/num/spécial 4e11 38,67 5,9 10s 5d 
 Ordre de Rand: 6 inférieur, 1 spec/supérieur, an 1900-2100 4e12 41,70 6,4 1m 49d 
 Ordre de Rand: 7 inférieur et deux de supérieur/num/spécial 1e13 43,37 6,6 4m 131d 
 Ordre de Rand: 8 inférieur et deux de supérieur/num/spécial 3e14 48,07 7,3 2h 4y * 
 
 4 Mot de passe de mot de passe pour les dés 4e15 5 1,70 7,9 2d 8y * 
 Mot de passe 8 caractères (imprimable au hasard) 6e15 52,44 8,0 2d 9y * 
 Phrase secrète 5 diceware 3e19 64,62 9,9 6y * 27y * 
 10 char (imprimable au hasard) code d'accès 5e19 65,55 10,0 6y * 29y * 
 4 mots en_US standard 1e20 66,44 10,1 7y * 31y * 
 3 mots en_US std et un grand mot en_US 6e20 69,10 10,5 11y * 35y * 
 3 mots standard en_US et 3 caractères imprimables aléatoires 8e20 69,46 10,6 12y * 35y * 
 Mot de passe composé de 6 mots pour les diceware 2e23 77,55 11,8 26y * 47y * 

"Tout Wikipédia" inclut le Wiktionnaire, les Wikibooks, etc., dans toutes les langues, avec 58,4 millions de mots uniques en 2009. Diceware était la base de la bande dessinée xkcd . Je suppose une taille de mot de six caractères pour la casse mixte aléatoire (il y a donc 2⁶ itérations supplémentaires) et je suppose que les variations de leet sont aussi abondantes que la casse mixte. J'utilise une valeur de six pour les fautes de frappe/fautes d'orthographe intentionnelles.

Les temps de fissuration sont des estimations pour les systèmes de fissuration à nœud unique haut de gamme, avec des mises à niveau toutes les 18 mois pour prendre en compte loi de Moore (lorsque vous voyez un astérisque, *). Un espace est considéré comme fissuré lorsque la moitié de celui-ci a été examiné. craquage basé sur GP peut tester les MD5 à 23B/s sur un nœud d'ordinateur unique. PBKDF2 est plus robuste, estimé à 0k/s sur un système à 4 GPU en 2013 (il y a 27 mois → 227/18, donc 300k × 2,828 = 849k/s → arrondi à 1M/s).

(Note à soi-même: lire et incorporer/réfuter Les calculs de Jeffrey Goldberg sur Quora )

La question a été clarifiée dans le commentaires à mon autre réponse (que je laisse car il peut encore être utile). Il s'agit simplement de savoir s'il faut ou non autoriser leetspeak . L'authentification à deux facteurs est déjà utilisée pour les zones de haute sécurité.

Le mot "troubador" n'est pas dans mon dictionnaire standard mais dans mon grand dictionnaire. La majuscule de la première lettre d'un mot est pas casse aléatoire (c'est un topologie de mot de passe ), donc cela ne fait que doubler le nombre. Son équivalent en caractères imprimables aléatoires est donc log₂(650k × 2⁶ × 2) / 6.55 qui n'est que de quatre caractères!

Par conséquent, Tr0ub4dor&3 Équivaut à six caractères imprimables aléatoires de complexité. Un mot de passe faible, mais à peu près aussi fort que la plupart des mots de passe que les gens créent pour répondre au minimum aux exigences de complexité.

Si six caractères aléatoires sont trop faibles, vous devez interdire les mots de passe du dictionnaire "leetspeak".

Pour être complètement approfondi, vous pouvez également vouloir un grand dictionnaire afin que vous puissiez compter les mots comme moi, sinon un mot de passe comme presidentclinton (33,22 bits, 5 caractères, plus faible en réalité en raison d'être lié) serait accepté par votre système.

62
Adam Katz

L'erreur ici serait de croire que des règles de mot de passe supplémentaires augmentent la sécurité. Ils ne. Ils augmentent la gêne des utilisateurs; et ils obligent les utilisateurs à choisir des mots de passe qui sont plus difficiles à mémoriser. Pour une raison psychologique étrange, la plupart des gens croient qu'un mot de passe avec des symboles non-lettre est "plus sûr" d'une manière ontologique qu'un mot de passe avec seulement des lettres. Cependant, cela n'est absolument pas étayé.

Il y a n "règle de mot de passe" qui ne nuit pas à la sécurité: une longueur minimale de mot de passe. Cela est dû à la combinaison de deux choses:

  • Les attaques par force brute les plus stupides énumèrent toutes les séquences de symboles, en commençant par les séquences de 1, puis 2, etc. En ce sens, un mot de passe qui ne contient que 4 symboles peut être considéré comme irrémédiablement faible.

  • Les utilisateurs comprennent cette notion d'énumérer tous les petits mots de passe. Ils sont prêts à accepter qu'ils doivent taper au moins 6 ou 7 lettres.

Toutes les autres règles seront, au mieux, neutres, mais la plupart d'entre elles diminueront en fait la sécurité, car elles inciteront les utilisateurs à:

  1. concevoir et partager entre eux des "méthodes" pour générer des mots de passe que votre serveur acceptera, des méthodes qui ont généralement beaucoup de caractères de ponctuation mais très peu d'entropie;

  2. notez leurs mots de passe, qui sont difficiles à mémoriser;

  3. réutiliser les mots de passe sur d'autres systèmes, pour la même raison de mémorisation difficile.

Les "mesureurs de force de mot de passe" sont également dangereux, car:

  • Ils ne sont pas et ne peuvent pas être fiables. Un compteur de force de mot de passe ne mesure que la durée pendant laquelle un mot de passe donné résiste à la stratégie de force brute exacte incarnée par le code du compteur, mais aucun attaquant n'est contraint de suivre exactement la même stratégie.

  • Les indicateurs de force du mot de passe ne peuvent pas mesurer l'entropie qui prévalait dans la sélection du mot de passe, car ils ne voient que le résultat (le mot de passe lui-même).

  • Ils transforment la sélection de mots de passe en un jeu qui encourage les stratégies spirituelles de la part de l'utilisateur, et c'est exactement ce que nous ne voulons pas pour les mots de passe. Les mots de passe sécurisés s'efforcent sur le caractère aléatoire .

Ce que peut aider beaucoup est de fournir un système de génération de mot de passe. Prenez soin de rendre ce système facultatif : vous voulez que les utilisateurs l'utilisent volontairement, pas pour le leur imposer, de peur de se rebeller (et d'écrire des mots de passe et partager et réutiliser).


Ma recommandation serait donc:

  • Rejetez les mots de passe de moins de 7 caractères (puisque vous disposez d'un système d'atténuation contre les attaques en ligne - à savoir le verrouillage automatique pendant 10 minutes après 5 essais incorrects - vous pouvez tolérer des mots de passe relativement courts). MAIS AUCUNE AUTRE RÈGLE. Toute séquence de 7 caractères ou plus convient.
  • Fournir un ou, mieux encore, plusieurs mécanismes de génération de mot de passe facultatifs, par ex. diceware, le "bon cheval", et ainsi de suite.
  • Encouragez l'utilisation de gestionnaires de mots de passe.
  • Si possible, essayez de trouver autre chose que des mots de passe pour authentifier les utilisateurs.

Mon assertion est que vous poussez les choses dans une direction quelque peu asymétrique , pas exactement la bonne. En particulier, les règles de mot de passe qui insistent sur certains caractères spécifiques sont une mauvaise chose (chose courante, mais néanmoins mauvaise).

202
Tom Leek

Les règles de mot de passe supplémentaires doivent toujours être tempérées par la règle suivante:

"Plus il est difficile d'obtenir un mot de passe valide et de le garder à jour, plus les gens sont susceptibles de les écrire, de les écrire dans leur agenda."

Par conséquent, votre question est sociale. Quelle quantité d'éducation concernant la bonne gestion des mots de passe pouvez-vous fournir par rapport à la quantité d'application que vous pouvez fournir. Vous devez équilibrer cela pour votre propre entreprise. Il semble que vous ayez des informations importantes à protéger ... Est-ce que quelqu'un forme les opérateurs à travailler avec des informations aussi sensibles? Ou bien s'appuient-ils simplement aveuglément sur vous et sur un algorithme de hachage pour le faire pour eux.

Tout simplement parce que c'est différent, j'envisagerais de suggérer une expérience d'apprentissage lorsqu'un mauvais mot de passe est donné. Je pense que cela pourrait être un équilibre entre les approches. Plus important encore, cela pourrait vous inciter à trouver une solution encore meilleure:

  • Ayez une longueur de mot de passe minimale. Il s'agit de l'exigence des os nus, et vous devrez la faire respecter
  • Si un mot de passe est faible, faites-lui savoir qu'il est faible, et offrez pour lui permettre de l'utiliser quand même (avec un texte indiquant que vous lui faites confiance pour protéger correctement ses propres informations d'identification)
  • Lorsque vous acceptez un mot de passe faible, incluez du texte expliquant ce que vous considérez comme faible ("Il semble que vous ayez utilisé l33t pour rendre votre mot de passe plus sûr. Devinez quoi: il ne l'est pas! Ce mot de passe est environ 45 000 fois plus faible que vous ne le pensez réellement) ")
21
Cort Ammon

Si vous n'avez pas peur que quelqu'un vole et force vos mots de passe, alors votre cas le plus probable de découverte d'un mot de passe est une attaque de phishing. Les exigences de complexité des mots de passe ne vous protégeront pas contre les attaques de phishing.

Si vous utilisez des mots de passe très complexes, les utilisateurs trouveront un mot de passe qui fonctionne et le respectera, lorsqu'il expirera, ils effectueront les modifications les plus mineures et continueront. Cela signifie qu'un phishing déterminé pourra deviner le nouveau mot de passe assez rapidement.

Envisagez d'utiliser l'authentification à 2 facteurs car aucun schéma de complexité de mot de passe ne vous protégera des actions des utilisateurs. (N'oubliez pas que les utilisateurs sont aussi des humains et veulent faire leur travail sans passer toute la journée sur un mot de passe)

BTW, voici quelques questions liées:

Les règles de complexité des mots de passe sont-elles contre-productives?

Politique recommandée sur la complexité des mots de passe

9
ztk

Je dirais que 8 est trop faible, même 9 est un ordre de grandeur plus sûr (littéralement) pour quelque chose comme ça. Vous voulez certainement envisager l'authentification à 2 facteurs, compte tenu de ce que ce contenu est.

Réfléchissez également à la façon dont les gens abordent les choses obligatoires comme les lettres majuscules (presque toujours le premier caractère) et les chiffres (presque toujours le dernier caractère). Ceux-ci en fait affaiblissent votre entropie . Je suggérerais même l'utilisation de mots, tant que vous pouvez préciser qu'ils ne devraient pas être liés et certainement pas une citation d'aucune sorte.

La phrase secrète la plus sûre et la plus mémorable que vous puissiez avoir est une collection de mots, dont l'un est un mot de passe. Un attaquant devrait savoir où mettre ce code ou bien supposer que le très long mot de passe peut avoir le code n'importe où.

Une astuce que les banques utilisent pour éviter les enregistreurs de frappe est d'avoir des images sur lesquelles vous pouvez cliquer. Certains, comme ING Direct (avant que CapitalOne ne les achète et ne modifie la méthode), utilisaient un système de broches; votre mot de passe était un code PIN à quatre chiffres qui ne pouvait être entré qu'avec une souris ou en appuyant sur des touches aléatoires associées aux images, et si un cookie persistant manquait, vous devrez également répondre à une question de sécurité. Cela fonctionne presque aussi bien que l'authentification à deux facteurs.

Les deux sont sujets au détournement de session. Pour y faire face, vous pouvez essayer d'utiliser une empreinte digitale de navigateur au-delà de celle d'un cookie. Une approximation quelque peu décente sans entrer dans l'ennui de quelque chose comme Panopticlick serait simplement d'utiliser l'adresse IP, la chaîne de l'agent utilisateur, un cookie SSL et un délai de session de dix minutes.

Exiger une rotation des mots de passe au fil du temps peut aider à lutter contre le phishing et les enregistreurs de frappe, mais ils nuisent à nouveau à la complexité des mots de passe. Ceux-ci ne sont utiles à cet égard que si l'attaquant a un long délai avant d'essayer d'effectuer l'accès. C'est là que les questions de sécurité supplémentaires pour les ordinateurs inconnus peuvent aider.

Vous pouvez également envisager des certificats SSL clients, bien qu'ils ne soient pas eux-mêmes protégés par mot de passe (et vous ne pouvez pas appliquer cela), ce qui signifie qu'un ordinateur perdu est un énorme problème.

Je recommande plusieurs couches. Une phrase secrète sécurisée est une couche, la deuxième couche (uniquement nécessaire si l'empreinte digitale du navigateur ne correspond pas) est soit externe (deux facteurs), une séquence d'images connue placée au hasard pour cliquer, ou un certificat SSL client (ce qui allégerait le besoin pour les empreintes digitales).

6
Adam Katz

Pourquoi ne manipulez-vous pas simplement les mots leetspeak comme les mots normaux? Dans vos exemples, vous dites que vous acceptez GoodPassword4! , car il contient plusieurs mots (et symboles et chiffres). La règle implicite que vous semblez appliquer ici est donc:

"Si vous devez utiliser un mot du dictionnaire, utilisez-en plus d'un (et aussi un symbole et un nombre)".

Je suppose que c'est une règle qui est en fait facile à comprendre et à accepter du point de vue de l'utilisateur. Mais il serait plutôt ennuyeux d'obtenir G00dP4ssword4! ou B4DTr0ub4dor1! rejeté en vertu de cette règle.

Donc, non, vous ne devez pas interdire les mots de dictionnaire "leetspeak" en soi, mais les traiter comme des mots de dictionnaire normaux.

5
Vincent

Que diriez-vous d'un terrain d'entente?

Les règles que vous donnez sont essentiellement longues ou dures, sans compromis.

Au lieu de cela, que diriez-vous d'un système gradué: attribuez une certaine complexité par caractère et un certain multiplicateur pour les différentes fonctionnalités matérielles. Si ce nombre est suffisamment élevé, vous acceptez le mot de passe. Ainsi, si vous acceptez pratiquement n'importe quoi avec 16 caractères, vous en accepteriez 15 avec une seule fonctionnalité.

2
Loren Pechtel

Demandez à votre grand-mère (ou à toute grand-mère à distance de marche) de définir un mot de passe. Elle devra suivre les règles de mot de passe strictes (que vous avez imprimées pour elle), mais elle n'est pas autorisée à vous parler. Et cela ne devrait pas prendre "trop ​​de temps".

Aussi, dites-lui qu'elle aura besoin de ce mot de passe les jours/semaines suivants (pour utiliser votre service Web), donc elle devra s'assurer de s'en souvenir (probablement en l'écrivant).

(N'oubliez pas que, lorsque vous voyez votre grand-mère chercher un morceau de papier, vous pouvez lui dire de ne pas l'écrire et de le coller sur le réfrigérateur - vous ne pourrez pas le dire à vos vrais utilisateurs. À moins que vous n'écriviez un liste des règles sur le formulaire d'inscription, comme "n'écrivez pas votre mot de passe sur le réfrigérateur" et "non, pas sur votre moniteur non plus".)

Maintenant, comment ça s'est passé? Si la réponse est "pas si bien" (at-elle abandonné après 5 minutes et vous a demandé si vous avez déjà mangé parce que cela compte aussi comme "pas si bien"), cela pourrait être une indication forte que vos règles de mot de passe sont trop fortes .

Je suis généralement d'accord avec la réponse qui a obtenu la plupart des votes positifs et avec plusieurs des commentaires:

Une règle de base, qui est la longueur minimale, comme 7 ou 12 ou 15 ou autre. Oui, cela permettra aux gens d'utiliser "aaaaaaa" comme mot de passe, mais au moins, il ne sera pas écrit en texte clair où les autres le verront car ils peuvent s'en souvenir. Toutes ces règles ne font probablement que nuire (enfin, surtout). Quel que soit le nombre de millions de mots du dictionnaire que vous excluez, quelqu'un utilisera un mot auquel vous n'avez pas pensé (enfin, pas "vous" techniquement, vous obtenez probablement cette liste quelque part). Et pour une raison quelconque, un attaquant humain aura du succès parce que le mot de passe correct "Mugwump" ou "Smellfungus" est le premier qu'il a essayé.

Quant à ces règles "vous devez utiliser 3 majuscules, minuscules, nombres et caractères spéciaux", cela incitera beaucoup de gens à écrire ABCabc012!@# vers le bas sur un morceau de papier parce qu'ils ne s'en souviennent pas. (S'il n'y a pas de réfrigérateur dans la région, n mur pratique fera aussi bien, voir cet article .)

Et pour être juste, les gens qui comprennent à quel point c'est important sont aussi des gens, ils ne pourront pas non plus se souvenir de ces mots de passe (artificiels) et ils seront ennuyés. La plupart des utilisateurs d'ordinateurs réguliers (le type d'utilisateurs "imprimez Internet") seront de toute façon agacés (même le seul fait qu'un mot de passe est nécessaire est "ennuyeux" pour beaucoup, après tout, les ordinateurs devraient être capables d'identifier magiquement l'utilisateur en 2015 ).

Sans ces règles compliquées, vous aurez au moins une chance pour que de nombreuses personnes se souviennent de leur mot de passe.

Cependant, comme le font certains services, augmenter la sécurité si quelque chose de louche est détecté peut être une idée. Vous bloquez déjà complètement l'authentification après quelques tentatives infructueuses, ce qui est bien. Vous pourriez penser aux étapes intermédiaires, par exemple après une ou deux tentatives infructueuses, vous pourriez demander un captcha. En outre, un client spécifique qui continue d'essayer de se connecter (même si la connexion est déjà bloquée) peut être bloqué automatiquement pendant une journée (à un niveau inférieur, peut-être même par un pare-feu).

2
basic6

Je n'aime pas les règles de mot de passe qui en ont beaucoup, "ceci, mais pas cela, l'une d'entre elles, mais pas trop".

Suis-je trop sévère?

Je pense que oui, voici pourquoi. J'utilise 1Password . Il génère des mots de passe aléatoires pour moi. Ils ressemblent à ceci:

luaD/fcr61nt7A%NxBCR
NeTtVL7uuAqmL5_j&cm1
qwtlOjJsQor)9nM1%zl2

Certains sites Web ont rejeté ces mots de passe. Pourquoi? Règles arbitraires.

Avant cela, je n'avais pas envisagé un système qui est l'inverse: plutôt que de me demander de créer un mot de passe, le système m'en attribue un qui satisfait ses règles. Le mot de passe se retrouvera invariablement sur papier ou collé dans un fichier par la personne, mais il est unique et non dans un dictionnaire.

IAM au sein d'Amazon Web Services fait à peu près cela, donc cette idée a même de l'art antérieur.

2
berto

Voici une solution par force brute au problème de la fissuration par mot de passe par force brute: dédiez quelques PC à essayer de casser des mots de passe en utilisant les mêmes (quelques) outils de craquage que les attaquants utilisent. Lorsqu'un mot de passe est correctement piraté, envoyez un e-mail informant poliment l'utilisateur que son mot de passe a été détecté comme étant trop faible et en demandant à l'utilisateur de changer son mot de passe.

1
Atsby

Encore une fois, je ne suis pas un expert en matière de sécurité des informations, mais vous pourriez peut-être simplement encourager vos utilisateurs à utiliser LastPass ou Keeper pour générer et stocker des mots de passe volumineux (vraiment) aléatoires pour eux, et les stocker dans le coffre-fort sécurisé? Et pour utiliser également l'authentification à 2 facteurs.

Je me rends compte que LastPass a récemment été piraté, mais les utilisateurs qui ont choisi de longs mots de passe sécurisés LastPass devraient toujours être sûrs d'avoir leur coffre-fort ouvert. Les utilisateurs qui ont choisi un mot de passe faible comme mot de passe principal ne peuvent en aucun cas être aidés.

Bien sûr, ce n'est pas le meilleur plan, mais cela devrait au moins mettre vos utilisateurs sur la bonne voie. Il y a beaucoup d'incohérence dans la sécurité entre les sites Web. Je comprends cela (par exemple, ma banque autorise une longueur de mot de passe maximale de 16 caractères, mais mon mot de passe reddit est de 100 caractères). Mais 16 caractères aléatoires est toujours mieux que d'avoir à écrire le mot de passe parce que vous ne vous en souvenez pas.

0
clustro