Voici la politique de mot de passe que je viens de recevoir d'UPS (uniquement pour la vérification de l'état du colis):
Votre mot de passe doit comporter entre 8 et 26 caractères. Il doit contenir au moins trois des types de caractères suivants: lettres minuscules, majuscules, chiffres, caractères spéciaux ou espaces. Le mot de passe peut ne pas contenir votre ID utilisateur, votre nom ou votre adresse e-mail. (SSO_1007)
En fait, je dois un peu me foutre le cerveau pour générer ce mot de passe, mais pas seulement, surtout, je suis sûr qu'après 3 jours, j'oublierai ce qu'est ce mot de passe. Les utilisateurs ne seront pas si contents. La réinitialisation du mot de passe peut être fréquente. Je pense que les utilisateurs essaieront d'éviter d'utiliser le site à moins qu'ils ne le soient.
Qu'est-ce qu'une politique de mot de passe raisonnable et sécurisée lors de la création d'un site Web? Je pense que certaines entreprises peuvent craindre que des pirates essaient des millions de mots de passe ou plus, alors ils ajoutent toutes ces exigences pour les "caractères spéciaux, les minuscules, les majuscules", mais ne sera-t-il pas raisonnable de désactiver le compte ou simplement de désactiver le mot de passe et nécessite une réinitialisation du mot de passe si un utilisateur a essayé 30 ou 100 fois? Ou ajouter un délai de 5 secondes à chaque fois que l'utilisateur a essayé 30 fois? Si c'est le cas, ces caractères spéciaux ne seront pas si nécessaires.
Réponses:
Pour être honnête, je trouve qu'exiger des mots de passe stricts est une gêne et non un avantage. Je dirais qu'en règle générale, le plus raisonnable est de simplement spécifier une longueur, peut-être des caractères spéciaux + alphanumériques. Rien de plus demande aux gens d'écrire leur mot de passe, ce qui va à l'encontre de l'objectif global d'avoir des mots de passe sécurisés. Je déteste également devoir changer votre mot de passe tous les x jours avec les règles ridicules habituelles (par exemple, je ne peux pas réutiliser les 25 derniers mots de passe). quel point vous pourriez aussi bien ne pas demander de mot de passe du tout.
la source
Mon avis est que les mots de passe ne devraient avoir qu'une exigence de longueur. Vous ne voulez pas que quelqu'un saisisse "a" comme mot de passe. Et comme le montre la réponse xkcd, un mot de passe extrêmement difficile à retenir n'est pas toujours aussi sûr. Autorisez toujours les utilisateurs à modifier leur mot de passe. Et oubliez la merde "vous ne pouvez utiliser aucun des caractères contenus dans votre ancien mot de passe".
Faire une politique de mot de passe obscène fera plus de mal que de bien. Au collège, je suis allé à la politique de mot de passe était similaire à la politique d'UPS ET vous deviez le changer toutes les 2 semaines ET vous ne pouviez pas utiliser les 50 mots de passe précédents que vous avez utilisés. Donc, ce que mes professeurs ont recommandé lors de la création de comptes, c'est d'utiliser notre mot de passe normal conforme aux règles et d'ajouter un compteur à la fin de celui-ci et de mettre dans votre mot de passe une indication du numéro de compteur.
De plus, une politique de mot de passe stricte ne fera rien lorsque votre base de données en texte brut sera piratée par un bogue d'injection SQL ... ou que vous enverrez des mots de passe par e-mail à vos utilisateurs et qu'ils seront interceptés.
Fondamentalement, ne faites pas de votre système de mot de passe un problème pour vos utilisateurs ou cela les encouragera à faire des choses non sécurisées afin qu'ils puissent contourner ce problème. Par exemple, mon entreprise, lorsqu'elle a obtenu un serveur dédié dans un centre de données, nous a créé des mots de passe de 20 caractères. Ils étaient trop sécurisés pour nous être envoyés par e-mail et devaient être faxés. Nous n'avons pas pu changer les mots de passe, il suffit de demander qu'un nouveau mot de passe de 20 caractères soit généré. Et c'était ainsi pour chaque utilisateur ... donc ce que nous avons fini par faire, c'est simplement de créer un document texte sur nos bureaux avec le mot de passe. De plus, nous ne les utilisons plus parce que pour toute la "sécurité" qu'ils avaient, ils étaient vraiment assez peu sûrs.
la source
Assurez-vous de laisser des espaces. Tous ceux que je connais peuvent taper des phrases courtes plus rapidement qu'ils ne peuvent taper la première lettre de chaque mot de la phrase. Par exemple, essayez de taper
Bird in a Tree
puisBiaT
. Cela a l'avantage que si vous écrivez une phrase appropriée qui fonctionne vaguement commepick Up milk
ouMeetings all day
sur une note autocollante, ce n'est évidemment pas un mot de passe.Je ne suis pas un grand fan des règles "vous devez avoir des chiffres et des symboles", mais si vous les appliquez de manière cohérente (par exemple, je suis toujours 1, a est toujours @), alors vous pouvez toujours écrire la phrase anglaise sur le collant, appliquer les règles connues uniquement pour vous parler et entrez
B1rd in @ tree
dans la boîte de dialogue de mot de passe. Du point de vue de la sécurité, les chiffres et les symboles n'ajoutent pas grand-chose, mais ils n'ont pas besoin de vous rendre fou en tant qu'utilisateur.Les sites avec une longueur de mot de passe maximale me mettent en colère si ma belle phrase est jugée "trop longue". 26 semble raisonnable. Je comprends que quelqu'un doit concevoir la largeur de la colonne, mais 12 est tout simplement stupidement court.
la source
Sécuritaire vs pratique
La politique de sécurité d'un mot de passe doit être adaptée au coût de la compromission. Si votre site Web fait face à mon compte financier, je voudrais une protection stricte par mot de passe. S'il s'agit d'un site de fans de niche sur les Autobots, vous n'avez pas besoin de beaucoup de protection.
Les règles d'UPS sont raisonnables à l'exception de:
Je n'ai pas vu la réinitialisation après X nombre d'essais dans les règles citées, je pense que c'est idiot dans la plupart des cas. Je pense qu'il vaut mieux bloquer quelqu'un pendant un certain temps, plutôt que de forcer une réinitialisation. Cela implique un certain niveau de sécurité. Si ce n'est pas nécessaire, ce n'est pas le cas et le verrouillage / la réinitialisation est un point discutable.
Il existe de nombreuses règles de stratégie de mot de passe qui présentent au mieux des avantages de sécurité marginaux. Cependant, il existe également des règles qui présentent des avantages réels et tangibles pour la sécurité de votre mot de passe.
Règles (et les raisons):
Empêche un essai combinatoire et une attaque d'erreur qui briseront rapidement un mot de passe très court.
Cela empêche les attaques par dictionnaire.
Cela augmente l'espace d'attaque moyen.
Toutes ces raisons peuvent être attribuées à la minimisation du biais de l'utilisateur dans le choix des mots de passe. La plupart des utilisateurs préfèrent créer des mots de passe plus courts et faciles à retenir. Malheureusement, cela rend généralement le mot de passe plus facile à attaquer. La plupart des utilisateurs ont besoin d'instructions sur la façon de créer des mots de passe mémorisables sécurisés ou une phrase de passe plus longue.
Mots de passe mémorisables sécurisés
Lorsque j'ai besoin de créer un mot de passe avec une limite de longueur, je commence toujours par une phrase, donc j'ai un mnémonique intégré. Je prends la phrase et j'obtiens le même caractère positionnel de chaque mot. J'ai maintenant une séquence de personnages uniquement. Je choisis ensuite la capitalisation, certaines basées sur des noms propres dans la phrase, ou par modèle (première et dernière, toutes les deux lettres, etc.). J'ajoute ensuite des signes de ponctuation et des nombres basés sur une règle ou un modèle arbitraire. (c'est-à-dire que tous les «j» sont 7, en utilisant «&» où il y a un «et» dans la phrase, etc.).
Phrase fournie par la reine
Après l'avoir tapé plusieurs fois en pensant à la phrase, je n'aurai jamais de problème à m'en souvenir.
la source
real
sécurité (elles augmentent seulement la perception de la sécurité) et peuvent réellement nuire à la sécurité.Mama, just killed a man.
Le mot de passe minimum de 8 caractères est un héritage de Lan Manager. Lan Manager a haché les mots de passe en les décomposant en 2 chaînes de 7 caractères, puis les a hachés. En exigeant 8 caractères minimum, ils ont garanti que le 2ème mot n'était pas le même que pour un mot de passe vide (il n'y avait pas de sel, donc chaque instance de 7 blancs hachait au même résultat).
J'ai abandonné, les règles sont tellement idiotes et ridicules que je les écris maintenant. Tout sauf les quelques que j'utilise pour les sites Web. Mon employeur actuel conserve également une trace des 24 derniers mots de passe utilisés afin qu'ils ne puissent pas être recyclés, et le mot de passe ne peut contenir aucun mot anglais de 3 caractères ou plus (en avant ou en arrière). Il s'assure également que vous n'utilisez pas un mot précédent et incrémentez un certain nombre dans le cadre de celui-ci (donc s'il
P4ssw0rd1
était utilisé, vous ne pourriez pas utiliserP4ssw0rd2
, niP4ssw0rd0
).J'ai appris ma leçon à la dure au bureau quand j'ai dû changer un mot de passe, il a fallu 45 minutes pour que le système accepte un remplacement, puis j'ai rapidement oublié ce que j'avais trouvé et j'ai dû le réinitialiser et j'ai perdu 45 autres quelques minutes pour essayer d'obtenir quelque chose dont je me souvienne qui était suffisamment complexe pour répondre aux exigences (certaines des exigences sont énumérées ci-dessus, d'autres non et d'autres je ne sais pas). Ce n'est pas très amusant d'essayer de trouver quelque chose qui respecte les règles que vous n'êtes pas autorisé à connaître. Au moins avec des jeux comme Mastermind, vous obtenez des indices sur la distance à laquelle vous vous rapprochez. Au bureau, certains utilisent une carte à puce , je ne suis pas l'un d'eux.
la source
L'utilisation de bcrypt lors du stockage du mot de passe est un bon premier départ, simplement parce que cela rend les tentatives de piratage par force brute irréalisables.
la source
Raisonnable et sécurisé s'excluent mutuellement. Ce sont deux extrémités d'une tige. Il sera préférable de trouver un équilibre au milieu. Trop loin vers la sécurité et les gens écrivent les mots de passe ou utilisent la fonction de déverrouillage du mot de passe totalement non sécurisé.
L'exemple ci-dessus semble pencher davantage vers la sécurité que le raisonnable. J'ai vu pire.
Je préfère pencher vers le raisonnable. La clé est de vous pencher vers la sécurité de votre back-end. Stockez le moins possible de sels d'utilisation, etc. Toutes les dernières méthodes recommandées pour encoder les mots de passe dans votre base de données et les encoder dans un sens également. Gardez ensuite votre base de données et votre code en sécurité. Former également toute personne disposant de droits d'administrateur sur votre système dont elle a besoin pour utiliser un mot de passe sécurisé unique. Il a été démontré récemment que l'enchaînement de plusieurs mots du dictionnaire est plus sûr que de faire glisser des caractères spéciaux et des majuscules. Cela nécessitait des correspondances de dictionnaire composées qui ajoutent vraiment du temps aux pirates, mais elles étaient toujours mémorables pour les utilisateurs.
la source
Pas un mot du dictionnaire, ou une variante triviale de celui-ci. C'est ça. Un paquet de deux mots du dictionnaire est à peu près non fissurable. Un substitut à une seule lettre pour un caractère qui n'est pas un substitut évident (0-O, 1-I, 5-S) aussi.
De plus, si vous limitez le temps de réponse - mot de passe accepté / refusé après 1 s, et pas deux tentatives parallèles pour la même connexion autorisées - l'une doit se terminer (OK ou erreur) avant d'essayer une autre, tout non-dictionnaire à 6 lettres en minuscules non -le mot de passe à caractères spéciaux mettra 9 ans à se casser.
la source
La complexité de l'exigence de mot de passe doit être équilibrée avec le contenu de vos sites. Une banque doit exiger un mot de passe très complexe (majuscules, minuscules, nombre et caractères spéciaux). Cependant, si le contenu est trivial, comme les recherches enregistrées et les numéros de suivi, l'exigence de mot de passe doit être assouplie. Une longueur minimale de 6 caractères devrait être suffisante. Sinon, cela ennuiera simplement votre public et le dissuadera de créer une connexion.
la source