hashcat har fire grunnleggende dekryptering måter:
1. Ordbok Dekryptering
2. Kombinert streng Dekryptering
3. Bruttokraft Dekryptering (forkastet) – Maskeangrep (Maske Dekryptering )
4. Hybrid dekryptering
Det er også regelbaserte dekryptering metoder, og det er også bokstavsskiftende metoder, men de kan klassifiseres som regler dekryptering
-A 0-M type hashfile dictionary1 dictionary2
Det ser ut til at du også kan bruke GPU-akselerasjon
Hvis innholdet i ordboken er slik
11
22
33
Da er kombinasjonen:
1111
1122
1133
2222
2233
3333
-j, - -rule-left = rule Enkelt regel brukte til hvert ord på den venstre ordboken -k, - -rule-right = rule enkelt regel brukte på hvert ord på den høyre ordboken123
For eksempel:
Ordbok 1:
11 2212
Ordbok 2:
4412
Kommandoer:
-j ' $- ' -k '! $ ' 12
Ordet i $-proxy-ordboken ovenfor, -j ' $- ' betyr å legge til en-, -k ' $ på høyre side av ordet! ' betyr å legge til en til venstre for ordet!
Så den resulterende kombinasjonen er:
11-33! 22-33! 11-44! 22-44! 1234
Den offisielle forklaringen gitt av denne tingen er relativt enkel, det vil si at Mask Attack er sterkere enn brute-force ved å redusere antall passordtabeller. Når det gjelder algoritmen for å redusere antall passord, er det ikke for mye introduksjon (basert på hcmask-filen), jeg nevner bare en setning for å redusere antall passord gjennom noen konvensjonelle passordformer, for eksempel: "Kele1997", brute force dekrypterer Alle muligheter vil bli oppregnet, osv. Men under mask attack vil programmet prøve å bare ha den første bokstaven med store bokstaver, fordi de fleste passord sjelden har store bokstaver i den andre eller tredje posisjonen. Gjennom disse reglene kan antallet passordkandidater reduseres
Offisiell Det sies at mask attack ikke har noen ulemper sammenlignet med brute-force, fordi mask attack kan generere alle Brute-Force-passord
innebygd tegnsett
? l = abcdefghijklmnopqrstuvwxyz
? u = ABCDEFGHIJKLMNOPQRSTUVWXYZ
? d = 0123456789
? h = 0123456789abcdef
? H = 0123456789ABCDEF
? s = «plass»! " #$% & ' () * +, -. /:; < = >? @[\]^_`{|}~
? En = ? l? Du? d? s
? b = 0 - 0xff123456789
Det er tegnsett i programkatalogen som inneholder alle slags rare tegn. Hvis du legger dem til passordet ditt, kan du bruke disse filene
hashcat har fire parametere for å spesifisere et tilpasset tegnsett
– custom-charset1= CS
– custom-charset2= CS
– custom-charset3= CS
– custom-charset4= CS
Disse fire parametrene kan erstattes med forkortelsene-1, -2, -3 og-4. Du kan angi et egendefinert tegnsett for å gjøre det Dekryptering
Følgende kommando setter det første tilpassede tegnsettet (-1) til russiske språkspesifikke tegn:
-1 tegnsett/special/russian/ru_ISO-8859-5-special.hcchr
Vi trenger ikke å spesifisere den faste lengden på passordet. Vi kan gjøre det ved å spesifisere parameteren – increment.
-jeg, - -Inkrement | | Aktiver Maske Inkrement Modus | < 6x126> | Num | stopp maske økende ved X 123
-a 3 hash.txt mask_file.hcmask Last inn hcmask-filen og bruk masken i filen for å dekryptere
hashcat kommer med flere hcmask-filer og plasser dem under programkatalogen mask/
- -hex-charset Strengen etter er 16 for
Det genererte passordet er en kombinasjon av ordbok og brute force dekryptering genererte tegn
For eksempel: eksempel.dict
Passord hei12
hashcat64-a 6 eksempel.dict? d? d? d? d
? d? d? d? d representerer et heltall på fire biter
Så den endelige genererte passordkandidatsekvensen er:
Passord0000 Passord0001 Passord0002 . . . Passord99991234567
hashcat64-a 6? d? d? d? d eksempel.dict
Resultat:
0000Passord 0001Passord . . . 9999passord123456
Bruk maskprocessor til å bruke regler for å generere brute force Dekrypter de nødvendige reglene, og deretter kan den genererte regelfilen lastes inn ved hjelp av Hashcat-R og ordboken blandes til passordkandidater
For eksempel: eksempel.dict
Hei Passord12
HASH-O bf.rule ' $? d $? d $? d $? d
Den genererte regelen ser slik ut: bf.rule
$0 $0 $0 $0 $0 $0 $0 $1 $0 $0 $0 $2 $0 $0 $0 $3 $0 $0 $0 $4 . . . $9 $9 $9 $9123456789
Bruk da hashcat-a 6 eksempel.dict-r bf.rule-m....
Sist generert ser slik ut:
hello0 0 0 0 Passord0 0 0 0 Hei0 0 0 1 Passord0 0 0 1 Hei0 0 0 2 Passord0 0 0 2 . . . Hei9 9 9 9 Passord9 9 9 91234567891011