Hashcat är ett kraftfullt lösenordsprovning verktyg och en av de viktigaste verktygen för informationssäkerhet. Jag sparar den här artikeln som en rekord och sammanfattning.

Hashcat är ett lösenordssprängningsverktyg och ett av de nödvändiga verktygen för informationssäkerhet. Jag bokmärker härmed den här artikeln för att registrera och sammanfatta den i nödsituationer.

Introduktion

Hashcat är det snabbaste lösenordsknäckningsprogrammet i världen. Det är ett distribuerat verktyg med öppen källkod som stöder flera plattformar och algoritmer.

Officiell: https://hashcat.net/hashcat/

Github:https://github.com/hashcat/hashcat

安装

Windows

https://github.com/hashcat/hashcat/releases 下载最新版压缩包,解压根据自己的平台运行 hashcat64.exe 或者 hashcat32.exe

常用参数

-m Crack hash-typ

anger hash-typen som ska knäckas, följt av numret som motsvarar hash-typen

-a Crack-läge

Ange det knäckningsläge som ska användas, och dess värde hänvisar till de följande parametrarna:

 -   [  Attack   Modes  ]   - 

    #   |   läge 
 ===+====== 
    0   |   rak                                 #   direkt ordbok knäck 
    1   |   kombination                           #   kombination knäck 
    3   |   Brute-force                           #   Mask Brute force cracking 
    6   |   Hybrid   ordlista   +   Mask     #   ordbok + Mask knäcka 
    7   |   Hybrid   Mask   +   ordlista     #   Mask + ordbok knäck 

– increment

Aktivera det inkrementella knäckningsläget, låt hashcat utföra knäckning inom det angivna lösenordslängdsintervallet

– increment-min

Minsta lösenordslängd, följt av direkt lika med ett heltal, konfigurera increment-läget för att använda tillsammans

– increment-max

Maximal lösenordslängd, följt av direkt lika med ett heltal, konfigurera increment-läget för att använda tillsammans

– force

Ignorera varningsmeddelandet under knäckningsprocessen

– ta bort

Ta bort den framgångsrikt knäckta hash

– användarnamn

-o

- -outfile   Ange lagringsplatsen för hashen efter framgångsrik knäckning och motsvarande klartextslösenord

-o

- -optimized-kernel-enable   Aktivera optimerad kärna (begränsa lösenordslängden)

-d

- -opencl-devices   Ange OpenCL-enheter, jag Listan över enheter som stöds här är som följer:


kod


 *   enhet   #1:   Intel (R)   Core (TM)   i7-9750H   CPU   @   2,60GHz,   Hoppade över. 
*   Enhet   #2:   Intel (R)   UHD   Grafik   630,   384/1536   MB   allokerbar,   24MCU 
*   enhet   #3:   AMD   Radeon   Pro   555X   beräkna   motor,   1024/4096   MB   allokerbar,   12MCU 

-D

- -opencl-device-types   Ange enhetstypen för opencl Hashcat stöder följande enhetstyper:


bash


 1   |   CPU2   |   GPU3   |   FPGA,   DSP,   Co-Processor 

Allmänt använd   -D 2   Ange GPU-knäckning

Maskkknäckning

Maskregler


bash


  ?   |   Teckenuppsättning = = = + = = = = = = = = = 
  l   |   abcdefghijklmnopqrstuvwxyz                     #   små bokstäver   a-z 
  u   |   ABCDEFGHIJKLMNOPQRSTUVWXYZ                     #   Storbokstäver   A-Z 
  d   |   0123456789                                                     #   Nummer   0-9 
  h   |   0123456789abcdef                                         #   nummer   +   abcdef 
  H   |   0123456789ABCDEF                                         #   nummer   +   ABCDEF 
  s   |    ! "#$%&'()*+,-./:; <=>? @ [\] ^_` {|} ~       #   Specialtecken         
  en   |  ? Jag? Du? d? s                                                         #   Alla synliga tecken på tangentbordet 
  b   |   0   -   0xff                                                   #   kan användas för att matcha lösenord som mellanslag 

Anpassade maskeregler


bash


 - -custom-charset1   [chars] motsvarar   -1 
- -custom-charset2   [chars] motsvarar   -2 
- -custom-charset3   [tecken] motsvarar   -3 
- -custom-charset4   [chars] motsvarar   -4 

