- Инструменты Kali Linux
- Список инструментов для тестирования на проникновение и их описание
- Hashcat
- Справка по Hashcat
- Руководство по Hashcat
- Примеры запуска Hashcat
- Взлом WPA2 WPA рукопожатий с Hashcat
- Установка Hashcat
- Установка Hashcat в другие Linux
- Установка в Windows
- HackWare.ru
- Этичный хакинг и тестирование на проникновение, информационная безопасность
- Практические примеры использования Hashcat
- Оглавление
- Структура команды Hashcat
- Примеры масок Hashcat
- Часто используемые опции Hashcat
- Извлечение хешей и их номера для взлома в Hashcat
- Как в Hashcat взломать пароль от Wi-Fi
- Захват рукопожатия Wi-Fi для взлома пароля
- Извлечение хеша для взлома Wi-Fi
- Взлом пароля архива ZIP
- Взлом пароля архива RAR
- Взлом пароля архива 7z
- Взлом пароля MS Office: Word (файл .DOCX) и другие офисные файлы
- Взлом пароля LibreOffice (файлы Wirter/.odt и другие)
- Взлом пароля PDF
- Взлом пароля KeePass и KeePassXC
- Взлом пароля приватного ключа GPG
- Взлом пароля приватного ключа OpenSSH (id_rsa)
Инструменты Kali Linux
Список инструментов для тестирования на проникновение и их описание
Hashcat
Hashcat — это самый быстрый в мире восстановитель (взломщик) паролей.
В настоящее время, Hashcat объединила в себе две ранее существовавшие отдельные ветки программы. Одна так и называлась Hashcat, а вторая называлась oclHashcat (а ещё раньше oclHashcat была разделена на собственно oclHashcat и cudaHashcat). В настоящее время абсолютно все версии слиты в одну, которая при восстановлении паролей использует центральный процессор и видеокарту.
- Самый быстрый в мире взломщик
- Первый и единственный в мире внутриядерный движок правил
- Бесплатная
- Открытый исходный код (лицензия MIT)
- Мультиплатформенная (Linux, Windows и OSX)
- Мультиплатформенная (CPU, GPU, DSP, FPGA и т.д., всё, что поставляется со средой выполнения OpenCL)
- Множество хешей (одновременный взлом множества хешей)
- Задействует несколько устройств (использует множество устройств на одной системе)
- Задействует устройства разных типов (использует устройства разных типов на одной системе)
- Поддержка распределённых систем взлома (с помощью дополнительного сегмента)
- Интерактивная поддержка паузы / возобновления
- Поддержка сессий
- Поддержка восстановления
- Поддержка чтения кандидатов в пароли из файла и стандартного ввода
- Поддержка шестнадцатеричных солей и шестнадцатеричных наборов символов
- Поддержка автоматической тонкой настройки производительности
- Поддержка автоматического поорядка пространства ключей цепей Маркова
- Встроенная система бенчмарков
- Интегрированный тепловой сторож
- 160+ реализованных с мыслью о производительности типов хешей
- … и многое другое
Справка по Hashcat
Руководство по Hashcat
Страница man отсутствует.
Примеры запуска Hashcat
Запуск бенчмарка -b
Взлом WPA2 WPA рукопожатий с Hashcat
Очистка ваших файлов .cap программой wpaclean
Конвертируем файл .cap в формат, который будет понятен oclHashcat. Для ручной конвертации .cap используйте следующие команды в Kali Linux.
Обратите внимание, что, вопреки логике, сначала идёт выходной файл, а потом входной . Казалось бы, логичнее было . Запомните это, чтобы не терять время на выяснение проблемы.
В моём случае команда выглядит так:
Конвертация файлов .cap в формат .hccap
Нам нужно конвертировать этот файл в формат, понятный oclHashcat.
Для его конвертирования в формат .hccap с помощью aircrack-ng нам нужно использовать опцию -J
Обратите внимание -J это заглавная J, а не маленькая j.
В моём случае команда следующая:
Атака по словарю на рукопожатие:
Атака брутфорсом на рукопожатие:
Установка Hashcat
Программа предустановлена в Kali Linux.
Установка Hashcat в другие Linux
Далее перейдите на официальный сайт и скачайте архив.
Запустите файл hashcat64.bin или hashcat32.bin в зависимости от битности вашей системы.
Установка в Windows
Скачайте архив с официального сайта, распакуйте его.
Для запуска используйте файл hashcat64.exe или hashcat32.exe в зависимости от битности вашей системы.
Программу нужно запускать в командной строке. Для этого откройте окно командной строки (Win+X – выберите «Командная строка») и перетащите туда исполняемый файл.
Либо в открывшемся окне командой строки перейдите в требуемую папку:
HackWare.ru
Этичный хакинг и тестирование на проникновение, информационная безопасность
Практические примеры использования Hashcat
Оглавление
При подготовке справочной статьи «Практика и примеры использования John the Ripper» возникла идея сделать аналогичную статью по Hashcat.
Те, кто регулярно пользуются Hashcat, конечно, смогут на вскидку составить нужную маску и даже вспомнить номер часто используемого типа хеша. Но вспомнить название скрипта для извлечения хеша, или номер реже используемого типа хеша, или нечастую опцию — уже не так просто. Конечно же можно углубиться в обширную документацию. Но, во-первых, хорошо иметь под рукой шпаргалку вроде той, которую вы читаете. А во-вторых, официальная справка не содержит информацию о программах по извлечению хешей.
В общем, надеюсь справочная страница, которую вы читаете, окажется вам полезной.
Но данная статья не заменяет очень многочисленный учебный материал по Hashcat. Поэтому настоятельно рекомендуется эту статью использовать как шпаргалку после изучения следующих источников:
- Книга «Продвинутый взлом паролей с *Hashcat» на русском языке
- Быстрый старт для абсолютных новичков «Инструкция по hashcat: запуск и использование программы для взлома паролей»
- Как в Linux взламывать пароли видеокартой и центральным процессором
- Виды атак Hashcat
Структура команды Hashcat
В самом общем виде команда запуска Hashcat имеет вид (в ней символ | означает «ИЛИ»):
В последующих командах ХЕШ, ФАЙЛ-С-ХЕШЕМ и hccapxfile будут обозначены как просто «ХЕШ» — помните, что это может быть как строка хеша, так и путь до файла, в котором сохранён хеш.
Общий вид команды для запуска атаки по словарю:
Если хеш помещён в файл, то команда:
Общий вид команды для запуска атаки по маске:
Если хеш помещён в файл, то команда:
С опцией -m нужно указать ТИП взламываемого хеша, который обозначен номером. Номера хешей даны ниже, при описании процесса извлечения хешей.
Примеры масок Hashcat
Последующие примеры должны дать представления об основах использования масок — вы легко можете отредактировать их под ваши потребности:
Пароли состоят из шести символов, каждый из которых является цифрой:
Пароли состоят из восьми символов, каждый из которых является цифрой:
Пароли состоят из шести символов и начинаются на «Pa», остальными символами являются цифры:
Пароли состоят из цифр и имеют длину от 1 до 4 символов:
Пароли состоят из цифр и имеют длину от 1 до 10 символов:
Пароли состоят из шести символов, каждый из которых является маленькой буквой:
Пароли состоят из маленьких букв и имеют длину от 1 до 6 символов:
Пароли состоят из шести символов, каждый из которых является большой буквой:
Пароли состоят из шести символов, вначале всегда идёт фиксированная строка «No», затем заглавная буква, затем прописная буква и затем две цифры.
Пароли состоят из больших и маленьких букв и цифр, которые могут быть в любом месте, и имеют длину от 1 до 8 символов.
Часто используемые опции Hashcat
Любую команду запуска hashcat вы можете дополнить другими опциями.
К примеру, обычно Hashcat использует только видеокарты и не использует возможности центрального процессора для выполнения вычислений, даже если установлены необходимые драйверы и среда выполнения. Вы можете изменить это поведение, добавив следующие две опции:
При достижении видеокартой или ЦП определённой температуры, Hashcat прерывает работу. Вы можете установить температуру, при которой будет прерван брут-форс, уменьшив или увеличив значение по умолчанию (90℃). Слишком высокие значения вы используете на свой страх и риск.
Во время работы Hashcat если нажать кнопку s, то будет обновлена информация о текущем процессе взлома, то есть показан его статус. Вы можете включить автоматическое обновление статуса опцией —status, а опцией —status-timer вы можете настроить время автоматического обновления (например, —status-timer=1).
Опции, не связанные с брут-форсом
Опция -b запустит бенчмарк:
можно запустить бенчмарк только для определённого алгоритма. Вы можете это использовать, если хотите знать, с какой скоростью на вашем компьютере будет взламываться пароль документа Word или архива. Например, бенчмарк скорости взлома пароля Wi-Fi.
Опция -I покажет информацию об обнаруженных устройствах, на которых возможно делать вычисления для брут-форса:
Опцией —example-hashes вы можете вывести примеры всех хешей:
Вы можете показать пример только нужного вам хеша, указав его номер опцией -m:
Опция —stdout сделает так, что hashcat не будет взламывать хеш, а только покажет кандидаты в пароли — это можно использовать для генерации словарей по маскам.
Извлечение хешей и их номера для взлома в Hashcat
Далее показано как извлечь хеши из зашифрованных файлов и дан их номер. Этот номер нужно указать вместо слова ТИП, а путь до файла с вычисленным хешем нужно указать вместо слова ХЕШ. Напомню общий вид команд.
Общий вид команды для запуска атаки по словарю:
Общий вид команды для запуска атаки по маске:
Для извлечения хешей используются инструменты, которые поставляются с John the Ripper, которые установлены по умолчанию в Kali Linux и BlackArch.
В случае если John the Ripper отсутствует в репозиториях вашего дистрибутива или вы хотите установить самую свежую версию из исходного кода, то следуйте инструкции из раздела «Установка John the Ripper в Linux из исходного кода».
В целом Hashcat более чувствительна к точному виду хеша, а инструменты генерации хеша для John the Ripper склонны добавлять лишние данные, например, имя файла. По этой причине сгенерированные хеши обычно необходимо чуть подправить, чтобы их смогла принять Hashcat для начала брут-форса.
Как в Hashcat взломать пароль от Wi-Fi
Захват рукопожатия Wi-Fi для взлома пароля
Здесь не будем останавливаться на основах тестирования безопасности беспроводных сетей Wi-Fi, поэтому если у вас пробелы в знаниях, то обратитесь к онлайн книге «Взлом Wi-Fi сетей с Kali Linux и BlackArch».
Посмотрим имя беспроводного интерфейса:
У меня это wlp0s20f0u1. Для автоматического сбора рукопожатий запустим команду вида:
В моём случае это:
Чтобы просмотреть, какие рукопожатия были захвачены, выполним команду:
Извлечение хеша для взлома Wi-Fi
Если вы хотите взламывать сразу все рукопожатия, то выполните команду:
Утилита cap2hccapx входит в состав hashcat-utils.
В результате будут сгенерированы хеши для всех захваченных рукопожатий.
В выводе сказано, что обнаружено 10 ТД.
Можно сохранить рукопожатие для определённой точки доступа, её нужно указать её имя. Чтобы сохранить рукопожатие только для определённой ТД, выполните команду вида:
Меня интересует ТД с именем FTTX772802, тогда в моём случае команда следующая:
Номер хеша: 2500
То есть для запуска атаки по словарю нужно выполнить команду:
Для запуска атаки по маске нужно выполнить команду:
Пример удачного взлома:
Взлом пароля архива ZIP
Для извлечения хеша выполните команду вида:
К примеру, путь до файла /mnt/disk_d/Share/test/file.zip, тогда команда следующая:
Будет извлечён хеш в формате John, для Hashcat этот формат непригоден, поэтому выполним следующую команду:
Она очистит хеш от ненужных строк и сохранит хеш в формате Hashcat в файл zip.hash.
Но и это ещё не всё — разновидностей ZIP архивов много. Поэтому нам нужно правильно определить тип вашего хеша. Вы можете открыть файл zip.hash любым текстовым редактором или выполните следующую команду, чтобы вывести первые 20 символов хеша:
- Если строка хеша начинается на:
Значит это WinZip, номер хеша: 13600
- Если строка начинается на:
Значит это PKZIP (Compressed), номер хеша: 17200
- Если строка начинается на:
Значит это PKZIP (Uncompressed), номер хеша: 17210
ВНИМАНИЕ: у PKZIP (Compressed) и PKZIP (Uncompressed) ОДИНАКОВЫЕ начала хешей, я не знаю, как их можно различить. Единственный вариант — пробовать запускать команду hashcat с указанием типа хеша 17200, а затем 17210. При этом если вы указали тип хеша неправильно, то сразу будет показана ошибка. Пример ошибки:
- Если строка начинается на:
Значит это PKZIP (Compressed Multi-File), номер хеша: 17220
- Если строка начинается на:
Значит это PKZIP (Mixed Multi-File), номер хеша: 17225
- Если строка начинается на:
Значит это PKZIP (Compressed Multi-File Checksum-Only), номер хеша: 17230
Взлом пароля архива RAR
Для извлечения хеша выполните команду вида:
К примеру, путь до файла /mnt/disk_d/Share/test/file.rar, тогда команда следующая:
Будет извлечён хеш в формате John, для Hashcat этот формат непригоден, поэтому выполним следующую команду:
Она очистит хеш от ненужных строк и сохранит хеш в формате Hashcat в файл rar.hash.
Но и это ещё не всё — имеется несколько версий RAR. Поэтому нам нужно правильно определить тип вашего хеша. Вы можете открыть файл rar.hash любым текстовым редактором или выполните следующую команду, чтобы вывести первые 8 символов хеша:
- Если строка хеша начинается на:
Значит это RAR3-hp, номер хеша: 12500
- Если строка хеша начинается на:
Значит это RAR5, номер хеша: 13000
- Если строка хеша начинается на:
Значит это RAR3-p (Uncompressed), номер хеша: 23700
- Если строка хеша начинается на:
Значит это RAR3-p (Compressed), номер хеша: 23800
ВНИМАНИЕ: у RAR3-p (Uncompressed) и RAR3-p (Compressed) ОДИНАКОВЫЕ начала хешей, я не знаю, как их можно различить. Единственный вариант — пробовать запускать команду hashcat с указанием типа хеша 23700, а затем 23800. При этом если вы указали тип хеша неправильно, то сразу будет показана ошибка. Пример ошибки:
Если вы получили ошибки об отсутствующих модулях, например:
То это означает, что ваша версия Hashcat ещё не поддерживает хеши с номерами 23700 и 23800 и вам нужно обновить программу до последней версии. В настоящее время эта поддержка присутствует только в бета версии Hashcat, которую вы можете скачать на официальном сайте: https://hashcat.net/beta/
Взлом пароля архива 7z
Для извлечения хеша выполните команду вида:
Будет извлечён хеш в формате John, для Hashcat этот формат непригоден, поэтому выполним следующую команду:
Она очистит хеш от ненужных строк и сохранит хеш в формате Hashcat в файл 7z.hash.
Номер хеша: 11600
Взлом пароля MS Office: Word (файл .DOCX) и другие офисные файлы
Для извлечения хеша выполните команду вида:
Для подготовки хеша выполните команду:
Имеется несколько версий офисных документов MS Office. Поэтому нам нужно правильно определить тип вашего хеша. Вы можете открыть файл office.hash любым текстовым редактором или выполните следующую команду, чтобы вывести первые 14 символов хеша:
- Если строка хеша начинается на:
Значит это MS Office 2007, номер хеша: 9400
- Если строка хеша начинается на:
Значит это MS Office 2010, номер хеша: 9500
Если строка хеша начинается на:
Значит это MS Office 2013, номер хеша: 9600
Пример удачного взлома пароля файла Word:
Взлом пароля LibreOffice (файлы Wirter/.odt и другие)
Для извлечения хеша выполните команду вида:
Для подготовки хеша выполните команду:
Имеется несколько версий офисных документов LibreOffice. Поэтому нам нужно правильно определить тип вашего хеша. Вы можете открыть файл odf.hash любым текстовым редактором или выполните следующую команду, чтобы вывести первые 10 символов хеша:
- Если строка хеша начинается на:
Значит это Open Document Format (ODF) 1.2 (SHA-256, AES), номер хеша: 18400
- Если строка хеша начинается на:
Значит это Open Document Format (ODF) 1.1 (SHA-1, Blowfish), номер хеша: 18600
Взлом пароля PDF
Для извлечения хеша выполните команду вида:
Для подготовки хеша выполните команду:
Имеется несколько версий PDF файлов. Поэтому нам нужно правильно определить тип вашего хеша. Вы можете открыть файл pdf.hash любым текстовым редактором или выполните следующую команду, чтобы вывести первые 13 символов хеша:
- Если строка хеша начинается на:
Значит это PDF 1.1 — 1.3 (Acrobat 2 — 4), номер хеша: 10400
- Если строка хеша начинается на:
Значит это PDF 1.1 — 1.3 (Acrobat 2 — 4), collider #1, номер хеша: 10410
- Если строка хеша начинается на:
Значит это PDF 1.1 — 1.3 (Acrobat 2 — 4), collider #2, номер хеша: 10420
ВНИМАНИЕ: у всех перечисленных типов файлов ОДИНАКОВЫЕ начала хешей, я не знаю, как их можно различить. Единственный вариант — пробовать запускать команду hashcat с указанием типа хеша 10400, а затем 10410 и, наконец, 10420. При этом если вы указали тип хеша неправильно, то сразу будет показана ошибка. Пример ошибки:
- Если строка хеша начинается на:
Значит это PDF 1.4 — 1.6 (Acrobat 5 — 8), номер хеша: 10500
- Если строка хеша начинается на:
Значит это PDF 1.7 Level 3 (Acrobat 9), номер хеша: 10600
- Если строка хеша начинается на:
Значит это PDF 1.7 Level 8 (Acrobat 10 — 11), номер хеша: 10700
- Если строка хеша начинается на:
Значит это PDF документ, созданный с помощью MS Word, для него подходит номер хеша: 10500
Взлом пароля KeePass и KeePassXC
Для извлечения хеша выполните команду вида:
В качестве ФАЙЛА должна быть база данных паролей .kdbx.
Или если у вас есть файл ключей, то выполните команду вида:
Вы можете увидеть сообщение:
Оно означает, что в ФАЙЛЕ Passwords.kdbx используется база данных KDBX версии 4.0, а программа keepass2john поддерживает только KDBX версию KDBX 3.1. То есть в настоящее время невозможно взломать пароль KeePass с базой данных KDBX версии 4.0 в John the Ripper.
Для подготовки хеша выполните команду:
Номер хеша: 13400
Взлом пароля приватного ключа GPG
В настоящее время взлом GPG в Hashcat не поддерживается (но поддерживается в John the Ripper). Когда будет добавлена поддержка, хеш приватного ключа нужно извлечь следующим образом.
Пароль gpg можно взломать из файла приватного ключа, полученного в результате выполнения команды экспорта:
После экспорта, из этого файла приватного ключа нужно извлечь хеш для взлома пароля:
Для подготовки хеша выполните команду:
Взлом пароля приватного ключа OpenSSH (id_rsa)
Для извлечения хеша выполните команду вида:
Для подготовки хеша выполните команду:
Обратите внимание, что для работы ssh2john необходим Python 2. Если вы используете Python 3, то вы получите следующую ошибку:
В качестве ФАЙЛА нужно указать приватный ключ SSH, путь до него может быть
Этот ключ генерируется командой:
Имеется несколько версий файлов приватных ключей OpenSSH. Поэтому нам нужно правильно определить тип вашего хеша. Вы можете открыть файл ssh.hash любым текстовым редактором или выполните следующую команду, чтобы вывести первые 11 символов хеша:
- Если строка хеша начинается на:
Значит это RSA/DSA/EC/OpenSSH Private Keys ($0$), номер хеша: 22911
- Если строка хеша начинается на:
Значит это RSA/DSA/EC/OpenSSH Private Keys ($6$), номер хеша: 22921
- Если строка хеша начинается на:
Значит это RSA/DSA/EC/OpenSSH Private Keys ($1, $3$), номер хеша: 22931
- Если строка хеша начинается на:
Значит это RSA/DSA/EC/OpenSSH Private Keys ($4$), номер хеша: 22941
- Если строка хеша начинается на:
Значит это RSA/DSA/EC/OpenSSH Private Keys ($5$), номер хеша: 22951
- Если строка хеша начинается на:
Значит это . номер хеша: . [видимо, ещё не реализовано]
Если вы получили ошибки об отсутствующих модулях, например: