J’ai craqué mon propre mot de passe pour voir à quel point c’est facile

Il est essentiel de créer un mot de passe fort et unique pour chaque compte que vous créez. Mais vous êtes-vous déjà demandé comment votre mot de passe fort est décomposé et craqué pour permettre aux pirates d’accéder à vos comptes ?

J’ai testé trois mots de passe différents à l’aide d’un outil de craquage de mots de passe open-source afin de découvrir ce qui fonctionne vraiment en matière de sécurité des mots de passe.

Qu’est-ce que le piratage de mots de passe ?

Lucas Gouveia / lizengo.fr

Lorsque vous créez un compte sur un service en ligne, le fournisseur crypte généralement (et espérons-le) vos données de connexion sur son serveur. Pour ce faire, il utilise un algorithme qui crée un « hachage », une chaîne apparemment aléatoire de lettres et de chiffres propre à votre mot de passe. Bien sûr, ce n’est pas vraiment aléatoire – il s’agit d’une chaîne de caractères très particulière que seul votre mot de passe peut constituer – mais pour un œil non averti, cela ressemble à un fouillis.

Il est beaucoup plus rapide et facile de transformer un mot en hachage que de « démêler » un hachage pour en faire à nouveau un mot. Ainsi, lorsque vous définissez votre mot de passe, le service auquel vous vous connectez le soumet à un hachage, puis stocke le résultat sur son serveur.

Si ce fichier de mots de passe est divulgué, les pirates essaieront d’en découvrir le contenu en recourant au craquage de mots de passe. Comme il est plus rapide de crypter un mot de passe que de le décrypter, les pirates mettront en place un système qui prendra en entrée des mots de passe potentiels, les cryptera en utilisant la même méthode que le serveur, puis comparera le résultat à la base de données de mots de passe.

Si le hachage du mot de passe potentiel correspond à l’une des entrées de la base de données, le pirate sait que chaque résultat correspond au mot de passe potentiel qui a été essayé.

Comment j’ai piraté mes propres mots de passe à l’aide de HashCat

D’accord, craquons quelques mots de passe que j’ai construits pour voir à quel point c’est facile. Pour ce faire, j’utiliserai Hashcat un craqueur de mots de passe gratuit et open-source disponible pour tout le monde.

Pour ces tests, je vais craquer les mots de passe suivants :

  1. 123456: Mot de passe classique et cauchemar de la cybersécurité, 123456 est le mot de passe le plus utilisé au monde. NordPass a calculé que 3 millions de comptes utilisaient 123456 comme mot de passe, dont 1,2 million protégeaient des comptes d’entreprise.
  2. Susan48 ! Un mot de passe qui suit les modèles que la plupart des utilisateurs utilisent pour créer un mot de passe sûr. Ce mot de passe répond généralement aux critères d’hygiène de base, mais comme nous le verrons plus loin, il présente des faiblesses critiques qui peuvent être exploitées.
  3. t9^kJ$2q9a : Un mot de passe que j’ai créé en utilisant le générateur de Bitwarden. Il a été configuré pour générer un mot de passe de 10 caractères utilisant des lettres majuscules et minuscules, des symboles et des chiffres.
Voir aussi :  J'utilise what3words pour compléter Google Maps : Ici'Comment ça marche

Maintenant que nous avons nos mots de passe, je les ai cryptés en utilisant MD5. Voici comment les mots de passe apparaîtraient s’ils se trouvaient dans un fichier de mots de passe sauvegardé :

  1. 123456: e10adc3949ba59abbe56e057f20f883e
  2. Susan48! : df1ce7227606805745ee6cbc644ecbe4
  3. t9^kJ$2q9a : 450e4e0ad3ed8766cb2ba83081c0a625

Maintenant, il est temps de les craquer.

Réalisation d’un craquage simple à l’aide d’une attaque par dictionnaire

