Захват пакетов 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 .
- Войти. Не знаете пароль? Найдите метку на маршрутизаторе или используйте Router Passwords .
Найдите страницу с названием типа "клиенты" или "подключенные устройства". Например, страница маршрутизатора 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, вам необходимо знать ключи шифрования для расшифровки захваченных пакетов. Ключи шифрования выводятся из 4-стороннего рукопожатия, которое происходит, когда устройство подключается к сети, и являются уникальными для каждого соединения между устройством и точкой доступа.
Из-за этого вы ДОЛЖНЫ захватить 4-стороннее рукопожатие для расшифровки полезных нагрузок Wi-Fi. Если устройство уже подключено к сети, когда вы начинаете захват, отключите и снова подключите устройство (или перезагрузите его) после начала сниффинга.
Захват на Mac
Удерживая клавишу Option на клавиатуре, щелкните значок WLAN, затем выберите «Открыть диагностику беспроводной сети…»:
В строке меню «Диагностика беспроводной сети» выберите «Окно» > «Сниффер» :
Установите канал и ширину на значения, которые вы получили ранее (пример снимка экрана для канала 60 и ширины 40 МГц):
Нажмите Start
и введите свой пароль. Теперь попробуйте воспроизвести проблему. Убедитесь, что вы захватили 4-стороннее рукопожатие из соединения, как указано в Capturing the 4-way handshake .
После этого нажмите 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) Generator для генерации хеша вашего пароля. Это позволяет вам расшифровать захват, не зная вашего открытого пароля.
Вам также необходимо поделиться сгенерированным PSK, чтобы другие могли расшифровать захваченный файл.
Приложение
Установить Wireshark
Вы можете установить Wireshark с помощью apt install wireshark в Linux или загрузить его с веб-сайта Wireshark .
Настройте Wireshark для расшифровки трафика
Это не обязательно для обмена файлами захвата, делайте это только в том случае, если вы хотите самостоятельно проверить расшифрованный трафик в Wireshark.
С безопасностью WPA2 в Wi-Fi, WPA2-PSK не используется напрямую для шифрования и дешифрования трафика. Он используется в 4-стороннем рукопожатии , которое вам нужно захватить для расшифровки пакетов. Однако, если все, что вы пытаетесь захватить, это проблемы с подключением к Wi-Fi или обрывы связи, которые можно почерпнуть из кадров управления Wi-Fi, вам не нужно захватывать 4-стороннее рукопожатие. В любом случае, захватить его в любом случае не повредит.
Откройте 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 .