📶 Руководство по Hashcat или как взломать хэш

Мануал

В этом руководстве рассказывается, как использовать hashcat для взлома более 250 режимов хэшей с помощью различных методов атаки.

Прочитав это руководство, вы будете знать наиболее важные функции Hashcat и как их применять для взлома хэшей.

Функциональное введение в Hashcat

Hashcat – это очень мощный инструмент.

Стоит обратить на него внимание и изучить его возможности.

Прежде чем приступить к примерам, давайте рассмотрим некоторые функциональные возможности Hashcat, включая типы атак, взламываемые хэши и настройки таблицы символов.

Hashcat – это очень гибкий инструмент, позволяющий пользователю оптимизировать и настраивать атаки для более чем 250 режимов хэширования, классифицированных по категориям.

Некоторые из этих категорий показаны в следующей таблице.

КАТЕГОРИЯ ПОДДЕРЖКА ХЭШ-РЕЖИМА
Сырой хэш MD4, MD5, SHA1, SHA2, SHA3, etc.
Сетевые протоколы WPA, Skype, MySQL CRAM (SHA1), DNSSEC (NSEC3), и т.д.
Форумы, CMS, фреймворки phpBB3 (MD5), vBulletin, WordPress (MD5), Joomla(MD5), и т.д.
Сервер базы данных PostgreSQL, Oracle, MySQL, и т.д.
HTTP, SMTP, LDAP Сервер Apache $apr1$ MD5, md5apr1, MD5 (APR), nsldaps, SSHA-1(Base64), Netscape LDAP SSHA, и т.д.
Операционные системы Samsung Android/Windows Phone 8+ Password/PIN, GRUB 2, Cisco, macOS, и т.д.
Архивы 7-Zip, Winzip, RAR, и т.д.
Дисковое шифрование LUKS, Android FDE, Veracrypt, eCryptfs, и т.д.
Документы PDF, Microsoft Office, Apple Secure Notes.
Менеджеры паролей LastPass, Bitcoin/Litecoin wallet.dat, Blockchain, My Wallet, KeePass, и т.д.

Примечание: Полный список категорий можно посмотреть на сайте https://gist.github.com/dwallraff/6a50b5d2649afeb1803757560c176401 или выполнив команду hashcat -help.

Hashcat таблицы символов:

Hashcat позволяет управлять наборами символов для атак методом перебора.

При переборе можно применять следующие встроенные наборы символов для каждой позиции пароля.

Опция флага Набор символов
?l abcdefghijklmnopqrstuvwxyz
?u ABCDEFGHIJKLMNOPQRSTUVWXYZ
?d 0123456789
?h 0123456789abcdef
?H 0123456789ABCDEF
?s !”#$%&'()*+,-./:;<=>?@[\]^_`{|}~
?a ?l?u?d?s
?b 0x00 – 0xff

Например, вы можете определить первый символ пароля как символ верхнего регистра, указав ?u, затем 5 символов нижнего регистра (?l?l?l?l?l?l?l) и четыре последние цифры, указав ?d?d?d?d?d.

Это будет выглядеть следующим образом:

hashcat -a 3 ?u?l?l?l?l?l?d?d?d?d

Вы также можете указать четыре пользовательских набора символов, сочетающих различные возможности.

Вы указываете каждую пользовательскую кодировку, добавляя 1, 2, 3 и 4.

Например, для задания набора символов, включающего 5 строчных букв и цифр, команда выглядит так, как показано ниже, поскольку ?l указывает на строчные символы, а ?d – на цифры.

hashcat -a 3 -1 ?l?d ?1?1?1?1?1

Возможности настройки и оптимизации Hashcat также включают выбор аппаратного устройства для различных режимов атаки, включая описанные ниже.

