Hashcat er et passordeksplosjonsverktøy og et av de viktigste verktøyene for informasjonssikkerhet. Jeg samler herved oppsummeringen av denne artikkelen for å forberede meg på nødsituasjoner. Det kan også hjelpe nettbrukere som leser denne artikkelen.
Hashcat er det raskeste passordknekkingsprogrammet i verden. Det er et distribuert verktøy med åpen kildekode som støtter flere plattformer og algoritmer.
Offisiell: https://hashcat.net/hashcat/
Github:https://github.com/hashcat/hashcat
https://github.com/hashcat/hashcat/releases 下载最新版压缩包,解压根据自己的平台运行 hashcat64.exe 或者 hashcat32.exe
Spesifiser hashtypen som skal knekkes, etterfulgt av tallet som tilsvarer hashtypen
Spesifiser knekkmodusen som skal brukes, og dens verdi refererer til de følgende parametrene:
- [ angrep moduser ] - # | modus = = = + = = = = = = 0 | rett # direkte ordbok knekk 1 | kombinasjon # Kombinasjonssprekk 3 | Brute-force # Maske Brute force cracking 6 | Hybrid ordliste + maske # ordbok + maskeknekk 7 | Hybrid Maske + Wordlist # Maske + ordbok knekk
Aktiver inkrementell knekkmodus og la hashcat utføre knekking innenfor det angitte passordlengdeområdet
Minimumslengden på passordet, bare lik et heltall, konfigurer Inkrementsmodusen for å bruke den sammen
Maksimal lengde på passordet, bare lik et heltall, konfigurer Inkrementsmodusen for å bruke den sammen
Ignorer advarselsinformasjonen under knekkeprosessen
<
- -outfile Angi plasseringen av hashen etter vellykket knekking og det tilsvarende klartekstpassordet
- -optimized-kernel-enable Aktiver optimalisert kjerne (begrense passordlengden)
- -opencl-devices Angi OpenCL-enheter Listen over enheter jeg støtter her er som følger:
Kode
* Enhet #1: Intel (R) Core (TM) i7-9750H CPU @ 2,60GHz, Hoppet over. * Enhet #2: Intel (R) UHD Grafikk 630, 384/1536 MB Tildelbar, 24MCU * Enhet #3: AMD Radeon Pro 555X Compute Engine, 1024/4096 MB allokerbar, 12MCU
- -opencl-enhetstyper Angi enhetstypen til opencl Hashcat støtter følgende enhetstyper:
bash
1 | CPU2 | GPU3 | FPGA, DSP, Co-prosessor
Generelt brukt -D 2 spesifisert GPU-knekking
bash
? | Tegnsett = = = + = = = = = = = = = =
l | abcdefghijklmnopqrstuvwxyz # Små bokstaver a-z
u | ABCDEFGHIJKLMNOPQRSTUVWXYZ # Storbokstaver A-Z
d | 0123456789 # Antall 0-9
h | 0123456789abcdef # Tall + abcdef
H | 0123456789ABCDEF # Tall + ABCDEF
s | ! " #$% & ' () * +, -. /:; < = >? @ [\] ^_` {|} ~ # Spesialtegn
A | ? l? Du? d? s # Alle synlige tegn på tastaturet
b | 0 - 0xff # Kan brukes til å matche passord som mellomrom
bash
- -custom-charset1 [chars] tilsvarer -1 - -custom-charset2 [tegn] tilsvarer -2 - -custom-charset3 [tegn] tilsvarer -3 - -custom-charset4 [chars] tilsvarer -4
ved å bruke i masken? 1、? 2、? 3、? 4 for å representere
Noen tilfeller:
bash
- -custom-charset1 abcd123456! @- +
På dette tidspunktet? 1 betyr abcd123456! @- +
bash
- -custom-charset2 ? l? d
På dette tidspunktet? 2 betyr ? l? d er ? h tall + små bokstaver:
bash
-3 abcdef -4 123456
På dette tidspunktet ? 3? 3? 3? 3? 4? 4? 4? 4 er uttrykt som de fire første siffrene kan være abcdef, og de fire siste siffrene kan være 123456
kode
1q2w3e4r` MD5-verdien er ` 5416d7cd6ef195a0f7622a9c56b55e84
bash
hashcat -a 0 -m 0 ' 5416d7cd6ef195a0f7622a9c56b55e84 ' hashpass.txt -o suksess.txt
Noen ganger vises følgende melding når du knekker det:
kode
INFO: Alle hasher funnet i potfil! bruk - -show for å vise dem.
Dette viser at passordet har blitt knekket av oss før, så hashcaten vises ikke lenger. Du kan legge til parametere - -show senere for å vise passordet:
bash
hashcat -a 0 -m 0 ' cbc8f5435c87e13c5d14e6ce92358d68 ' hashpass.txt - -Vis cbc8f5435c87e13c5d14e6ce92358d68: 123456@abc
Hashcat lagrer passordfilen som har blitt knekket: ~ /. hashcat/hashcat.potfile
Hvis du vil vise det knekkede passordet direkte, kan du slette filen direkte.
bash
bash
hashcat -a 1 -m 0 ' 5416d7cd6ef195a0f7622a9c56b55e84 ' hashpass1.txt hashpass1.txt
bash
echo -n admin888 |openssl MD5 7fef6171469e80d32c0559f88b377245
Knekk MD5-verdien til admin888 :
bash
hashcat -a 6 -m 0 ' 7fef6171469e80d32c0559f88b377245 ' hashpass.txt -O
bash
hashcat -a 7 -m 0 ' 7fef6171469e80d32c0559f88b377245 ' ' admi? l? d? d? d ' hashpass.txt -O
på 23323323 MD5-kryptering:
bash
$ echo -n 23323323 |openssl MD5 5a745e31dbbd93f4c86d1ef82281688b
Bruk hashcat for å knekke:
bash
hashcat -a 3 -m 0 - -kraft ' 5a745e31dbbd93f4c86d1ef82281688b ' '? d? d? d? d? d? d? d? d ' -O
bash
$ echo -n passord |openssl MD5 a9d402bfcde5792a8b531b3a82669585
Bruk hashcat for å knekke:
bash
hashcat -a 3 -m 0 -1 '? l? u ' - -Kraft ' a9d402bfcde5792a8b531b3a82669585 ' '? 1? 1? 1? 1? 1? 1? 1? 1 ' -O
En tilpasset regel er definert her -1, på dette tidspunktet ? 1 betyr ? l? u, som er store og små bokstaver.
Admin88 MD5-verdien er 2792e40d60bac94b4b163b93566e65a9
bash
hashcat -a 3 -m 0 -1 '? l? Du? d ' - -kraft ' 2792e40d60bac94b4b163b93566e65a9 ' - -økning - -økning-min 5 - -økning-maks 7 '? 1? 1? 1? 1? 1? 1? 1 ' -O
En egendefinert regel -1 er definert her, på dette tidspunktet ? 1 betyr ? l? Du? d, det vil si store og små bokstaver + tall.
admin23323 MD5-verdien er a9991129897a44e0d1c2855c3d7dccc4
bash
hashcat -a 3 -m 0 -1 '? l? Du? d ' - -force ' a9991129897a44e0d1c2855c3d7dccc4 ' ' admin? 1? 1? 1? 1? 1 ' -O
Se passord for mysql:
mysql
mysql > velg passord fra mysql.user; +-------------------------------------------+ | Passord | +-------------------------------------------+ | * 81F5E21E35407D884A6CD4A731AEBFB6AF209E1B | | * 81F5E21E35407D884A6CD4A731AEBFB6AF209E1B | | * 81F5E21E35407D884A6CD4A731AEBFB6AF209E1B | | * 81F5E21E35407D884A6CD4A731AEBFB6AF209E1B | +-------------------------------------------+ 4 rader i sett (0.00 sek)
begynner deretter å bruke ordbokkrekk:
bash
hashcat -a 0 -m 300 - -kraft ' 81F5E21E35407D884A6CD4A731AEBFB6AF209E1B ' hashpass.txt -O
Se /etc/shadow passordfilen:
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::: Spill:*:18024:0:99999:7::: Mann:*:18024:0:99999:7::: lp:*:18024:0:99999:7::: Post:*: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::: sikkerhetskopiering:*:18024:0:99999:7::: Liste:*: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-nettverk:*:18024:0:99999:7::: systemd-løsning:*:18024:0:99999:7::: mysql:!: 18024:0:99999:7::: ntp:*:18024:0:99999:7::: MeldingBus:*:18024:0:99999:7::: arpwatch:!: 18024:0:99999:7::: Debian-exim:!: 18024:0:99999:7::: uuidd:*:18024:0:99999:7::: Rødsokker:!: 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::: 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::: Tale-Dispatcher:!: 18024:0:99999:7::: avahi:*:18024:0:99999:7::: saned:*:18024:0:99999:7::: inetsim:*:18024:0:99999:7::: farge:*: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::: Biff-XSS:*:18024:0:99999:7::: systemd-kjernedump:!!: 18082::::::
Du kan se at root har et passord, og den forrige bruken er $6 Krypteringsmetoden for overflate-hash er: sha512crypt $6$, SHA512 (Unix).
bash
# Maske knekker rotpassord Registrer ikke vellykket knekking i potfilen hash Spesifiser enhet 2 (kjernedisplay) for å kjøre passordet og slå på optimaliseringshashcat -a 3 -m 1800 - -force ' $6$4ojiBMDPrehqrLkX$d2T7Cn8LKkLk4SDXgCh1IEqjhnsUekXaNUXSxiZIwUTndSqyd.9sEcu80sX9DuEHGmHOeoMev2O0ACYtjMett1 ' '? l? l? l? l ' -O -d 2 - -potfile-disable# Maske knekk rotpassord Ignorer brukernavn Ikke registrer vellykket knekking i potfilen hash Spesifiser enhet 2 (kjernedisplay) for å kjøre passordet og slå på optimalisering hashcat -a 3 -m 1800 - -force ' root:$6$4ojiBMDPrehqrLkX$d2t7cn8lkklk4sdxgch1ieqjhnsuekxanuxsxiziwutndsqyd.9secu80sx9duehgmhoeoEv2o0acytjmett1 ' '? l? l? l? l ' -O -d 2 - -brukernavn - -potfile-disable
CPUen og uavhengig grafikk som følger med macOS kan ikke knekkes, her byttet Guoguang selv manuelt -d 2 og løp ut med kjerneskjermen:
bash
hashcat -a 0 -m 3000 - -force ' 921988ba001dc8e14a3b108f3fa6cb6d ' passord.txt
bash
hashcat -a 0 -m 1000 - -force ' e19ccf75ee54e06b06a5907af13cef42 ' passord.txt
| Parameter | Type | Beskrivelse | Kunimitsukas forståelse | Eksempel |
|---|---|---|---|---|
| – hjerneserver | | Aktiver hjerneserver | Aktiver primærserveren | |
| -z, – hjerneklient | | Aktiver hjerneklient, aktiverer-s | Aktiver distribuerte klienter | |
| – brain-client-features | Num | Definer hjerneklientfunksjoner, se nedenfor | Definer klientfunksjoner | – brain-client-features =3 |
| – brain-host | Str | Hjerneserververt (IP eller domene) | IP eller domene til hovedserveren | – brain-host =127.0.0.1 |
| – hjerneport | port | Hjerneserverport | Hovedserverport | – brain-port =13743 |
| – brain-password | Str | Autentiseringspassord for hjerneserveren | Autentiseringspassord for hovedserveren | – brain-password = e8acfc7280c48009 |
| – brain-session | Hex | Overstyrer automatisk beregnet hjerneøkt | Overskriv automatisk den allerede beregnede hovedøkten | – brain-session =0x2ae611db |
| – brain-session-whitelist | Hex | Tillat kun gitte økter, atskilt med kommaer | Kun gitte samtaler er tillatt, atskilt med kommaer | – brain-session-whitelist =0x2ae611db |
bash
- [ hjerne klient funksjoner ] - # | funksjoner = = = + = = = = = = = = 1 | Send hashed Passord # Send knekket passord 2 | Send Angrep Posisjoner # <29x2 9> Send knekket plassering 3 | Send hashed passord og angrep posisjoner # Send knekket passord og knekket posisjon