Mémorisez facilement une infinité de mots de passe complexes

barbie-et-ses-mots-de-passe
Cet article est le numéro 6 sur 8 de la série sécurité informatique

 

Avoir un bon mot de passe est la première condition pour sécuriser ses données, et une des plus importantes. La plupart du temps c’est aussi le seul paramètre sur lequel on a la main. Aussi il est important d’en avoir un bon, enfin plusieurs, comme nous allons le voir.

Qu’est-ce qu’un MAUVAIS mot de passe?

Pour répondre à cette question, il faut comprendre la manière dont un attaquant va essayer de le « casser ». Pour la démonstration, je vais m’appuyer sur le site https://howsecureismypassword.net/ qui calcule combien de temps le mot de passe que vous lui indiquez va résister à une attaque.

Voici donc les différentes méthodes pour attaquer un mot de passe

  • Attaque par dictionnaire

C’est fou comme les gens sont peu imaginatifs. Un petit nombre de combinaisons permet d’ouvrir un grand nombre de portes. Parmi les plus fréquents: « 12345 », « azerty » ou « qwerty », « sesame », ou tout simplement « password »

Tester quelques milliers de combinaisons ne nécessite qu’une fraction de seconde. Mieux vaut donc éviter que votre mot de passe se trouve dans l’une des listes des mots de passe les plus courants, qu’un bébé pirate saura se procurer très facilement sur le net. C’est très simple à démontrer, sur le site ci-dessus, saisissez par exemple un nom propre, (votre prénom). Juste avant la dernière lettre, il vous dit qu’il faut quelques microsecondes. Mettez la dernière lettre, ça passe à « instantané ». Votre prénom est dans le dico!

  • Ingénierie sociale

D’autres se croient plus malins, en utilisant le prénom de leur poisson rouge, conjoint, chanteur préféré, ou date de naissance… Déjà, il y a de fortes chances que ce nom se trouve dans la liste précédente. Si ce n’est pas le cas, on doit pouvoir trouver pas mal d’indices avec un peu de « social ingeniering »: étude de vos réseaux sociaux, fausses enquêtes téléphoniques visant à vous soustraire des informations.

  • Combinaison des deux précédents

Si des milliers de combinaisons sont testées en une fraction de seconde, le test de plusieurs millions demande tout au plus quelques secondes. Le pirate ne se privera pas de tester les différentes combinaisons de minuscules/majuscules, ou suffixes chiffrés. Par exemple beaucoup de personnes terminent leur mot de passe par leur année de naissance ou leur département, ce qui dans les deux cas revient en gros à un nombre entre 01 et 99, et donc à multiplier le nombre de combinaisons à tester par « seulement » 100.

  • Ruse

Bien souvent, ce sont les personnes qui fournissent directement leur mot de passe aux pirates. Comment? En se connectant sur un site appartenant à ces pirates. En effet, lorsque vous vous enregistrez sur un site, rien ne vous garantie que les propriétaire du site stockent vos informations de manière sécurisée. Bien entendu, la plupart des sites fait correctement les choses, un vol de leurs données représenterait une très mauvaise publicité, mais sur les petits sites (comme celui-ci par exemple), rien ne le garantit. Et comme la plupart des gens utilisent le même mot de passe partout, ce n’est pas du tout anodin.

Il y a aussi certains sites pirates qui ressemblent comme deux gouttes d’eau à un site officiel. En général vous y êtes parvenu via un lien reçu dans un mail. Vous y saisissez vos identifiants en toute confiance, et hop, vous êtes cuits. Il suffit au pirate d’utiliser vos identifiants sur le vrai site.

  • Attaque « force  brute »

L’ultime recours du méchant pirate consiste à tester toutes les combinaisons possibles de caractères autorisés. Et là ça commence à faire beaucoup dès que le mot de passe a une taille raisonnable. En effet, le nombre le combinaisons à tester correspond à la formule: Nombre de signes utilisables ^ longueur du mot de passe. Le nombre de signes utilisables est généralement de l’ordre de 70 à 80 ( majuscules, minuscules, chiffres et quelques caractères spéciaux comme $%*µ! …)

Sur un mot de passe de longueur 8, cela donne donc 80¨8 combinaisons, soit 80808080808080*80, soit environ 1 000 000 000 000 000, soit un million de milliards. Dans l’état actuel de la technologie, ça commence à être raisonnable, mais vous verrez que ça ne semble pas suffisant à https://howsecureismypassword.net/

Qu’est-ce qu’un bon mot de passe?

Complexe. D’un point de vue « sécurité », un bon mot de passe est donc un mot de passe absent des dictionnaires (donc un mot qui n’existe pas), qui ne fait pas référence à votre vie personnelle, et qui a une longueur suffisante pour rendre vaine  une attaque en force brute (10 caractères est le grand minimum).

Unique. Un bon mot de passe est utilisé sur un seul site ou application, pour éviter que sa compromission n’ait un impact large, sur un ensemble de comptes.

