Bill Burr est un informaticien qui vous a probablement rendu fou sans que vous le sachiez. Il est en effet à l'origine du fait que des sites internet vous demandent des mots de passe dits complexe (lettre, chiffres, caractères spéciaux), suite à un rapport qu'il rendit dans les années 2000 sur les bonnes pratiques à destination de l’administration américaine. Ses recommandations, devenues populaires, ne se basaient sur aucune étude. Il s'est depuis excusé.
Tous les commentaires (45)
Logique
Ben pour le coup ça me parait assez évident pourtant :
1) Les caractères spéciaux ajoutent des possibilités en plus, donc du temps de calcul en plus
2 ) Mais surtout, selon la méthode de craquage (de mot de passe) utilisée, ça peut vous sauver la mise. Le programme de craquage va utiliser des "dictionnaires" de caractères pour tous les essayer un par un. Si un caractère est présent dans votre mdp mais pas dans dans le dictionnaire de caractères de l'attaquant, il ne pourra tout simplement PAS le craquer. Alors certes, ce genre de dictionnaire devrait en théorie être le plus exhaustif possible, mais ce faisant il devient moins performant (car plus de possibilité à tester).
« j’aimelechevrechaud est plus efficace que toto@14359D »
Encore une fois, tout dépend de la méthode de craquage. Déjà, niveau caractères, il y a un caractère spécial dans le 1er mot de passe (l'apostrophe est considérée comme un caractère spécial). Ensuite, certaines méthodes se basent sur des dictionnaires de mots existants : un tel programme, s'il utilise un dictionnaire français (la plupart peuvent utiliser plusieurs langues), va facilement pouvoir tester la combinaison "j'aime" + "le" + "chevre" + "chaud". C'est aussi pour ça qu'on conseille d'utiliser des écritures alternatives à ces mots, genre :
* « jM » pour «j'aime »
* « t0t0 » avec des zéros
* « Chaud » voire « ChAUd » pour « chaud », ça au niveau machine ces écritures sont différentes
* etc.
La meilleure méthode restant bien sûr la combinaison des différentes méthodes, càd des mdp longs + comportant des caractères spéciaux + des écritures alternatives si vous utilisez des "vrais mots".
Enfin pour une bonne alternative entre sécurité et praticité, je conseille les gestionnaires de mdp, qui peuvent générer des mdp forts et différents pour chaque usage. Pas forcement besoin d'une truc payant, KeeWeb est pas mal dans son genre, après il faut arriver à jongler entre les fichiers .kdbx entre les différentes plateformes, et le pas oublier son mdp maître.
Enfin beaucoup de services (facebook, twitter, google, github, etc.) gèrent aujourd'hui le 2FA (authentification double), qui créé une étape de vérification supplémentaire via un système tierce (en l'occurrence une appli smartphone).
P.S : j'M_AUssilech3vr3ch0
Pour un mot de passe de 4 lettres, il faudra faire 26^4, soit 456 976 combinaisons possibles.
Pour 4 chiffres et lettres ça fera 36^4 soit
1 679 616 combinaison.
Ainsi pour 8 chiffres lettres minuscules, majuscule et caractères spéciaux (10x26x26x4) soit 2,9x10^35 combinaisons (35 zéros derrière le 2)
Ainsi, dès que vous rajoutez une nouvelle combinaison possible cela rajoute empiriquement de la complexité à votre mot de passe et c’est ce qui fait leurs force dès lors que le temps de craquer un mot de passe à rendu son information obsolète (d’où le fait de changer son mot de passe régulièrement.
Sa recommandation est tout à fait juste et se base sur des règles mathématiques tout à fait fiables et solides.
Une combinaison de 4 mots existants dans in dictionnaire est très facile à cracker. Le leech speak n’apporte presque rien.
Les hackers peuvent également facilement connaître la password policy des sites sur lesquels ils piratent des mots de passe.
S’ils voient par exemple qu’il faut au moins une majuscule, une minuscule et un chiffre, ils vont essayer la majuscule en première position et le chiffre à la dernière. Ça divise énormément le temps de craquage et pour plus de 99% des mots de passe nécessitant au moins une majuscule, il n’y en à qu’une et elle se trouve en premier.
Pensez à toujours mettre une majuscule ailleurs que l’initiale.
Idéalement, mettez en au moins deux.
Un autre moyen facile d’obtenir des mots de passes est de fournir un service à la con sur lequel l’utilisateur renseigne son email et son mot de passe.
Vous n’avez ensuite qu’à le tester sur gmail etc avec quelques combinaisons.
Prenez donc l’habitude d’utiliser des mots de passe tres différents sur les sites à la con ou vous n’avez pas de données sensibles.
Tu as également raison au sujet des password managers. C’est très efficace pour avoir des mots de passe quasi inviolables, et même les gratuits permettent en général de jouer les mots de passe pour toi.
Ok phillipe, t'as l'air de toucher ta bille en société mais là tu va trop loin. Citer le journal "Le Point" et un article payant du wall-street journal, c'est pas des sources.
C'est vraiment si compliqué un comprendre, qu'un mot de passe complexe est complexe à craquer, contrairement à un mot de passe simple?
Bill Burr ne s'est pas excusé quant à la complexité des mots de passe soit-disant inutile. Il s'est excusé à propos de sa recommendation d'en changer régulièrement.
Parce qu'à chaque fois que l'on change un mot de passe, il transite sur internet "en clair", et il est du coup possible de l'intercepter. Basiquement, changer de mot de passe sans qu'il soit compromis, c'est dangereux, ça n'avait rien à voir avec les caractères utilisés, bien au contraire. D'ailleurs, voilà la raison:
L'article de journal compare un mot de passe "simple" de 24 caractères, avec un mot de passe "complexe" qui n'en fait que 12, ce qui est (pardonnez moi du terme) complètement con.
Pour calculer le temps qu'il faudrait pour craquer un mot de passe, on calcule comme ça:
[Taille de l'alphabet utilisé] ^ (nombre de caractères utilisés)
Si on utilise que des chiffres, il faut en moyenne 10^n essais
Avec juste l'alphabet , 26^n essais
Avec tous les caractères ASCII, 128^n essais.
Concrètement, le fait d'utiliser un mot de passe complexe permettra, en moyenne, d'utiliser la racine carrée du nombre de caractères à utiliser si vous vous serves juste de chiffres. Si vous commencez à rajouter des caractères comme "©" , "¶" ou "ß" (table ASCII étendue), divisez la racine par deux.
Un mot de passe, c'est rien de plus qu'un gros nombre, et il n'y aura jamais rien de mieux que d'utiliser de la numération avec le plus de caractères possible; Vous préférez quoi, un labyrinthe avec 10 chemins possibles à chaque embranchements, ou alors un labyrinthe avec 128 chemins possibles partout ?
ça repose pas sur "rien", ça repose sur les mathématiques pures; le mec qui a écrit cet article, ainsi que le mec qui a rédigé pour Le Point, aurait dû écouter leurs profs de maths et/ou lire la lettre publique d'excuse de Bill Burr en entier avant d'appuyer sur "Envoyer".
Conclusion: mettez moins de caractères, mais faites de la qualité. Un truc illisible, sans logique, AVEC des caractères spéciaux. Idéalement, autant de caractères spéciaux que de chiffres et de lettres. Si vous pouvez vous en souvenir facilement, y'a un problème qu'un hackeur se fera une joie de résoudre.
La méthode la plus simple à mémoriser reste de retenir une phrase dans sa tête puis de faire un mot de passe en prenant uniquement la première et la dernière lettre de chaque mot. On couple ça avec la double authentification (mot de passe par sms) et on atteint un niveau de sécurité correcte sans se prendre la tête. La sécurité c’est bien mais le côté pratique ne doit pas être oublié sinon c’est pire.
Sans oublier le 2FA, qui rajoute une couche de sécurité, avec un léger détriment pour la praticité. Mais j'en profite au passage pour tacler l'usage des SMS, absolument pas sécurisés. Je trouve que l'utilisation d'une app smartphone bien plus pratique ET sécurisée pour le coup (perso j'utilise andOTP pour ceux que ça intéresse).
Retenir des phrases dans sa tête c'est certes le mieux, mais avec la multiplication des plateformes, ça devient quasiment impossible aujourd'hui d'avoir un mdp différent par plateforme. Perso je viens de checker, pour l'ensemble de mes usages perso et pro (je bosse avec beaucoup d'outils web), j'ai + de 200 mdp (avec ~ 10% pour des trucs inactifs).
Bref, retenir 200 mdp de tête, ça serait le top en terme de sécurité, mais il ne faudrait pas oublier la praticité ;)
#Attention coup de gueule#
D’accord sur le fait que plus le mot de passe est long, plus c’est safe.
Mais franchement quand un site te refuse certain caractère basique (*,# etc...) ou vous dise « vôtre MDP dois être contenir entre 4 et 7 caractère » (par exemple)... Ba c’est chiant !
Selon moi le MEILLEUR moyen d'avoir quelque chose de sécurisé, c'est via des loci.
- pas de mot directement pris du Larousse (une attaque par dictionnaire suffirait à trouver votre mot de passe en secondes, si le système ne génère pas de délai entre chaque tentative : un bot travaille en millisecondes);
- 12345 , "motdepasse" et "azertyuiop" sont évidemment à proscrire, si ça vous vient trop vite à l'esprit, ça devrait aussi vite venir à l'esprit du hacker humain! (ces combinaisons très courantes sont sûrement déjà dans leur rainbow table, en plus);
- les gestionnaires de mots de passe sont très intéressants mais faut quand même faire gaffe, RIEN ne vaut le mot de passe qui reste dans votre tête car les hackers de cerveaux n'existent pas (encore :3 )...
Je conseillerais donc de retenir des mots de passe liés à plusieurs lieux,objets ou animaux qui n'ont pas de rapport puis de faire des transformations dessus avec des caractères spéciaux et des chiffres, en jouant aussi avec la casse... (et en étant un peu long quand même )
Exemple : "tarsinblueMonaco" comme base -> "t4rs1nBlu3Mon@k0" .
Après faut trouver des moyens mnémotechniques pour s'en souvenir (idéalement sans le noter quelque part, mais si c'est impossible notez le de manière cryptique, style "marsupialCouleurprincipauté",comme ça le pirate qui tomberait dessus ne l'aura pas direct).
Aujourd'hui, on ne stocke jamais un mot de passe, on stocke sa signature. C'est à dire qu'on fait passer le mot de passe dans une moulinette d'où en ressort une signature que l'on va stocker. Le point fort de cette méthode, c'est qu'on ne peut pas retrouver le mot de passe original à partir d'une signature, c'est mathématiquement impossible.
Les pirates font donc appel à ce qu'on appelle des rainbow table. En gros, des tableau avec des milliers voirs des millions d'entrée, on sont stocker des mots de passe et leur signature associé.
Si un pirate parvient à récupérer une signature il peut alors comparer dans la rainbow table et voir si il trouve une correspondance.
Partant de la, c'est bien la complexité du mot de passe qui fera sa force. Des petites phrases auront bien plus de chance de se retrouver dans des rainbow table (elles sont généré), qu'une suite de caractère sans suite logique.
Ceci dit, c'est sans compter sur le salt, des données supplémentaires secrète qu'on ajoute au mot de passe avant passage dans la moulinette, générant une signature ne dépendant plus que du mot de passe, mais également d'une autre donnée secrète (qui pour le coup est en général complètement aléatoire car géré par une machine). Dans ce contexte les rainbow table ne servent plus à rien.
Aujourd'hui il est vraiment très difficile de casser un mot de passe, c'est rarement ce qu'un attaquant essaiera de faire d'ailleurs.
C’est pour cela que le travail se fait plutôt sur des bases de données récupérées, comprenant en général des « signatures » (hash) de mot de passe. Le travail sur la base n’est alors pas bloqué par une protection sur le nombre d’essais.
La méthode la plus connue pour retrouver les mots à partir des hashs est celle des rainbow tables et des dictionnaires complets. La plupart des applications de crack un peu sérieuses embarquent directement les signatures communes des mots de passe de 10 caractères et moins. Donc peu importe les caractères utilisés, si le mot de passe fait 10 caractères ou moins, il est trouvé instantanément.
Recommandations :
- un mot de passe unique par site
- un mot de passe long (30 de caractères au moins) avec un assemblage de caractères aléatoires
- un logiciel de coffre fort de mot de passe comme KeePass qui les retiendra pour vous. Il existe sur tous les systèmes y compris les mobiles.
Le reste de recommandations concerne surtout les créateurs de sites applicatifs, qui ne doivent pas stocker les hash des mots de passe sans rajouter un « sel », un ensemble de caractère long ajoutés au mot de passe avant le hash qui rend les méthodes citées plus haut inopérantes.
Il fallait écrire ceci : (10+26+26+4)^8 ~ 3,6x10^14, ce qui fait quand même environ 8×10^20 fois moins que ton résultat.
Pour le reste, j'ajouterai qu'on n'est plus aujourd'hui limité ou obligé à un nombre de caractères et que les mdp enregistrés sont d'abord chiffrés, ce qui complique encore la tâche des hackers...
Rien à voir mais cet informaticien à un homonyme humoriste très connu et que je recommande.
Écrire en l33t ne suffit pas,bien sûr... Faut partir d'un truc familier à soi même et en faire un truc dur à deviner (ou faire confiance à un gestionnaire de mot de passe)!
Personnellement j'ai encore un peu de méfiance pour les gestionnaires mais ça marche aussi.