Атаки на беспроводные сети с Kali Linux и Aircrack-ng

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

Введение

В этой лабораторной работе вы изучите основы тестирования на проникновение в беспроводные сети с использованием Kali Linux и набора инструментов Aircrack-ng в среде виртуальной машины LabEx. Основное внимание уделяется пониманию ключевых методов оценки безопасности беспроводных сетей. Вы попрактикуетесь во включении режима мониторинга на беспроводном интерфейсе, захвате рукопожатий WPA, взломе ключей WPA и сохранении результатов для документирования. Разработанная для начинающих, эта лабораторная работа предоставляет пошаговое руководство в контролируемой среде для формирования базовых навыков в тестировании безопасности беспроводных сетей. Когда вы откроете терминал, вы автоматически подключитесь к оболочке контейнера Kali Linux, готовой к практике.

Установка необходимых инструментов для тестирования беспроводных сетей

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

Как начинающему, важно понимать, что Kali Linux — это мощный дистрибутив для тестирования безопасности, но не все инструменты предустановлены в минимальной настройке контейнера. Мы установим aircrack-ng, набор инструментов для аудита беспроводных сетей, который включает в себя такие утилиты, как airmon-ng для включения режима мониторинга, airodump-ng для захвата пакетов и aircrack-ng для взлома ключей.

Выполните следующие команды в терминале, чтобы обновить список пакетов и установить aircrack-ng. Нажмите Enter после каждой команды, чтобы выполнить ее:

apt update
apt install -y aircrack-ng

Эти команды обновят репозиторий пакетов и установят набор aircrack-ng. Установка может занять несколько минут, поэтому, пожалуйста, подождите, пока она не завершится.

После установки убедитесь, что aircrack-ng установлен, проверив его версию. Введите следующую команду и нажмите Enter:

aircrack-ng --version

Ожидаемый вывод покажет версию aircrack-ng, подтверждая, что инструмент готов к использованию. Это может выглядеть так:

Aircrack-ng 1.7

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

Включение режима мониторинга на беспроводном интерфейсе

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

Для начинающих, представьте себе режим мониторинга как превращение вашей беспроводной карты в пассивного слушателя. Обычно, в «управляемом режиме» (managed mode), карта захватывает только трафик, предназначенный для нее. В режиме мониторинга она захватывает весь близлежащий беспроводной трафик, что имеет решающее значение для таких инструментов, как aircrack-ng, для анализа данных и выявления уязвимостей.

Поскольку вы уже находитесь в оболочке контейнера Kali Linux (автоматически подключенной при открытии терминала), давайте начнем с идентификации беспроводного интерфейса. Введите следующую команду и нажмите Enter, чтобы вывести список всех сетевых интерфейсов:

iwconfig

Ожидаемый вывод отобразит список сетевых интерфейсов. Найдите беспроводной интерфейс, обычно с именем wlan0 или аналогичным. В этой лабораторной среде предположим, что интерфейс — wlan0. Вывод может выглядеть так:

wlan0     IEEE 802.11  ESSID:off/any
          Mode:Managed  Access Point: Not-Associated   Tx-Power=20 dBm
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Power Management:off

Далее включите режим мониторинга на интерфейсе wlan0 с помощью инструмента airmon-ng, который является частью набора aircrack-ng, установленного вами ранее. Выполните следующую команду и нажмите Enter:

airmon-ng start wlan0

Ожидаемый вывод укажет на то, что режим мониторинга включен, и имя интерфейса может измениться на wlan0mon. Это может выглядеть так:

Interface wlan0 is now in monitor mode as wlan0mon.

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

Наконец, убедитесь, что режим мониторинга активен, выполнив следующую команду и нажав Enter:

iwconfig

Ожидаемый вывод должен показать интерфейс (например, wlan0mon) в режиме мониторинга, как показано ниже:

wlan0mon  IEEE 802.11  Mode:Monitor  Tx-Power=20 dBm
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Power Management:off

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

Перехват WPA рукопожатий с помощью Airodump-ng

После включения режима мониторинга на вашем беспроводном интерфейсе следующим шагом будет захват рукопожатия WPA с помощью инструмента airodump-ng в контейнере Kali Linux. Рукопожатие WPA — это набор пакетов, которыми обмениваются при подключении устройства к сети Wi-Fi, и его захват позволяет нам попытаться взломать пароль на следующих шагах.

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

Поскольку вы уже находитесь в оболочке контейнера Kali Linux (автоматически подключенной при открытии терминала), давайте начнем захват беспроводного трафика. Выполните следующую команду и нажмите Enter, чтобы начать мониторинг всех близлежащих сетей на интерфейсе wlan0mon:

airodump-ng wlan0mon

Ожидаемый вывод отобразит живую таблицу близлежащих сетей Wi-Fi, показывающую такие детали, как BSSID (MAC-адрес точки доступа), ESSID (имя сети), CH (канал) и тип шифрования. Это может выглядеть так:

