Hashcat to narzędzie do eksplozji haseł i jedno z niezbędnych narzędzi do bezpieczeństwa informacji. Niniejszym dodaję podsumowanie tego artykułu, aby zapisać i przygotować się na sytuację awaryjną. Może również pomóc internautom, którzy przeczytają ten artykuł.
Hashcat to najszybszy na świecie program do łamania haseł. Jest to rozproszone narzędzie typu open source obsługujące wiele platform i algorytmów.
Oficjalnie: https://hashcat.net/hashcat/
Github:https://github.com/hashcat/hashcat
https://github.com/hashcat/hashcat/releases 下载最新版压缩包,解压根据自己的平台运行 hashcat64.exe 或者 hashcat32.exe
Określ typ skrótu do złamania, po którym następuje liczba odpowiadająca typowi skrótu
Określ tryb złamania, który ma zostać użyty, a jego wartość odnosi się do kolejnych parametrów:
- [ atak Modes ] - # | tryb = = = = + = = = = = = 0 | proste # bezpośrednie pękanie słownika 1 | kombinacja # kombinacja crack 3 | Brute-force # Mask Brute force Cracking 6 | hybrydowa lista słów + maska # słownik + pęknięcie maski 7 | hybrydowa maska + lista słów # maska + pękanie słownika
Włącz tryb pękania przyrostowego I pozwól Hashcatowi wykonać pękanie w określonym zakresie długości hasła
Minimalna długość hasła, po której następuje bezpośrednio równa liczbie całkowitej, skonfigurować tryb przyrostu I używać go razem
Maksymalna długość hasła, po której następuje bezpośrednio równa liczbie całkowitej, skonfigurować tryb przyrostu I używać go razem
Zignoruj komunikat ostrzegawczy podczas procesu pękania
<
- -outfile Określa lokalizację przechowywania haszu i odpowiadającego mu hasła w zwykłym tekście po pomyślnym złamaniu
- -optimized-kernel-enable Włącz zoptymalizowane jądro (ogranicz długość hasła)
- -opencl-devices Określ urządzenia opencl Lista obsługiwanych tutaj urządzeń jest następująca:
Kod
* Urządzenie #1: Intel (R) Core (TM) i7-9750H CPU @ 2,60 GHz, pominięto. * Urządzenie #2: Intel (R) UHD Grafika 630, 384/1536 MB Przydzielane, 24MCU * Urządzenie #3: Silnik AMD Radeon Pro 555X Compute , 1024/4096 MB przydzielany, 12MCU
- -typy urządzeń opencl Określ typ urządzenia opencl. Hashcat obsługuje następujące typy urządzeń:
bash
1 | CPU2 | GPU3 | FPGA, DSP, koprocesor
Ogólnie powszechnie używane -D 2 Określ pękanie procesora graficznego
bash
? | Zestaw znaków = = = + = = = = = = = = = = =
l | abcdefghijklmnopqrstuvwxyz # Małe litery a-z
u | ABCDEFGHIJKLMNOPQRSTUVWXYZ # Wielkie litery A-Z
d | 0123456789 # Liczby 0-9
h | 0123456789abcdef # cyfry + abcdef
H | 0123456789ABCDEF # cyfry + ABCDEF
s | ! " #$% & ' () * +, -. /:; < = >? @ [\] ^_` {|} ~ # Znaki specjalne
a | ? Ja? Ty? d? s # Wszystkie widoczne znaki na klawiaturze
b | 0 - 0xff # Może być używany do dopasowania haseł takich jak spacja
bash
- -custom-charset1 [chars] jest równoważny -1 - -custom-charset2 [chars] jest równoważny -2 - -custom-charset3 [chars] jest równoważny -3 - -custom-charset4 [chars] jest równoważny -4
z w masce? 1、? 2、? 3、? 4 reprezentujące
niektóre przypadki:
bash
- -custom-charset1 abcd123456! @- +
W tej chwili? 1 oznacza abcd123456! @- +
bash
- -custom-charset2 ? Ja? d
W tej chwili? 2 oznacza ? Ja? d czyli ? h cyfry + małe litery:
bash
-3 abcdef -4 123456
w tym momencie ? 3? 3? 3? 3? 4? 4? 4? 4 oznacza, że pierwsze cztery cyfry mogą być abcdef, a ostatnie cztery cyfry mogą być 123456
kod
1q2w3e4r` Wartość MD5 to ` 5416d7cd6ef195a0f7622a9c56b55e84
bash
hashcat -a 0 -m 0 ' 5416d7cd6ef195a0f7622a9c56b55e84 ' hashpass.txt -o success.txt
Czasami podczas złamania pojawia się następujący monit:
kod
INFO: Wszystkie skróty znalezione w potfile! Use - -show to display them.
Oznacza to, że hasło zostało pomyślnie złamane przez nas wcześniej, więc Hashcat nie jest już wyświetlany, możesz dodać parametry - -show później, aby wyświetlić hasło:
bash
hashcat -a 0 -m 0 ' cbc8f5435c87e13c5d14e6ce92358d68 ' hashpass.txt - -pokaż cbc8f5435c87e13c5d14e6ce92358d68: 123456@abc
Hashcat przechowuje plik hasła, który został pomyślnie złamany: ~ /. hashcat/hashcat.potfile
Jeśli chcesz bezpośrednio wyświetlić złamane hasło, możesz bezpośrednio usunąć plik.
bash
bash
hashcat -a 1 -m 0 ' 5416d7cd6ef195a0f7622a9c56b55e84 ' hashpass1.txt hashpass1.txt
bash
echo -n admin888 |openssl MD5 7fef6171469e80d32c0559f88b377245
Złamanie wartości MD5 admin888 :
bash
hashcat -a 6 -m 0 ' 7fef6171469e80d32c0559f88b377245 ' hashpass.txt -O
bash
hashcat -a 7 -m 0 ' 7fef6171469e80d32c0559f88b377245 ' ' admi? Ja? d? d? d ' hashpass.txt -O
Szyfrowanie MD5 na 23323323 :
bash
$ echo -n 23323323 |openssl MD5 5a745e31dbbd93f4c86d1ef82281688b
Użyj hashcata do crackowania:
bash
hashcat -a 3 -m 0 - -force ' 5a745e31dbbd93f4c86d1ef82281688b ' '? d? d? d? d? d? d? d? d ' -O
bash
$ echo -n hasło |openssl MD5 a9d402bfcde5792a8b531b3a82669585
Użyj hashcata do crackowania:
bash
hashcat -a 3 -m 0 -1 '? Ja? u ' - -siła ' a9d402bfcde5792a8b531b3a82669585 ' '? 1? 1? 1? 1? 1? 1? 1? 1 ' -O
Zdefiniowano tutaj niestandardową regułę -1. W tej chwili ? 1 oznacza ? Ja? u, czyli wielka i mała litera.
Admin88 Wartość MD5 to 2792e40d60bac94b4b163b93566e65a9
bash
hashcat -a 3 -m 0 -1 '? Ja? Ty? d ' - -siła ' 2792e40d60bac94b4b163b93566e65a9 ' - -przyrost - -przyrost-min 5 - -przyrost-max 7 '? 1? 1? 1? 1? 1? 1? 1 ' -O
Zdefiniowano tutaj niestandardową regułę -1, w tym momencie ? 1 oznacza ? Ja? Ty? d, czyli wielkie i małe litery + liczby.
admin23323 Wartość MD5 to a9991129897a44e0d1c2855c3d7dccc4
bash
hashcat -a 3 -m 0 -1 '? Ja? Ty? d ' - -siła ' a9991129897a44e0d1c2855c3d7dccc4 ' ' admin? 1? 1? 1? 1? 1 ' -O
Zobacz hasło do MySQL:
mysql
mysql > wybierz hasło od mysql.user; +-------------------------------------------+ | Hasło | +-------------------------------------------+ | * 81F5E21E35407D884A6CD4A731AEBFB6AF209E1B | | * 81F5E21E35407D884A6CD4A731AEBFB6AF209E1B | | * 81F5E21E35407D884A6CD4A731AEBFB6AF209E1B | | * 81F5E21E35407D884A6CD4A731AEBFB6AF209E1B | +-------------------------------------------+ 4 wiersze w zestawie (0,00 sek)
Następnie rozpocznij łamanie słownika:
bash
hashcat -a 0 -m 300 - -force ' 81F5E21E35407D884A6CD4A731AEBFB6AF209E1B ' hashpass.txt -O
Zobacz plik hasła /etc/shadow :
bash
root@kali-linux: ~ # cat /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::: synchronizacja:*:18024:0:99999:7::: Gry:*:18024:0:99999:7::: mężczyzna:*:18024:0:99999:7::: lp:*:18024:0:99999:7::: mail:*:18024:0:99999:7::: Aktualności:*:18024:0:99999:7::: uucp:*:18024:0:99999:7::: proxy:*:18024:0:99999:7::: www-dane:*:18024:0:99999:7::: Kopia zapasowa:*:18024:0:99999:7::: Lista:*:18024:0:99999:7::: irc:*:18024:0:99999:7::: brązki:*:18024:0:99999:7::: nikt:*:18024:0:99999:7::: _apt:*:18024:0:99999:7::: systemd-timesync:*:18024:0:99999:7::: Sieć systemd:*:18024:0:99999:7::: systemd-resolve:*:18024:0:99999:7::: mysql:!: 18024:0:99999:7::: ntp:*:18024:0:99999:7::: Wiadomość:*:18024:0:99999:7::: arpwatch:!: 18024:0:99999:7::: Debian-exim:!: 18024:0:99999:7::: uuidd:*:18024:0:99999:7::: czerwone skarpetki:!: 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::: postgres:*:18024:0:99999:7::: usbmux:*:18024:0:99999:7::: rtkit:*:18024:0:99999:7::: oszałamiające4:!: 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::: dyspozytor mowy:!: 18024:0:99999:7::: avahi:*:18024:0:99999:7::: saned:*:18024:0:99999:7::: inetsim:*:18024:0:99999:7::: kolor:*:18024:0:99999:7::: geoclue:*:18024:0:99999:7::: Król-Phisher:*:18024:0:99999:7::: Debian-gdm:*:18024:0:99999:7::: dradis:*:18024:0:99999:7::: Wołowina-xss:*:18024:0:99999:7::: systemd-rdzeń:!!: 18082::::::
Można zauważyć, że root ma hasło. Metoda szyfrowania powierzchniowego skrótu $6 jest używana poprzednio: sha512crypt $6$, SHA512 (Unix).
bash
# Hasło root do złamania maski Nie rejestruj pomyślnego złamania w potfile hash Określ urządzenie 2 (wyświetlacz rdzenia), aby uruchomić hasło i włącz optymalizację hashcat -a 3 -m 1800 - -force ' $6$4ojiBMDPrehqrLkX$d2T7Cn8LKkLk4SDXgCh1IEqjhnsUekXaNUXSxiZIwUTndSqyd.9sEcu80sX9DuEHGmHOeoMev2O0ACYtjMett1 ' '? Ja? Ja? Ja? l ' -O -d 2 - -potfile-disable# Maska łamie hasło root Zignoruj nazwę użytkownika Nie rejestruj udanego łamania w potfile hash Określ urządzenie 2 (wyświetlacz rdzenia), aby uruchomić hasło i włączyć optymalizację hashcat -a 3 -m 1800 - -siła ' root:$6$4ojiBMDPrehqrLkX$d2T7Cn8LKkLk4SDXgCh1IEqjhnsUekXaNUXSxiZIwUTndSqyd.9sEcu80sX9DuEHGmHOeoMev2O0ACYtjMett1 ' '? Ja? Ja? Ja? l ' -O -d 2 - -nazwa użytkownika - -potfile-disable
Wbudowany procesor i niezależna grafika w systemie macOS nie można złamać, tutaj sam Guoguang ręcznie przełączył -d 2 i pomyślnie uciekł za pomocą wyświetlacza rdzenia:
bash
hashcat -a 0 -m 3000 - -force ' 921988ba001dc8e14a3b108f3fa6cb6d ' hasło.txt
bash
| parametry | Typ | Wyjaśnienie | Zrozumienie Kunimitsu | Przykład |
|---|---|---|---|---|
| – serwer mózgu | | Włącz serwer mózgu | Włącz serwer główny | |
| -z, – brain-client | | Enable brain client, activates-s | Włącz klienta rozproszonego | |
| – funkcje klienta mózgu | Num | Zdefiniuj funkcje klienta mózgu, zobacz poniżej | Zdefiniuj funkcje klienta | – brain-client-features =3 |
| – brain-host | Str | host serwera mózgu (IP lub domena) | IP lub domena serwera głównego | – brain-host =127.0.0.1 |
| – brain-port | port | port serwera mózgu | port serwera głównego | – brain-port =13743 |
| – brain-password | Str | hasło uwierzytelniania serwera mózgu | <17x1 7> Hasło uwierzytelniające serwera głównego | – brain-password = e8acfc7280c48009 |
| – brain-session | Hex | Zastępuje automatycznie obliczoną sesję mózgu | Automatycznie nadpisz obliczoną sesję główną | – brain-session =0x2ae611db |
| – brain-session-whitelist | Hex | Zezwalaj tylko na dane sesje, oddzielone przecinkami | Zezwalają tylko dane rozmowy, oddzielone przecinkami | – brain-session-whitelist =0x2ae611db |
bash
- [ mózg klient funkcje ] - # | funkcje = = = + = = = = = = = 1 | Wyślij Haszowane Hasła # Wyślij złamane hasło 2 | Wyślij Atak Pozycje # Wyślij lokalizację złamaną 3 | wyślij haszowane hasła i atak pozycje # wyślij złamane hasła i złamane pozycje