Aide-mémoire John the Ripper

Référence complète de cassage de mots de passe

Attaques par dictionnaire • Règles • Formats de hachage • Multi-plateformes

📅 Mis à jour : Décembre 2024⏱️ 20 min de lecture🔧 John 1.9.0+

Qu'est-ce que John the Ripper ?

John the Ripper est un outil gratuit et open-source de cassage de mots de passe. Développé à l'origine pour Unix, il fonctionne désormais sur de nombreuses plateformes et supporte des centaines de types de hachage. La version "Jumbo" ajoute encore plus de formats et de fonctionnalités.

John est pré-installé sur Kali Linux. Site officiel : openwall.com/john.

📦 Installation

Kali Linux

sudo apt install john

Version Jumbo (recommandée)

git clone https://github.com/openwall/john
cd john/src && ./configure && make

macOS (Homebrew)

brew install john-jumbo

🎯 Utilisation de base

# Casser avec les paramètres par défaut (détection auto du format)
john hashes.txt

# Utiliser un dictionnaire
john --wordlist=/usr/share/wordlists/rockyou.txt hashes.txt

# Spécifier le format de hachage
john --format=raw-md5 hashes.txt

# Afficher les mots de passe cassés
john --show hashes.txt

# Lister les formats supportés
john --list=formats

# Vérifier le statut de la session
john --status

# Restaurer une session interrompue
john --restore

⚔️ Modes d'attaque

Mode Option Description
Single --single Utilise les noms de login, GECOS, noms de répertoire
Wordlist --wordlist=FILE Attaque par dictionnaire
Incremental --incremental Force brute de toutes les combinaisons
Mask --mask=MASK Force brute basée sur un motif
External --external=MODE Fonctions personnalisées de type C
# Mode single (le plus rapide, utilise les noms d'utilisateur)
john --single hashes.txt

# Dictionnaire avec règles
john --wordlist=rockyou.txt --rules hashes.txt

# Incrémental (minuscules, jusqu'à 8 caractères)
john --incremental=Lower hashes.txt

# Mode masque
john --mask='?u?l?l?l?d?d?d?d' hashes.txt

🎭 Caractères du mode masque

Joker Jeu de caractères
?l Minuscules (a-z)
?u Majuscules (A-Z)
?d Chiffres (0-9)
?s Caractères spéciaux
?a Tous les caractères ASCII imprimables
?h Hexadécimal minuscule (0-9, a-f)
?H Hexadécimal majuscule (0-9, A-F)
# Motif Password1
john --mask='?u?l?l?l?l?l?l?l?d' hashes.txt

# Code PIN à 8 chiffres
john --mask='?d?d?d?d?d?d?d?d' hashes.txt

# Préfixe statique avec suffixe variable
john --mask='Company?d?d?d?d' hashes.txt

📋 Formats de hachage courants

Format Description
raw-md5 MD5 brut
raw-sha1 SHA1 brut
raw-sha256 SHA256 brut
raw-sha512 SHA512 brut
sha512crypt Fichier shadow Linux ($6$)
sha256crypt Fichier shadow Linux ($5$)
md5crypt MD5 crypt Linux/BSD ($1$)
bcrypt Blowfish crypt ($2a$, $2b$, $2y$)
nt Windows NTLM
lm Windows LM
mscash2 MS Cache 2 (Domain Cached)
krb5tgs Kerberos TGS
# Lister tous les formats
john --list=formats

# Rechercher un format
john --list=formats | grep -i mysql

🔧 Outils d'extraction de hachage (*2john)

John inclut de nombreux outils pour extraire les hachages de divers types de fichiers :

# Fichier shadow Linux
unshadow /etc/passwd /etc/shadow > unshadowed.txt

# Fichier ZIP
zip2john protected.zip > zip.hash

# Fichier RAR
rar2john protected.rar > rar.hash

# Fichier 7z
7z2john protected.7z > 7z.hash

# Fichier PDF
pdf2john protected.pdf > pdf.hash

# Documents Office
office2john document.docx > office.hash

# Clé privée SSH
ssh2john id_rsa > ssh.hash

# Base de données KeePass
keepass2john database.kdbx > keepass.hash

# Clé privée GPG/PGP
gpg2john private.key > gpg.hash

# Tickets Kerberos
kirbi2john ticket.kirbi > kirbi.hash

📜 Règles de transformation de mots

# Utiliser les règles par défaut
john --wordlist=rockyou.txt --rules hashes.txt

# Utiliser un jeu de règles spécifique
john --wordlist=rockyou.txt --rules=best64 hashes.txt

# Règles Jumbo (plus complètes)
john --wordlist=rockyou.txt --rules=jumbo hashes.txt

# Lister les règles disponibles
john --list=rules

Jeux de règles courants

Single Règles par défaut du mode single
Wordlist Règles par défaut du dictionnaire
best64 Top 64 des règles les plus efficaces
jumbo Jeu de règles complet
KoreLogic Règles très approfondies

⚡ Options de performance

Option Description
--fork=N Créer N processus pour le cassage parallèle
--node=X/Y Répartir le travail pour le cassage distribué
--devices=N Sélection du périphérique OpenCL
--min-length=N Longueur minimale du mot de passe
--max-length=N Longueur maximale du mot de passe
# Utiliser tous les cœurs CPU
john --fork=8 --wordlist=rockyou.txt hashes.txt

💾 Gestion des sessions

# Nommer une session
john --session=mycrack --wordlist=rockyou.txt hashes.txt

# Restaurer une session
john --restore=mycrack

# Vérifier le statut (pendant l'exécution)
john --status=mycrack

# Afficher les mots de passe cassés
john --show hashes.txt

# Afficher au format utilisateur:mot_de_passe
john --show --format=raw-md5 hashes.txt

🔥 Scénarios de cassage courants

# Casser un fichier shadow Linux
unshadow /etc/passwd /etc/shadow > hashes.txt
john hashes.txt

# Casser des hachages NTLM
john --format=nt --wordlist=rockyou.txt ntlm_hashes.txt

# Casser MD5 avec règles
john --format=raw-md5 --wordlist=rockyou.txt --rules hashes.txt

# Casser un ZIP chiffré
zip2john file.zip > zip.hash
john zip.hash

# Casser une clé privée SSH
ssh2john id_rsa > ssh.hash
john ssh.hash

# Casser des tickets Kerberoast
john --format=krb5tgs --wordlist=rockyou.txt kerberos.hash

🔐 Aide-mémoire John the Ripper terminé !

Vous disposez maintenant d'une référence complète pour l'un des outils de cassage de mots de passe les plus légendaires. Des fichiers shadow aux archives chiffrées, ces commandes sont essentielles pour tout professionnel de la sécurité.

Wordlist Règles Masque Extraction Formats

Prêt à casser votre prochain hachage !

Validation des Connaissances

Démontrez votre compréhension pour gagner des points et progresser

1
Question du Chapitre

Quel flag John the Ripper spécifie un fichier wordlist personnalisé ?

1
Lire
2
Valider
3
Terminer

Prêt à suivre votre progression?

Créez un compte gratuit pour sauvegarder votre progression, gagner des points et accéder à plus de 170 labs pratiques de cybersécurité.

Commencer à Apprendre Gratuitement
Rejoignez 5 000+ hackers qui apprennent la cybersécurité avec des labs pratiques. Créer un Compte