Kali Linux est doté d’une multitude d’outils conçus pour faciliter les tests de sécurité. Les listes de mots, en particulier, jouent un rôle déterminant dans divers aspects de la cybersécurité et dans les opérations liées aux mots de passe.
L’outil crunch, disponible sous Linux, permet de créer divers types de listes de mots, utiles lors de tests de sécurité. La maîtrise de cet outil représente un atout précieux. Voici un guide sur l’installation et l’utilisation efficace de crunch pour la génération de listes de mots sur Kali Linux.
Installation de Crunch sur Kali Linux
Crunch est généralement préinstallé sur Kali Linux. Cependant, si ce n’est pas le cas, l’installation est simple via les dépôts officiels. Commencez par mettre à jour vos dépôts système avec la commande suivante :
sudo apt update
Puis, installez le paquet crunch en utilisant cette commande :
sudo apt install crunch
Utilisation de la commande crunch sous Linux
Pour obtenir une introduction à crunch, exécutez la commande :
crunch -h
Cette commande affiche un aperçu de crunch et de sa syntaxe.
Pour une description plus détaillée de crunch et de ses options, vous pouvez consulter sa page de manuel via la commande :
man crunch
Syntaxe de base
La syntaxe de base de crunch est la suivante :
crunch <min> <max> [options]
min
représente la longueur minimale des mots générés, et max
, leur longueur maximale. Si vous souhaitez une longueur de mots fixe, définissez min
et max
sur la même valeur.
De nombreuses options de crunch permettent de créer des listes de mots variées.
Par exemple, pour créer une liste avec toutes les combinaisons de trois caractères à partir de « abc », utilisez :
crunch 3 3 abc
Définition des plages de caractères
Vous pouvez affiner vos listes en spécifiant des plages de caractères. Par exemple, pour générer une liste avec toutes les lettres minuscules de quatre à six caractères de longueur, utilisez :
crunch 4 6 abcdefghijklmnopqrstuvwxyz
Pour une liste de mots composée uniquement de chiffres, utilisez :
crunch 10 10 0123456789
Vous avez la possibilité de contrôler la longueur des mots.
Exportation de la liste de mots vers un fichier
L’option -o
permet de définir le fichier de sortie. Pour générer une liste de mots avec des combinaisons de « abc123 », de quatre caractères, et l’enregistrer dans « wordlist.txt », exécutez :
crunch 4 4 abc123 -o wordlist.txt
Utilisation du mode Bruteforce
L’option -b
permet de spécifier un ensemble de caractères pour une génération par force brute. Le mode normal génère des listes en combinant des caractères dans une plage de longueur. Le mode -b
est plus exhaustif, car il crée des listes de mots en générant des permutations à partir d’un jeu de base, assurant une couverture de toutes les combinaisons possibles.
crunch 6 6 -b 1234567890abcdef -o bruteforce.txt
Cette commande génère une liste avec toutes les combinaisons de six caractères possibles à partir de « 1234567890abcdef », et l’enregistre dans « bruteforce.txt ».
Utilisation du mode combinaison
L’option -c
permet de générer des combinaisons de caractères à partir de plusieurs ensembles.
crunch 8 8 -c 1@% -o combinations.txt
Cette commande combine les caractères des ensembles 1 et @% pour créer toutes les combinaisons possibles de huit caractères, enregistrées dans « combinations.txt ».
Création de listes de mots avec un modèle personnalisé
L’option -t
permet de baser la génération sur un modèle personnalisé.
crunch 8 8 -t MyPass@@@@ -o unique.txt
Cette commande crée une liste où @@@@ représente des caractères variables et « MyPass » reste fixe. La liste est enregistrée dans « unique.txt ».
La liste résultante contiendra des mots suivant le modèle spécifié, avec « MyPass » suivi de quatre caractères variables. Cela est particulièrement utile pour créer des listes adaptées à des formats spécifiques, ou pour tester des mots de passe suivant un schéma prévisible. Pour éviter les mots de passe trop faciles à deviner, il est crucial de tenir compte des erreurs courantes lors de leur création.
Création de listes via un dictionnaire
L’option -f
permet d’utiliser un fichier de dictionnaire comme source.
crunch 6 6 -f /usr/share/dict/words -o dictionary-list.txt
Cet exemple génère une liste de mots de six caractères, en utilisant les mots du dictionnaire comme base, et l’enregistre dans « dictionary-list.txt ».
Génération de mots sans répétition de caractères
Pour générer des mots sans répétition de caractères, utilisez l’option -p
. Cette option assure l’unicité des caractères dans chaque mot.
Par exemple, pour générer une liste de mots de six caractères sans répétition, utilisez :
crunch 6 6 -p ABCDEF -o non-repeating-words.txt
Cette commande génère des mots à partir des caractères A, B, C, D, E et F, sans répétition, et les enregistre dans « non-repeating-words.txt ».
Utilisation de Crunch avec d’autres commandes Linux
Il existe de nombreuses commandes Linux permettant de générer des listes de mots très spécifiques. La clé est de savoir les utiliser efficacement !
Vous pouvez combiner crunch avec des commandes comme grep et sort pour filtrer et trier les listes, wc pour compter les entrées, et hydra pour des attaques par dictionnaire.