(John the Ripper, Hydra, Hashcat). Подбор пароля к SSH/MD5/ZIP/MS Office/...
Материал предоставлен в ознакомительных и образовательных целях.
Содержание
1. Введение. Требования.
2. Подбор пароля к SSH-серверу.
3. Подбор значения MD5 (без соли).
4. Подбор пароля к *.zip файлу.
5. Подбор пароля к файлам MS Office.
6. Подбор паролей из /etc/shadow.
7. Подбор паролей онлайн.
8. Подведение итогов. Рекомендации по защите. Полезные ссылки.
Введение. Требования.
Рад приветствовать читателей. В этой статье я хочу разобрать подбор пароля к различным
файлам, серверам и т.д. Мы будем использовать несколько популярных утилит для этих
целей: John the Ripper, Hydra и Hashcat.
Требования:
- Железо, способное нормально перебирать пароли (не используйте для этих целей маломощные процессоры смартфонов/планшетов/..., сэкономите себе нервы)
- Словарь паролей (свой, либо скачанный в интернете)
Подбор пароля к SSH-серверу.
Для этого мы будем использовать утилиту Hydra. Для данных целей мы будем использовать тестовый сервер sdf.org. Я создал на нем свою учетную запись, к которой мы и будем подбирать пароль. Итак, входные данные:
- Адрес сервера: tty.sdf.org (205.166.94.9)
- Имя пользователя: thm
- Словарь паролей RockYou
(не пытайтесь сейчас подобрать пароль, я его уже изменил). Итак, синтаксис аргументов утилиты Hydra:
hydra -l [login] -P [/path/to/wordlist] [target]
(если вы также хотите перебирать логины, то укажите -L вместо -l, а далее путь к файлу с логинами), где [login] - имя пользователя, к которому мы подбираем пароль (без скобок), [/path/to/wordlist] - путь к словарю паролей (без скобок), [target] - адрес сервера (без скобок). Таким образом, наша команда будет выглядеть так:
hydra -l thm -P rockyou.txt ssh://205.166.94.9
Теперь просто ждите, пока будет осуществлен подбор пароля. Если пароль будет успешно подобран, то вы получите сообщение такого рода:
Подбор значения MD5 (без соли).
В этой части статьи мы будем подбирать значение к хеш-сумме MD5. В данном примере не будет использоваться соль.
Соль - некая последовательность символов, которая добавляется к вашему паролю на сайте при регистрации. Таким образом, даже если БД сайта будет украдена, то злоумышленник не сможет подобрать пароль к вашей учетной записи, т.к. к простому паролю добавлена случайная последовательность символов, которой, разумеется, в словаре нет.
Пример:
- Допустим, есть строка 'password1234'. Применим хеш-функцию MD5 к ней. Результат: bdc87b9c894da5168059e00ebffb9077
- Теперь представим, что к этой строке была добавлена последовательность символов: '2#;$72". Получилось: 'password12342#;$72'. Применим MD5 к этой строке. Результат: dfc1c9b518499d54f95c607975c3c7e3. Данный хеш подобрать не получится, т.к. в пароле присутствует соль.
-
Вернемся к подбору значения MD5. Для этого мы будем использовать программу Hashcat. Когда вы ее запустите, с ключом -h, то увидите сотни хеш-сумм, с которыми программа умеет работать. В самом начале будет ‘md5’. Этот режим имеет код 0. Тогда синтаксис команды будет выглядеть следующим образом:
hashcat -m 0 -a 0 [md5] [/path/to/wordlist]
, где [md5] - MD5 хеш-сумма (без скобок), [/path/to/wordlist] - путь к словарю паролей (без скобок). После запуска процесса через некоторое время пароль будет успешно подобран:
Подбор пароля к *.zip файлу.
В данной части статьи (и последующих) мы будем использовать только John the Ripper. Данная утилита может подбирать значения к практически всем хешам (в т.ч. она может подбирать пароль к хендшейку). Также John the Ripper имеет свой собственный словарь, так что если не указывать путь к словарю, то пароль также может быть подобран. Она имеет возможность поставить перебор на паузу и продолжить его позже. Сейчас же мы будем подбирать пароль к ZIP-файлу. Первым делом преобразуйте архив в хеш:
zip2john [zip_file] > zip.hash
, где [zip_file] - путь к ZIP-файлу (без скобок).
После этого запустите перебор:
john --wordlist=[/path/to/wordlist] --fork=[cores] [/path/to/hash]
, где [/path/to/wordlist] - путь к словарю паролей (без скобок), [cores] - количество ядер процессора, которое вы хотите задействовать (без скобок), [/path/to/hash] - путь к файлу с хешем (без скобок).
После подбора вы увидите:
Подбор пароля к файлам MS Office
Для начала нужно скачать утилиту office2john:
wget https://raw.githubusercontent.com/openwall/john/bleeding-jumbo/run/office2john.py
Далее преобразуйте ваш docx/xlsx/pptx/… файл в хеш:
python2 office2john.py [office_file] > office.hash
, где [office_file] - путь к файлу MS Office (без скобок).
И запустите перебор:
john --wordlist=[/path/to/wordlist] --fork=[cores] [/path/to/hash]
, где [/path/to/wordlist] - путь к словарю паролей (без скобок), [cores] - количество ядер процессора, которое вы хотите задействовать (без скобок), [/path/to/hash] - путь к файлу с хешем (без скобок).
Подбор пароля из /etc/shadow.
В UNIX-подобных системах есть файл по пути /etc/shadow. Он содержит зашифрованные пароли пользователей системы. Если вам удалось получить этот файл, то вы можете попробовать перебрать пароли к пользователям из этого файла. John the Ripper также это умеет:
john --wordlist=[/path/to/wordlist] --fork=[cores] /etc/shadow
, где [/path/to/wordlist] - путь к словарю паролей (без скобок), [cores] - количество ядер процессора, которое вы хотите задействовать (без скобок).
Подбор паролей онлайн.
Альтернативным способом подобрать пароль по хешу может быть сайт crackstation.net. Там же вы можете скачать словарь паролей Crackstation: либо полный (~15 ГБ), либо human-only (~680 МБ).
Подведение итогов. Рекомендации по защите. Полезные ссылки.
Полезные ссылки
- Hackware: Полное руководство по John the Ripper. Ч.4: практика и примеры использования John the Ripper
- Crackstation
Рекомендации по защите
Для того, чтобы защититься от данного рода атак, необходимо использовать надежные пароли. Пароль должен содержать:
- строчные латинские буквы (a~z)
- прописные латинские буквы (A~Z)
- цифры (0~9)
- специальные значки
, а также НЕ содержать имена, даты рождения, города, и любую связанную с вами информацию, даже если ее нельзя найти в интернете.
Итак, в этой статье мы разобрали перебор паролей различных файлов, серверов и значения MD5.
Назад к списку статей…