Как взломать Wi-Fi с помощью Kali Linux 2020.4 и Ubuntu 20.04. Часть 1
Life-Hack [Жизнь-Взлом]/ХакингВ пошаговом руководстве рассказываем о мониторинге точек доступа Wi-Fi, перехвате рукопожатий, расшифровке хешей паролей перебором по словарю и брутфорсом с помощью ЦП и видеокарты.
Текст статьи не является руководством к действию и публикуется для ознакомления с методами взлома и построения грамотной защиты. Напоминаем, что за преступления в сфере компьютерной информации предусмотрена ответственность по статье 274 УК РФ.
Разработчики Kali предупреждают, что в виртуальной машине не получится установить драйвера для Nvidia и соответственно мы не сможем проводить расчеты на ГП. Подтверждаю, у меня драйвера не установились. В таком случае лучше ставить Kali как вторую ОС. Расчет на ЦП в виртуальной машине работает нормально.
В статье представлены рецепты для Kali Linux 20.04 и Ubuntu 20.04. Если Kali не устраивает, у нее есть аналог – Parrot OS.
1. Установка Kali в VirtualBox
Устанавливаем последнюю версию VirtualBox и скачиваем Kali Linux VirtualBox 64-Bit (OVA) или 32-Bit. Запускаем VirtualBox и нажимаем на кнопку Импортировать.

Выбираем образ Kali Linux, назначаем количество ядер и ОЗУ для виртуальной машины и нажимаем на кнопку Импорт.

Запускаем Kali Linux и вводим логин kali и пароль kali.

2. Установка aircrack-ng
Aircrack-ng – набор инструментов для мониторинга, пентестинга Wi-Fi сетей и взлома WEP, WPA 1 и 2. В Kali утилита aircrack-ng предустановлена. В Ubuntu выполним следующую команду:
sudo apt install aircrack-ng
3. Установка bettercap
Bettercap – программа для мониторинга и спуфинга. Установим bettercap из исходников. Введем в терминале следующие команды:
sudo apt update sudo apt install golang git build-essential libpcap-dev libusb-1.0-0-dev libnetfilter-queue-dev #эта команда выполняется долго go get github.com/bettercap/bettercap
Перейдем в каталог с bettercap:
#в Kali: cd /home/kali/go/src/github.com/bettercap/bettercap/ #в Ubuntu: cd /home/USERNAME/go/src/github.com/bettercap/bettercap/ #Затем введем: make build sudo make install
4. Мониторинг сети
Если к компьютеру подключен USB Wi-Fi адаптер, включим его следующим образом: Устройства → USB → MediaTek 802.11 n WLAN. Название Wi-Fi адаптера может отличаться.


Узнаем имя Wi-Fi адаптера с помощью команды ifconfig или ip a.

В нашем случае адаптер называется wlan0.
Сначала отключим ненужные процессы:
sudo airmon-ng check kill
Затем переключим адаптер в режим мониторинга:
sudo airmon-ng start wlan0
Запустим bettercap следующей командой:
sudo bettercap --iface wlan0
Начнем «слушать» Wi-Fi, введя в терминал wifi.recon on.

Для просмотра списка обнаруженных сетей введем wifi.show.

5. Получение рукопожатий
Выберем цель – точка доступа NX531J. Попробуем получить рукопожатия (англ. handshake) между точкой доступа NX531J и подключенным к ней устройством. Ждем, когда клиент отключится и подключится снова, либо принудительно отключим его командой деаутентификации: wifi.deauth MAC-адрес точки доступа
MAC-адрес – уникальный идентификатор сетевого устройства. Его значение берем из столбца BSSID. В нашем случае: wifi.deauth 90:c7:aa:bb:cc:dd.
Повторяем эту команду, пока не перехватим рукопожатия.
wifi.deauth * и wifi.deauth all отключают все устройства на всех точках доступа.

Четырехстороннее рукопожатие
Четырехстороннее рукопожатие (англ. four-way handshake) – механизм создания парного переходного ключа PTK для защиты трафика.
PTK содержит:
- временный ключ TK;
- ключ подтверждения ключа EAPOL;
- ключ шифрования EAPOL-key.
Первое рукопожатие
Точка доступа отправляет клиенту случайное 32-байтное число ANonce.
Второе рукопожатие
Клиент в ответ генерирует свое случайное 32-байтное число SNonce. ANonce, SNonce и общий PMK (парный мастер-ключ) образуют PTK (парный переходной ключ). Во втором сообщении клиент отправляет SNonce и MIC (код целостности сообщения) точке доступа.
Третье рукопожатие
Точка доступа генерирует свой PTK для проверки значений MIC из второго сообщения. Если все верно, точка доступа отправляет клиенту сообщение о применении PTK.
Четвертое рукопожатие
Клиент подтверждает использование ключа PTK. [1]
Самое важное рукопожатие – второе. В дополнение к нему необходимо первое и/или третье рукопожатие. Лучший минимальный вариант – второе и третье рукопожатия.

#в Kali: sudo cp /root/bettercap-wifi-handshakes.pcap /home/kali/ #в Ubuntu: sudo cp /root/bettercap-wifi-handshakes.pcap /home/USERNAME/
6. Выбор нужных рукопожатий
Чтобы выбрать интересующие нас рукопожатия и экспортировать их в отдельный файл, нам понадобится программа для анализа сетевых протоколов WireShark.
В Ubuntu установим WireShark:
sudo apt install wireshark
Введем в терминале команду wireshark. Откроется программа с графическим интерфейсом. Нажмем Сtrl+O и откроем файл с рукопожатиями bettercap-wifi-handshakes.pcap
Отфильтруем данные по мак-адресу wlan.addr==90:c7:aa:bb:cc:dd и отсортируем по времени, кликнув по столбцу Time. Также можно отсортировать по номеру No.. Значения ANonce и SNonce меняются каждую сессию, поэтому выбираем рукопожатия, разделенные небольшим временным промежутком (десятки миллисекунд). Рукопожатия из разных сессий для взлома непригодны.

Как видно, мы получили первое, второе и третье рукопожатия. Выделим все рукопожатия EAPOL, файл с именем сети SSID (в нашем случае это Association Request) и нажмем File → Export Specified Packets.

Откроется диалоговое окно, в котором выберем Selected packets only и сохраним файл под названием hs.pcap.

Продолжение следует…