- Захват Wi-Fi трафика в Windows и анализ в Wireshark
- Пример использования
- Ссылки
- Похожие записи.
- Андрей Торженов
- Latest posts by Андрей Торженов (see all)
- HackWare.ru
- Этичный хакинг и тестирование на проникновение, информационная безопасность
- Как в Wireshark расшифровать Wi-Fi трафик
- Расшифровка WPA трафика в Wireshark
- Захват Wi-Fi трафика в Airodump-ng
- Расшифровка Wi-Fi трафика в Wireshark
- Захват Wi-Fi в Wireshark
- Заключение
- How to Capture Wi-Fi Traffic Using Wireshark
- Setup Check
- Wi-Fi Interface
- Support for Monitor Mode
- Check Wireshark Software
- Configuring Monitor Mode
- Step 1: Enter Superuser Mode
- Step 2: Create Monitor Mode
- Step 3: Configure Wi-Fi Sniffing Channel
- Step 4: Launch Wireshark and Start Capturing
- Conclusion
- About the author
- Bamdeb Ghosh
Захват Wi-Fi трафика в Windows и анализ в Wireshark
Периодически возникает необходимость захватить служебный Wi-Fi трафик для дальнейшего анализа в Wireshark.
Wireshark использует библиотеку WinPcap для захвата трафика, а она не позволяет напрямую захватить Wi-Fi трафик и не позволяет включить Monitor Mode.
Я нашел два варианта захвата Wi-Fi трафика в Wireshark:
- Использовать специализированные Wi-Fi адаптеры с поддержкой библиотеки AirPcap;
- Использовать способ предложенный Acrylic.
Первый и второй вариант — платные. А т.к. данная задача возникает нечасто, хочется, что то бесплатное.
У Microsoft есть замечательная утилита Microsoft Network Monitor. С помощью неё можно перехватывать трафик на сетевых интерфейсах включая и Wi-Fi интерфейсы в Monitor Mode.
Пример использования
После установки, запускаем Microsoft Network Monitor от прав Администратора!
Выбираем Wi-Fi адаптер (1), открываем окно с настройками (2), открываем окно с настройками сканирования эфира (3).
Включаем если нужно Monitor Mode (4) и далее выбираем частоты и стандартны 802.11 (Wi-Fi) (5).
Окно настроек сканирования не закрываем во время захвата Wi-Fi трафика. Иначе все сделанные настройки сбросятся по умолчанию (6).
Создаём новую вкладку (tab) для захвата трафика.
Нажимаем Start и…
Анализируем его на месте в Microsoft Network Monitor или сохраняем в файл pcap и открываем в Wireshark.
Ссылки
- Подборка ресурсов по захвату и анализу Wi-Fi трафика: Wireless Analysis Resources
- Подборка ссылок на темутику Wi-Fi: https://2keep.net/useful-links#wi-fi
Похожие записи.
Андрей Торженов
В профессиональной сфере занимаюсь всем, что связанно с IT. Основная специализация — VoIP и сети передачи данных. Стараюсь не заниматься Windows серверами (но иногда приходится) и 1С.
Latest posts by Андрей Торженов (see all)
HackWare.ru
Этичный хакинг и тестирование на проникновение, информационная безопасность
Как в Wireshark расшифровать Wi-Fi трафик
Расшифровка WPA трафика в Wireshark
Начнём с теории, чтобы понять, почему процесс расшифровки Wi-Fi трафика в Wireshark требует некоторых усилий и почему нельзя просто расшифровать любой захваченный Wi-Fi трафик даже если есть пароль от Точки Доступа.
При передаче по Wi-Fi трафик шифруется с использованием PTK (Pairwise transient key — можно перевести как Парный переходной ключ). При этом PTK является динамичным, то есть создаётся заново для каждого нового соединения. Таким образом получается, что Wi-Fi трафик для каждого соединения в одной и той же Точке Доступа зашифрован разными PTK, причём даже для одного Клиента после переподключения PTK меняется. Для вычисления PTK необходимы данные из четырёх этапного рукопожатия, а также пароль от Wi-Fi сети (на самом деле нужна ещё и другая информация, например имя (SSID) сети, но получение этих данных не является проблемой).
Главное, что нужно понять: для расшифровки Wi-Fi трафика необходимо четырёх этапное рукопожатие. Причём не любое, а именно то, которое произошло для передачи того трафика, который нужно расшифровать. Но для использования захваченного рукопожатия необходим пароль от Wi-Fi сети.
Итак, чтобы расшифровать Wi-Fi трафик нужны:
1) рукопожатие, произошедшее между Клиентом и Точкой доступа непосредственно перед обменом расшифровываемой информацией
2) пароль для подключения к Точке Доступа
Далее будет показано два примера захвата Wi-Fi трафика и его расшифровки. Первый захват данных выполнен с помощью Airodump-ng, а затем беспроводной трафик будет расшифрован в Wireshark. Во втором примере данные будут захвачены и расшифрованы с использованием только Wireshark.
Захват Wi-Fi трафика в Airodump-ng
Чтобы данные были пригодны для расшифровки, нужно чтобы Wi-Fi карта не переключала каналы, а выполняла захват информации на одном канале, на котором работает целевая Точка Доступа. Поэтому начнём со сбора информации о целевой точки доступа.
Смотрим имена беспроводных интерфейсов:
Переводим ИНТЕРФЕЙС в режим монитора командами вида:
sudo ip link set ИНТЕРФЕЙС down sudo iw ИНТЕРФЕЙС set monitor control sudo ip link set ИНТЕРФЕЙС up
Запускаем airodump-ng командой вида:
sudo airodump-ng ИНТЕРФЕЙС
Например, я хочу захватить и расшифровать трафик для Точки Доступа Paangoon_2G, которая работает на 9 канале.
Тогда мне нужно перезапустить airodump-ng командой вида:
sudo airodump-ng ИНТЕРФЕЙС --channel КАНАЛ --write ИМЯ_ФАЙЛА
Надпись WPA handshake говорит о том, что было захвачено четырёх этапное рукопожатие. Это означает что:
- теперь мы сможем расшифровать Wi-Fi данные (если у нас есть ключ от Wi-Fi сети)
- мы сможем расшифровать данные только для конкретного клиента (с которым было совершено рукопожатие)
- мы сможем расшифровать данные, которые были отправлены только после этого захваченного рукопожатия
Расшифровка Wi-Fi трафика в Wireshark
Открываем файл захвата в Wireshark. В исходном виде трафик выглядит примерно так:
То есть без расшифровки мы видим только MAC-адреса участников передачи данных, пакеты некоторых видов, а также пакеты с данными — полезная нагрузка в которых зашифрована.
Перед расшифровкой убедимся, что имеется хендшейк, иначе продолжать нет смысла:
Перед расшифровкой нам нужно сделать некоторые изменения в настройках протокола IEEE 802.11.
Перейдите в Edit → Preferences, раскройте секцию protocol и выберите IEEE 802.11. Настройки должны быть такими:
Когда у вас будут такие же настройки, как и на предыдущем скриншоте, нажмите на кнопку Edit рядом с надписью Decryption Keys (для добавления WEP/WPA ключа):
Нажмите кнопку Создать. В открывшемся окне в поле Key type выберите wpa-pwd, введите пароль от Wi-Fi сети, а через двоеточие имя (SSID) сети и нажмите ОК.
Например, в моём случае пароль 00001777, а имя сети Paangoon_2G, тогда я ввожу:
Нажмите кнопку Применить:
Теперь там видны DNS, HTTP запросы и ответы, а также другие сетевые пакеты.
Если захвачен трафик не только для данной сети, но и для других сетей, работающих на этом же канале, либо для данной сети но других клиентов, для которых не захвачены рукопожатия, то этот трафик не будет расшифрован.
Захват Wi-Fi в Wireshark
Трафик Wi-Fi можно захватить непосредственно в Wireshark. Но нам предварительно нужно переключить Wi-Fi карту на тот же канал, на котором работает целевая Точка Доступа. Это делается командами вида:
sudo ip link set ИНТЕРФЕЙС down sudo iw ИНТЕРФЕЙС set monitor control sudo ip link set ИНТЕРФЕЙС up sudo iw dev ИНТЕРФЕЙС set channel КАНАЛ
В этих командах нужно слова ИНТЕРФЕЙС и КАНАЛ заменить на действительные данные.
Когда интерфейс переключён на нужный канал, в Wireshark найдите этот интерфейс, в его свойствах поставьте галочку Capture packets in monitor mode. Затем начните захват данных:
Последующая расшифровка выполняется точно таким же образом, как показано выше.
Заключение
Для расшифровки WEP Wi-Fi трафика достаточно знать только пароль. Но ТД с WEP уже практически не встречаются.
How to Capture Wi-Fi Traffic Using Wireshark
In this article, you will learn how to capture wireless frames using Wireshark in Linux (Example: Ubuntu. To follow this article, first, you should learn the basics of WireShark in the Wireshark Basic article, and then you can come back here.
There are some steps to be followed to achieve this.
Setup Check
Below are the requirements for capturing Wi-Fi packets using Wireshark.
Wi-Fi Interface
To check whether you meet this requirement, open the terminal using the shortcut Alt+Ctrl+T and run the command “iwconfig.” This output should show if there is an operable Wi-Fi interface. The following screenshot shows the output of this command:
In this example “wlp2s0” is the interface name for the Wi-Fi card.
- “IEEE 802.11” is the indication for the Wi-Fi interface.
- By default, the mode is “Managed,” which means that it is a client or station mode.
Support for Monitor Mode
The Wi-Fi card must support monitor mode to be able to sniff out wireless packets. This is a must, or you cannot sniff wireless packets using Wireshark. Open the terminal and run the command “iw phy0 info” or “iw list.” There is a huge list of information available here, but we just have to check the section for “monitor.” If the device does not support monitor mode, then it will not be possible to sniff the wireless packet using Wireshark.
Check Wireshark Software
Open the terminal and run the command “wireshark –version.” If Wireshark is installed, then there should be a version name with many details, as in the following screenshot:
If it is not installed, then use the commands “apt-get update” and “apt-get install wireshark” to install Wireshark on your system.
Configuring Monitor Mode
In previous sections, you saw that the Wi-Fi interface default mode is “managed.” To capture a wireless packet, we need to convert the “managed” mode to “monitor” mode. There are different commands that you can use, but to use a simple method first, we will try using the “iwconfig” command to create monitor mode.
Let us assume that the name of the Wi-Fi interface is “wlp2s0,” as shown in the screenshot.
Step 1: Enter Superuser Mode
First, enter into superuser mode; otherwise, we will get permission to do this.
Command: “su”
Step 2: Create Monitor Mode
Command: “iwconfig wlps20 mode monitor”
Output: If the interface is up and active, you will get the “Device or resource busy” error.
So, make interface down using the following command.
Command: “ifconfig wlsp2s0 down”
Then, execute the first command again.
Finally, check whether the interface is in monitor mode using the “iwocnfig” command.
Here is the screenshot to explain all the above steps:
Step 3: Configure Wi-Fi Sniffing Channel
In wireless protocol, there are two radio frequency bands:
If your wireless card supports 1 and 2, that means that the Wi-Fi card can sniff both bandwidth configured channels. Let us see what our card supports.
Using the command “iw list,” we can check this capability. We are looking for the section below in the command output screenshot:
As yu can see in the above list, this Wi-Fi chip supports only 2.4Ghz [Check the frequency range].
Each frequency is known as channel number. For example, 2412MHz is considered channel 1 [Shown in [] ].
Now, we need to configure one channel for our monitor mode interface. Let us try to set channel 11 [frequency is 2462MHz].
Command: “iwconfig wlp2s0 channel 11”
If above command outputs an error, this makes the interface up [“ifconfig wlp2s0 up”] and then executes the “iwconfig wlp2s0 channel 11” command. Finally, execute the “iwconfig” command to ensure that the channel is set up properly.
The following screenshot explains the steps given above:
Step 4: Launch Wireshark and Start Capturing
Now, we are all set to capture wireless packets. You can start Wireshark in the background using the following command:
In the startup window of Wireshark, you should see the following screen. Here, you can see a list of interfaces.
Next, choose your monitor mode interface, which is “wlp2s0.” Select this interface and then double-click on it.
You can see that live capturing is currently going on.
The following include some hints about wireless packets:
You should see the protocol section, which generally shows 802.11, which is wireless IEEE standard.
You should also see the “Beacon,” “Probe Request,” and “Probe Response” frames under the info section of any frame.
If you wish to save the capture and check it later, then select “save” or “save as” and save it for later analysis.
As long as the interface is in monitor mode you can capture wireless packet. Remember if you reboot the system the wireless interface will come up as “Managed” mod again.
Conclusion
In this article, you learned how to capture wireless packets using Wireshark in Linux. This is very easy to do in Linux using the built-in Wi-Fi card without installing any extra third-party software. You can make a shell script containing all these commands and run that single shell script to configure your system’s Wi-Fi card as monitor mode, set the preferred channel, and start using Wireshark.
About the author
Bamdeb Ghosh
Bamdeb Ghosh is having hands-on experience in Wireless networking domain.He’s an expert in Wireshark capture analysis on Wireless or Wired Networking along with knowledge of Android, Bluetooth, Linux commands and python. Follow his site: wifisharks.com