Режимы атаки Hashcat:

  • Брутфорс атака (3): Этот тип атаки состоит из массивных попыток подбора комбинации символов. Эта техника атаки была удалена в Hashcat и заменена атаками “Маска”.
  • Комбинационная атака (1): Этот режим позволяет добавлять каждое слово, содержащееся в списке слов, в конец каждого слова-контейнера во втором списке слов.
  • Атака по словарю (0): Этот режим, также называемый “Прямым режимом”, пытается использовать в качестве пароля все строки, содержащиеся в файле. Это простая атака по словарю.
  • Гибридная атака: Режим гибридной атаки позволяет сочетать атаку по словарю с атакой перебором. Используя этот режим, вы можете добавлять или вставлять элементы списка слов в атаку перебором.
  • Атака по маске (6 или 7): Атака по маске – это усовершенствование атаки перебором, направленное на разработку “интеллектуальных” атак перебором, в которых пользователь имеет контроль над процессом генерации пароля-кандидата. Например, атака Mask позволяет пользователям задавать такие шаблоны, как заглавная буква только для первой позиции кандидата на пароль, или добавление даты в конце кандидата на пароль, или перед ним, и т.д. Режим 6 позволяет использовать гибридный список слов + маска, а режим 7 – гибридную маску + список слов. Эта атака приводит к более точным попыткам и пропуску или уменьшению числа неправдоподобных кандидатов на пароль.
  • Атака на основе правил: Эта атака описывается разработчиками Hashcat как самый сложный тип атаки, поскольку она заключается в программировании генерации кандидатов на пароль с помощью функций для сокращения, изменения, расширения кандидатов на пароль.
  • Атака с переключением регистров: Этот тип атаки работает, если включена атака на основе правил. Он позволяет перебрать все варианты верхнего и нижнего регистра для кандидатов на пароль.

Начало работы с Hashcat:

Для начала работы на системах Linux на базе Debian выполните приведенную ниже команду для установки Hashcat.

sudo apt install hashcat

В системе Kali Linux инструмент уже предустановлен:

Для других дистрибутивов Linux вы можете загрузить и извлечь сжатый файл 7zip с сайта https://hashcat.net/hashcat/.

Для первого примера я буду использовать файл под названием hashlist, содержащий два хэша и список слов под названием wordlist.

Флаг -m используется для определения типа хэша. Хэш, который я хочу разрушить, – MD5; он имеет тип 0.

Вы можете проверить, как определить каждый тип хэша, прочитав страницу man, как показано ниже, и прокрутив вниз до раздела Hash types.

Вы также можете изучить все типы атак и их определение на странице man, это было описано ранее в разделе “Режимы атак Hashcat” в этом руководстве.

Первый пример атаки направлен на хэш MD5 (-m 0) с использованием словарной атаки (-a 0) для взлома хэшей, содержащихся в хэш-листе, за которым следует список слов.

hashcat -m 0 -a 0 hashlist wordlist

Запустится Hashcat; в моем случае я использую фиктивный список слов, содержащий правильные слова, поэтому, как вы можете видеть ниже, Hashcat предупреждает, что мой список слов мал.

Примечание: в этом руководстве используются следующие хэши:

ec92bbf4741c253df7fdf55c9aed5fe4

Давайте посмотрим, что произойдет, если мы снова запустим ту же атаку.
hashcat -m 0 -a 0 hashlist wordlist --show
В следующем примере показано, как расшифровать хэш sha1.
Файл с именем sha1 содержит хэш SHA1.
Как видите, помимо другого имени, единственным отличием является режим хэширования, измененный на 100 (SHA1).
Атака, как и в предыдущем случае, является атакой по словарю.
hashcat -m 100 -a 0 sha1 wordlist
Последний пример показывает атаку методом перебора с использованием hashcat charset для расшифровки числового пароля.
В данном случае я знаю, что это числовой пароль длиной 6 символов.
Используя -3, я даю команду hashcat выполнить атаку брутфорса, а применяя 6-кратную кодировку ?d, я указываю попробовать все числа 6 раз, по одному для каждого символа.
hashcat -m 100  sha1.txt -a 3 ?d?d?d?d?d?d

Заключение

Hashcat – это простой, но мощный инструмент для расшифровки сотен типов хэшей за несколько шагов.
Это многоплатформенный инструмент, который может помочь нам восстановить защищенные zip-файлы, документы, файлы wpa .pcap и более 250 различных режимов шифрования.
Его функции, такие как атаки по маске, делают hashcat интеллектуальным инструментом для проведения интеллектуальных атак, полностью настраиваемых пользователем.

¯\_(ツ)_/¯ Примечание: Информация для исследования, обучения или проведения аудита. Применение в корыстных целях карается законодательством РФ.

Добавить комментарий