“ le schéma XKCD souvent cité […] nest plus un bon conseil ”?

Je trébuchais et je suis tombé sur cet essai de Bruce Schneier affirmant que le Le schéma de mot de passe XKCD était effectivement mort.

Les craqueurs de mots de passe modernes combinent différents mots de leurs dictionnaires : […]

Cest pourquoi le schéma XKCD souvent cité pour générer des mots de passe – enchaîner des mots individuels comme  » correcthorsebatterystaple  » – nest plus un bon conseil. Les craqueurs de mot de passe sont sur cette astuce.

Lattaquant transmettra toutes les informations personnelles auxquelles il a accès sur le créateur du mot de passe dans les craqueurs de mot de passe. Un bon cracker de mot de passe testera les noms et adresses du carnet dadresses, des dates significatives et de toute autre information personnelle dont il dispose. […] si jamais votre programme la stocké en mémoire, ce processus le récupérera.

Son argument semble être que parce que cest connu que les gens peuvent construire leur mot de passe de telle manière quil soit susceptible dêtre attaqué, mais il semble que la force réside uniquement dans le pouvoir des exposants. Je suppose quil fait allusion au fait que les gens ne choisissent pas les mots au hasard, ce qui nest peut-être pas « t totalement malhonnête, car jai » relancé plusieurs fois pour obtenir quelque chose qui nest pas tous les adverbes et adjectifs. Cependant, je suppose que réduire lentropie dun facteur de 2 à 10 nest pas vraiment significatif (si la liste de mots est doublé à 4000, pas si difficile, la perte est plus que récupérée).

Lautre bout du doigt sur  » si votre programme la déjà stocké en mémoire  » est un peu déconcertant cependant … tous les mots de passe ne sont-ils pas stockés en mémoire à un moment ou à un autre? Cela semble un peu exagéré; à quoi fait-il réellement référence à?

Commentaires

  • Une discussion avec 123 commentaires à ce sujet est sur reddit.com/r/technology/comments/1yxgqo/ …
  • Au passage de la souris, le titre de limage révèle –  » À quiconque comprend les informations théorie et sécurité et est dans une dispute exaspérante avec quelquun qui ne le fait pas (impliquant peut-être un cas mixte), je mexcuse sincèrement.  » Cela vous aiderait 🙂
  • Cette conférence TED contient des recherches intéressantes sur différents schémas de création de mots de passe, y compris celui de xkcd: ted.com/talks/…
  • Pour information: si votre mot de passe était en fait correcthorsebatterystaple, il est maintenant beaucoup moins sécurisé!
  • Si vous utilisez un mot de passe comme correcthorsebatterystaple, veillez à ne pas ‘ vous connecter à un système qui le tronque silencieusement! Un mot de passe comme correcth est probablement plus facile à deviner que N#y;f8eR.

Réponse

La guerre sainte

Je pense que vous constaterez que la bonne façon de générer des mots de passe pourrait déclencher une guerre sainte où chaque groupe pense que lautre fait une erreur mathématique très simple ou manquer le point. Si vous avez 10 professionnels de la sécurité informatique dans une pièce et que vous leur demandez comment trouver de bons mots de passe, vous obtiendrez 11 réponses différentes.

Le malentendu

Lune des nombreuses raisons est aucun conseil cohérent sur les mots de passe, tout se résume à un problème de modélisation des menaces . Contre quoi essayez-vous exactement de vous défendre?

Par exemple: essayez-vous de vous protéger contre un attaquant qui vous cible spécifiquement et connaît votre système pour générer des mots de passe? Ou êtes-vous juste lun des millions dutilisateurs dans une base de données divulguée? Vous défendez-vous contre le craquage de mot de passe basé sur le GPU ou juste un serveur Web faible? Êtes-vous sur un hôte infecté par un logiciel malveillant [1]?

Je pense que vous devriez supposer que lattaquant connaît votre méthode exacte de génération de mots de passe et ne fait que vous cibler. [2] La bande dessinée xkcd suppose dans les deux exemples que tous les détails de la génération sont connus.

Les mathématiques

Les mathématiques dans la bande dessinée xkcd sont correctes, et elles ne vont pas changer .

Pour les mots de passe, je dois taper et me souvenir que jutilise un script python qui génère des mots de passe de style xkcd qui sont vraiment aléatoires. Jai un dictionnaire de 2 ^ 11 (2048) mots anglais courants, faciles à épeler. Je pourrais donner le code source complet et une copie de ma liste de mots à un attaquant, il y aura encore 2 ^ 44 mots de passe possibles.

Comme le dit la bande dessinée:

1000 Guesses / Sec Attaque plausible sur un service Web distant faible. Oui, craquer un hachage volé est plus rapide , mais ce nest pas ce dont l utilisateur moyen devrait sinquiéter.

Cela établit un bon équilibre entre facile à retenir et difficile à déchiffrer.

Et si nous essayions plus de puissance ?

Bien sûr, 2 ^ 44 est ok, mais le craquage du GPU est rapide, et cela ne fera que devenir plus rapide. Hashcat pourrait casser un hachage faible [3] de cette taille en un certain nombre de jours, pas dannées. De plus, jai des centaines de mots de passe à retenir. Même le style xkcd, ça devient difficile après quelques années.

Cest là quinterviennent les gestionnaires de mots de passe, jaime KeePass mais il y en a beaucoup dautres qui sont fondamentalement les mêmes. Ensuite, vous pouvez générer simplement une phrase de passe xkcd plus longue que vous pouvez mémoriser (disons 10 mots). Ensuite, vous créez un mot de passe unique de 128 bits vraiment aléatoire pour chaque compte (hexadécimal ou base 64 sont bons). 128 bits sera assez fort pour un Si vous voulez être paranoïaque, allez plus loin, ce nest pas un travail supplémentaire de générer 256 bits de mots de passe hexadécimaux.


