« Hashcat » : différence entre les versions

De wiki jackbot
Aller à la navigation Aller à la recherche
mAucun résumé des modifications
mAucun résumé des modifications
Ligne 6 : Ligne 6 :


<h1>Exemple avec un PDF dont on aurait oublié le mot de passe</h1>
<h1>Exemple avec un PDF dont on aurait oublié le mot de passe</h1>
Il arrive pour que pour certaines raisons on protège des documents par un mot de passe. Cependant il arrive également qu'on l'oublie ... Le programme hashcat est capable de calculer des sommes de hachage très rapidement en utilisant toutes la puissance des processeurs et des cartes graphique. Mais il ne fait que ça, calculer et comparer, il faut donc dans un premier temps récupérer ce hash
Il arrive pour que pour certaines raisons on protège des documents par un mot de passe. Cependant il arrive également qu'on l'oublie ... Le programme hashcat est capable de calculer des sommes de hachage très rapidement en utilisant toute la puissance des processeurs et des cartes graphique. Mais il ne fait que ça, calculer et comparer, il faut donc dans un premier temps récupérer ce hash


<h2>Récupération du hash</h2>
<h2>Récupération du hash</h2>

Version du 1 août 2021 à 08:42


Logiciel permettant de hasher massivement des mots de passe :


Exemple avec un PDF dont on aurait oublié le mot de passe

Il arrive pour que pour certaines raisons on protège des documents par un mot de passe. Cependant il arrive également qu'on l'oublie ... Le programme hashcat est capable de calculer des sommes de hachage très rapidement en utilisant toute la puissance des processeurs et des cartes graphique. Mais il ne fait que ça, calculer et comparer, il faut donc dans un premier temps récupérer ce hash

Récupération du hash

Pour récupérer le hash d'un mot de passe qui protège un fichier PDF, j'ai utilisé ce code python. On aura ce genre de résultat :

$ python3 pdf2john.py fichier_verrouille.pdf 
b'nfc15-100.pdf':b'$pdf$1*2*40*-28*1*16*blablabla...blablabla*32*blablabla...blablabla*32*blablabla...blablabla':::::b'fichier_verrouille.pdf'

Maintenant qu'on a cette information on va pouvoir faire bosser hashcat

Commande Hashcat

Comme d'habitude pour avoir des information importante, il est intéressant d'appeler cette commande :

$ hashcat --help

Mais vous allez pleurer en voyant la quantité d'information proposé par cette aide ... Faisons un peu de tri :

$ hashcat --help | grep PDF
  10400 | PDF 1.1 - 1.3 (Acrobat 2 - 4)                    | Documents
  10410 | PDF 1.1 - 1.3 (Acrobat 2 - 4), collider #1       | Documents
  10420 | PDF 1.1 - 1.3 (Acrobat 2 - 4), collider #2       | Documents
  10500 | PDF 1.4 - 1.6 (Acrobat 5 - 8)                    | Documents
  10600 | PDF 1.7 Level 3 (Acrobat 9)                      | Documents
  10700 | PDF 1.7 Level 8 (Acrobat 10 - 11)                | Documents

Les codes 10400, 10410, etc ... sont les types de hash à renseigner avec l'option -m, si vous ne connaissez pas la version du PDF il va falloir les essayer tous mes 6.

En ce qui concerne les type d'attaque elle sont détaillé dans ce passage :

 Attack-          | Hash- |
  Mode             | Type  | Example command
 ==================+=======+==================================================================
  Wordlist         | $P$   | hashcat -a 0 -m 400 example400.hash example.dict
  Wordlist + Rules | MD5   | hashcat -a 0 -m 0 example0.hash example.dict -r rules/best64.rule
  Brute-Force      | MD5   | hashcat -a 3 -m 0 example0.hash ?a?a?a?a?a?a
  Combinator       | MD5   | hashcat -a 1 -m 0 example0.hash example.dict example.dict

Si vous n'avez aucune information sur le mot de passe, il est alors préférable de l'attaquer par force brute et donc d'utiliser l'option -a 3 et d'y ajouter l'option -i qui va vous permettre de balayer les différentes longueurs de mot de passe. Ce qui nous donne la commande suivante :

hashcat -m 10400 -a 3 -i '$pdf$1*2*40*-28*1*16*blablabla...blablabla*32*blablabla...blablabla*32*blablabla...blablabla'

Ce après quoi hashcat fera fumer votre ordi en utilisant au maximum les capacités de votre ordi ! Si vous vouliez faire autre chose en attendant ... allez lire un livre. Si le mot de passe n'est pas trop long (6 - 7 caractères) cela ne prendra que quelques secondes à quelques minutes, ce après quoi hashcat finira avec ce genre d'information :

$pdf$1*2*40*-28*1*16*blablabla...blablabla*32*blablabla...blablabla*32*blablabla...blablabla:super_mot_de_passe_123
                                                 
Session..........: hashcat
Status...........: Cracked
Hash.Type........: PDF 1.1 - 1.3 (Acrobat 2 - 4)
Hash.Target......: $pdf$1*2*40*-28*1*16*blablabla...blablabla*32*blablabla...blablabla*32*blablabla...blablabla
Time.Started.....: Sat Jul 31 10:12:29 2021 (6 secs)
Time.Estimated...: Sat Jul 31 10:12:35 2021 (0 secs)
Guess.Mask.......: ?1?2?2?2?2?2 [6]
Guess.Charset....: -1 ?l?d?u, -2 ?l?d, -3 ?l?d*!$@_, -4 Undefined 
Guess.Queue......: 6/15 (40.00%)
Speed.#1.........:   333.8 MH/s (11.41ms) @ Accel:128 Loops:16 Thr:64 Vec:1
Recovered........: 1/1 (100.00%) Digests, 1/1 (100.00%) Salts
Progress.........: 2233466880/3748902912 (59.58%)
Rejected.........: 0/2233466880 (0.00%)
Restore.Point....: 983040/1679616 (58.53%)
Restore.Sub.#1...: Salt:0 Amplifier:144-160 Iteration:0-16
Candidates.#1....: es4ckj -> Be13mz
Hardware.Mon.#1..: Temp: 54c Fan: 55% Util: 98% Core:1980MHz Mem:6801MHz Bus:16