Cracker les mots de passe Linux avec Kali

Dans ce tutoriel, je vais vous expliquer comment casser/craquer/hacker ou simplement récupérer le ou les mots de passe des utilisateurs sur Linux à l’aide de Kali.

Pour la réalisation de ce tutoriel, j’ai utilisé la distribution Linux : Kali, il est tout à fait possible de le faire depuis un autre distribution en téléchargeant et installant les outils nécessaire.

L’exercice de ce tutoriel peut être un bon exercice pour tester vos différents mot de passe afin de voir en combien de temps, ils peuvent être « casser ».

Sur Linux, les mots de passe sont stockés dans le fichier /etc/shadow et les utilisateurs dans le dossier /etc/passwd.

Comme on peut le voir sur les captures, le hash du mot de passe est en réalité dans le fichier shadow, le fichier passwd contient les utilisateurs.

Sur l’ordinateur où Kali fonctionne, créer un dossier, ici je l’ai nommé vmrdrit et ensuite aller dans le dossier :

mkdir vmrdrit
cd vmrdrit

Dans ce dossier, on va maintenant créer deux fichiers : passwd et shadow dans les lesquels on va coller le contenu des fichiers du linux que l’on souhaite « craquer ».

La première étape, va être de regrouper ces deux fichiers en un seul avec unshadow afin de pouvoir passer ce nouveau fichier à John ou hashcat.

Entrer la commande ci-dessous :

sudo unshadow passwd shadow > password.txt

Maintenant on a un fichier password.txt, qui est une fusion des fichiers passwd et shadow.

Maintenant, il ne reste plus qu’à utiliser l’outil john en lui passant en paramètre le fichiers password.txt pour qu’il trouve le mot de passe.

Utiliser la commande ci-dessous :

sudo john password.txt

Sur la capture, on peut voir que john a détecté automatiquement le type de hash sha512crypt, crypt(3) $6$ [SHA512 256/256 AVX2 4x]

Il ne reste plus qu’à patienter et attendre que le mot de passe soit trouvé, il est possible de suivre la progression en appuyant sur un touche (sauf q ou la combinaison Ctrl+C qui arrête John).

La durée pour trouver un mot de passe est très variable et plusieurs paramètres sont à prendre en compte :

  • Force du mot de passe (longueur et type de caractères)
  • Matériel utilisé, il est préférable d’utiliser des cartes graphiques et que de la puissance CPU

Au bout d’un certain temps (ici un peu plus de 20 minutes car le mot de passe est simple), on peut voir que le mot de passe de l’utilisateur romain est affiché.

Pour afficher de nouveau le ou les mot de passes, il suffit de se replacer dans le dossier où se trouve le fichier password.txt et d’entrer la commande :

sudo john password.txt --show

Vous savez maintenant comment récupérer un mot de passe sur Linux.

Bien évidement, vous devez avoir accès aux fichiers de la machine et notamment aux fichiers /etc/passwd et /etc/shadow.

Si jamais vous devez interrompre, john, il est possible de reprendre à l’aide de la commande suivante :

sudo john --restore

Si vous cherchez l’historique des mots de passe, il se trouve dans le fichier /root/.john/john.pot.

Dans le fichier john.pot se trouve seulement la correspondance hash:password, donc sans le fichier passwd et shadow, on ne peut pas avoir la correspondance.

Comme on peut le voir, j’ai fais deux voir la manipulation sur deux machines différentes avec le même mot de passe et les hash sont différents.


Ce tutoriel est rédigé à but de démonstration et pédagogique, l’utilisation de ces outils à des fins de piratage est illégale sauf dans le cadre d’audit.