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…
Table des matières
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.