hashcat ha quattro modi di base decrittografare :
1. Dizionario Decrittografia
2. Stringa combinata Decrittografia
3. Brute Force Decryption (deprecated) – mask attack (mask Decryption )
4. Decrittografia ibrida
Esistono metodi di decrittografia basati su regole e metodi di commutazione di maiuscole e minuscole, ma possono essere classificati come regole Decrittografia
-A 0-M type hashfile dictionary1 dictionary2
Sembra che sia possibile utilizzare l'accelerazione gpu
Se il contenuto del dizionario è questo
11
22
33
Allora la combinazione è:
1111
1122
1133
2222
2233
3333
{
-k, - -rule-right = rule singola regola applicata a ogni parola su il diritto dizionario123 per fare un esempio:
dizionario 1:
11 2212
Dizionario 2:
33 4412
Comandi:
-j ' $- ' -k '! $ ' 12
La parola nel dizionario $ proxy sopra, -j ' $- ' significa aggiungere un-, -k ' $ sul lato destro della parola! ' significa aggiungere uno a sinistra della parola! Quindi la combinazione risultante è:
11-33! 22-33! 11-44! 22-44! 1234
La spiegazione ufficiale per questa cosa è relativamente semplice, cioè l'attacco maschera è più forte della forza bruta in quanto riduce il numero di tabelle di password per quanto riguarda l'algoritmo per ridurre il numero di password Non ci sono troppe introduzioni (basate sul file hcmask), solo una breve frase per ridurre il numero di password attraverso alcune forme di password convenzionali, ad esempio: "Kele1997", quando la forza bruta decifrerà , tutte le possibilità saranno enumerate, ecc. Ma durante l'attacco con maschera, il programma cercherà di maiuscolare solo la prima lettera, perché la maggior parte delle password raramente ha maiuscole nella seconda o terza posizione. Queste regole vengono utilizzate per ridurre il numero di candidati per password
Ufficiale Si dice che l'attacco con maschera non ha svantaggi rispetto a brute-force, perché l'attacco con maschera può generare tutte le password brute-force
set di caratteri integrato
? l = abcdefghijklmnopqrstuvwxyz
? u = ABCDEFGHIJKLMNOPQRSTUVWXYZ
? d = 0123456789
? h = 0123456789abcdef
? H = 0123456789ABCDEF
? s = «Spazio»! "#$%&'()*+,-./:; <=>? @[\]^_`{|}~
? A = ? Io? Tu? d? s
? b = 0 - 0xff123456789
Ci sono charset nella directory del programma che contengono una varietà di caratteri strani. Se li aggiungi alla tua password, puoi utilizzare questi file
hashcat ha quattro parametri per specificare un set di caratteri personalizzato
– custom-charset1= CS
– custom-charset2= CS
– custom-charset3= CS
– custom-charset4= CS
Questi quattro parametri possono essere sostituiti con le abbreviazioni-1, -2, -3 e-4. È possibile specificare un set di caratteri personalizzato per decrittografare
Il seguente comando imposta il primo set di caratteri personalizzato (-1) su caratteri specifici della lingua russa:
-1 charsets/special/russian/ru_ISO-8859-5-special.hcchr
Non dobbiamo specificare la lunghezza fissa della password, possiamo specificare il parametro – increment
-io, - -Incremento | | Abilita Maschera Incremento Modalità | { } | Num | Stop maschera incrementando a X 123 -a 3 hash.txt mask_file.hcmask Carica il file hcmask e utilizza la maschera nel file per decrittografare
hashcat viene fornito con diversi file hcmask e li posiziona sotto la directory del programma mask/
- -hex-charset La stringa seguita da
La password generata è una combinazione di caratteri generati da dizionario e brute force decrittografia
Ad esempio: esempio.dict
password Ciao 12
hashcat64-a 6 esempio.dict? d? d? d? d
? d? d? d? d rappresenta un numero intero di quattro bit
, quindi la sequenza finale di candidati per password generata è:
password0000 password0001 password0002 . . . password99991234567
hashcat64-a 6? d? d? d? d esempio.dict
Risultato:
0000password 0001password . . . 9999password123456
Utilizzare maskprocessor per utilizzare le regole per generare violenza Decrittografia Le regole richieste, quindi il file di regole generato può essere caricato utilizzando Hashcat-R e mescolato in un dizionario in un candidato password
Ad esempio: esempio.dict
Ciao password12
Hash-O bf.rule ' $? d $? d $? d $? d
La regola generata è così: 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
Poi utilizzare hashcat-a 6 esempio.dict-r bf.rule-m....
L'ultima generazione è così:
hello0 0 0 0 password0 0 0 0 Ciao 0 0 0 1 password0 0 0 1 Ciao 0 0 0 2 password0 0 0 2 . . . Ciao 9 9 9 9 password9 9 9 91234567891011