CH  6 ][ Elapsed: 1 min ][ 2023-10-01 12:00

BSSID              PWR  Beacons    #Data, #/s  CH   MB   ENC  CIPHER  AUTH  ESSID
00:14:22:AB:CD:EF  -30       10        5    0   6   54   WPA2 CCMP   PSK   TestNetwork

Дайте этой команде поработать несколько секунд, чтобы наблюдать за сетями, затем остановите ее, нажав Ctrl+C. Для этой лаборатории предположим, что вы определили целевую сеть с ESSID TestNetwork, BSSID 00:14:22:AB:CD:EF и работающую на канале 6.

Теперь сосредоточьтесь на захвате трафика для этой конкретной сети, чтобы получить рукопожатие WPA. Выполните следующую команду и нажмите Enter, чтобы нацелиться на сеть и сохранить захваченные данные в файл с именем handshake в каталоге /root:

airodump-ng --bssid 00:14:22:AB:CD:EF --channel 6 -w /root/handshake wlan0mon

В этой команде --bssid указывает MAC-адрес целевой сети, --channel устанавливает канал для прослушивания, а -w /root/handshake сохраняет данные в файл. Ожидаемый вывод покажет трафик, относящийся к целевой сети. Если рукопожатие захвачено, вы можете увидеть [ WPA handshake: 00:14:22:AB:CD:EF ] в правом верхнем углу вывода. Для этой лаборатории предположим, что рукопожатие захвачено через несколько секунд. Остановите захват, нажав Ctrl+C.

Убедитесь, что файл захвата был сохранен, перечислив содержимое каталога /root. Выполните следующую команду и нажмите Enter:

ls -l /root

Ожидаемый вывод должен включать файл с именем handshake-01.cap (или аналогичным), например:

-rw-r--r-- 1 root root 12345 Oct  1 12:05 handshake-01.cap

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

Взлом WPA ключей с помощью Aircrack-ng

Захватив рукопожатие WPA на предыдущем шаге, теперь вы готовы попытаться взломать ключ WPA с помощью инструмента aircrack-ng внутри контейнера Kali Linux. Этот процесс включает в себя тестирование потенциальных паролей из списка слов (wordlist) по отношению к захваченным данным рукопожатия, чтобы найти правильный ключ.

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

Поскольку вы уже находитесь в оболочке контейнера Kali Linux (автоматически подключенной при открытии терминала), давайте создадим простой файл списка слов в каталоге /root. Выполните следующую команду и нажмите Enter, чтобы открыть редактор nano и создать файл с именем wordlist.txt:

nano /root/wordlist.txt

В редакторе nano введите следующие примеры паролей, по одному на строку:

password123
testwifi
admin123

Сохраните файл, нажав Ctrl+O, затем Enter, чтобы записать файл, и, наконец, Ctrl+X, чтобы выйти из nano. Вывода для этого действия не будет, но файл теперь создан.

Убедитесь, что файл списка слов существует, перечислив содержимое каталога /root. Выполните следующую команду и нажмите Enter:

ls -l /root

Ожидаемый вывод должен включать wordlist.txt, например:

-rw-r--r-- 1 root root  30 Oct  1 12:10 wordlist.txt

Теперь используйте aircrack-ng, чтобы попытаться взломать ключ WPA с захваченным рукопожатием и списком слов. Выполните следующую команду и нажмите Enter, используя BSSID с предыдущего шага и пути к файлам:

aircrack-ng -w /root/wordlist.txt -b 00:14:22:AB:CD:EF /root/handshake-01.cap

В этой команде -w указывает файл списка слов, -b указывает BSSID целевой сети, а последний аргумент — путь к файлу рукопожатия. Ожидаемый вывод покажет, как инструмент тестирует пароли из списка слов. В случае успеха он отобразит найденный ключ, например:

KEY FOUND! [ testwifi ]

Если ключ не найден, это укажет на то, что все пароли были протестированы без успеха. Для этой лаборатории предположим, что пароль testwifi найден. Процесс может занять несколько секунд.

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

Сохранение взломанного WPA ключа

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

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

Поскольку вы уже находитесь в оболочке контейнера Kali Linux (автоматически подключенной при открытии терминала), давайте создадим файл с именем cracked_keys.txt в каталоге /root для хранения ключа. Выполните следующую команду и нажмите Enter, чтобы открыть редактор nano:

nano /root/cracked_keys.txt

В редакторе nano введите следующие сведения о взломанном ключе, заменив testwifi фактическим паролем, найденным на предыдущем шаге, если он отличается:

Network: TestNetwork
BSSID: 00:14:22:AB:CD:EF
Password: testwifi
Date: 2023-10-01

Сохраните файл, нажав Ctrl+O, затем Enter, чтобы записать файл, и, наконец, Ctrl+X, чтобы выйти из nano. Вывода для этого действия не будет, но файл теперь создан.

Убедитесь, что файл был сохранен, перечислив содержимое каталога /root. Выполните следующую команду и нажмите Enter:

ls -l /root

Ожидаемый вывод должен включать cracked_keys.txt, например:

-rw-r--r-- 1 root root  85 Oct  1 12:15 cracked_keys.txt

Чтобы убедиться, что содержимое правильно, отобразите содержимое файла, выполнив следующую команду и нажав Enter:

cat /root/cracked_keys.txt

Ожидаемый вывод покажет текст, который вы ввели, например:

Network: TestNetwork
BSSID: 00:14:22:AB:CD:EF
Password: testwifi
Date: 2023-10-01

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

Резюме

В этой лаборатории вы изучили основные шаги тестирования на проникновение беспроводной сети, используя Kali Linux и набор инструментов Aircrack-ng в среде виртуальной машины LabEx. Вы начали с установки основных инструментов, таких как aircrack-ng, затем включили режим мониторинга на беспроводном интерфейсе для захвата сетевого трафика. После этого вы захватили рукопожатие WPA, попытались взломать ключ WPA, используя список слов, и, наконец, сохранили взломанный ключ для документирования. Эти шаги обеспечивают прочную основу для понимания тестирования безопасности беспроводной сети и важности защиты сетей от таких уязвимостей в контролируемой среде.