- hashcat advanced password recovery
- Table of Contents
- Mask Attack
- Description
- Advantage over Brute-Force
- Disadvantage compared to Brute-Force
- Masks
- Output
- Built-in charsets
- Custom charsets
- Examples
- Example
- Password length increment
- Hashcat charset files
- Hashcat mask files
- Example
- Charsets in hex
- Инструменты Kali Linux
- Список инструментов для тестирования на проникновение и их описание
- Hashcat
- Справка по Hashcat
- Руководство по Hashcat
- Примеры запуска Hashcat
- Взлом WPA2 WPA рукопожатий с Hashcat
- Установка Hashcat
- Установка Hashcat в другие Linux
- Установка в Windows
- Packages and Binaries:
- hashcat
- hashcat-data
- Как взломать пароль от Wi-Fi, ZIP, RAR, Zz, PDF с помощью 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)
hashcat
advanced password recovery
Table of Contents
Mask Attack
Description
Try all combinations from a given keyspace just like in Brute-Force attack, but more specific.
Advantage over Brute-Force
The reason for doing this and not to stick to the traditional Brute-Force is that we want to reduce the password candidate keyspace to a more efficient one.
Here is a single example. We want to crack the password: Julia1984
In traditional Brute-Force attack we require a charset that contains all upper-case letters, all lower-case letters and all digits (aka “mixalpha-numeric”). The Password length is 9, so we have to iterate through 62^9 (13.537.086.546.263.552) combinations. Lets say we crack with a rate of 100M/s, this requires more than 4 years to complete.
In Mask attack we know about humans and how they design passwords. The above password matches a simple but common pattern. A name and year appended to it. We can also configure the attack to try the upper-case letters only on the first position. It is very uncommon to see an upper-case letter only in the second or the third position. To make it short, with Mask attack we can reduce the keyspace to 52*26*26*26*26*10*10*10*10 (237.627.520.000) combinations. With the same cracking rate of 100M/s, this requires just 40 minutes to complete.
Disadvantage compared to Brute-Force
There is none. One can argue that the above example is very specific but this does not matter. Even in mask attack we can configure our mask to use exactly the same keyspace as the Brute-Force attack does. The thing is just that this cannot work vice versa.
Note that masks are split into two parts internally to give hashcat something to work as an amplifier to overcome PCI-E bottleneck.
Masks
For each position of the generated password candidates we need to configure a placeholder. If a password we want to crack has the length 8, our mask must consist of 8 placeholders.
Output
Optimized due its partially reverse algorithms, password candidates are generated in the following order:
NOTE: This shows that the first four letters are increased first and most often. The exact number however can vary, especially in a smaller keyspace, but it is fixed until a keyspace has been scanned completly.
Built-in charsets
Custom charsets
All hashcat derivates have four commandline-parameters to configure four custom charsets.
These commandline-parameters have four analogue shortcuts called -1, -2, -3 and -4. You can specify the chars directly on the command line or use a so-called hashcat charset file (plain text file with .hcchr extension which contains the chars/digits to be used on the 1st line of the file). See examples below:
Examples
The following commands all define the same custom charset that consists of the chars “abcdefghijklmnopqrstuvwxyz0123456789” (aka “lalpha-numeric”):
The following command defines a charset that consists of the chars “0123456789abcdef”:
The following command defines a full 7-bit ascii charset (aka “mixalpha-numeric-all-space”):
The following command sets the first custom charset (-1) to russian language specific chars:
Example
The following commands creates the following password candidates:
Password length increment
A Mask attack is always specific to a password length. For example, if we use the mask “?l?l?l?l?l?l?l?l” we can only crack a password of the length 8. But if the password we try to crack has the length 7 we will not find it. Thats why we have to repeat the attack several times, each time with one placeholder added to the mask. This is transparently automated by using the “—increment” flag (Attention: the mask length itself is the limiting factor for hashcat. That implies that if i.e. the mask is only of length 4 —increment won’t increment the length of the password candidates above 4. A mask of length, therefore, won’t increase at all even if —increment was specified).
Hashcat charset files
Hashcat charsets files (file extension: .hcchr) are a convenient way to reuse charsets, define custom charsets and use the language-specific charsets shipped by hashcat.
These files can be used together with the —custom-charsetN= (or -1, -2, -3 and -4) parameter. Instead of providing all the charset directly on command line, the support for .hcchr files allows one to specify the path to the file:
It is important that .hcchr files are created with language specific file encodings (e.g. cp1252, ISO-8859-15 etc). For examples of content and encoding of .hcchr files, see the examples shipped with hashcat (e.g. [HASHCATROOT]/charsets/standard/Italian/).
Hint: use iconv and similar tools to convert the files to a language specific file encoding (if for instance created as UTF-8 file).
Hashcat mask files
Hashcat mask files (file extension: .hcmask) are files which contain custom charsets (optional) and masks (e.g. ?1?1?1?1?d?d) line-by-line. The advantage of using .hcmask files, which are plain text files, is that those files allow the hashcat user to have a set of predefined and well-working masks stored within a file (or several e.g. password policy specific files) where the lines contained in the hcmask file could for instance be sorted by increasing runtime and/or likelihood of matches*.
The general format of 1 single line in the .hcmask file is as follows:
where the placeholders are as follows:
* see the PACK program and some example hcmask files shipped by hashcat (in the masks/ folder).
You supply the .hcmask file just where you would normally place the single mask on the command line, like so:
Other less-important syntax available in .hcmask files:
Example
The following .hcmask file contains some valid example lines which show how to use this feature:
Charsets in hex
This can be done by some of the hashcat tools using the “—hex-charset” flag.
Источник
Инструменты Kali Linux
Список инструментов для тестирования на проникновение и их описание
Hashcat
Hashcat — это самый быстрый в мире восстановитель (взломщик) паролей.
В настоящее время, Hashcat объединила в себе две ранее существовавшие отдельные ветки программы. Одна так и называлась Hashcat, а вторая называлась oclHashcat (а ещё раньше oclHashcat была разделена на собственно oclHashcat и cudaHashcat). В настоящее время абсолютно все версии слиты в одну, которая при восстановлении паролей использует центральный процессор и видеокарту.
- Самый быстрый в мире взломщик
- Первый и единственный в мире внутриядерный движок правил
- Бесплатная
- Открытый исходный код (лицензия MIT)
- Мультиплатформенная (Linux, Windows и OSX)
- Мультиплатформенная (CPU, GPU, DSP, FPGA и т.д., всё, что поставляется со средой выполнения OpenCL)
- Множество хешей (одновременный взлом множества хешей)
- Задействует несколько устройств (использует множество устройств на одной системе)
- Задействует устройства разных типов (использует устройства разных типов на одной системе)
- Поддержка распределённых систем взлома (с помощью дополнительного сегмента)
- Поддерживает распределённый взлом по сети (используя оверлей)
- Интерактивная поддержка паузы / возобновления
- Поддержка сессий
- Поддержка восстановления
- Поддержка чтения кандидатов в пароли из файла и стандартного ввода
- Поддержка шестнадцатеричных солей и шестнадцатеричных наборов символов
- Поддержка автоматической тонкой настройки производительности
- Поддержка автоматического поорядка пространства ключей цепей Маркова
- Встроенная система бенчмарков
- Интегрированный тепловой сторож
- 300+ реализованных с мыслью о производительности типов хешей
- … и многое другое
Справка по 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 – выберите «Командная строка») и перетащите туда исполняемый файл.
Либо в открывшемся окне командой строки перейдите в требуемую папку:
Источник
Packages and Binaries:
hashcat
Hashcat supports five unique modes of attack for over 300 highly-optimized hashing algorithms. hashcat currently supports CPUs, GPUs, and other hardware accelerators on Linux, and has facilities to help enable distributed password cracking.
Examples of hashcat supported hashing algorithms are: MD5, HMAC-MD5, SHA1, HMAC-SHA1, MySQL323, MySQL4.1/MySQL5, phpass, MD5(WordPress), MD5(phpBB3), MD5(Joomla), md5crypt, MD5(Unix), FreeBSD MD5, Cisco-IOS, MD4, NTLM, Domain Cached Credentials (DCC), MS Cache, SHA256, HMAC-SHA256, md5apr1, MD5(APR), Apache MD5, SHA512, HMAC-SHA512, Cisco-PIX, Cisco-ASA, WPA/WPA2, Double MD5, bcrypt, Blowfish(OpenBSD), MD5(Sun), Double SHA1, SHA-3(Keccak),Half MD5, Password Safe SHA-256, IKE-PSK MD5, IKE-PSK SHA1, NetNTLMv1-VANILLA/NetNTLMv1-ESS, NetNTLMv2, Cisco-IOS SHA256, Android PIN, AIX
Hashcat offers multiple attack modes for obtaining effective and complex coverage over a hash’s keyspace. These modes are:
- Brute-Force attack
- Combinator attack
- Dictionary attack
- Fingerprint attack
- Hybrid attack
- Mask attack
- Permutation attack
- Rule-based attack
- Table-Lookup attack
- Toggle-Case attack
- PRINCE attack
Installed size: 29.01 MB
How to install: sudo apt install hashcat
- hashcat-data
- libc6
- libminizip1
- libxxhash0
- pocl-opencl-icd | opencl-icd
- zlib1g
hashcat
Advanced CPU-based password recovery utility
hashcat-data
Hashcat is an advanced CPU/GPU-based password recovery utility supporting seven unique modes of attack for over 100 optimized hashing algorithms.
This package contains the data files for hashcat, including charsets, rules, salts, and tables.
Installed size: 23.91 MB
How to install: sudo apt install hashcat-data
Источник
Как взломать пароль от Wi-Fi, ZIP, RAR, Zz, PDF с помощью Hashcat
Те, кто регулярно пользуются Hashcat, конечно, смогут на вскидку составить нужную маску и даже вспомнить номер часто используемого типа хеша. Но вспомнить название скрипта для извлечения хеша, или номер реже используемого типа хеша, или нечастую опцию — уже не так просто. Конечно же можно углубиться в обширную документацию. Но, во-первых, хорошо иметь под рукой шпаргалку вроде той, которую вы читаете. А во-вторых, официальная справка не содержит информацию о программах по извлечению хешей.
В общем, надеюсь справочная страница, которую вы читаете, окажется вам полезной. Но данная статья не заменяет очень многочисленный учебный материал по Hashcat. Поэтому настоятельно рекомендуется эту статью использовать как шпаргалку.
Скачать последнюю версию Hashcat (кликабельно)
Оглавление
1. Структура команды Hashcat
2. Примеры масок Hashcat
3. Часто используемые опции Hashcat
4. Извлечение хешей и их номера для взлома в Hashcat
5. Как в Hashcat взломать пароль от Wi-Fi
5.1 Захват рукопожатия Wi-Fi для взлома пароля
5.2 Извлечение хеша для взлома Wi-Fi
6. Взлом пароля архива ZIP
7. Взлом пароля архива RAR
8. Взлом пароля архива 7z
9. Взлом пароля MS Office: Word (файл .DOCX) и другие офисные файлы
10. Взлом пароля LibreOffice (файлы Wirter/.odt и другие)
11. Взлом пароля PDF
12. Взлом пароля KeePass и KeePassXC
13. Взлом пароля приватного ключа GPG
14. Взлом пароля приватного ключа OpenSSH (id_rsa)
Структура команды Hashcat
В самом общем виде команда запуска Hashcat имеет вид (в ней символ | означает «ИЛИ»):
| hashcat [ОПЦИИ]. ХЕШ|ФАЙЛ-С-ХЕШЕМ [СЛОВАРЬ|МАСКА|ДИРЕКТОРИЯ].
В последующих командах ХЕШ, ФАЙЛ-С-ХЕШЕМ и hccapxfile будут обозначены как просто «ХЕШ» — помните, что это может быть как строка хеша, так и путь до файла, в котором сохранён хеш.
Общий вид команды для запуска атаки по словарю:
| hashcat -m ТИП -a 0 ХЕШ СЛОВАРЬ
Если хеш помещён в файл, то команда:
| hashcat -m ТИП -a 0 /ПУТЬ/ДО/ФАЙЛА/ХЕША /ПУТЬ/ДО/СЛОВАРЯ
Общий вид команды для запуска атаки по маске:
| hashcat -m ТИП -a 3 ХЕШ ‘МАСКА’
Если хеш помещён в файл, то команда:
| hashcat -m ТИП -a 3 /ПУТЬ/ДО/ФАЙЛА/ХЕША ‘МАСКА’
С опцией -m нужно указать ТИП взламываемого хеша, который обозначен номером. Номера хешей даны ниже, при описании процесса извлечения хешей.
Примеры масок Hashcat
Последующие примеры должны дать представления об основах использования масок — вы легко можете отредактировать их под ваши потребности:
Пароли состоят из шести символов, каждый из которых является цифрой:
| hashcat -m ТИП -a 3 ХЕШ ‘?d?d?d?d?d?d’
Пароли состоят из восьми символов, каждый из которых является цифрой:
| hashcat -m ТИП -a 3 ХЕШ ‘?d?d?d?d?d?d?d?d’
Пароли состоят из шести символов и начинаются на «Pa», остальными символами являются цифры:
| hashcat -m ТИП -a 3 ХЕШ ‘Pa?d?d?d?d’
Пароли состоят из цифр и имеют длину от 1 до 4 символов:
| hashcat -m ТИП -a 3 ХЕШ -i —increment-min=1 —increment-max=4 ‘?d?d?d?d’
Пароли состоят из цифр и имеют длину от 1 до 10 символов:
| hashcat -m ТИП -a 3 ХЕШ -i —increment-min=1 —increment-max=10 ‘?d?d?d?d?d?d?d?d?d?d’
Пароли состоят из шести символов, каждый из которых является маленькой буквой:
| hashcat -m ТИП -a 3 ХЕШ ‘?l?l?l?l?l?l’
Пароли состоят из маленьких букв и имеют длину от 1 до 6 символов:
| hashcat -m ТИП -a 3 ХЕШ -i —increment-min=1 —increment-max=6 ‘?l?l?l?l?l?l’
Пароли состоят из шести символов, каждый из которых является большой буквой:
| hashcat -m ТИП -a 3 ХЕШ ‘?u?u?u?u?u?u’
Пароли состоят из шести символов, вначале всегда идёт фиксированная строка «No», затем заглавная буква, затем прописная буква и затем две цифры.
| hashcat -m ТИП -a 3 ХЕШ ‘No?u?l?d?d’
Пароли состоят из больших и маленьких букв и цифр, которые могут быть в любом месте, и имеют длину от 1 до 8 символов.
| hashcat -m ТИП -a 3 ХЕШ -i —increment-min=1 —increment-max=8 -1 ?l?u?d ‘?1?1?1?1?1?1?1?1’
Часто используемые опции Hashcat
Любую команду запуска hashcat вы можете дополнить другими опциями.
К примеру, обычно Hashcat использует только видеокарты и не использует возможности центрального процессора для выполнения вычислений, даже если установлены необходимые драйверы и среда выполнения. Вы можете изменить это поведение, добавив следующие две опции:
| —force -D 1,2
При достижении видеокартой или ЦП определённой температуры, Hashcat прерывает работу. Вы можете установить температуру, при которой будет прерван брут-форс, уменьшив или увеличив значение по умолчанию (90℃). Слишком высокие значения вы используете на свой страх и риск.
| —hwmon-temp-abort=100
Во время работы Hashcat если нажать кнопку s, то будет обновлена информация о текущем процессе взлома, то есть показан его статус. Вы можете включить автоматическое обновление статуса опцией —status, а опцией —status-timer вы можете настроить время автоматического обновления (например, —status-timer=1).
Опции, не связанные с брут-форсом
Опция -b запустит бенчмарк:
| hashcat -b
| hashcat -b —force -D 1,2
| hashcat -m ТИП -b —force -D 1,2
можно запустить бенчмарк только для определённого алгоритма. Вы можете это использовать, если хотите знать, с какой скоростью на вашем компьютере будет взламываться пароль документа Word или архива. Например, бенчмарк скорости взлома пароля Wi-Fi.
| hashcat -m 2500 -b —force -D 1,2
Опция -I покажет информацию об обнаруженных устройствах, на которых возможно делать вычисления для брут-форса:
| hashcat -I
Опцией —example-hashes вы можете вывести примеры всех хешей:
| hashcat —example-hashes
Вы можете показать пример только нужного вам хеша, указав его номер опцией -m:
| hashcat -m 400 —example-hashes
| hashcat -m 9600 —example-hashes
Опция —stdout сделает так, что hashcat не будет взламывать хеш, а только покажет кандидаты в пароли — это можно использовать для генерации словарей по маскам.
Извлечение хешей и их номера для взлома в Hashcat
Далее показано как извлечь хеши из зашифрованных файлов и дан их номер. Этот номер нужно указать вместо слова ТИП, а путь до файла с вычисленным хешем нужно указать вместо слова ХЕШ. Напомню общий вид команд.
Общий вид команды для запуска атаки по словарю:
| hashcat -m ТИП -a 0 ХЕШ СЛОВАРЬ
Общий вид команды для запуска атаки по маске:
| hashcat -m ТИП -a 3 ХЕШ ‘МАСКА’
Для извлечения хешей используются инструменты, которые поставляются с 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».
Посмотрим имя беспроводного интерфейса:
| sudo iw dev
У меня это wlp0s20f0u1. Для автоматического сбора рукопожатий запустим команду вида:
| sudo besside-ng ИНТЕРФЕЙС
В моём случае это:
| sudo besside-ng wlp0s20f0u1
Чтобы просмотреть, какие рукопожатия были захвачены, выполним команду:
| aircrack-ng wpa.cap
Извлечение хеша для взлома Wi-Fi
Если вы хотите взламывать сразу все рукопожатия, то выполните команду:
| cap2hccapx wpa.cap wi-fi.hash
Утилита cap2hccapx входит в состав hashcat-utils.
В результате будут сгенерированы хеши для всех захваченных рукопожатий.
В выводе сказано, что обнаружено 10 ТД.
Можно сохранить рукопожатие для определённой точки доступа, её нужно указать её имя. Чтобы сохранить рукопожатие только для определённой ТД, выполните команду вида:
| cap2hccapx wpa.cap wi-fi.hash ИМЯ-ТД
Меня интересует ТД с именем FTTX772802, тогда в моём случае команда следующая:
| cap2hccapx wpa.cap wi-fi.hash FTTX772802
Номер хеша: 2500
То есть для запуска атаки по словарю нужно выполнить команду:
| hashcat -m 2500 -a 0 /ПУТЬ/ДО/wi-fi.hash /ПУТЬ/ДО/СЛОВАРЯ
Для запуска атаки по маске нужно выполнить команду:
| hashcat -m 2500 -a 3 /ПУТЬ/ДО/wi-fi.hash ‘МАСКА’
Пример удачного взлома:
| hashcat -m 2500 -a 3
Взлом пароля архива ZIP
Для извлечения хеша выполните команду вида:
| zip2john ФАЙЛ > zip.tmp
К примеру, путь до файла /mnt/disk_d/Share/test/file.zip, тогда команда следующая:
| zip2john /mnt/disk_d/Share/test/file.zip > zip.tmp
Будет извлечён хеш в формате John, для Hashcat этот формат непригоден, поэтому выполним следующую команду:
| cat zip.tmp | grep -E -o ‘(\$pkzip2\$.*\$/pkzip2\$)|(\$zip2\$.*\$/zip2\$)’ > zip.hash
Она очистит хеш от ненужных строк и сохранит хеш в формате Hashcat в файл zip.hash.
Но и это ещё не всё — разновидностей ZIP архивов много. Поэтому нам нужно правильно определить тип вашего хеша. Вы можете открыть файл zip.hash любым текстовым редактором или выполните следующую команду, чтобы вывести первые 20 символов хеша:
Включить звук
| head -c 20 zip.hash
- Если строка хеша начинается на:
| $zip2$*0*3*0*
Значит это WinZip, номер хеша: 13600
- Если строка начинается на:
| $pkzip2$1*1*2*0*
Значит это PKZIP (Compressed), номер хеша: 17200
- Если строка начинается на:
| $pkzip2$1*1*2*0*
Значит это PKZIP (Uncompressed), номер хеша: 17210
ВНИМАНИЕ: у PKZIP (Compressed) и PKZIP (Uncompressed) ОДИНАКОВЫЕ начала хешей, я не знаю, как их можно различить. Единственный вариант — пробовать запускать команду hashcat с указанием типа хеша 17200, а затем 17210. При этом если вы указали тип хеша неправильно, то сразу будет показана ошибка. Пример ошибки:
| Hashfile ‘/home/mial/zip.hash’ on line 1 ($pkzip. 7e95f2294c0fd53fd7fc53*$/pkzip2$): Hash contains unsupported compression type for current mode
| No hashes loaded.
- Если строка начинается на:
| $pkzip2$3*1*1*0*8*24
Значит это PKZIP (Compressed Multi-File), номер хеша: 17220
- Если строка начинается на:
| $pkzip2$3*1*1*0*0*24
Значит это PKZIP (Mixed Multi-File), номер хеша: 17225
- Если строка начинается на:
| $pkzip2$8*1*1*0*8*24
Значит это PKZIP (Compressed Multi-File Checksum-Only), номер хеша: 17230
Взлом пароля архива RAR
Для извлечения хеша выполните команду вида:
| rar2john ФАЙЛ > rar.tmp
К примеру, путь до файла /mnt/disk_d/Share/test/file.rar, тогда команда следующая:
| rar2john /mnt/disk_d/Share/test/file.rar > rar.tmp
Будет извлечён хеш в формате John, для Hashcat этот формат непригоден, поэтому выполним следующую команду:
| cat rar.tmp | grep -E -o ‘(\$RAR3\$[^:]+)|(\$rar5\$.*)’ > rar.hash
Она очистит хеш от ненужных строк и сохранит хеш в формате Hashcat в файл rar.hash.
Но и это ещё не всё — имеется несколько версий RAR. Поэтому нам нужно правильно определить тип вашего хеша. Вы можете открыть файл rar.hash любым текстовым редактором или выполните следующую команду, чтобы вывести первые 8 символов хеша:
| head -c 8 rar.hash
- Если строка хеша начинается на:
| $RAR3$*0*
Значит это RAR3-hp, номер хеша: 12500
- Если строка хеша начинается на:
| $rar5$16$
Значит это RAR5, номер хеша: 13000
- Если строка хеша начинается на:
| $RAR3$*1*
Значит это RAR3-p (Uncompressed), номер хеша: 23700
- Если строка хеша начинается на:
| $RAR3$*1*
Значит это RAR3-p (Compressed), номер хеша: 23800
ВНИМАНИЕ: у RAR3-p (Uncompressed) и RAR3-p (Compressed) ОДИНАКОВЫЕ начала хешей, я не знаю, как их можно различить. Единственный вариант — пробовать запускать команду hashcat с указанием типа хеша 23700, а затем 23800. При этом если вы указали тип хеша неправильно, то сразу будет показана ошибка. Пример ошибки:
| Hashfile ‘/home/mial/rar.hash’ on line 1 ($RAR3$. 91201eb0007c76714cbb328b2acfc*33): Salt-value exception
No hashes loaded.
Если вы получили ошибки об отсутствующих модулях, например:
| /usr/share/hashcat/modules/module_23700.so: cannot open shared object | file: No such file or directory
| /usr/share/hashcat/modules/module_23800.so: cannot open shared object file: No such file or directory
То это означает, что ваша версия Hashcat ещё не поддерживает хеши с номерами 23700 и 23800 и вам нужно обновить программу до последней версии. В настоящее время эта поддержка присутствует только в бета версии Hashcat, которую вы можете скачать на официальном сайте: https://hashcat.net/beta/
Взлом пароля архива 7z
Для извлечения хеша выполните команду вида:
| 7z2john ФАЙЛ > 7z.tmp
Будет извлечён хеш в формате John, для Hashcat этот формат непригоден, поэтому выполним следующую команду:
| cat 7z.tmp | grep -E -o ‘\$7z\$.*’ > 7z.hash
Она очистит хеш от ненужных строк и сохранит хеш в формате Hashcat в файл 7z.hash.
Номер хеша: 11600
Взлом пароля MS Office: Word (файл .DOCX) и другие офисные файлы
Для извлечения хеша выполните команду вида:
| office2john ФАЙЛ > office.tmp
Для подготовки хеша выполните команду:
| cat office.tmp | grep -E -o ‘\$office\$.*’ > office.hash
Имеется несколько версий офисных документов MS Office. Поэтому нам нужно правильно определить тип вашего хеша. Вы можете открыть файл office.hash любым текстовым редактором или выполните следующую команду, чтобы вывести первые 14 символов хеша:
| head -c 14 office.hash
- Если строка хеша начинается на:
| $office$*2007*
Значит это MS Office 2007, номер хеша: 9400
- Если строка хеша начинается на:
| $office$*2010*
Значит это MS Office 2010, номер хеша: 9500
Если строка хеша начинается на:
| $office$*2013*
Значит это MS Office 2013, номер хеша: 9600
Пример удачного взлома пароля файла Word:
Взлом пароля LibreOffice (файлы Wirter/.odt и другие)
Для извлечения хеша выполните команду вида:
| libreoffice2john ФАЙЛ > odf.tmp
Для подготовки хеша выполните команду:
| cat odf.tmp | grep -E -o ‘\$odf\$[^:]+’ > odf.hash
Имеется несколько версий офисных документов LibreOffice. Поэтому нам нужно правильно определить тип вашего хеша. Вы можете открыть файл odf.hash любым текстовым редактором или выполните следующую команду, чтобы вывести первые 10 символов хеша:
| head -c 10 odf.hash
- Если строка хеша начинается на:
| $odf$*1*1*
Значит это Open Document Format (ODF) 1.2 (SHA-256, AES), номер хеша: 18400
- Если строка хеша начинается на:
| $odf$*0*0*
Значит это Open Document Format (ODF) 1.1 (SHA-1, Blowfish), номер хеша: 18600
Взлом пароля PDF
Для извлечения хеша выполните команду вида:
| pdf2john ФАЙЛ > pdf.tmp
Для подготовки хеша выполните команду:
| cat pdf.tmp | grep -E -o ‘\$pdf\$.*’ > pdf.hash
Имеется несколько версий PDF файлов. Поэтому нам нужно правильно определить тип вашего хеша. Вы можете открыть файл pdf.hash любым текстовым редактором или выполните следующую команду, чтобы вывести первые 13 символов хеша:
| head -c 13 pdf.hash
- Если строка хеша начинается на:
| $pdf$1*2*40*-
Значит это PDF 1.1 — 1.3 (Acrobat 2 — 4), номер хеша: 10400
- Если строка хеша начинается на:
Значит это PDF 1.1 — 1.3 (Acrobat 2 — 4), collider #1, номер хеша: 10410
- Если строка хеша начинается на:
1| $pdf$1*2*40*-
Значит это PDF 1.1 — 1.3 (Acrobat 2 — 4), collider #2, номер хеша: 10420
ВНИМАНИЕ: у всех перечисленных типов файлов ОДИНАКОВЫЕ начала хешей, я не знаю, как их можно различить. Единственный вариант — пробовать запускать команду hashcat с указанием типа хеша 10400, а затем 10410 и, наконец, 10420. При этом если вы указали тип хеша неправильно, то сразу будет показана ошибка. Пример ошибки:
| Hashfile ‘/home/mial/pdf.hash’ on line 1 ($pdf$4. c5ba427b1b9102da468e77127f1e69d6): Separator unmatched
| No hashes loaded.
- Если строка хеша начинается на:
| $pdf$2*3*128*
Значит это PDF 1.4 — 1.6 (Acrobat 5 — 8), номер хеша: 10500
- Если строка хеша начинается на:
| $pdf$5*5*256*
Значит это PDF 1.7 Level 3 (Acrobat 9), номер хеша: 10600
- Если строка хеша начинается на:
| $pdf$5*6*256*
Значит это PDF 1.7 Level 8 (Acrobat 10 — 11), номер хеша: 10700
- Если строка хеша начинается на:
| $pdf$4*4*128*
Значит это PDF документ, созданный с помощью MS Word, для него подходит номер хеша: 10500
Взлом пароля KeePass и KeePassXC
Для извлечения хеша выполните команду вида:
| keepass2john ФАЙЛ > keepass.tmp
В качестве ФАЙЛА должна быть база данных паролей .kdbx.
Или если у вас есть файл ключей, то выполните команду вида:
| keepass2john -k ФАЙЛ-КЛЮЧЕЙ БАЗА-ДАННЫХ.kdbx > keepass.tmp
Вы можете увидеть сообщение:
| ! Passwords.kdbx : File version ‘40000’ is currently not supported!
Оно означает, что в ФАЙЛЕ Passwords.kdbx используется база данных KDBX версии 4.0, а программа keepass2john поддерживает только KDBX версию KDBX 3.1. То есть в настоящее время невозможно взломать пароль KeePass с базой данных KDBX версии 4.0 в John the Ripper.
Для подготовки хеша выполните команду:
| cat keepass.tmp | grep -E -o ‘\$keepass\$[^:]+’ > keepass.hash
Номер хеша: 13400
Взлом пароля приватного ключа GPG
В настоящее время взлом GPG в Hashcat не поддерживается (но поддерживается в John the Ripper). Когда будет добавлена поддержка, хеш приватного ключа нужно извлечь следующим образом.
Пароль gpg можно взломать из файла приватного ключа, полученного в результате выполнения команды экспорта:
| gpg —export-secret-key -a «ИМЯ ФАМИЛИЯ» > private.key
После экспорта, из этого файла приватного ключа нужно извлечь хеш для взлома пароля:
| gpg2john private.key > gpg.tmp
Для подготовки хеша выполните команду:
| cat gpg.tmp | grep -E -o ‘\$gpg\$[^:]+’ > gpg.hash
Взлом пароля приватного ключа OpenSSH (id_rsa)
Для извлечения хеша выполните команду вида:
| python2 ./ssh2john.py ФАЙЛ > ssh.tmp
Для подготовки хеша выполните команду:
| cat ssh.tmp | grep -E -o ‘\$sshng\$[^:]+’ > ssh.hash
Обратите внимание, что для работы ssh2john необходим Python 2. Если вы используете Python 3, то вы получите следующую ошибку:
| /usr/bin/ssh2john:103: DeprecationWarning: decodestring() is a deprecated alias since Python 3.1, use decodebytes()
| data = base64.decodestring(data)
| Traceback (most recent call last):
| File «/usr/bin/ssh2john», line 193, in
| read_private_key(filename)
| File «/usr/bin/ssh2john», line 153, in read_private_key
| saltstr = data[salt_offset:salt_offset+salt_length].encode(«hex»)
| AttributeError: ‘bytes’ object has no attribute ‘encode’
В качестве ФАЙЛА нужно указать приватный ключ SSH, путь до него может быть
Этот ключ генерируется командой:
| ssh-keygen -t rsa
Имеется несколько версий файлов приватных ключей OpenSSH. Поэтому нам нужно правильно определить тип вашего хеша. Вы можете открыть файл ssh.hash любым текстовым редактором или выполните следующую команду, чтобы вывести первые 11 символов хеша:
| head -c 11 ssh.hash
- Если строка хеша начинается на:
| $sshng$0$8$
Значит это RSA/DSA/EC/OpenSSH Private Keys ($0$), номер хеша: 22911
- Если строка хеша начинается на:
| $sshng$6$8$
Значит это RSA/DSA/EC/OpenSSH Private Keys ($6$), номер хеша: 22921
- Если строка хеша начинается на:
| $sshng$1$16
Значит это RSA/DSA/EC/OpenSSH Private Keys ($1, $3$), номер хеша: 22931
- Если строка хеша начинается на:
| $sshng$4$16
Значит это RSA/DSA/EC/OpenSSH Private Keys ($4$), номер хеша: 22941
- Если строка хеша начинается на:
| $sshng$5$16
Значит это RSA/DSA/EC/OpenSSH Private Keys ($5$), номер хеша: 22951
- Если строка хеша начинается на:
| $sshng$6$16$
Значит это . номер хеша: . [видимо, ещё не реализовано]
Если вы получили ошибки об отсутствующих модулях, например:
| /usr/share/hashcat/modules/module_22951.so: cannot open shared object file: No such file or directory
Источник