[1] Cest là que le mémor y chose arrive, si vous êtes sur un hôte compromis, vous avez perdu. Peu importe que vous le saisissiez ou que vous utilisiez un programme comme KeePass pour le copier et le coller si un attaquant peut enregistrer au clavier / lire la mémoire.

[2] Plutôt que le plus faible (mais plus probable) lhypothèse que lattaquant vient de torrenter un dictionnaire appelé  » Top Passw0rdz 4realz 111! « .

[3] Bien sûr, nous devrions tous utiliser PBKDF2, etc … mais beaucoup de sites sont toujours sur SHA1. (Et ce sont les bons)

Commentaires

  • @ Dick99999 Les GPU modernes peuvent avoir 6 Go de mémoire sur une seule carte (même si cela prendrait 2 emplacements) et peuvent facilement stocker un dictionnaire de quelques milliers de mots.
  • @NateKerkhofs Cest effrayant et étonnant dans le même temps. Ma première machine (programmable) avait 1 mhz et 64 Ko de RAM et vous parlez de 6 Go de mémoire vidéo …
  •  » Mot de passe vraiment aléatoire de 128 bits …  » Vraiment aléatoire? Nest-ce pas ‘ toujours pseudo-aléatoire?
  • Cela devrait être le réponse acceptée si pour aucune autre raison que la partie de la guerre sainte.
  • @Doorknob Une fois que vous avez choisi des combinaisons significatives, la plupart de lentropie disparaît. Jai ‘ essayer destimer le nombre de phrases que vous pourriez choisir, mais cest probablement plus proche dune phrase sur un milliard que dune sur 2 ^ 44.

Réponse

Schneier écrit ceci:

Voilà pourquoi le schéma XKCD souvent cité pour générer des mots de passe – enchaîner des mots individuels comme « correcthorsebatterystaple » – nest plus un bon conseil. Les craqueurs de mots de passe sont sur cette astuce.

mais la clé pour comprendre ce quil cherche vraiment est un peu plus loin dans son essai:

Il y a encore un schéma qui fonctionne. En 2008, jai décrit le « schéma Schneier « 

donc cest tout. Ole « Bruce veut affirmer que son plan est le seul et unique, le meilleur, le gagnant, le schéma ultime. Par conséquent, il doit dire des choses désobligeantes sur les » concurrents « , que ce soit les affirmations sont scientifiquement valables ou non.

Dans ce cas, on a toujours supposé que la méthode de génération de mot de passe est connue de l’attaquant. C’est tout l’intérêt des calculs d’entropie ; voir lanalyse . Que les attaquants soient « sur cette astuce » ne change rien du tout (quand un attaquant connaît la méthode de génération de mot de passe, le calcul dentropie décrit exactement la force du mot de passe; quand lattaquant est incompétent et ne connaît pas la méthode de génération de mot de passe, la force du mot de passe est seulement plus élevée, dun montant quasiment impossible à quantifier).

La boutade sur les « mots de passe en mémoire » est juste des divagations plus incohérentes. Les mots de passe vont nécessairement dans la RAM à un moment donné, que vous les tapiez ou les copiez-collez à partir dun coffre-fort de mot de passe, ou quelque chose de similaire.

Je suppose que Bruce était ivre.

Mettre à jour : Schneier a été spécifiquement invité à commenter la condamnation de sa phrase de passe dans une AMA Reddit qui a eu lieu le 2 août 2016. Il a continué à plaider en faveur de son système de création de mot de passe en tant que alternative supérieure aux mots de passe aléatoires. Schneier a dit que son schéma « vous donne plus dentropie par caractère mémorisable que les autres méthodes », ce qui est vrai par rapport aux caractères constituant des mots. Mais cela nest pas non plus pertinent lorsquun système repose sur la mémorisation de mots plutôt que de caractères et que vous êtes autorisé à combiner suffisamment de mots pour générer une « entropie » adéquate pour votre phrase de passe dans son ensemble.

Commentaires

  • Oui, je pensais que ses commentaires sécartaient étrangement de ses bons conseils habituels.Son schéma recommandé nest probablement pas ‘ mauvais, mais na pas ‘ été soumis à de nombreux tests. Lapproche par mot de passe est assez facile à tester en comparaison, et vous ‘ pensez que cela plairait au cryptographe en lui. Peut-être a-t-il juste passé en revue les nouvelles concernant le déchiffrage des phrases de passe en langage naturel et na ‘ pas vu une distinction entre celles-ci et les phrases de passe aléatoires.
  • Votre argument selon lequel il doit dénigrer la concurrence échoue, car immédiatement après avoir décrit son schéma, il dit  » Encore mieux est dutiliser des mots de passe alphanumériques aléatoires non mémorables (avec des symboles, si le site les autorise), et un gestionnaire de mots de passe comme Password Safe pour les créer et les stocker « .
  • @wfaulk Password Safe est Bruce Schneier ‘ s création, donc son argument sur la concurrence tient toujours. Votre déclaration déchec échoue 😉
  • @AviD: Je ne le savais absolument pas. 😳
  • Ce quil vous manque ‘, et apparemment Schneier aussi, cest quil ny a pas de  » astuce  » à  » accède à « . La sécurité de Diceware suppose déjà que lattaquant connaît le schéma , en fait il suppose que le dictionnaire lui-même est connu. ‘ importe peu que l’attaquant ait votre dictionnaire et le nombre de mots exacts: il y a tout simplement trop de combinaisons à utiliser pour réussir une attaque avant que le soleil n’explose.

Réponse

[Divulgation: je travaille pour AgileBits, le créateur de 1Password]

Lune des raisons pour lesquelles jai préconisé un schéma de type XKCD (avant quil ne soit appelé ainsi) dans Toward Better Master Passwords en 2011 est précisément parce que sa force ne comptez pas sur lattaquant sachant quel schéma vous avez utilisé. Si je peux me citer

