hashcat має чотири основні методи дешифрування :
1. Словник Розшифровка
2. Комбінований рядок розшифровка
3. Насильницька розшифровка (застаріла) – маскова атака (маска розшифровка )
4. Існує змішане дешифрування
і метод дешифрування на основі правил, а також перемикання регістру, але його можна класифікувати як правило дешифрування
-a 0 -m type hashfile dictionary1 dictionary2
Здається, ви також можете використовувати графічний процесор для прискорення
Якщо вміст словника такий
11
22
33
Тоді комбінація:
1111
1122
1133
2222
2233
3333
-k, --rule-right=rule Single rule applied to each Word on the right dictionary123
Наприклад:
dictionary 1:
11 2212
Словник 2:
33 4412
Команди:
-j '$-' -k '! $'12
Слово в словнику проксі $ вище, -j '$-' означає додавання -, -k '$ праворуч від слова! ' означає додати один ліворуч від слова!
Отже, отримана комбінація:
11-33! 22-33! 11-44! 22-44! 1234
, офіційне пояснення є відносно простим, тобто mask attack є кращим, ніж brute-force, оскільки він зменшує кількість таблиць паролів. Що стосується зменшення кількості паролів, алгоритм не представлений занадто багато (на основі файлу hcmask), я просто згадую про зменшення кількості паролів за допомогою деяких звичайних форм пароля, наприклад: "Kele1997", коли насильницьке розшифрує буде перераховано всі можливості тощо. Але під час маскової атаки програма намагатиметься писати лише першу літеру з великої літери, оскільки більшість паролів рідко мають велику літеру в другій або третій позиції. Використовуйте ці правила, щоб зменшити кількість кандидатів на паролі
Офіційно сказано, що mask attack не має недоліків порівняно з грубою силою, оскільки mask attack може генерувати всі грубі паролі
вбудовані набори символів
? l = abcdefghijklmnopqrstuvwxyz
? u = ABCDEFGHIJKLMNOPQRSTUVWXYZ
? d = 0123456789
? h = 0123456789abcdef
? H = 0123456789ABCDEF
? s = «Космос»! "#$%&'()*+,-./:; <=>? @[\]^_`{|}~
? a = ? л? У? Д? с
? b = 0 - 0xff123456789У каталозі програми є набори символів, які містять усілякі дивні символи, якщо вони є у вашому паролі, ви можете використовувати ці файли
hashcat має чотири параметри для вказівки спеціального набору символів
–custom-charset1=CS
–custom-charset2=CS
–custom-charset3=CS
–custom-charset4=CS
Ці чотири параметри можна замінити абревіатурами -1, -2, -3 і -4. Ви можете вказати спеціальний набір символів для дешифрування
Наступна команда встановлює перший спеціальний набір символів (-1) для російської мови:
-1 charsets/special/russian/ru_ISO-8859-5-special.hcchr
Нам не потрібно вказувати фіксовану довжину пароля, ми можемо вказати параметр –increment
-i, --increment | | Enable mask increment mode | | Num | Stop mask incrementing at X 123
-a 3 hash.txt mask_file.hcmask Завантажте файл hcmask і використовуйте маску у файлі, щоб розшифрувати
hashcat постачається з кількома файлами hcmask, які розміщуються під каталогом програми mask/
--hex-charset дорівнює 16
Пароль, згенерований словником і символами, згенерованими насильницьким дешифруванням
Наприклад, каштан :example.dict
пароль hello12
hashcat64 -a 6 example.dict ? Д? Д? Д? d
? Д? Д? Д? d представляє чотиризначне ціле число
, тому остаточна згенерована послідовність кандидатів на пароль:
password0000 Пароль 0001 Пароль 0002 . . . Пароль 99991234567
hashcat64 -a 6 ? Д? Д? Д? d example.dict
результат:
0000password 0001 Пароль . . . 9999password123456
Використовуйте maskprocessor для використання правил для створення насильства Розшифрування необхідні правила, а потім згенерований файл правил можна завантажити за допомогою hashcat -r і змішати словник у кандидата на пароль
Наприклад: example.dict
Привіт пароль 12
хеш -o bf.rule '$? d $? d $? d $? Правило, створене d
, виглядає так: 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
Потім використовуйте hashcat -a 6 example.dict -r bf.rule -m. . . .
Нарешті згенеровано таке:
hello0 0 0 0 Пароль 0 0 0 0 Привіт 0 0 0 1 Пароль 0 0 0 1 Привіт 0 0 0 2 Пароль 0 0 0 2 . . . Привіт 9 9 9 9 Пароль 9 9 9 91234567891011