Comment cracker les mots de passe à l’aide de l’outil Hashcat ?

Dans le piratage éthique et les tests d’intrusion, le piratage de mots de passe est crucial pour accéder à un système ou à un serveur.

Dans les systèmes et les bases de données, les mots de passe sont rarement enregistrés sous forme de texte brut.

Les mots de passe sont toujours hachés avant d’être stockés dans la base de données, et le hachage est comparé pendant le processus de vérification.

Selon le cryptage utilisé, différents systèmes stockent les hachages de mots de passe de différentes manières. Et si vous avez des hachages, vous pouvez facilement déchiffrer n’importe quel mot de passe.

Et dans cet article, nous allons explorer comment déchiffrer les hachages de mot de passe à l’aide d’un excellent et pratique outil de ligne de commande Hashcat.

Alors, commençons.

Mais avant ça…

Qu’est-ce qu’une fonction de hachage ?

Le hachage est le processus de conversion d’un texte d’entrée normal en une chaîne de texte de taille fixe à l’aide d’une fonction mathématique connue sous le nom de fonction de hachage. Tout texte, quelle que soit sa longueur, peut être transformé en une combinaison aléatoire d’entiers et d’alphabets à l’aide d’un algorithme.

  • L’entrée fait référence au message qui sera haché.
  • La fonction de hachage est l’algorithme de chiffrement comme MD5 et SHA-256 qui convertit une chaîne en une valeur de hachage.
  • Et enfin, la valeur de hachage est le résultat.

Qu’est-ce qu’Hashcat ?

Chat de hachis est l’outil de récupération de mot de passe le plus rapide. Il a été conçu pour casser les mots de passe très complexes en peu de temps. Et cet outil est également capable d’attaquer à la fois par liste de mots et par force brute.

Hashcat a deux variantes. Basé sur CPU et GPU (unité de traitement graphique). L’outil basé sur GPU peut casser les hachages en moins de temps que le CPU. Vous pouvez vérifier les exigences du pilote GPU sur leur site officiel.

Fonctionnalités

  • Gratuit et open source
  • Plus de 200 variantes de type de hachage peuvent être implémentées.
  • Prend en charge les systèmes multi-exploitation tels que Linux, Windows et macOS.
  • Des multi-plateformes telles que la prise en charge du CPU et du GPU sont disponibles.
  • Plusieurs hachages peuvent être crackés en même temps.
  • Les fichiers Hex-salt et hex-charset sont pris en charge, ainsi que le réglage automatique des performances.
  • Un système d’analyse comparative intégré est disponible.
  • Les réseaux de craquage distribués peuvent être pris en charge à l’aide de superpositions.

Et vous pouvez également voir d’autres fonctionnalités sur leur site Web.

Installation de Hashcat

Tout d’abord, assurez-vous que votre système Linux est à jour avec les programmes et outils les plus récents.

Pour cela, ouvrez un terminal et tapez :

$ sudo apt update && sudo apt upgrade

Hashcat est généralement préinstallé dans Kali Linux. Vous pouvez trouver l’outil dans la section de craquage de mot de passe. Mais si vous devez l’installer manuellement dans n’importe quelle distribution Linux, tapez la commande suivante dans le terminal.

$ sudo apt-get install hashcat

Utilisation de l’outil

Pour commencer avec Hashcat, nous aurons besoin de hachages de mots de passe. Si vous n’avez pas de hachage à casser, nous allons d’abord créer des hachages.

Pour créer des hachages à l’aide de la ligne de commande, suivez simplement le format ci-dessous.

echo -n "input" | algorithm | tr -d "-">>outputfiename

Par exemple, vous pouvez voir que j’ai transformé certains mots en hachages en utilisant l’algorithme md5 ci-dessous.

┌──(root💀kali)-[/home/writer/Desktop]
└─# echo -n "toptips.fr" | md5sum | tr -d "-">>crackhash.txt
echo -n "password123" | md5sum | tr -d "-">>crackhash.txt
echo -n "Webtechnology" | md5sum | tr -d "-">>crackhash.txt
echo -n "microsoftteams" | md5sum | tr -d "-">>crackhash.txt
echo -n "recyclebin" | md5sum | tr -d "-">>crackhash.txt

Et la sortie sera enregistrée dans le fichier crackhash.txt.

Nous allons maintenant vérifier les hachages qui ont été enregistrés dans le fichier donné.

┌──(root💀kali)-[/home/writer/Desktop]
└─# cat crackhash.txt

066d45208667198296e0688629e28b14
482c811da5d5b4bcd497ffeaa98491e3
72a2bc267579aae943326d17e14a8048
2192d208d304b75bcd00b29bc8de5024
caae8dd682acb088ed63e2d492fe1e13