Le grand avantage de Diceware est que nous savons exactement à quel point il est sûr, même en supposant que lattaquant connaît le système utilisé. La sécurité vient du véritable caractère aléatoire des dés. Lutilisation de quatre ou cinq mots devrait être suffisante contre les attaques plausibles au cours des prochaines années étant donné la vitesse observée des craqueurs de mots de passe [contre 1Password Master Password]

Ce que la bande dessinée XKCD ne communique pas efficacement, cest que la sélection des mots doit être (uniformément) aléatoire . Si vous demandez aux humains de choisir des mots au hasard, vous obtenez un biais important pour les noms concrets. De tels biais peuvent et seront exploités.

Quelle force vous voulez

Dans un monde parfait, nous voudrions que notre mot de passe soit aussi fort que les clés avec lesquelles nous protégeons il. Dites 128 bits. Mais malgré ces techniques, les humains ny parviendront pas. Alors regardons de façon réaliste les attaques et ce que nous pouvons faire faire par nos petits cerveaux.

Avec la liste de mots originale de Diceware de 7776 entrées, vous obtenez environ 12,9 bits par mot que vous utilisez. Donc, si vous voulez au moins 64 bits pour votre mot de passe, alors cinq mots le feront.

Deviner les mots de passe est plus lent que deviner les clés

Dans cette section, jarrive à un retour très difficile de lenveloppe estime que pour un montant constant de dollars, il est 2 ^ 13 fois plus lent de tester un mot de passe que de tester une clé AES.

Notez que tester un mot de passe est beaucoup plus lent que de tester un clé. Si les bons types de schémas de hachage de mot de passe sont utilisés, il est possible de réduire la plupart des attaquants à moins de 100 000 suppositions par seconde. Donc, même si nous ne souhaitons peut-être jamais utiliser de clés de 50 bits, lutilisation de mots de passe de 50 bits peut toujours avoir du sens.

Si nous ne nous limiterons pas à lancer des dés comme dans Arnold Reinhold « s schéma Diceware original de 1995, alors nous pouvons utiliser une liste de mots plus longue. Le générateur de mots de passe forts de 1Password pour Windows utilise une liste de 17679 mots anglais entre 4 et 8 lettres incluses (sans les mots tabous et les mots impliquant une apostrophe ou des traits dunion). Cela donne environ 14 bits par mot. Donc, quatre dentre eux vous donnent 56 bits, cinq vous en donnent 70.

Encore une fois, vous devez faire attention aux vitesses de craquage. Deep Crack en 1997 était capable dexécuter 92 milliards de tests DES par seconde. En supposant quun PC spécialisé haut de gamme puisse effectuer un million de suppositions par seconde contre un mot de passe raisonnablement bien haché pourrait faire 1 million de suppositions par seconde, les mots de passe aujourdhui sont environ 16 bits plus difficiles à déchiffrer que les clés DES en 1997.

Examinons donc cette estimation de Stack Exchange pour un processeur dual core 3,8 GHz: 670 millions de clés par seconde.Si nous devions supposer 5000 $ en matériel, nous pouvons facilement dépasser 10 milliards de clés par seconde. Donc, à un coût matériel similaire, le piratage des clés est toujours plus de 2 ^ 13 fois plus rapide que le craquage des mots de passe.

Révision des objectifs de résistance des mots de passe

En travaillant sur mon estimation, cest 2 ^ 13 fois plus cher de tester un mot de passe bien haché que de tester une clé AES, nous devrions considérer un mot de passe raisonnablement bien haché comme étant 13 bits plus fort que son entropie réelle en ce qui concerne le craquage. Si nous voulons atteindre 90 bits de «force effective», 77 bits de force de mot de passe devraient le faire. Ceci est réalisé avec un mot de passe Diceware de six mots (77,5 bits) de la liste originale et 84,6 bits avec six mots tirés dune liste de 17679 mots.

Je ne mattends pas à ce que la plupart des gens utilisent des mots de passe qui Je mattends à ce que les gens utilisent des choses de 4 ou 5 mots. Mais si vous êtes vraiment inquiet que la NSA sen prend à vos mots de passe, alors six mots devraient suffire en supposant que vous utilisez un système de hachage de mot de passe décent.

Estimations très approximatives uniquement

Je nai pas passé beaucoup de temps à rechercher les coûts et les repères. Il y a beaucoup de choses dans mes estimations sur lesquelles se quereller. Jai essayé dêtre conservateur (pessimiste sur le schéma que je préconise). Jai également été vague sur les « mots de passe bien hachés ». Encore une fois, je suis très prudent en ce qui concerne le hachage de mot de passe dans 1Password. (Pour notre nouveau format de données, les attaquants ont été limités à moins de 20 000 suppositions par seconde et pour notre ancien format de données, ils ont atteint 300 000 suppositions par seconde pour plusieurs -Machines GPU. Dans mes estimations ici, jai « choisi 1 million de suppositions par seconde pour un » mot de passe raisonnablement bien haché « .)

Quelques notes historiques supplémentaires

Lidée de mots de passe de type « XKCD » remonte au moins aussi loin que les mots de passe à usage unique S / Key du début des années 1980. Ils utilisaient une liste de 2048 mots de passe par mots de quatre lettres. Un mot de passe S / Key de six mots vous a donné 66 bits. Je ne sais pas si cette idée dutiliser des mots choisis au hasard dans une liste pour une phrase de passe est antérieure à S / Key.

En 1995 , Arnold Reinhold a proposé des Diceware . Je ne sais pas sil était au courant de S / Key à lépoque. Diceware a été proposé dans le cadre du développement de phrases de passe pour PGP. Cétait aussi avant que la plupart des ordinateurs aient des générateurs de nombres aléatoires cryptographiquement appropriés. Donc, cela implique en fait de lancer des dés. (Bien que je fasse confiance aux CSPRNG sur les machines que jutilise, jaime toujours « rouler un nouveau mot de passe »).

