A
hashcat négy alapvető titkosítási módszerrel rendelkezik:
1. Szótár titkosítás
2. Kombinált karakterlánc titkosítás
3. Brute force titkosítás (elavult) – maszk támadás (maszk titkosítás )
4. Vegyes titkosítás
és szabályalapú titkosítás , valamint a kis- és nagybetűk váltása, de ez a szabályok közé sorolható titkosítás
-a 0 -m típusú hashfájl szótár1 szótár2
úgy tűnik, hogy gpu-gyorsítás is lehetséges
ha a szótár tartalma ilyen
11
22
33
akkor a kombinált eredmény:
1111
1122
1133
2222
2233
3333
-j, --rule-left=SZABÁLY Egy szabály alkalmazva a minden szóra a bal szótárban -k, --rule-right=RULE Egy szabály alkalmazva minden szóra a jobb oldalon a szótárban 123
Például:
Szótár 1:
11 2212
Szótár 2:
33 4412
Parancsok:
-j ' -' -k '!$'12
A fenti $ proxy szótárban szereplő szavak, -j '$-' azt jelenti, hogy egy - jelet adunk hozzá a szó jobb oldalához, -k '$!' azt jelenti, hogy egy ! jelet adunk hozzá a szó bal oldalához
, ezért a kombinációk a következők:
11-33! 22-33! 11-44! 22-44!1234
Ez a dolog, a hivatalos leírás szerint egyszerűbb, azt mondja, hogy a mask attack jobb, mint a brute-force, mert csökkenti a jelszó-táblázatok számát. A jelszám csökkentésére szolgáló algoritmust nem részletezték (a hcmask fájl alapján), csak röviden említették, hogy a szokásos jelszóformákkal csökkentik a jelszámot, például: „Kele1997”, a brute-force dekódolásakor minden lehetséges kombinációt megnéz, stb. De a mask attack esetén a program csak a nagybetűvel kezdődő betűket próbálja ki, mert a legtöbb jelszóban ritka, hogy a második vagy harmadik helyen nagybetű legyen, és ezekkel a szabályokkal csökkentik a jelszó-jelöltek számát
.A hatóságok azt állítják, hogy a maszkos támadásnak nincsenek hátrányai a brute-force támadáshoz képest, mivel a maszkos támadás képes létrehozni az összes brute-force jelszót.
Beépített karakterkészlet
?l = abcdefghijklmnopqrstuvwxyz
?u = ABCDEFGHIJKLMNOPQRSTUVWXYZ
?d = 0123456789
?h = 0123456789abcdef
?H = 0123456789ABCDEF
?s = «space»!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
?a = ?l?u?d?s
?b = 0 - 0xff123456789
A programkönyvtárban vannak olyan karakterkészletek, amelyek különféle furcsa karaktereket tartalmaznak. Ha a jelszavában vannak ilyenek, akkor használhatja ezeket a fájlokat
Ahashcat négy paraméterrel rendelkezik az egyéni karakterkészlet meghatározásához
–custom-charset1=CS
–custom-charset2=CS
–custom-charset3=CS
–custom-charset4=CS
Ezt a négy paramétert a -1, -2, -3 és -4 rövidítésekkel lehet helyettesíteni. Megadhat egyéni karakterkészletet a dekódoláshoz
A következő parancs az első egyéni karakterkészletet (-1) orosz nyelvi karakterekre állítja be:
-1 charsets/special/Russian/ru_ISO-8859-5-special.hcchr
Nem kell megadnunk a jelszó rögzített hosszát, a --increment paraméterrel ezt megtehetjük
-i, --inkrement | | Engedélyezze a maszkot az inkrement mód az az | --inkrement-min Szám | Start maszk inkrementálás a X-el | --increment-min=4 --increment-max | Szám | Leállítás maszk növelés a X-nél 123
-a 3 hash.txt maszk_file.hcmask A hcmask fájl betöltése, a fájl maszkjának használatával dekódolás
A Hashcat több hcmask fájlt is tartalmaz, amelyek a programkönyvtár mask/ mappájában találhatóak.
{--hex-charset A következő karakterlánc hexadecimális.
A létrehozott jelszavak szótár és brute force módszerrel készültek. dekódolás létrehozott karakterkombinációk.
Például: example.dict
jelszó hello12
hashcat64 -a 6 example.dict ?d?d?d?d
?d?d?d?d azt jelenti, hogy négyjegyű egész számok.
Tehát a létrehozott jelszó-jelölt sorozat a következő:
jelszó0000 jelszó0001 jelszó0002 . . . jelszó99991234567
hashcat64 -a 6?d?d?d példa.dict
Találat:
0000password 0001Jelszó Igen. Igen. Igen. 9999password123456
Használjon maskprocesszort a brute force generálásához A dekriptozáshoz szükséges szabályok , majd a generált szabályfájl betölthető és keverhető egy jelszójelöltbe a hashcat -r
használatával Példa: példa.dict
hello Jelszó12
hash -o bf.rule ' $?d $?d $?d $?d
A generált szabály így néz ki: bf.rule
0 dollár 0 dollár 0 dollár 0 dollár$0 $0 $0 $1 $0 $0 $0 $2 $0 $0 $0 $3 $0 $0 $0 $4 . . . $9 $9 $9 $9123456789
Aztán használja a hashcat -a 6 example.dict -r bf.rule -m ........
Végül ezt eredményezi:
hello0 0 0 0 password0 0 0 0 hello0 0 0 1 password0 0 0 1 hello0 0 0 2 password0 0 0 2 . . . hello9 9 9 9 jelszó9 9 9 91234567891011