Les attaques sur les mots de passe - Le Brute Force (1/2)
Commençons par une question : à votre avis, lequel de ces mots de passe est le meilleur ?
Mieux vaut-il avoir un mot de passe complexe comprenant des majuscules, des minuscules, des chiffres et des caractères spéciaux ? Ou bien mieux vaut-il avoir un mot de passe long mais composé seulement de mot de dictionnaire ?
Et bien tentons de calculer leur efficacité pour chaque type d'attaque ! Mais d'abord, place aux définitions
Entropie, vous avez dit ?
L’entropie d’un mot de passe permet de mesurer l’imprédictibilité d’un mot de passe, c'est à dire la difficulté qu’un attaquant rencontrera à découvrir le mot de passe.
L’entropie mesure la difficulté qu'un attaquant aura à découvrir un mot de passe
L’entropie se mesure en bits. Donc si un mot de passe a 40 bits d’entropie, cela signifie qu’il est aussi difficile à deviner qu’un mot de passe aléatoire composé de 40 caractères parmi {0, 1} (40 bits donc).
Autrement dit, lors d’une attaque, il est nécessaire d’évaluer 2⁴⁰ possibilités pour épuiser tous les mots de passes équivalents et être sûr de découvrir le mot de passe.
Cela signifie également que lorsqu’un mot de passe gagne 1 bit d’entropie, sa complexité est multipliée par 2.
Ce qu'il faut retenir, c'est que plus l'entropie est importante et plus il est difficile de trouver le mot de passe
Les attaques par Brute Force
Le principe du brute force est simple : vous allez tester toutes les combinaisons possibles jusqu'à trouver la bonne !
Vous allez donc tester "a", "aa", "aaa", "aab", "abb", etc.
Entropie de Tr0ub4dor&3
Le mot de passe est composé de minuscules, de majuscules, de chiffres et d'un caractère spécial.
Le mot de passe a donc les possibilités suivantes :
- 26 lettres pour les majuscules
- 26 lettres pour les minuscules
- 10 chiffres
- 16 caractères spéciaux (j'ai pris ici les plus courants mais il y a plus où moins selon les sensibilités)
Cela nous donne le résultat suivant :
Le mot de passe fait 11 caractères de long donc, nous avons :
Il y a donc 2^69 bits possibilités.
Entropie de vaissellemyriadeparisroseau
Ici le calcul est plus simple car il n'y a que des minuscules.
Le mot de passe a donc la possibilité suivante :
- 26 lettres pour les minuscules
Cela nous donne le résultat suivant :
Le mot de passe fait 27 caractères de long donc, nous avons :
Il y a donc 2^126 bits possibilités.
Résultats
Pour cet exemple, je vais partir du principe que notre petit Hacker en herbe est doté d'un PC classique moyennement puissant équipe d'une carte graphique de type NVIDIA GeForce GTX 660.
Cette carte est capable de réaliser environ 2.000.000.000 de tests par seconde.
Pour nos deux mots de passe, le PC de notre Hacker pourrait cracker les deux mots de passe avec un temps de calcul de :
- Tr0ub4dor&3 : 9300 ans
- vaissellemyriadeparisroseau : 10^21 ans
On pourrait penser que c'est beaucoup, mais en réalité c'est peu !
Les Rig Password Cracking
Il existe sur le marché des fermes entières de GPU (cartes graphiques) qui peuvent être louées pour des prix dérisoires.
Par exemple, pour la location de 16 cartes graphiques pour une journée sur les serveurs d'AWS (Amazon Web Service), cela coûte seulement 350$.
Sachant que les dernières cartes graphiques développent 65.000.000.000 de tests par secondes, notre Hacker pourrait cracker les deux mots de passe beaucoup plus rapidement...
Conclusion
De manière générale, les attaques par Brute Force sont très efficaces sur les mots de passe courts et sur les mots de passe avec peu de caractères différents.
Ils sont d'autant plus redoutables que les puissances de calcul sont aujourd'hui astronomiques et surtout à portée de monsieur tout le monde !
Dans le prochain article, nous verrons les attaques par dictionnaire !
💌 Vous aimez l'article que vous avez lu ?
Pensez à vous inscrire et découvrez d'autres articles seulement visibles pour la communauté ! Et en bonus, un nouvel article chaque dimanche ! 😀