Захват WLAN-трафика

Захват пакетов Wi-Fi позволяет вам видеть детали и взаимодействия, которые в противном случае замаскированы, прежде чем они достигнут программного обеспечения, работающего на устройстве, что делает этот захват важным инструментом для выявления некоторых типов ошибок.

Основные этапы:

  1. Найдите правильный канал для прослушивания.
  2. Захват трафика.
  3. Поделитесь записью и хешем вашего пароля WLAN.

1. Определите правильный канал и ширину

Сети WLAN работают на:

  • канал, обычно обозначаемый номером. 1–13 — для каналов 2,4 ГГц , 36–200 — для каналов 5 ГГц.
  • с определенной шириной (20 МГц, 40 МГц, 80 МГц, 160 МГц)

Каждая точка доступа (например, маршрутизатор, ячеистый узел) в вашей сети обычно имеет уникальный канал 2,4 ГГц и канал 5 ГГц, и вам необходимо определить, к какому из них подключено устройство. Есть несколько вариантов:

Используйте панель управления вашего роутера

Если вы используете Nest WiFi , пропустите эту опцию — информация не будет раскрыта.

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

  1. Найдите IP-адрес вашего маршрутизатора с помощью этого руководства .
  2. Перейдите по адресу вашего маршрутизатора в веб-браузере, например http://192.168.1.1 .
  3. Войдите. Не знаете свой пароль? Найдите метку на своем маршрутизаторе или используйте пароли маршрутизатора .
  4. Найдите страницу с названием вроде «клиенты» или «подключенные устройства». Например, страница маршрутизатора Netgear может выглядеть следующим образом или для устройств Eero .

    Вид клиента Netgear

  5. Возможно, вам придется поискать в другом месте настроек, чтобы сопоставить информацию из шага 4 с конкретным каналом и пропускной способностью. Например, маршрутизатор Netgear:

    Просмотр каналов Netgear

Используйте свой Mac, если он уже подключен к тому же каналу.

Удерживайте Option на клавиатуре, затем щелкните значок WLAN в правом верхнем углу строки состояния вашего Mac. Вы должны увидеть обычное меню WLAN с несколькими дополнительными опциями и информацией. Взгляните на недоступные пункты меню и найдите тот, в котором упоминается «Канал»:

`Channel 60 (DFS, 5GHz, 40MHz)`

Mac WLAN

Не могу найти канал и ширину

Если другие методы не работают, вы можете попробовать:

  1. Перечислите все каналы, которые используют ваши точки доступа (обычно по 2 для каждой точки доступа или точки сети).

    а. Рекомендуется. На телефоне Android вы можете использовать такие приложения, как Wifiman или Aruba Utilities .

    а. На Mac вы можете использовать /System/Library/PrivateFrameworks/Apple80211.framework/Resources/airport-s для отображения параметров.

  2. Выполните короткий (даже 15 секунд) захват каждого из этих каналов, используя инструкции ниже.

  3. Установите Wireshark (подсказку см. в разделе «Установка Wireshark» ).

  4. Откройте каждый из снимков с помощью Wireshark, примените фильтр отображения wlan.addr == YOUR_DEVICE'S_MAC и посмотрите, появятся ли какие-либо пакеты.

2. Начать захват

Важно: Захват четырехстороннего рукопожатия

Если для Wi-Fi включена безопасность, вам необходимо знать ключи шифрования для расшифровки перехваченных пакетов. Ключи шифрования создаются в результате четырехстороннего рукопожатия, которое происходит при подключении устройства к сети, и уникальны для каждого соединения между устройством и точкой доступа.

По этой причине вы ДОЛЖНЫ захватить четырехстороннее рукопожатие для расшифровки полезных данных Wi-Fi. Если устройство уже подключено к сети на момент начала захвата, отключите и снова подключите устройство (или перезагрузите его), как только начнется перехват.

Снимать на Mac

Удерживая клавишу Option на клавиатуре, щелкните значок WLAN, затем выберите «Открыть беспроводную диагностику…»:

Mac захват WLAN

В строке меню «Беспроводная диагностика» выберите «Окно» > «Сниффер» :

Mac WLAN сниффер

Установите канал и ширину на значения, которые вы получили ранее (пример снимка экрана предназначен для канала 60 и ширины 40 МГц):

Канал и ширина WLAN Mac

Нажмите Start и введите свой пароль. Теперь попробуйте воспроизвести проблему. Убедитесь, что вы перехватили четырехстороннее рукопожатие из соединения, как указано в разделе «Захват четырехстороннего рукопожатия» .

После этого нажмите Stop . Новый файл *.pcap можно найти в /var/tmp , который содержит весь трафик. Пример имени файла: (null)_ch100_2018-11-06_10.52.01.pcap .

Захват в Linux

  1. Выключите Wi-Fi. Это можно сделать следующим образом:

    • Использование графического интерфейса (рекомендуется)
    • Использование интерфейса командной строки Network Manager, чтобы сообщить ему о прекращении управления интерфейсом WLAN: sudo nmcli dev set <wlan-ifname> managed on
    • Если вы используете альтернативный сетевой менеджер, внесите соответствующие изменения.
  2. Сохраните этот скрипт. Замените <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 $@
  3. Выполните предыдущий скрипт и передайте канал и максимальную пропускную способность для анализа, например канал 153 с полосой пропускания 80 МГц:

    ./setup-wifi-capture chan 153 80 MHz
  4. Откройте Wireshark, и теперь вы сможете перехватывать пакеты на интерфейсе WLAN.

3. Поделитесь снимком

  1. Используйте генератор WPA PSK (Raw Key) для создания хеша вашего пароля. Это позволяет вам расшифровать перехваченный файл, не зная пароля в виде открытого текста.

  2. Вам также необходимо поделиться сгенерированным PSK, чтобы другие могли расшифровать полученный результат.

Приложение

Установить Вайршарк

Вы можете установить Wireshark с помощью apt install Wireshark в Linux или загрузить его онлайн с веб-сайта Wireshark .

Настройте Wireshark для расшифровки трафика

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

Благодаря безопасности WPA2 в Wi-Fi WPA2-PSK не используется напрямую для шифрования и дешифрования трафика. Он используется в четырехстороннем рукопожатии , которое необходимо перехватить для расшифровки пакетов. Однако если все, что вы пытаетесь захватить, — это проблемы с подключением к Wi-Fi или обрывы связи, которые можно получить из кадров управления Wi-Fi, вам не нужно захватывать четырехстороннее рукопожатие. В любом случае, поймать его в любом случае не помешает.

Откройте Wireshark и откройте страницу «Настройки» ( меню Wireshark > «Настройки» или **Cmd +, **).

  1. Найдите раздел «IEEE 802.11» в категории «Протоколы» и убедитесь, что установлен флажок «Включить расшифровку»:

    Настройки Mac Wireshark

  2. Нажмите кнопку «Изменить» рядом с меткой «Ключи расшифровки» .

  3. Нажмите кнопку «+» в левом нижнем углу и выберите опцию «wpa-pwd».

    Mac Wireshark WPA и пароль

  4. Щелкните ключевой столбец вновь созданной строки (рядом со строкой wpa-pwd), введите свой PSK WPA2 и SSID в формате <password>:<ssid> . Например, если имя вашей сети было MyHomeNetwork , а PSK WPA2 — myp4ssword , введите myp4ssword:MyHomeNetwork .

    SSID Mac Wireshark

  5. Нажмите ОК, чтобы подтвердить

Для получения дополнительной информации см. официальное руководство Wireshark (со скриншотами) по адресу How to Decrypt 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 .