Pour commencer, effectuons une attaque par dictionnaire, l’une des méthodes les plus courantes pour attaquer les mots de passe. Il s’agit d’une attaque simple qui consiste à prendre une liste de mots de passe potentiels, à les faire convertir en MD5 par Hashcat et à voir si l’un d’entre eux correspond aux trois entrées ci-dessus. Pour cette expérience, j’utilise le fichier « rockyou.txt » comme dictionnaire, qui a été l’une des plus grandes fuites de mots de passe de l’histoire.

Pour commencer à craquer, je vais dans le dossier où se trouve Hashcat, je fais un clic droit sur un espace vide et je clique sur Ouvrir dans le terminal. Maintenant que le terminal est ouvert et placé dans le répertoire Hashcat, j’invoque l’application Hashcat avec la commande suivante :

Voici ce que fait la commande :

  1. NHashcat invoque Hashcat.
  2. -m 0 : Définit le type de cryptage que nous allons utiliser. Dans ce cas, nous utiliserons MD5, qui est listé comme numéro 0 dans le document d’aide de Hashcat.
  3. -a 0 : Définit l’attaque que nous voulons effectuer. La documentation d’aide de Hashcat liste l’attaque par dictionnaire comme numéro 0, nous l’invoquons donc ici.
  4. passwordfile.txt rockyou.txt: Le premier fichier comprend les trois mots de passe cryptés que nous avons mis en place plus tôt. Le second est la base de données complète des mots de passe de rockyou.
  5. -o results.txt: Cette variable définit l’emplacement du résultat. Dans ma commande, les mots de passe craqués sont placés dans un fichier TXT appelé « results ».

Malgré la taille énorme de rockyou, Hashcat les a tous déchiffrés en six secondes. Dans le fichier de résultats, Hashcat indique qu’il a déchiffré le mot de passe 123456, mais que les mots de passe Susan et Bitwarden n’ont pas été déchiffrés. Cela s’explique par le fait que le mot de passe 123456 a été utilisé par quelqu’un d’autre dans le fichier rockyou.txt, mais que personne d’autre n’a utilisé les mots de passe Susan ou Bitwarden, ce qui signifie qu’ils étaient suffisamment uniques pour survivre à cette attaque.

Voir aussi :  8 façons simples de rendre votre compte TikTok plus privé

Réalisation d’un craquage plus complexe à l’aide d’attaques de force brute masquées

Les attaques par dictionnaire fonctionnent lorsque quelqu’un utilise le même mot de passe que celui figurant dans une liste de mots de passe plus importante. Elles sont rapides et faciles à réaliser, mais elles ne permettent pas de craquer les mots de passe qui ne figurent pas dans le dictionnaire. Par conséquent, si nous voulons vraiment tester nos mots de passe, nous devons utiliser des attaques par force brute.

Si les attaques par dictionnaire consistent à prendre une liste préétablie et à la convertir une à une, les attaques par force brute font de même, mais avec toutes les combinaisons possibles et imaginables. Elles sont plus difficiles à réaliser et prennent beaucoup plus de temps, mais elles finissent par déchiffrer n’importe quel mot de passe. Comme nous le verrons bientôt, cette éventualité peut parfois prendre beaucoup de temps.

Voici la commande que j’ai utilisée pour effectuer une « véritable » attaque par force brute :

Voici ce que fait la commande :

  1. -a 3 : Cette variable définit l’attaque que nous voulons effectuer. La documentation d’aide de Hashcat liste les attaques par force brute en numéro 3, nous l’invoquons donc ici.
  2. target.txt : Le fichier contenant le mot de passe crypté que nous voulons déchiffrer.
  3. –increment : Cela indique à Hashcat d’essayer tous les mots de passe d’un caractère, puis de deux, puis de trois, et ainsi de suite jusqu’à ce que nous obtenions la solution.
  4. ?a?a?a?a?a?a?a?a?a?a?a?a?a?a ?: C’est ce qu’on appelle un « masque ». Les masques permettent d’indiquer à Hashcat quels caractères utiliser à quel endroit. Chaque point d’interrogation désigne une position de caractère dans le mot de passe, et la lettre dicte ce que nous essayons à chaque endroit. La lettre « a » représente les caractères majuscules et minuscules, les chiffres et les symboles, de sorte que ce masque dit « Essayez tout à chaque emplacement ». C’est un masque terrible, mais nous l’utiliserons à bon escient plus tard.
  5. -o output.txt: Cette variable définit l’emplacement du résultat. Ma commande place les mots de passe craqués dans un fichier TXT appelé « output ».

