Hashcat відомий як найшвидший інструмент для дешифрування паролів у світі. Сьогоднішня стаття витягне кілька часто використовуваних параметрів у поєднанні з командами дешифрування паролів, щоб проаналізувати, як використовувати Hashcat для дешифрування паролів.
Ми знаємо, що hashcat може розшифрувати велику кількість типів паролів, він може розшифрувати близько 210 типів паролів, переважна більшість з яких є хешами. Якщо ви хочете розшифрувати пароль за допомогою hashcat, вам спочатку потрібно зрозуміти форму пароля, а потім індексувати номер пароля в hashcat відповідно до форми пароля.
Ми беремо пароль: digapis і значення солі asdf як приклади, щоб показати деякі форми хеш-значень.
| Number | Name | Тип | Приклад |
|---|---|---|---|
| 0 | MD5 | хеш, довжина 32 | 8713d75511bea7e0df78c6063dc778b0 |
| 1400 | SHA-256 | hash | aa106625c7de812d6118992a191ea4627e2457fa80bf6ec06f9c60cbf8e5260f |
| 1700 | SHA-512 | hash | 23afac4524f62ea4d941ca4933249b2b78d19069773266abc36d6fd17a6fbe2f4ccc834acc868358ba32ddca553611218a2865f975339fe45d38cc1999f84b5e |
| 10 | Md5($pass.$salt) | Після солі пароля виконайте MD5 один раз. Пароль попередньо | 48985c61e2581c3f9ee5f1cfb775afbc:asdf |
| 20 | MD5($salt.$pass) | Сіль на першому місці | 4fa1dd606353e055fed67d9812bddf35:asdf |
| 2600 | md5(md5($pass)) | Пароль виконується двічі MD5 | 98177c3f36af4a3f77f5b87594e6cf6a |
| 3710 | md5($salt.md5($pass)) | Виконайте перетворення MD5 за паролем, додайте сіль спереду та виконайте ще раз MD5 | 88a535877ec21b8786775a7074e4de4c:asdf |
| 4400 | MD5(sha1($pass)) | Виконайте перетворення sha1 за паролем, а потім виконайте MD5 | ec7bf3099984001a2b0f37ba5d1d68fa |
| 4500 | sha1(sha1($pass)) | пропущено | 005a41cfe16c9a5556c7a5cdd5f1958991f2e031 |
| 1460 | HMAC-SHA256(key=$salt) | пропущено | d684ab7c38ddc262f215328334c4d0273cef10d6c5e61988f5cc87fcab8a7a60:asdf |
| 11500 | CRC32 | пропущено | 4C244A19:00000000 |
-a Команда може вказати режим атаки. Використовуйте hashcat для розшифрування пароля, лише знати Номер пароля недостатньо. Вам також потрібно вибрати режим атаки, який використовує hashcat для розшифрування пароля.
Hashcat4.0.1 має 5 режимів атаки, кожен з яких має свої характеристики.
| Номер | Режим атаки | Значення |
|---|---|---|
| 0 | straight | Режим прямої атаки |
| 1 | Combinstion | Комбінований режим атаки |
| 3 | Brute-force | Режим злому вибухової сили |
| 6 | Гібридний список слів+маска | Поєднання словник + маска |
| 7 | Hybird Mask+Wordlist | Mask+Dictionary Combination |
У цих 5 режимах атаки ми можемо використовувати словники для дешифрування паролів, використовувати силовий злом для проходження всіх можливих паролів або поєднувати словники та маски для дешифрування паролів.У різних режимах атаки параметри, які використовуються командою hashcat, відрізняються. Давайте візьмемо прямий режим атаки як приклад, щоб дізнатися, як hashcat використовує файли словника для дешифрування паролів. Колеги також перемежують використання інших параметрів.
Режим прямої атаки полягає в тому, щоб безпосередньо використовувати словник для вибуху пароля. Він може використовувати один файл словника або кілька файлів словника для дешифрування. Ви також можете поєднати словник із файлом правил, щоб зробити вибух пароля ефективнішим.
hashcat -a 0 –m 0 mima.txt –o outfile dic.txt
-a визначає режим атаки як пряму атаку, -m визначає тип хеша як MD5, а -o записує розшифрований пароль у вихідний файл.
Атака з подвійним словником також є ситуацією в режимі прямої атаки. Під час використання файлу словника для вибуху пароля завантажуються два файли словника. Це розширює простір для файлів словника.
Багатословникова атака використовує завантаження кількох файлів словника одночасно. Наступна команда використовує три словники для виконання словникових атак і завантаження трьох словників послідовно для вибуху. dic.txt в команді є словниковим файлом, який використовується при вибуху.
Використання атаки каталогу словника використовуватиме кілька файлів словника в каталозі словника для прямих атак. Використання каталогу словника Кілька файлів словника в каталозі словника буде завантажено послідовно під час прямої атаки. dic у наступній команді є папкою, де розташовані кілька файлів словника.
-r/--rule-file Команда застосовуватиме кілька правил у файлі правил до кожного словника слово. Файл правил можна створити самостійно, або ви можете використовувати файл правил, який постачається з hashcat.Файл правил, який постачається з hashcat, зазвичай знаходиться в папці rules. Файл правил у папці правил виглядає наступним чином:
У атаці словник + правило ви можете використовувати один словник, кілька словників або каталог словника в поєднанні з файлами правил для вибуху пароля. Насправді це форма прямої атаки в поєднанні з файлами правил.
Так зване правило схоже на мову програмування, яка генерує паролі-кандидати. Воно може змінювати, вирізати, розширювати слова або пропускати деякі операції на основі умовних операторів. Це дозволяє здійснювати атаки більш гнучко та ефективно.
Атаки правил можна використовувати в поєднанні з подвійними словниками, кількома словниками або навіть словниковими каталогами. Метод використання схожий на атаку єдиного словника + правила.
-o Після параметра слідує файл, а розшифрований пароль вводиться у вказаний файл за допомогою команди -o. Форма зберігання за замовчуванням hash:plain. Раніше є приклад використання цієї команди. Давайте подивимося на малюнок вище.
Ця команда може вказати вихідний формат файлу outfile. Файл Outfile має 15 режимів виведення.
Outfile-format=1 виводить лише розшифрований хеш зашифрованого тексту;
Outfile-format=2, виводить лише відкритий текст розшифрованого пароля.
На додаток до використання параметра -o для виведення, ми також можемо відфільтрувати розшифрований пароль у файлі зашифрованого тексту за допомогою параметра remove, залишаючи лише паролі, які неможливо розшифрувати. Це може зменшити дублювання роботи під час подальшого дешифрування пароля.
Коли кількість розшифрованих паролів відносно велика або файл словника дуже великий, з'явиться такий параметр, і введення S з клавіатури надрукує наступний статус на екрані, за допомогою якого ви можете переглянути поточний хід розшифровки пароля.
Щоразу, коли ви хочете перевірити поточний прогрес дешифрування пароля, вам доведеться вводити S. Це використовує параметр статусу, щоб дозволити екрану автоматично оновлювати екран статусу. Зменшення кількості операцій, які вам потрібно виконати, також може зменшити випадкові дотики.
Окрім використання параметра статусу hashcat для автоматичного оновлення стану екрана, ви також можете використовувати параметр --status-timer для встановлення інтервалу оновлення екрана статусу.
Hashcat приблизно таке, як вище. Якщо ви зацікавлені в hashcat, ви також можете безпосередньо відвідати веб-сайт hashcat, який містить детальний вступ до параметрів команди hashcat та кожного режиму атаки.
Стаття відтворена з лабораторії мережевої безпеки Dingniu