med   i masken? 1、? 2、? 3、? 4   för att representera

några fall:


bash


 - -custom-charset1   abcd123456! @- + 

Vid den här tiden? 1 betyder   abcd123456! @- +


bash


 - -custom-charset2  ? Jag? d 

Vid den här tiden? 2 betyder  ? Jag? d   är  ? h   siffror + små bokstäver:


bash


 -3   abcdef   -4   123456 

just nu  ? 3? 3? 3? 3? 4? 4? 4? 4   uttrycks som de första fyra siffrorna kan vara   abcdef, och de sista fyra siffrorna kan vara   123456

Dictionary Crack


kod


 1q2w3e4r` MD5-värdet är `5416d7cd6ef195a0f7622a9c56b55e84 


bash


 hashcat   -a   0   -m   0   ' 5416d7cd6ef195a0f7622a9c56b55e84 '   hashpass.txt   -o   success.txt 

Ta bort det knäckta lösenordet

Ibland visas följande uppmaning när du knäcker det:


kod


 INFO:   alla   hashs   hittade   i   potfil!   använd   - -visa   till   visa   dem 

Detta visar att lösenordet har knäckts av oss tidigare, så hashcaten visas inte längre. Du kan lägga till parametrar   - -visa   senare för att visa lösenordet:


bash


 hashcat   -a   0   -m   0   ' cbc8f5435c87e13c5d14e6ce92358d68 '   hashpass.txt   - -visa 
cbc8f5435c87e13c5d14e6ce92358d68:123456@abc 

Hashcat lagrar den framgångsrikt knäckta lösenordsfilen på: ~ /. hashcat/hashcat.potfile

Om du vill visa det knäckta lösenordet direkt kan du ta bort filen direkt.

Batch Crack


bash


 #   Ta bort tidigare framgångsrikt knäckta poster rm   ~ /. hashcat/hashcat.potfile#   hash.txt är lösenordet som ska knäckas   hashpass.txt är ordboken   Exportera det knäckta resultatet till success.txt   och ta bort den framgångsrikt knäckta hashcat   -a   0   -m   0   hash.txt   hashpass.txt   -o   success.txt   - -ta bort 

kombination crack

multi-dictionary crack