D’un point de vue pratique, il doit être facile à mémoriser. Inutile de préciser qu’à aucun moment il ne faudra écrire ce mot de passe sur un papier, ni même sur dans un fichier informatique, aussi doué que vous soyez pour le dissimuler. Le seul endroit où il est tolérable de stocker des mots de passe est un coffre fort, ou un coffre-fort éléctronique. Nous aurons l’occasion de revenir là-dessus dans un prochain article.

Alors comment s’en sortir?

Comment retenir un grand nombre de mots de passes complexes?

J’ai une astuce simple qui permet non pas de les mémoriser, mais de les « calculer ».

Bien que différents sur chaque site, l’ensemble de mes mots de passe est basé sur une même « racine », et un algorithme de calcul d’une part variable, dépendante du nom du service auquel je souhaite me connecter. Pour atteindre une dizaine de caractères, disons que la racine fait environ 8 caractères, et la partie variable au moins deux.

Une racine commune

Comment trouver une racine commune, qui ne soit ni un mot, ni un nom propre, ni une suite de touches? La meilleure méthode est de trouver une phrase que l’on va retenir, et de la raccourcir.

Par exemple, si je prends une phrase de Buzz l’éclair « Vers l’infini et au-delà », que je retiendrai facilement, par association d’idées.

Je peux en dégager quelques morceaux pour constituer une suite de caractères. Je pourrais prendre la première et dernière lettre de chaque mot. Mais l’idée est de générer un mot de passe complexe, il faut donc être plus tordu. Voici comment je propose de transformer la phrase:

Vers On remplace par une flèche: ->
l’infini On garde tel quels le l et l’apostrophe. Pour infini je décide d’utiliser le caractère spécial: § Oui, je sais ce n’est pas le vrai symbole, mais par association d’idée, je saurai le retrouver. Ça donne l’§
Et On peut utiliser le symbole &
Au-delà On le transforme en phonétique, avec un O majuscule: O2là

Voici notre racine de mot de passe:

->l’§&O2là

Ça a l’air complètement tordu, aucune chance qu’on le retrouve dans une liste, pourtant nous savons qu’il représente la phrase « vers l’infini et au-delà », et on peut le reconstituer grâce à notre logique, même si elle est un peu tordue. Elle fait 10 caractères, c’est vraiment le grand minimum.

Un petit test sur howsecureismypassword. 46 000 ans! Pas mal, mais ce n’est pas fini, car on n’a créé qu’un seul mot de passe. Souvenez vous, il nous faut:

Un mot de passe différent pour chaque site

Comment faire pour cela? Nous allons ajouter à notre mot de passe une portion variable, que l’on va calculer selon une même méthode pour chacun des sites. Pas la peine que cette portion variable soit très longue, mais au minimum, il faut qu’elle fasse 2 ou 3 caractères pour limiter le risque que la méthode donne le même résultat pour différents sites.

Quelques exemples de règles:

  • La première et la dernière lettre du nom du site ou application (presque trop simple)
  • La même chose mais en appliquant une rotation d’alphabet (a devient b, b devient c… z devient a)
  • La deuxième lettre du nom du site, en majuscule, avec une rotation de 2 rangs, à laquelle on adjoint le nombre de voyelles dans le nom du site, puis la dernière lettre du site avec une rotation de 1

Appliquons cette dernière règle à quelques sites:

Gmail: O2m (attention, décidez vous à l’appeler « gmail » ou « google »)
Amazon: O3o
Facebook C4l
Netflix G2y

Nous avons notre partie, fixe, notre partie variable, reste à combiner les deux. On pourrait bêtement ajouter la partie variable à la fin, franchement ça ne réduirait pas la sécurité du bazar. Mais pour montrer à quel point on peut être tordu, je vais l’insérer au milieu, après le §.

Pour les sites précédents, nous avons désormais nos mots de passes:

Gmail ->§O2m&O2là
Amazon ->§O3o&O2là
Facebook ->§C4l&O2là
Netflix ->§G2y&O2là

Tous mes comptes, protégés pour 9 millions d’années

Cela paraît difficile à retenir, mais vous verrez, il est plus facile de retenir que votre mot de passe est « vers l’infini et au-delà » dans votre langage tordu, coupé après l’infini par la 2ème lettre après la 2ème lettre du nom du site, le nombre de voyelles, puis la lettre qui suit la dernière lettre. C’est ce qu’on appelle un algorithme. Un algorithme qui protègera vos données pendant 9 millions d’années!

… bon ce n’est pas tout à fait exact, on n’est pas à l’abri que les puissances de calcul explosent, et que dans 5 ou 10 ans, il soit nécessaire d’avoir des mots de passe de 20 ou 30 signes. A ce moment là, rien ne nous empêchera de concevoir un algorithme générant des mots de passe plus longs.

Laissez un commentaire