27 апреля, 2024

Как взламывать пароли. Часть 3: использование Hashcat

Содержание:

С возвращением, мои хакеры!

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

Как упоминалось в первой статье этой серии, пароли хранятся при помощи одностороннего шифрования, называемого хешем. Существует несколько способов получения этих хешей, таких как инъекция .dll в системах Windows или захват хеша при его передаче, например, в случае взлома беспроводного WPA2.

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

Шаг 1. Запустите Kali и откройте Hashcat

Давайте запустим Kali и откроем Hashcat. Для этого перейдите в Applications -> Kali Linux -> Password Attacks -> Offline Attacks -> hashcat, как показано на скриншоте ниже.

Как только мы кликнем в меню на hashcat, то открывается вот такой экран справки.

В верхней части экрана вы можете увидеть подсказку базового синтаксиса hashcat:

kali> hashcat options hashfile mask|wordfiles|directories

Под этой подсказкой основного синтаксиса команды мы видим описание некоторых параметров hashcat. Самые важные из них это: -m (тип хеша) и -a (режим атаки). Как правило, нам нужно будет использовать оба параметра для большинства случаев взлома паролей с помощью hashcat.

Шаг 2. Дополнительные параметры

Если мы посмотрим немного ниже файл справки по hashcat, то увидим еще больше параметров. Первые два — ключевые параметры hashcat.

Читать также:  Неизвестные хакеры взломали и обокрали крупного криптовалютного инвестора

Первый параметр — rules (правила), позволяют hashcat’у применять специально разработанные правила для использования в нашем вордлисте. Эти правила применяют к нему правила о капитализации символов, использовании специальных символов, комбинаций слов, могут добавлять в начало или в конец слов числа и т.д. Каждое из этих правил может помочь нам взламывать пароли, которые в целях избегания атак по словарю становятся все более сложными.

Следующий параметр показывает нам пользовательские (кастомные) наборы символов. Это позволяет нам установить определенный набор символов, который мы хотели бы использовать для взлома паролей. Если мы знаем политику паролей компании, то можем задать определенный набор символов в целях соответствия их политике, что безусловно может ускорить взлом. Например, если компания разрешает использовать в пароле только цифры, то вы можете пытаться взламывать хеши только с набором символов, состоящих из цифр. Такие типы паролей ОЧЕНЬ легко взламываются.

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

Наконец, мы должны выбрать тип хеша, который мы пытаемся взломать. Hashcat дает нам множество параметров. Когда мы будем готовы взломать хеш, нужно будет указать в нашей команде, с каким типом хеша мы хотим работать, указав число, связанное с определенным типом хеширования. Здесь мы видим список некоторых типов хешей, с которыми может работать hashcat.

Шаг 3. Выберите вордлист

В этой статье мы будем использовать простую атаку по словарю для некоторых хешей, используемых в Linux. Для этого нам нужен вордлист, с которым можно работать. В Интернете доступны тысячи вордлистов, но у Kali, как вы знаете, есть много собственных встроенных вордлистов, так что давайте попробуем использовать один из них.

Читать также:  Metasploit для начинающего хакера. Часть 14 (создание ресурсных файлов)

Чтобы найти встроенные в Kali вордлисты, мы должны ввести в терминале:

kali > locate wordlist

Когда мы выполним эту команду, то увидим, что нам доступны около десятка вордлистов.

Мы будем использовать вордлист, сделанный для sqlmap, который содержит более миллиона обычных и гибридных слов.

Шаг 4. Получите хеш

На следующем шаге нам нужно перехватить хеши нашей системы. Если мы вошли в систему как root, то можем видеть и использовать эти хеши. В Linux хеши хранятся в файле /etc/shadow, поэтому, если мы набираем в консоли:

kali > tail /etc/shadow

то видим shadow файл с хешами, как показано на скриншоте ниже.

Затем нам нужно знать, какой тип хеширования использует система. Чтобы узнать какой в Linux используется тип шифрования, мы должны перейти к /etc/login.defs. Откроем этот файл, набрав:

kali > more /etc/login.defs

Когда мы прокрутим вниз около 85% всего файла, то увидим, что Kali использует шифрование SHA512. Это важно, поскольку нам нужно будет сообщить hashcat эту информацию.

Шаг 5. Взлом хешей

Теперь, когда мы знаем основы hashcat, где расположены хеши и тип используемого шифрования, мы готовы к взлому хешей.

Давайте предварительно скопируем эти хеши в отдельный файл и назовем его hash.lst.

kali > cp /etc/shadow hash.lst

Теперь убедимся, что они скопировались нормально. Проверим это, набрав:

more hash.lst

Как мы видим, хеши действительно были скопированы в файл hash.lst.

Для подготовки этого файла к взлому, нам нужно удалить из него всю лишнюю информацию, кроме самих хешей. Файл /etc/shadow содержит имя пользователя, затем хеш, созданный с добавлением криптографической соли, а затем информацию о применяемой политике пользователя. Нам нужно удалить всю эту информацию, оставив только хеш.

Читать также:  Важность исключения выходных узлов в TOR

Мы видим, что этот файл начинается с имени пользователя, то есть «user1», «user2» и т.д. Откройте этот файл в своем любимом текстовом редакторе (vim, vi, leafpad) и удалите имя пользователя и следующее за ним двоеточие. Затем перейдите в конец строки и удалите информацию после хеша, которая начинается с двоеточия (:). У нас получился файл только с хешами и больше ни с чем.

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

kali > hashcat -m 1800 -a 0 -o cracked.txt --remove hash.lst /usr/share/sqlmap/txt/wordlist.txt
  • -m 1800 — обозначает тип хеша, который мы взламываем (SHA-512)
  • -a 0 — означает атаку по словарю
  • -o cracked.txt — это выходной файл для взломанных паролей
  • —remove — сообщает hashcat удалить хеш после того, как он был взломан
  • hash.lst — наш входной файл хешей
  • /usr/share/sqlmap/txt/wordlist.txt — это абсолютный путь к нашему вордлисту для использования с этой атакой по словарю

Как только процесс взлома начнется, мы можем нажать , чтобы получить информацию о том, как проходит процесс. Когда hashcat завершит свою работу, то вы увидите экран, как показано на скриншоте ниже, где hashcat сообщает, что он восстановил все хеши после 9:47:16 часов работы.

Теперь нужно открыть файл cracked.txt, и просмотреть наши взломанные пароли!

Hashcat лучший в мире инструмент для взлома паролей, поэтому найдите время, чтобы узнать о нем больше. У него есть еще много функций, которые мы пока не затронули. У него есть версия, использующая GPU (oclhashcat), которая может взламывать пароли во много раз быстрее, чем ваш центральный процессор!

Предыдущие статьи
( 1 , 2).

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