bash


 hashcat   -a   1   -m   0   {' 

Dictionary + Mask Crack


bash


 echo   -n   admin888   |openssl   md5 
7fef6171469e80d32c0559f88b377245 

Knäck MD5-värdet för   admin888  :


bash


 hashcat   -a   6   -m   0   ' 7fef6171469e80d32c0559f88b377245 '   hashpass.txt   -O 

mask + ordbok knäck


bash


 hashcat   -a   7   -m   0   ' 7fef6171469e80d32c0559f88b377245 '   ' admi? Jag? d? d? d '   hashpass.txt     -O 

Crack case

8-bitars MD5-krypterad digital crack

till   23323323   MD5-kryptering:


bash


 $   echo   -n   23323323   |openssl   MD5 
5a745e31dbbd93f4c86d1ef82281688b 

Använd hashcat för att knäcka:


bash


 hashcat   -a   3   -m   0   - -force   ' 5a745e31dbbd93f4c86d1ef82281688b '   '? d? d? d? d? d? d? d? d '   -O 

8-bitars MD5-krypterade stora och små bokstäver knäcka


bash


 $   echo   -n   lösenord   |openssl   md5 
a9d402bfcde5792a8b531b3a82669585 

Använd hashcat för att knäcka:


bash


 hashcat   -a   3   -m   0   -1   '? Jag? u '   - -Kraft     ' a9d402bfcde5792a8b531b3a82669585 '   '? 1? 1? 1? 1? 1? 1? 1? 1 '   -O 

En anpassad regel   -1 är definierad här, för närvarande  ? 1   betyder  ? Jag? u, det vill säga stora och små bokstäver.

5-7-bitars MD5-krypterade stora och små bokstäver + siffror knäck

MD5-värdet för Admin88   är   2792e40d60bac94b4b163b93566e65a9


bash


 hashcat   -a   3   -m   0   -1   '? Jag? Du? d '   - -kraft     ' 2792e40d60bac94b4b163b93566e65a9 '   - -ökning   - -ökning-min   5   - -ökning-max   7   '? 1? 1? 1? 1? 1? 1? 1 '   -O 

En anpassad regel   -1 är definierad här, vid denna tidpunkt  ? 1   betyder  ? Jag? Du? d, det vill säga stora och små bokstäver + siffror.

admin De första 10-siffriga MD5-krypterade stora och små bokstäverna + siffrorna knäckte

admin23323   MD5-värdet är   a9991129897a44e0d1c2855c3d7dccc4


bash


 hashcat   -a   3   -m   0   -1   '? Jag? Du? d '   - -force     ' a9991129897a44e0d1c2855c3d7dccc4 '   ' admin? 1? 1? 1? 1? 1 '   -O 

MySQL4.1/MySQL5

Se lösenordet för MySQL:


mysql


 mysql >   välj   lösenord   från   mysql.user; 
+-------------------------------------------+ 
|   Lösenord                                                                     | 
+-------------------------------------------+ 
|   *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B   | 
|   *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B   | 
|   *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B   | 
|   *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B   | 
+-------------------------------------------+ 
4   rows   in   set   (0.00   sec) 

Börja sedan med ordbokshackning:


bash


 hashcat   -a   0   -m   - -force   ' 81F5E21E35407D884A6CD4A731AEBFB6AF209E1B '   hashpass.txt   -O 

Linux/etc/shadow sha512crypt $6$, SHA512 (Unix)

Visa   /etc/shadow   lösenordsfil:


bash



 root@kali-linux: ~ #   katt   /etc/shadowroot:$6$4ojiBMDPrehqrLkX$d2t7cn8lkklk4sdxgch1ieqjhnsuekxanuxsxiziwutndsqyd.9secu80sx9duehgmhoeoEv2o0acytjmett1:18201:0:99999:7::: 
daemon:*:18024:0:99999:7::: 
bin:*:18024:0:99999:7::: 
sys:*:18024:0:99999:7::: 
Synkronisering:*:18024:0:99999:7::: 
Spel:*:18024:0:99999:7::: 
Mann:*:18024:0:99999:7::: 
lp:*:18024:0:99999:7::: 
mail:*:18024:0:99999:7::: 
Nyheter:*:18024:0:99999:7::: 
uucp:*:18024:0:99999:7::: 
proxy:*:18024:0:99999:7::: 
www-data:*:18024:0:99999:7::: 
Säkerhetskopia:*:18024:0:99999:7::: 
lista:*:18024:0:99999:7::: 
irc:*:18024:0:99999:7::: 
gnats:*:18024:0:99999:7::: 
Ingen:*:18024:0:99999:7::: 
_apt:*:18024:0:99999:7::: 
systemd-timesync:*:18024:0:99999:7::: 
systemd-nätverk:*:18024:0:99999:7::: 
systemd-lösa:*:18024:0:99999:7::: 
mysql:!: 18024:0:99999:7::: 
ntp:*:18024:0:99999:7::: 
MeddelandeBus:*:18024:0:99999:7::: 
arpwatch:!: 18024:0:99999:7::: 
Debian-exim:!: 18024:0:99999:7::: 
uuidd:*:18024:0:99999:7::: 
Rödstrumpor:!: 18024:0:99999:7::: 
tss:*:18024:0:99999:7::: 
rwhod:*:18024:0:99999:7::: 
jod:*:18024:0:99999:7::: 
miredo:*:18024:0:99999:7::: 
dnsmasq:*:18024:0:99999:7::: 
Inlägg:*:18024:0:99999:7::: 
usbmux:*:18024:0:99999:7::: 
rtkit:*:18024:0:99999:7::: 
stunnel4:!: 18024:0:99999:7::: 
sshd:*:18024:0:99999:7::: 
Debian-snmp:!: 18024:0:99999:7::: 
sslh:!: 18024:0:99999:7::: 
Puls:*:18024:0:99999:7::: 
Talavsändare:!: 18024:0:99999:7::: 
avahi:*:18024:0:99999:7::: 
saned:*:18024:0:99999:7::: 
inetsim:*:18024:0:99999:7::: 
färg:*:18024:0:99999:7::: 
geoclue:*:18024:0:99999:7::: 
king-phisher:*:18024:0:99999:7::: 
Debian-gdm:*:18024:0:99999:7::: 
dradis:*:18024:0:99999:7::: 
nötkött-xss:*:18024:0:99999:7::: 
systemd-kärnadump:!!: 18082:::::: 

Du kan se att   root   har ett lösenord. Den tidigare användningen är   $6   Krypteringsmetoden för ythash är: sha512crypt $6$, SHA512 (Unix).


bash


 #   Mask knäckning root lösenord   Registrera inte framgångsrikt knäckt hash i potfilen   Ange enhet 2 (kärndisplay) för att köra lösenord   och aktivera optimering hashcat   -a   3   -m   1800   - -force     ' $6$4ojiBMDPrehqrLkX$d2T7Cn8LKkLk4SDXgCh1IEqjhnsUekXaNUXSxiZIwUTndSqyd.9sEcu80sX9DuEHGmHOeoMev2O0ACYtjMett1 '   '? Jag? Jag? Jag? l '   -O   -d   2   - -potfile-disable#   Mask knäckning root lösenord   Ignorera användarnamnet   registrera inte framgångsrik knäckning i potfilen hash   Ange enhet 2 (kärndisplay) för att köra lösenordet   och aktivera optimering hashcat   -a   3   -m   1800   - -force     ' root:$6$4ojiBMDPrehqrLkX$d2T7Cn8LKkLk4SDXgCh1IEqjhnsUekXaNUXSxiZIwUTndSqyd.9sEcu80sX9DuEHGmHOeoMev2O0ACYtjMett1 '   '? Jag? Jag? Jag? l '   -O   -d   2   - -användarnamn   - -potfile-disable 

Den inbyggda CPU:n och den oberoende grafiken under macOS kan inte knäckas, här växlade Guoguang själv manuellt   -d 2   och använde kärndisplayen för att lyckas springa ut:

Hashcat 是一款密码爆破神器,信息安全必备工具之一,特此收藏此文章记录总结

ordbok knäckning Windows LM Hash


bash


 hashcat   -a   0   -m   3000   - -force   ' 921988ba001dc8e14a3b108f3fa6cb6d '   password.txt 

ordbok knäcka Windows NTLM Hash


bash


 hashcat   -a   0   -m   1000   - -force   ' e19ccf75ee54e06b06a5907af13cef42 '   password.txt 

Distribution Crack

Parametrar Typ Beskrivning Guoguangs förståelse Exempel
– hjärnserver
Aktivera hjärnserver Aktivera huvudserver
-z, – brain-client
aktivera hjärnklient, aktiverar-s Aktivera distribuerad klient
– brain-client-features Num Definiera hjärnklientfunktioner, se nedan Definiera klientfunktioner – brain-client-features =3
– brain-host Str Brain server host (IP eller domän) IP eller domän för huvudservern – brain-host =127.0.0.1
– brain-port port Brain server Port Huvudserverport – brain-port =13743
– brain-password Str Hjärnserverns autentiseringslösenord Huvudserverns autentiseringslösenord – brain-password = e8acfc7280c48009
– brain-session Hex åsidosätter automatiskt beräknad hjärnsession Överskriv automatiskt den redan beräknade huvudsessionen – brain-session =0x2ae611db
– brain-session-whitelist Hex Tillåt endast givna sessioner, separerade med kommaer Tillåt endast givna konversationer, separerade med kommor – brain-session-whitelist =0x2ae611db

Klientfunktioner


bash


 -   [  hjärna   klient   funktioner  ]   -     #   |   funktioner 
 ===+======== 
    1   |   skicka   hashade   lösenord                                               #   skicka knäckt lösenord 
    2   |   skicka   attack   positioner                                               #   skicka knäckta positioner 
    3   |   Send   hashed   passwords   and   attack   positions     #   Send cracked password and cracked position 


Föregående:Hur man använder hashcat: Teknisk delning
Nästa:Hashcat Tutorial: Konfigurera sprickningsläge Parametrar (Extremt detaljerad och värdefull-Worth-sparande)
  • Fokusera på Word, Excel, PPT, PDF, RAR, ZIP, 7Z, komprimerade paket, Office krypterade filer upplåsning och dekryptering
  • Vi förser användare med högkvalitativ filkomprimerad paket lösenordsåterställning, PDF-upplåsning Word lösenordsåterställning
  • Upphovsrätt © Dokumentlösenordsåterställningsmästare Dekrypteringsplattform online