Introduction

Rainbowcrack est un outil pour cracker les hash de mots de passe. Il utilise les tabes arc en ciel qui se base sur la technique de compromis temps-mémoire. Cette technique, différente de l’attaque par force brute, réduit considérablement le temps nécessaire pour casser un mot de passe.

Qu’est ce qu’une table arc en ciel ?

La technique par force brute génère tous les textes clairs possibles et calcul le hash correspondant, puis elle compare les valeurs de hash résultantes avec le hash à craquer. Par contre, dans la technique de compromis temps-mémoire, la tâche de calcul de hachage est effectué à l'avance et les résultats sont stockés dans les « Rainbow Table ». Après cela, les hash peuvent être consultés à partir des tables arcs en ciel lors du crack du mot de passe. Le processus de calcul de la force brutal est donc évité. Une fois le temps du pré calcul terminé, la performance consultation de table peut être des centaines ou des milliers de fois plus vite que la force brutale.

Cette technique fonctionne très bien avec les hachages non salés. Si on possède la bonne table, un mot de passe complexe peut être craqué en quelques minutes plutôt que quelques semaines ou quelques mois avec l’attaque force brute.

Comment craquer des mots de passe avec Rainbowcrack ?

Rainbowcrack peut être utilisé sur BackTrack 4 et sur Windows. Il peut être utilisé en lignes de commandes ou en interface graphique :

1-    En mode console (sur BackTrack):

Les trois outils Rainbowcrack utilisés dans BackTrack pour retrouver un mot de passe sont :

rtgen : cet outil est utilisé pour générer les tables arc en ciel, cette étape est parfois nommée stade de pré calcul.  Cette étape peut être très lente. Mais une fois ce calcul effectué, l’outil de hack sera beaucoup plus rapide. Il supporte plusieurs algorithmes dont : NTLM, MD2, MD4, MD5, SHA1, et RIPEMD160.

 

rtsort : est utilisé pour et trier les tables arc en ciel générée par rtgen.

rcrack : est utilisé pour rechercher dans les tables arc en ciel le hash du mot de passe.

 

Etape 1 : générer les tables arc en ciel :

Pour démarrer le rtgen ligne de commande, exécutez la commande suivante:
# cd /pentest/passwords/rcrack

Ensuite, pour générer une table arc en ciel, tapez la commande suivante :

# ./rtgen hash algorithm  charset  plaintext_len_min  plaintext_len_max rainbow_table_index  rainbow_ chain_length rainbow_chain_count  file_title_suffix

 

hash algorithme: md5, MD2, MD4, SHA1, ….

loweralpha: le type de caractères

plaintext_len_min : le nombre minimum de caractères que le texte  clair peut contenir

plaintext_len_max : le nombre maximum de caractères que le texte  clair peut contenir

rainbow_table_index : le numéro de la table

rainbow_chain_length: la longueur de chaque chaine arc en ciel  dans la table

rainbow_chain_count: le nombre de chaines dans la table arc en ciel

file_title_suffix: le titre du fichier de la table

Par exemple, nous allons créer une table arc en ciel avec les caractéristiques suivantes :

./rtgen md5 loweralpha 3 7 0 2000 80000 test

La table arc en ciel sera  sauvegardée dans le fichier : md5_loweralpha # 3-7_0_2000x80000_test.rt

Vous pouvez générer autant de tables arc en ciel que vous le voulez et en mettant les paramètres qui vous conviennent, mais cela risque de prendre énormément de temps et d’espace sur le disque.

Les tables peuvent aussi être téléchargées depuis certains sites, comme : http://www.freerainbowtables.com/en/tables/ ou http://rainbowtables.shmoo.com/. Cela fait gagner du temps et l’espace.

Etape 2 : enregistrer les tables arc en ciel :

Pour démarrer le rtsort, tapez la commande :

# cd / pentest / mots de passe / rcrack

Ensuite, avec notre exemple, nous trions le fichier de la table arc en ciel avec la commande suivante :

#. / rtsort md5_loweralpha # 3-7_0_2000x80000_test.rt

 

Il ne faut pas interrompre le programme rtsort, autrement, la table arc en ciel traitée sera endommagée.

Etape 3 : craquer les mots de passe :

Pour lancer la ligne de commande rcrack, tapez la commande suivante :

# cd / pentest / mots de passe / rcrack

Pour retrouver le mot de passe d’un hash dans les tables arc en ciel, tapez la commande suivante :

#. / rcrack *. rt-h hash_du_mot_de_passe

 

Dans notre exemple, on tape la commande suivante :

#. / rcrack *. rt-h ab56b4d92b40713acc5af89985d4b786

 

On obtient le résultat suivant :

statistics

-------------------------------------------------------

plaintext found: 1 of 1 (100.00%)

total disk access time: 0.03 s

total cryptanalysis time: 0.94 s

total chain walk step: 137026

total false alarm: 821

total chain walk step due to false alarm: 1336895

-------------------------------------------------------

ab56b4d92b40713acc5af89985d4b786 abcde hex:6162636465

 

On a donc réussi à obtenir le mot de passe qui est :  abcde


2- En mode graphique (sur Windows):

Vous pouvez utiliser le mode graphique  pour trouver un mot de passe. Ce mode est appelé Rainbowcrack GUI. Les étapes d’utilisation de Rainbowcrack GUI sont les suivantes :

1-      Chargez le hash du mot de passe que vous voulez récupérer :

2-      Choisissez ensuite la table ou les tables arcs en ciel que vous voulez utiliser pour trouver le mot de passe :

3- Lorsque les tables arc-en-sont spécifiés, la recherche pour récupérer le mot de passe en claire va démarrer :