Захват пакетов 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 60 (DFS, 5GHz, 40MHz)`
Не удается найти канал и ширину
Если другие способы не работают, попробуйте следующее:
Перечислите все каналы, которые используют ваши точки доступа (обычно по два на каждую точку доступа или узел ячеистой сети).
А. Рекомендуется. На телефоне Android можно использовать такие приложения, как Wifiman или Aruba Utilities.
А. На компьютере Mac можно использовать сочетание клавиш
/System/Library/PrivateFrameworks/Apple80211.framework/Resources/airport-s.Выполните короткий (достаточно даже 15 секунд) захват на каждом из этих каналов, следуя инструкциям ниже.
Установите 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, чтобы отключить управление интерфейсом 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 menu (Меню Wireshark) > Preferences (Настройки) или **Cmd + , **).
Найдите раздел IEEE 802.11 в категории Protocols (Протоколы) и убедитесь, что установлен флажок Enable decryption (Включить расшифровку).
Нажмите кнопку Изменить рядом с надписью Ключи расшифровки.
Нажмите кнопку "+" в левом нижнем углу и выберите вариант 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 Configuration Profile.