Même avec cet horrible masque, le mot de passe 123456 a été cassé en 15 secondes. Bien qu’il s’agisse du mot de passe le plus populaire, c’est l’un des plus faibles.

Le mot de passe « Susan48 ! » était bien meilleur – mon PC a indiqué qu’il faudrait quatre jours pour le craquer à l’aveugle. Cependant, il y avait un problème. Vous vous souvenez que j’ai dit que le mot de passe « Susan » présentait des failles importantes ? Le plus important est que le mot de passe est construit de manière prévisible.

Voir aussi :  Tout le monde peut essayer de faire de l'art numérique avec les applications que vous utilisez déjà : ici's Comment

Lorsque nous créons un mot de passe, nous plaçons généralement des éléments spécifiques à des endroits spécifiques. Vous pouvez imaginer que la personne qui a créé le mot de passe Susan a d’abord essayé d’utiliser « susan », mais qu’on lui a demandé d’ajouter des lettres majuscules et des chiffres. Pour faciliter la mémorisation, elle a mis la première lettre en majuscule et ajouté les chiffres à la fin. Ensuite, peut-être qu’un service de connexion a demandé un symbole, alors notre créateur de mot de passe l’a ajouté à la fin.

En tant que tel, nous pouvons utiliser le masque pour indiquer à Hashcat de n’essayer que des caractères spécifiques à des endroits spécifiques afin d’exploiter la prévisibilité des personnes lors de la création d’un mot de passe. Dans ce masque, « ?u » n’utilisera que des lettres majuscules à cette position, « ?l » n’utilisera que des lettres minuscules, et « ?a » représente n’importe quel caractère :

Avec ce masque, Hashcat casse le mot de passe en trois minutes et 10 secondes, ce qui est beaucoup plus rapide que quatre jours.

Le mot de passe Bitwarden est composé de dix caractères et n’utilise pas de motifs prévisibles, de sorte que je devrais procéder à une attaque par force brute sans aucun masquage pour le déchiffrer. Malheureusement, lorsque j’ai demandé à Hashcat de faire cela, il a lancé une erreur, disant que le nombre de combinaisons possibles dépassait la limite des nombres entiers. Gourou de la sécurité informatique affirme qu’il faudrait trois ans pour déchiffrer le mot de passe Bitwarden, ce qui me suffit.

Comment protéger vos comptes contre le piratage des mots de passe

Alors, que pouvons-nous apprendre de tout cela ? Les principaux facteurs qui m’ont empêché de craquer le mot de passe de Bitwarden étaient sa longueur (10 caractères) et son imprévisibilité. Par conséquent, lorsque vous créez des mots de passe, essayez de les rendre aussi longs que possible et parsemez-les de symboles, de chiffres et de majuscules. Cela empêche les pirates d’utiliser des masques pour prédire où se trouve chaque élément et rend les mots de passe beaucoup plus difficiles à déchiffrer.

Vous connaissez peut-être déjà de vieux adages sur les mots de passe, tels que « utilisez un tableau de caractères » et « faites-le aussi long que possible ». Avec un peu de chance, vous savez pourquoi les gens recommandent ces conseils pratiques : ils font la différence entre un mot de passe craqué et un mot de passe sûr.

Cliquez pour évaluer cet article !
[Total: Moyenne : ]

Laisser un commentaire

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