Выполнение атаки по словарю на WPA-рукопожатие с помощью aircrack-ng

Beginner
Практиковаться сейчас

Введение

В этой лабораторной работе вы научитесь выполнять словарную атаку на рукопожатие WPA/WPA2. Когда устройство подключается к сети Wi-Fi, защищенной WPA/WPA2, происходит 4-стороннее рукопожатие для аутентификации устройства. Захватив это рукопожатие, можно попытаться взломать пароль сети в автономном режиме.

Словарная атака — это метод взлома системы, защищенной паролем, путем систематического ввода каждого слова из списка (называемого словарем или списком слов) в качестве пароля. Мы будем использовать aircrack-ng, мощный инструмент для аудита безопасности Wi-Fi, для проведения этой атаки. Вам будет предоставлен файл захваченного рукопожатия (.cap) и список слов для имитации реального сценария.

К концу этой лабораторной работы вы сможете использовать aircrack-ng для поиска пароля Wi-Fi из файла захваченного рукопожатия.

Поиск файла рукопожатия .cap

На этом шаге вы найдете предварительно захваченный файл рукопожатия WPA. Для этой лабораторной работы в вашем каталоге ~/project размещен пример файла захвата с именем wpa_handshake.cap. Этот файл содержит сетевой трафик, включая необходимое 4-стороннее рукопожатие для атаки.

Сначала перечислим файлы в текущем каталоге, чтобы убедиться в наличии файла захвата. Используйте команду ls -l.

ls -l

В выводе вы должны увидеть файл wpa_handshake.cap вместе с другими файлами.

total 8
-rw-r--r-- 1 labex labex 11 Mar 25 10:00 rockyou.txt
-rw-r--r-- 1 labex labex 985 Mar 25 10:00 wpa_handshake.cap

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

Поиск файла списка слов, такого как rockyou.txt

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

Небольшой список слов под названием rockyou.txt был создан для вас в каталоге ~/project. Давайте посмотрим его содержимое с помощью команды cat.

cat rockyou.txt

В выводе будут отображены потенциальные пароли, содержащиеся в файле.

password
12345678
biscotte
qwerty

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

Формирование команды aircrack-ng с файлом .cap

На этом шаге вы будете использовать aircrack-ng для анализа файла захвата. Перед запуском атаки хорошей практикой является проверка того, содержит ли файл .cap действительное рукопожатие WPA. aircrack-ng может сделать это за вас.

Запустите aircrack-ng и передайте файл захвата wpa_handshake.cap в качестве аргумента.

aircrack-ng wpa_handshake.cap

aircrack-ng проанализирует файл и отобразит информацию о найденных сетях.

Opening wpa_handshake.cap
Read 13 packets.

   ##  BSSID              ESSID                     Encryption

   1  00:14:6C:7E:40:80  teddy                     WPA (1 handshake)

Choosing first network as target.
Opening wpa_handshake.cap
Please specify a dictionary (option -w).

Обратите особое внимание на строку WPA (1 handshake). Это подтверждает, что полное рукопожатие WPA для сети "teddy" было успешно захвачено и присутствует в файле. Это подтверждение, которое нам нужно, чтобы продолжить атаку по словарю. Инструмент также предлагает указать словарь, что вы сделаете на следующих шагах.

Указание списка слов с помощью параметра -w

На этом шаге вы узнаете, как указать список слов для атаки с помощью параметра -w. Этот параметр сообщает aircrack-ng, какой файл использовать в качестве словаря потенциальных паролей.

Полный синтаксис команды: aircrack-ng <capture_file> -w <wordlist_file>.

Чтобы понять, как это работает, давайте сначала попробуем выполнить команду со списком слов, которого не существует. Это поможет вам увидеть, как aircrack-ng обрабатывает ошибки. Попробуйте выполнить команду, используя nonexistent.txt в качестве списка слов.

aircrack-ng wpa_handshake.cap -w nonexistent.txt

Вы получите сообщение об ошибке, поскольку файл не может быть найден.

Opening wpa_handshake.cap
Read 13 packets.

   ##  BSSID              ESSID                     Encryption

   1  00:14:6C:7E:40:80  teddy                     WPA (1 handshake)

Choosing first network as target.
Opening wpa_handshake.cap
The file 'nonexistent.txt' doesn't exist.
Please specify a dictionary (option -w).

Это подтверждает, что aircrack-ng требует действительный, существующий файл для параметра -w. На следующем шаге вы используете правильный файл списка слов для выполнения атаки.

Запуск атаки и анализ вывода 'KEY FOUND'

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

Выполните команду aircrack-ng, указав wpa_handshake.cap в качестве файла захвата и rockyou.txt в качестве списка слов.

aircrack-ng wpa_handshake.cap -w rockyou.txt

aircrack-ng начнет работу. Он будет проверять каждый пароль из rockyou.txt против рукопожатия. Поскольку наш список слов небольшой и содержит правильный пароль, процесс будет очень быстрым.

Opening wpa_handshake.cap
Read 13 packets.

   ##  BSSID              ESSID                     Encryption

   1  00:14:6C:7E:40:80  teddy                     WPA (1 handshake)

Choosing first network as target.
Opening wpa_handshake.cap
[00:00:00] 3 keys tested (23.08 k/s)


                                     KEY FOUND! [ biscotte ]


      Master Key     : ED A5 79 22 E5 5F 56 64 74 CB 89 98 44 6A 18 25
                       E0 E3 44 86 8A F3 89 84 55 4A D3 94 03 19 28 79

      Transient Key  : 6A 84 A9 58 52 2E 61 30 62 50 2B 88 46 1B 2A 8A
                       ...

      EAPOL HMAC     : 4E 1A E7 74 52 86 C5 29 A3 43 54 B2 1B 2D 34 18

Самая важная строка в выводе — KEY FOUND! [ biscotte ]. Это означает, что атака была успешной. aircrack-ng протестировал пароли из списка слов и обнаружил, что biscotte является правильным паролем для сети "teddy".

Резюме

В этой лабораторной работе вы успешно выполнили атаку по словарю на WPA-рукопожатие с использованием aircrack-ng.

Вы узнали, как:

  • Находить и идентифицировать файл захвата (.cap) и список слов.
  • Использовать aircrack-ng для проверки файла захвата и подтверждения наличия WPA-рукопожатия.
  • Использовать параметр -w для указания списка слов для атаки.
  • Выполнять атаку по словарю и интерпретировать результаты для поиска ключа сети.

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