Vous pouvez le voir, nous avons maintenant des hachages à casser. C’est la procédure pour créer un hachage en utilisant l’algorithme de votre choix.

L’étape suivante consiste à démarrer un outil Hashcat sur votre machine Linux. Utilisez simplement la commande suivante pour utiliser Hashcat.

$ hashcat --help

Il affichera toutes les options dont vous aurez besoin pour exécuter l’outil. Sur le terminal, vous pouvez trouver tous les modes d’attaque et de hachage.

La forme générale de la commande est

$ hashcat -a num -m num hashfile wordlistfile

Ici, le ‘num’ représente une attaque spécifique et un mode de hachage à utiliser. Si vous faites défiler le terminal, vous pouvez trouver les nombres exacts pour chaque mode d’attaque et de hachage, comme pour md4 – le nombre est 0, et pour l’algorithme sha256 – le nombre est 1740.

La liste de mots que je vais utiliser est la liste de mots rockyou. Vous pouvez facilement trouver cette liste de mots dans le chemin /usr/share/wordlists.

Vous pouvez même utiliser la commande locate pour trouver ce chemin de liste de mots.

┌──(root💀kali)-[/home/writer]
└─# locate rockyou.txt

Et enfin, pour déchiffrer les hachages à l’aide du fichier de liste de mots, utilisez la commande suivante.

$ hashcat -a 0 -m 0 ./crackhash.txt rockyou.txt

Après avoir exécuté cette commande, vous pouvez obtenir une erreur d’exécution (erreur d’exception de longueur de jeton) qui peut être résolue facilement.

Pour résoudre ce problème, enregistrez chaque hachage séparément dans un fichier différent. Cette erreur se produit si vous avez une vitesse CPU ou GPU faible. Si votre ordinateur dispose d’un processeur à grande vitesse, vous pouvez facilement déchiffrer tous les hachages en même temps qu’un seul fichier lui-même.

Donc, après avoir corrigé l’erreur et tout, le résultat sera comme ça.

┌──(root💀kali)-[/home/writer/Desktop]
└─# hashcat -a 0 -m 0 hashcrack.txt rockyou.txt
hashcat (v6.1.1) starting...

OpenCL API (OpenCL 1.2 pocl 1.6, None+Asserts, LLVM 9.0.1, RELOC, SLEEF, DISTRO, POCL_DEBUG) - Platform #1 [The pocl project]
=============================================================================================================================
* Device #1: pthread-Intel(R) Core(TM) i5-8265U CPU @ 1.60GHz, 2403/2467 MB (1024 MB allocatable), 4MCU

Minimum password length supported by kernel: 0
Maximum password length supported by kernel: 256

Hashes: 1 digests; 1 unique digests, 1 unique salts
Bitmaps: 16 bits, 65536 entries, 0x0000ffff mask, 262144 bytes, 5/13 rotates
Rules: 1

Dictionary cache built:
* Filename..: rockyou.txt
* Passwords.: 14344405
* Bytes.....: 139921671
* Keyspace..: 14344398
* Runtime...: 1 sec

8276b0e763d7c9044d255e025fe0c212: [email protected]
                                                 
Session..........: hashcat
Status...........: Cracked
Hash.Name........: MD5
Hash.Target......: 8276b0e763d7c9044d255e025fe0c212
Time.Started.....: Sun Dec 12 08:06:15 2021 (0 secs)
Time.Estimated...: Sun Dec 12 08:06:15 2021 (0 secs)
Guess.Base.......: File (rockyou.txt)
Guess.Queue......: 1/1 (100.00%)
Speed.#1.........:  1059.6 kH/s (0.52ms) @ Accel:1024 Loops:1 Thr:1 Vec:8
Recovered........: 1/1 (100.00%) Digests
Progress.........: 4096/14344398 (0.03%)
Rejected.........: 0/4096 (0.00%)
Restore.Point....: 0/14344398 (0.00%)
Restore.Sub.#1...: Salt:0 Amplifier:0-1 Iteration:0-1
Candidates.#1....: 123456 -> pampam

Started: Sun Dec 12 08:06:13 2021
Stopped: Sun Dec 12 08:06:16 2021

Dans le résultat ci-dessus, après les détails du cache du dictionnaire, vous pouvez remarquer que le hachage a été fissuré et que le mot de passe a été révélé.

Conclusion

J’espère que vous avez acquis une meilleure compréhension de l’utilisation de Hashcat pour déchiffrer les mots de passe.

Vous voudrez peut-être également connaître les différents outils de force brute pour les tests d’intrusion et certains des meilleurs outils de test d’intrusion.