En juin 2011, jai ravivé lintérêt pour Diceware pour Vers de meilleurs mots de passe maîtres avec quelques modifications supplémentaires. Cela ma valu 15 minutes de gloire. Après la sortie de la bande dessinée XKCD, jai produit une édition geek qui expliquait certains des calculs.

En juillet 2011, Randall Monroe avait repris des systèmes de type Diceware et avait publié son désormais célèbre bande dessinée . Comme je ne suis pas linventeur de lidée, je ne crains pas du tout dêtre éclipsé par la bande dessinée. En effet, comme je lai dit dans mon article de suivi

Ce qui ma presque pris 2000 mots à dire en termes non techniques, Randall Monroe a pu résumer dans une bande dessinée. Cela montre juste la puissance des mathématiques …

Mais il y a une chose dans la façon dont la bande dessinée a été interprétée qui minquiète. Il est clair pour moi et pour les personnes qui ont déjà compris le schéma que les mots doivent être choisis par un processus aléatoire uniforme et fiable. Choisir des mots « au hasard » dans votre tête nest pas un processus uniforme et fiable .

Commentaires

  • Cest génial que vous mentionniez Diceware dans une perspective historique et en même temps que vous reconnaissiez lexcellent travail marketing que XKCD a fait pour les phrases de passe. À propos de votre schéma modifié, est-il expliqué quelque part pourquoi les mots de 3 ou 2 lettres ne sont pas inclus dans ces listes de mots? voir blog.agilebits.com/2013/04/16/… . Est-ce parce que les mots comme ‘ off ‘ et ‘ ligne ‘ pourrait également être attaqué par 1 mot hors ligne? Voir mes commentaires sur le post de Raestloz. La liste Diceware originale contient de nombreux mots de 1, 2 et 3 lettres.
  • Excellente question! Ma pensée (peut-être erronée) à lépoque était que je voulais aussi que les phrases de passe aient une longueur minimale. Je voulais massurer que si quelquun utilisait une phrase de passe de trois mots, elle dépasserait un minimum de 12 caractères. Je note que S / Key autorise également les mots de 1, 2 et 3 lettres.
  • Jai rapidement vérifié les listes de mots utilisées par mon générateur de phrase de passe SimThrow et mon testeur.La liste Diceware dorigine a au moins 1400 de ces collisions comme ‘ any ‘ ‘ comment ‘ et ‘ de toute façon ‘. Cela peut dégrader une phrase de 4 mots en 3 mots, si aucun séparateur nest utilisé. Il ‘ est un nombre élevé de collision car cette liste comprend toutes les lettres et 2 combinaisons de lettres. Il semble donc que vous ayez fait le bon choix de ne pas inclure les mots de 2 lettres. Diceware conseille une longueur de phrase minimale de 17. Mon générateur estime les temps de récupération basés sur les mots et les caractères, pour faire face aux sites qui nautorisent que des mots de passe courts (20).
  • Jai également vérifié les listes de mots suivantes. S / Key : > 93 collisions, listes-développées États-Unis : > 190 et ma liste des Pays-Bas: > 750. Une façon de gérer ce problème est de recommander dinclure un caractère de séparation entre les mots dune phrase.
  • Attention, lancer des dés nest pas parfaitement aléatoire. forbes.com/sites/davidewalt/2012/09/06/… Et insidescience.org/blog/2012/09/12/…

Réponse

Le schéma de mot de passe XKCD est aussi bon quil ne la jamais été. La sécurité ne découle pas du fait quelle est inconnue, mais du fait quil sagit dun bon moyen de générer des mots de passe mémorables à partir dun grand espace de recherche. Si vous sélectionnez les mots à utiliser plutôt que de les générer au hasard, cet avantage est perdu – humains ne sont pas doués pour être aléatoire.

Le mot sur la mémoire est mal énoncé, mais cest un problème: si un logiciel malveillant de vol de mot de passe pénètre sur votre ordinateur, il « ll balayer tout ce qui ressemble à du texte de la RAM et du disque dur à utiliser dans une attaque dirigée contre vos comptes.

Commentaires

  • +1 Je ne ‘ Je pense que la technique XKCD est morte – elle ‘ nest pas ‘ une astuce ‘ que les crackers ‘ sont sur ‘. Vous pouvez connaître la technique de fond en comble, mais ce nest pas le cas ‘ t le rendre plus craquable sil ‘ est assez aléatoire.
  • @PiTheNumber si vous ‘ si vous nutilisez pas assez de mots ou un tout petit dictionnaire, alors vous ne pouvez ‘ appliquer la technique xkcd du tout; mais non, même dans la bande dessinée xkcd, il ‘ est explicitement clair que vous êtes NON en train de perdre votre avantage si vous dites à tout le monde  » hey, I ‘ m en utilisant le mot de passe de style correcthorsebatterystaple  » – le nombre de vérifications / entropie bits est plus élevé que la plupart des mots de passe normaux, même si la méthode est connue.
  • À condition de ne pas ‘ utiliser XKCD ‘ (jai gagné le lien ‘, tout le monde le sait).
  • @PiTheNumber le concept de ‘ Le mot de passe vraiment aléatoire de 11 lettres ‘ nest pas pertinent, car ce nest pas une alternative raisonnable aux mots de passe. Les phrases de passe sont des alternatives aux mots de passe mémorisables , et elles sont exactement aussi faibles que le décrit xkcd. Bien sûr, si vous utilisez un mot de passe stocké dans un gestionnaire de mots de passe, les mots de passe complètement aléatoires correspondent, mais dans ce cas, ‘ nest essentiellement pas ‘ votre mot de passe ‘ comme dans quelque chose que vous utiliseriez ou verriez, mais plutôt une ‘ clé aléatoire générée automatiquement token ‘ similaire aux clés ssh.
  • @PiTheNumber Les mots ne sont pas choisis par lhomme, ils sont choisis au hasard. Le dictionnaire à partir duquel les mots sont choisis est lui-même choisi par lhomme, mais cest une autre question. Il ny a pas de «très probable» – le calcul dans la bande dessinée xkcd est correct.

