Захват пакетов Wi-Fi позволяет увидеть детали и взаимодействия, которые в противном случае были бы замаскированы до того, как они достигнут программного обеспечения, работающего на устройстве, что делает такие захваты важным инструментом для обнаружения некоторых типов ошибок.
Основные этапы включают:
- Найдите правильный канал для прослушивания.
- Захватите трафик.
- Поделитесь полученным изображением и хэшем вашего пароля WLAN.
1. Определите правильный канал и его ширину.
Сети WLAN работают на:
- Канал, обычно обозначаемый номером. 1–13 — для каналов 2,4 ГГц , 36–200 — для каналов 5 ГГц.
- с определенной шириной (20 МГц, 40 МГц, 80 МГц, 160 МГц)
Каждая точка доступа (например, маршрутизатор, узел сети) в вашей сети обычно имеет уникальный канал 2,4 ГГц и канал 5 ГГц, и вам необходимо определить, к какому из них подключено устройство. Существует несколько вариантов:
Используйте панель управления вашего маршрутизатора
Если вы используете Nest WiFi , пропустите этот вариант — информация не раскрывается.
Большинство маршрутизаторов имеют список подключенных устройств, а также используемый ими канал и ширину полосы пропускания.
- Найдите IP-адрес вашего маршрутизатора с помощью этого руководства .
- Перейдите по адресу вашего маршрутизатора в веб-браузере, например http://192.168.1.1 .
- Войти. Не знаете пароль? Найдите метку на роутере или воспользуйтесь паролем роутера .
Найдите страницу с названием «Клиенты» или «Подключённые устройства». Например, страница маршрутизатора Netgear может выглядеть следующим образом, а для устройств Eero — следующим образом.
Возможно, вам придётся поискать другие настройки, чтобы сопоставить информацию из шага 4 с конкретным каналом и пропускной способностью. Например, маршрутизатор Netgear:
Используйте свой Mac, если он уже подключен к тому же каналу.
Удерживая клавишу Option на клавиатуре, нажмите на значок WLAN в правом верхнем углу строки состояния Mac. Вы увидите стандартное меню WLAN с несколькими дополнительными опциями и информацией. Просмотрите недоступные пункты меню и найдите тот, в котором упоминается Channel:
`Channel 60 (DFS, 5GHz, 40MHz)`
Не могу найти канал и ширину
Если другие методы не помогли, вы можете попробовать:
Перечислите все каналы, которые используют ваши точки доступа (обычно 2 для каждой точки доступа или точки сети).
а. Рекомендуется . На телефоне Android вы можете использовать приложение, например Wifiman или Aruba Utilities .
а. На Mac вы можете использовать
/System/Library/PrivateFrameworks/Apple80211.framework/Resources/airport-s
для просмотра списка параметров.Выполните короткий (достаточно даже 15 секунд) захват на каждом из этих каналов, следуя инструкциям ниже.
Установите Wireshark (для получения помощи см. раздел Установка Wireshark ).
Откройте каждый из захватов с помощью Wireshark, примените фильтр отображения
wlan.addr == YOUR_DEVICE'S_MAC
и посмотрите, появятся ли какие-либо пакеты.
2. Начните захват.
Важно: захват четырехстороннего рукопожатия
Если для Wi-Fi включена защита, вам необходимо знать ключи шифрования для расшифровки перехваченных пакетов. Ключи шифрования формируются в результате четырёхстороннего рукопожатия, которое происходит при подключении устройства к сети, и уникальны для каждого соединения между устройством и точкой доступа.
В связи с этим для расшифровки данных Wi-Fi НЕОБХОДИМО перехватить четырёхстороннее рукопожатие. Если устройство уже подключено к сети на момент начала перехвата, отключите и снова подключите его (или перезагрузите) после начала анализа.
Захват на Mac
Удерживая клавишу Option на клавиатуре, щелкните значок WLAN, затем выберите «Открыть диагностику беспроводной сети…»:
В строке меню «Диагностика беспроводной сети» выберите «Окно» > «Сниффер» :
Установите канал и ширину на значения, полученные ранее (пример снимка экрана для канала 60 и ширины 40 МГц):
Нажмите Start
и введите пароль. Попробуйте воспроизвести проблему. Убедитесь, что вы перехватили четырёхстороннее рукопожатие, как описано в разделе «Перехват четырёхстороннего рукопожатия» .
После этого нажмите Stop
. Новый файл *.pcap
, содержащий весь трафик, находится в каталоге /var/tmp
. Пример имени файла: (null)_ch100_2018-11-06_10.52.01.pcap
.
Захват на Linux
Отключите Wi-Fi. Это можно сделать следующим образом:
- Использование графического интерфейса (рекомендуется)
- Используя Network Manager CLI, укажите ему прекратить управление интерфейсом WLAN:
sudo nmcli dev set <wlan-ifname> managed on
- При использовании альтернативного сетевого менеджера настройте его соответствующим образом.
Сохраните этот скрипт. Замените
<wlan-ifname>
на имя вашего Wi-Fi-интерфейса. В этом документе предполагается, что имя скрипта —setup-wifi-capture
.#!/usr/bin/env bash sudo ifconfig <wlan-ifname> down sudo rfkill unblock wifi sudo iwconfig <wlan-ifname> mode monitor sudo ifconfig <wlan-ifname> up sudo iw dev <wlan-ifname> set channel $@
Выполните предыдущий скрипт и передайте канал и самую высокую пропускную способность для прослушивания, например, канал 153 с пропускной способностью 80 МГц:
./setup-wifi-capture chan 153 80 MHz
Откройте Wireshark, и теперь вы сможете захватывать пакеты на интерфейсе WLAN.
3. Поделитесь снимком
Используйте генератор WPA PSK (Raw Key) для генерации хеша вашего пароля. Это позволит вам расшифровать захваченный пароль, не зная его в текстовом виде.
Вам также необходимо поделиться сгенерированным PSK, чтобы другие могли расшифровать захваченный файл.
Приложение
Установить Wireshark
Установить Wireshark можно с помощью команды apt install wireshark в Linux или загрузить ее с веб-сайта Wireshark .
Настройте Wireshark для расшифровки трафика
Это не обязательно для обмена файлами захвата, делайте это только в том случае, если вы хотите самостоятельно проверить расшифрованный трафик в Wireshark.
При использовании протокола WPA2 в сети Wi-Fi ключ WPA2-PSK не используется напрямую для шифрования и дешифрования трафика. Он используется в четырёхстороннем рукопожатии , которое необходимо перехватить для расшифровки пакетов. Однако, если вы пытаетесь перехватить только проблемы с подключением к Wi-Fi или обрывы связи, о которых можно узнать из кадров управления Wi-Fi, вам не нужно перехватывать четырёхстороннее рукопожатие. В любом случае, перехват всё равно не помешает.
Откройте Wireshark и откройте страницу настроек ( меню Wireshark > Настройки или **Cmd + , **).
Найдите раздел «IEEE 802.11» в категории «Протоколы» и убедитесь, что установлен флажок «Включить дешифрование»:
Нажмите кнопку «Изменить» рядом с надписью «Ключи дешифрования» .
Нажмите кнопку «+» в левом нижнем углу и выберите опцию «wpa-pwd».
Щёлкните по столбцу «ключ» в только что созданной строке (рядом со строкой wpa-pwd), введите ключ WPA2 PSK и SSID в формате
<password>:<ssid>
. Например, если имя вашей сети —MyHomeNetwork
, а ключ WPA2 PSK —myp4ssword
, введитеmyp4ssword:MyHomeNetwork
.Нажмите «ОК» для подтверждения.
Дополнительную информацию см. в официальном руководстве Wireshark (со снимками экрана) по адресу Как расшифровать 802.11 .
При использовании tshark
передайте следующие аргументы:
tshark -o wlan.enable_decryption:TRUE -o 'uat:80211_keys:"wpa-pwd","<psk>:<ssid>"'
Раскрасить данные Wireshark 802.11
На сайте metageek.com можно найти удобный цветовой профиль 802.11: Профиль конфигурации Wireshark .