Réponse

Comme les autres ont dit, lattaque décrite par Bruce Schneier est efficace lorsque lutilisateur choisit plusieurs mots lui-même, sans utiliser doutil. Schneier écrit généralement à un grand public, ce qui est peu susceptible de saisir la différence entre des mots « aléatoires » choisis par lui-même et des mots aléatoires choisis par le programme.

Jajouterai que même si vous utilisez un script ou autre outil pour choisir au hasard des mots dans un dictionnaire, vous devez utiliser la première séquence quil vous donne . Si vous décidez,  » Je naime pas celle-là, et je la relance jusquà ce que vous laimiez, ce nest plus une phrase secrète aléatoire , elle est choisie par lhomme.

De plus, même si vous utilisez un script, et même si vous nendommagez pas le caractère aléatoire en choisissant votre favori parmi plusieurs séquences, il est toujours possible quun attaquant puisse exploiter votre PRNG (pseudo-aléatoire Si lattaquant peut apprendre à quel moment vous avez créé le mot de passe, quel PRNG vous avez utilisé, et peut-être dautres informations sur votre PRNG telles que le trafic réseau généré à laide de votre PRNG à peu près au même moment, cela pourrait réduire lentropie effective de votre phrase secrète aléatoire.

Peut-être un peu ésotérique, mais si votre PRNG est exploitable, le chiffre 2 ^ 44 ne sera pas entièrement réalisé. (Et si vous supposez que « personne nessaiera dexploiter mon PRNG », pourquoi vous souciez-vous dutiliser une phrase de passe vraiment sécurisée?)

Commentaires

  • +1 Angle intéressant. Exploiter le PRNG est évident dans le contexte du chiffrement clés – il est intéressant de ‘ que cela semble être pratiquement une réflexion après coup. Je suppose que les mots de passe typiques sont si mauvais que les PRNG se sentent en sécurité par comparaison. Vraisemblablement, si un attaquant peut voler une liste de mots de passe hachés, trouver le pwdChangedTime ou léquivalent serait trivial? Une autre raison de mettre fin à la pratique du vieillissement des mots de passe?
  • Retour rapide de lenveloppe. Si vous mettez à jour le mot de passe dans la minute qui suit sa génération et que la seule source dentropie dans votre PRNG est lheure système, vous envisagez peut-être de réduire les choses jusquà 2 ^ 35 pour une résolution nanoseconde. Cela vous semble raisonnable?
  • Supposons que je rejette une phrase parce que je ‘ t comme un mot et que je le fais 1000 fois. Ensuite, jai réduit le dictionnaire de 1000 mots. Le choix de ce dictionnaire réduit est-il toujours aléatoire? Si cest toujours le cas, alors une phrase de 4 mots dun dictionnaire Diceware de 7776 mots ainsi réduit donne toujours (7776-1000) ^ 4 = 2.1E15 / 50.9 possibilités / bits dentropie, en baisse de 3.7E15 / 51.7 possibilités / bits dentropie pour le plein dictionnaire. Je ne suis pas en mesure de juger de linfluence du générateur aléatoire. Jutilise celui de www.random.org
  • @ Dick99999 Je ne ‘ Je pense pas que ‘ est vraiment sur le nombre de choix proposés que vous excluez en choisissant un mot de passe. Il ‘ parle du modèle des phrases que vous excluriez si elles vous étaient présentées. Un attaquant pourrait deviner que lutilisateur préférera des mots plus courts, des mots plus faciles à taper sur un clavier QWERTY et des mots sans majuscules ni ponctuation; cette stratégie pourrait réduire considérablement lespace des phrases de passe à explorer. Fondamentalement, cela ‘ est le même problème que de deviner simplement les équipes sportives préférées, les anniversaires et les noms denfants ‘.
  • @wberry Je ne ‘ Je pense pas que le calcul fonctionne là-dessus. Supposons que vous rejetiez 1000 phrases de passe avant den trouver une que vous aimez. Ensuite, ‘ est une estimation raisonnable que vous naimez que 1/1000 de lespace de mot de passe possible. Supposons maintenant quun attaquant soit capable de deviner complètement quel 1/1000 de lespace est votre favori – cela réduit le nombre de possibilités de 2 ^ 44 à 2 ^ 34, ce qui est significatif mais pas au point quun mot supplémentaire puisse ‘ pour compenser la perte. De plus, si vous limitez vos refus, même cela nest pas nécessaire.

Réponse

Cela dépend. Une chose que vous devez comprendre est quil ne sagit pas de sécurité par obscurité: les valeurs dentropie utilisées dans la bande dessinée supposent que lattaquant sait déjà que vous utilisez cette méthode . Si lattaquant ne sait pas comment vous générez la phrase de passe, alors lentropie monte massivement.

Lastuce de la méthode XKCD est que vous devez réellement utiliser un générateur de nombres aléatoires et une bonne liste de mots: ne choisissez jamais les mots vous-même, pas même « au hasard » (entre guillemets parce que les humains sont vraiment très mauvais pour choisir les choses au hasard, cest pourquoi vous ne devriez pas le faire). Diceware a des outils pour vous aider à le faire, et prend même lélément aléatoire hors de portée de lordinateur en utilisant des dés ordinaires.

Contre une attaque à grande échelle – le genre de chose où un attaquant a obtenu une liste de mots de passe dun site Web et ne sait rien des mots de passe dans la liste – cest aussi fort que jamais. Comme vous le dites, sa force vient de la puissance des exposants (et dune bonne liste de mots).

Lattaque de Schneier peut fonctionner, mais seulement dans un contexte totalement différent. Son attaque suppose que vous êtes spécifiquement ciblé, par un attaquant qui en sait déjà beaucoup sur vous .Cela peut ne pas sembler particulièrement inquiétant au début, car lattaquant déterminé stéréotypé est un agent du renseignement derrière un écran, et la plupart dentre nous nont pas à se soucier autant de ceux-ci: il y en a seulement un nombre limité, et chacun ne peut que se permettre de se soucier de tant de gens. Mais cest en fait plus un problème quil ny paraît à première vue, grâce à lavènement de logiciels malveillants sophistiqués. Une installation de malware peut se permettre de se soucier de vous même si lattaquant ne le fait pas, et vous vous retrouvez donc toujours face à un attaquant extrêmement déterminé. Encore plus déterminé quun humain pourrait lêtre, en fait, bien que beaucoup moins créatif.

Les logiciels malveillants qui compilent des informations sur vous donneront aux mots qui vous semblent importants une très haute priorité dans la liste de mots. Cela est dû au fait que la plupart des gens choisissent eux-mêmes les mots «aléatoires», mais ce faisant, ils privilégient en fait les mots les plus importants pour eux: cela peut encore «sembler» aléatoire, mais certains mots sont beaucoup plus susceptibles venir que d’autres. Pour cette raison, donner à ces mots une priorité élevée entraîne souvent des résultats relativement rapides, et cest le « truc » dont parle Schneier.

Cependant, vous pouvez toujours contrecarrer lattaque de Schneier en utilisant le vrai hasard . Le hic, cest que cela nécessite de la discipline: toutes les décisions sur les mots à utiliser dans votre phrase de passe (à part choisir un bon mot list) doit être complètement retiré de vos mains. Cest là que des choses comme Diceware peuvent vous aider.

Commentaires

  • @Gilles: La raison pour laquelle lentropie diminue si lattaquant connaît la méthode, cest quelle modifie toute la structure du mot de passe. Si vous ‘ ne connaissez pas la méthode, alors  » agrafe de batterie de cheval correcte  » ressemble à 216 symboles dun alphabet à 2 symboles: en dautres termes, 216 bits. Si vous savez quil ‘ s quatre mots anglais (et connaître XKCD

s wordlist), alors cela ressemble à 4 symboles dun alphabet de 2048 symboles. 2048 ^ 4 est gros, mais ‘ est plus petit que 2 ^ 216, qui est le nombre doctets dentropie quune chaîne de bits vraiment aléatoire de cette longueur aurait. Mais la revendication de XKCD ‘ en tient déjà compte: 2048 ^ 4 = 2 ^ 44.

  • En supposant que les attaquants croient que les mots de passe sont des chaînes de bits qui suivent une distribution uniforme est un modèle dattaquant totalement irréaliste. Connaître la méthode ne représente quune poignée de bits dentropie.
  • Lentropie nest pas définie sur des chaînes, mais sur des méthodes pour générer des chaînes. XKCD décrit une méthode pour générer des chaînes, qui a 44 bits dentropie. Le domaine de cette méthode contient des chaînes de 27 caractères, ainsi que des chaînes dune autre longueur – mais la longueur des chaînes nest pas ‘ intéressante du point de vue de la sécurité, uniquement dun point de vue perspective dutilisabilité.
  • Pourquoi connaissez-vous la longueur du mot de passe, mais pas le fait que les mots anglais sont plus susceptibles que la moyenne dapparaître dans les mots de passe? Encore une fois, votre modèle dattaquant est complètement irréaliste. Les attaquants ne ‘ vont pas « hé, je ‘ vais générer tous les mots de passe de 27 lettres possibles ». Ils ressemblent plus à « hé, je ‘ Je vais générer tous les mots de passe possibles par ordre décroissant de probabilité ».
  • @Giles En fait, la chaîne et la méthode sont pertinentes . Vous prétendez que le premier paragraphe de The Spooniest ‘ est faux, tout en faisant un argument qui semble le reformuler. Si vous ‘ ne savez pas comment le mot de passe est généré, lentropie augmente considérablement – ~ 166 bits pour 27 caractères (supérieur, inférieur, chiffre, ponctuation). Ce que vous dites, cest que les attaquants peuvent utiliser la connaissance de la façon dont les mots de passe sont générés pour réduire cela. On dirait que vous discutez de la même chose à des extrémités opposées. De plus, ne pas connaître la longueur augmente lentropie.
  • Réponse

    La force les mathématiques sont assez simples si le choix des mots est aléatoire: (nombre de mots dans le dictionnaire) ^ (nombre de mots dans la phrase), en supposant que lattaquant connaisse le nombre de dans le dictionnaire. Donc une phrase de 5 mots utilisant un dictionnaire Diceware de 7776 mots connu ( par lattaquant !) 7776 mots: a 7776 ^ 5 = 2.8E19 ou 64 bits dentropie.

    Il y a un élément qui nest pas mentionné dans le schéma: en ajoutant juste 1 caractère (aléatoire) à un endroit aléatoire dans la phrase entière, la force augmente denviron 10 bits , voir Diceware, trucs facultatifs .

    Les mathématiques ci-dessus ne tiennent pas non plus compte du symbole de séparation entre les mots. Cela peut ajouter encore 5 bits.

    Commentaires

    • Le point (ou au moins lun dentre eux) de la bande dessinée XKCD est que lajout dun caractère aléatoire à un endroit aléatoire augmente la difficulté de mémoriser le mot de passe plus quil naugmente la difficulté de le déchiffrer.
    • Vrai pour la mémorisation en général, pas vrai pour un mot de passe maître dun coffre-fort, je pense. Je vois ‘ facile à taper ‘ comme principal avantage. Je rencontre de plus en plus de situations où les gestionnaires de mots de passe ne peuvent pas remplir le mot de passe (applications, réseau invité WifI) et je dois les taper.
    • @Mark – les caractères extra aléatoires (ou simplement non-dictionnaire) pourraient être le même pour tous vos mots de passe, ce qui signifie que vous n’avez pas ‘ oublier. Vous ‘ gagnerez les bits supplémentaires dentropie au moins jusquà ce que plusieurs autres de vos mots de passe soient compromis, auquel cas le mot de passe est toujours xkcd-strong …
    • @imsotiredicantsleep – Cest une suggestion très intéressante. Toujours cherché une solution pour rendre cette technique de renforcement plus facile à utiliser. Cela pourrait être appelé sécurité par lobscurité car lattaquant peut bénéficier de la connaissance du caractère aléatoire et de la position. Un léger compromis, je pense entre facilité dutilisation et sécurité.
    • @ Dick99999 absolument, cest ‘ un compromis. Mais tant que le composant constant nest pas compromis, il vaincra une attaque par dictionnaire na ï ve, et ralentira considérablement une attaque plus sophistiquée. Je ne ‘ pas d’accord pour dire que la ‘ s sécurité par l’obscurité, car je peux vous dire que j’utilise la technique sans perdre lentropie que me donnent les valeurs possibles . La principale faiblesse est quune fois que la partie constante est connue, vous avez sacrifié les propriétés des mots de passe qui auraient pu être aléatoires.

    Réponse

    Jaimerais aussi ajouter une réponse oui , mais pour Ce nest pas un bon conseil [en général] à cause des contraintes de longueur:

    • Des sites comme Skype, ING, eBay et dans mon pays Binckbank et KPN limitent les mots de passe à 20 caractères. (Cette limite de banque est de 15, mais elle utilisait une autorisation à 2 facteurs)
    • Avec une longueur moyenne de 4,5 caractères / mot pour un court dictionnaire de 3 000 à 8 000 mots, qui permet dutiliser uniquement des phrases de 3 à 4 mots.
    • Lors de lutilisation de grands dictionnaires, la moyenne peut être de 6 à 7: 3 mots uniquement
    • Si le site insiste pour utiliser un symbole et un nombre dans le mot de passe, seuls 18 caractères sont disponibles pour la phrase.

    Ces longueurs ne protègent que contre les attaques en ligne. Pour les attaques hors ligne, cela dépend de la dérivation de clé et de la fonction de hachage, du nombre ditérations et du matériel de craquage utilisé par le site de lapplication, si une phrase de 3 à 4 mots offre une protection suffisante.

    Commentaires

    • Les sites qui limitent la longueur des mots de passe sont souvent un bon indicateur du fait que leur système de stockage de mots de passe est très peu sécurisé. Fuyez. Dans lensemble, les exigences de sécurité des mots de passe ont tendance à être plus détriminal quutiles, OMI (à la fois pour la sécurité et la mémorisation).
    • Ajoutez Suntrust à la liste des mots de passe limités à 15 caractères. Je me demande ce qui se passe dans ce secteur.
    • Dun autre côté, il est ‘ beaucoup plus facile de taper ‘ correcthorsebatterystaple ‘ sur un smartphone que de continuer à basculer entre les minuscules, les majuscules, les chiffres et la ponctuation.
    • Limites de mot de passe faibles don ‘ t signifie simplement des méthodes de stockage de mots de passe non sécurisées – elles signifient que les mots de passe sont stockés en texte clair ou sont cryptés (non hachés). @ Á ngel Mes mots de passe pour tous les comptes liés à Microsoft sont plus longs que cela, alors jappelle BS. Il y a des siècles, avant NTLM, les mots de passe Windows étaient limités à 16 caractères, iirc. Cela est antérieur à XP et nest guère pertinent.
    • @Zenexer Concernant les comptes Microsoft: les comptes en ligne Microsoft (live.com, Office 365, etc.) sont limités à 16 caractères (lettres, chiffres et certains symboles sont autorisés ).

    Réponse

    Il est important davoir le bon contexte. Le xkcd comic compare Tr0ub4dor&3 à une entropie supposée de 28 bits (bien que je calculer comme 34,6) à correcthorsebatterystaple et ses 44 bits dentropie supposés (un code de quatre mots diceware est de 51,7 bits … Mais l’un de ces mots n’est pas un logiciel de dés. En utilisant un simple dictionnaire d’orthographe de 100 000 mots, je le calcule à 66,4 bits).

    Tout d’abord, rendons cela plus facile à comprendre. Il y en a 94 caractères imprimables. Un mot de passe à un caractère a log₂(94) = 6.55 bits dentropie. Deux caractères ont log₂(94²) = 13.10 bits dentropie.Vous pouvez diviser lentropie finale dun schéma de mot de passe par 6,55 afin de déterminer la complexité équivalente dun mot de passe purement aléatoire tel que mesuré en caractères.

    Par conséquent:

    • 28 bits dentropie ≈ Mot de passe de 4,3 caractères (très mauvais!)
    • 44 bits dentropie ≈ Mot de passe de 6,7 caractères (également mauvais)
    • 66,4 bits dentropie ≈ Mot de passe de 10,1 caractères (daccord pour 2016)

    En faisant confiance aux numéros de xkcd, vous pouvez voir pourquoi Schneier était concerné. Cela semble un peu exagéré, car la plupart des attaquants abandonneront toujours après une dizaine de caractères [citation nécessaire] – cela devrait prendre quelques années à un gros cluster pour casser un mot de passe haché MD5 de 10 caractères – bien que, évidemment, si un bon attaquant connaît votre schéma, la longueur absolue des caractères nest pas un problème.

    La complexité totale du schéma est la plus importante. Vous devez supposer le pire des cas (que lattaquant connaît votre schéma exact) . C’est une excellente idée de vous assurer en plus que votre mot de passe comporte plus de 11 caractères ( lorsque cela est autorisé ), mais c’est une priorité secondaire (et il est fourni gratuitement avec des phrases de passe ).

     

    Créez des phrases de passe avec quatre mots plus un mot de passe

    Voici mes conseils de création de mot de passe (avec des estimations dentropie):

    • Faites une « phrase » absurde de 4 mots ou plus de 4 caractères ou plus chacun (100 000⁴)
    • Aucun de ces mots ne peut être connecté à vous – ou lun lautre– de quelque manière que ce soit
    • Utilisez la casse, les espaces et au moins deux symboles ou signes de ponctuation (32²)
    • Au moins un mot devrait échouer la vérification orthographique (par exemple leetspeak, mots étrangers, 64 chacun)
    • Inclure au moins une autre « erreur » (orthographe / grammaire / syntaxe, entropie inconnue)
    • Entre deux mots, ajoutez un mot de passe traditionnel « aléatoire » de 7 caractères ou plus (92⁷)

    Cela devrait être au moins log₂(100000⁴ × 32 × 3 × 64 × 92⁵) = 112 bits dentropie (ce qui est très fort, ≈17 caractères). Jai sauté les majuscules (je suppose que seul le premier caractère est en majuscule) et un symbole (je suppose quil se termine par ., !, ou ?, donc le deuxième symbole a une complexité de 3) et jai également supposé que « random » nest pas assez aléatoire et jai calculé le code comme un équivalent à cinq caractères (strict respect de ce qui précède formule vous donnerait plus de 128 bits dentropie à ≈20 caractères).

     

    Ce dernier point mérite dêtre répété:

    Les humains sont très mauvais pour générer du hasard

    Très très peu de mots de passe de caractères « aléatoires » générés par lhomme, même abordent le vrai hasard. Il y aura des modèles dans le code liés au clavier de la personne, à ses numéros préférés et / ou à lhypothèse quun certain mot obscur est impossible à deviner.

    Jai conçu ce schéma pour quil soit robuste contre le manque inhérent daléatoire des gens; en supposant un vocabulaire limité (dites les 2600 mots de Basi c anglais ), lutilisation de mots apparentés (pénalisé en ne comptant que trois mots), et un mot de passe limité à seulement lentropie de six alphanumériques, log₂(2600³ × 62⁶) lui-même est toujours fort à 70 bits (≈10,6 caractères).

    Ne laissez pas cela arroser votre phrase de passe! Cette section est présente pour démontrer que ce schéma a une certaine résistance à lentropie limitée de lhomme choix, pas pour encourager les mauvais choix.

    Le seul vrai problème vient des gens qui prennent des citations ou des paroles comme leurs quatre mots. Ces phrases de passe sont trivialement vaincues si la citation ou les paroles peuvent être devinées (par exemple en regardant vos likes Facebook) ou auraient autrement une entropie denviron 6 caractères aléatoires à un temps de crack de 30 secondes (MD5) à 17 jours (PBKDF2) .

     

    Vous pouvez utiliser ma table dentropie pour calculer lentropie de votre schéma de phrase de passe.

    (Ne vous inquiétez pas du fait que les mots de passe vivent brièvement en mémoire à moins que vous « êtes un développeur)

    Commentaires

    • Il convient également de noter que non- ASCII sont comme des balles dargent, éliminant automatiquement la plupart des attaques. Un mot de passe ••••••••• (neuf puces) est dune sécurité embarrassante (et a le même aspect masqué que démasqué!) En raison de sa longueur et de son obscurité, même sil ‘ horrible qui dépend en fait de ce fait. Mettez un caractère non ASCII dans votre mot de passe + 4 mots et votre complexité monte en flèche (pour calculer, utilisez sa valeur Unicode), mais peut-être au détriment de la portabilité (et si vous ‘ utilisez le smartphone dun ami ‘?)

    Réponse

    Non, je ne pense pas.

    Le conseil réel dans cette bande dessinée xkcd est de utiliser des mnémoniques faciles à retenir et générer un mot de passe aussi longtemps que vous vous en souvenez . Ce sont des conseils de base sur les mots de passe partout, et ils resteront toujours vrais (même la méthode de Schneier citée utilise ces deux faits de base). En effet, la bande dessinée utilise des mots anglais courants, mais votre implémentation ne doit pas lêtre, ni ne la fait la bande dessinée implique que vous devriez.

    Bien sûr, les mots de passe les plus sécurisés sont des chaînes totalement aléatoires comme lapparence dune chaîne MD5, et vous pouvez probablement utiliser un gestionnaire de mots de passe pour stocker tous ces mots de passe, mais alors quel mot de passe allez-vous utiliser pour ce gestionnaire? ¯ \ (ツ) / ¯

    Commentaires

    •  » Bien sûr, les mots de passe les plus sécurisés sont des chaînes totalement aléatoires  » NON, voir pour une comparaison en.wikipedia.org/wiki/Password_strength#Random_passwords
    • Non, que ‘ nest pas ce que le xkcd conseille, je vous suggère de le relire – et lanalyse dans la question pertinente ici (lien ci-dessus).
    • Votre signature  » ¯ \ (ツ) / ¯  » est un excellent mot de passe: court, facile à retenir, vraiment difficile à casser, difficile à détecter comme mot de passe sur un journal.
    • @Daniel Azuelos, … trivial à ajouter à une liste de chaînes dusage courant …
    • @Raestloz Une personne parlant une langue qui ne ‘ t utiliser des caractères qui se trouvent dans la plage ASCII nest ‘ pas utiliser un mot de passe ASCII. Pensez-vous que toutes ces personnes dans les pays asiatiques utilisent deux claviers, un pour la saisie quotidienne et un pour les mots de passe? Contrairement aux systèmes dexploitation vieux de trente ans, comme DOS, tous les systèmes dexploitation ‘ modernes gèrent parfaitement Unicode et dautres jeux de caractères / pages, et tout site Web devrait les prendre en charge (à condition que le Le développeur ‘ nencode pas le formulaire en utilisant un jeu de caractères aléatoire à chaque fois, ou laisse le navigateur choisir). Les mots de passe ne sont que des éléments qui signifient quelque chose pour les humains.

    Laisser un commentaire

    Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *