Добро пожаловать обратно, мои начинающие аналитики DFIR!
В последние годы Wi-Fi стал повсеместно распространённым в наших домах и на работе. Он обеспечивает удобство и ограниченный уровень безопасности, достаточный для использования большинством людей.
При любом расследовании, где доступен Wi-Fi, вы проявите халатность, если не проведёте проверку и анализ сети Wi-Fi на предмет наличия источников компрометации. Этот анализ включает в себя поиск аномалий, которые могут указывать на компрометацию или вредоносный трафик. В этом руководстве мы рассмотрим, как правильно анализировать Wi-Fi-трафик с помощью Wireshark для обнаружения такого вредоносного трафика.
Если вы не знакомы с Wireshark, сначала прочтите это руководство .
Шаг №1: просмотр беспроводных точек доступа и клиентов
Первый шаг — составить список доступных точек доступа и клиентов. Существует множество инструментов для этого, включая Netstumbler и Kismac, но я предпочитаю использовать пакет aircrack-ng (airodump-ng), как показано ниже.
Здесь мы видим BSSID каждой точки доступа в крайнем левом столбце и другие важные технические данные в следующих столбцах, а также ESSID в крайнем правом столбце. В нижней строке мы видим каждого клиента, подключенного к точке доступа, и его MAC-адрес.
Шаг №2: Загрузите и откройте Wireshark
Если у вас в системе не установлен Wireshark (он установлен по умолчанию в Kali), сделайте это сейчас. При запуске исполняемого файла откроется экран, подобный показанному ниже. Обычно вы выбираете интерфейс для сбора данных, но в этом руководстве мы будем использовать некоторые файлы захвата.
Шаг №3: Загрузите наши тестовые pcaps
Загрузите образец pcap-файла Network_Join_Nokia_Mobile.pcap с веб-сайта Wireshark здесь.
Затем откройте pcap, используя раскрывающийся список, как показано ниже, и нажмите ссылку «Открыть».
Шаг №4: Фильтры отображения
В Wireshark есть множество встроенных фильтров, которые можно найти на вкладке «Анализ» -> «Отобразить выражение фильтра» . Практически все фильтры, которые мы будем использовать, находятся в каталоге IEEE 802.11.
Шаг №5: Найдите кадры- маяки
В пакете протоколов 802.11 есть уникальный набор кадров. Каждый из этих типов кадров содержит различные доказательства для эксперта-криминалиста.
Вот некоторые из вопросов, которые мы пытаемся решить в нашем анализе:
Как видно выше, кадры-маяки входят в число кадров управления 802.11. Их тип — 0, а подтип — 0x08. Мы находим эти кадры-маяки, используя фильтр отображения в Wireshark, например:
wlan.fc.type_subtype==0x08
Если отфильтровать все, кроме кадров маяка, мы сможем определить SSID и адрес передатчика.
Чтобы отфильтровать все, кроме кадров маяка и ответа зонда, мы можем создать фильтр, используя логическое ИЛИ (||), например:
wlan.fc.type_subtype==0x08 || wlan.fc.type_subtype==0x05
Чтобы просмотреть трафик с одного MAC-адреса, мы можем использовать синтаксис wlan.addr, за которым следует MAC-адрес, например:
wlan.addr ==00:16:bc:3d:aa:57
Мы можем быть еще более конкретными и фильтровать трафик с адреса передатчика, используя фильтр wlan.ta, например:
wlan.ta ==00:16:bc:3d:aa:57
Шаг №6: Определение фреймов данных
В рамках нашего исследования нам обычно требуется просмотр кадров данных. Как уже упоминалось, кадры данных содержат данные, начиная с уровня 3 и выше.
Чтобы отфильтровать только фреймы данных, мы можем создать такой фильтр:
wlan.fc.type_subtype == 0x20
Конечно, мы можем быть очень точными и создавать фильтры, используя синтаксис Wireshark с логическими операторами ИЛИ (||), И (&&) и отрицанием (!). Мы можем отфильтровать устройства, отправляющие данные в сети Wi-Fi, с помощью следующего фильтра:
((wlan.ta == 00:16:bc:3d:aa:57) && !(wlan.fc == 0x8000)) && !(wlan.fc.type_subtype == 0x0005) && !(wlan.fc.type_subtype ==0x0004) && !(wlan.addr==ff:ff:ff:ff:ff:ff) && wlan.fc.type==2
Шаг №7 : Выявление атаки деаутентификации
В рамках типов кадров 802.11 один из них используется для деаутентификации связанных клиентов. Он может быть использован для создания эффективной атаки типа «отказ в обслуживании» (DoS) на точку доступа и является явным признаком попытки атаки методом подбора пароля с использованием aircrack-ng и других инструментов взлома Wi-Fi. Кадр деаутентификации — это кадр управления (тип 0) и подтип 0x0C. Мы можем найти эти кадры деаутентификации, создав фильтр отображения Wireshark, например:
wlan.fc.type_subtype==0x0c
Шаг №8: Другие полезные фильтры отображения
Для судебного следователя другими важными фильтрами кадров являются следующие:
Шаг №9: Расшифровка трафика
Как правило, трафик Wi-Fi шифруется. В случае WEP, WPA и WPA2-PSK используется единый ключ для всех станций. Это означает, что любой, у кого есть доступ к PSK, может прослушивать весь трафик со всех станций. Для следователя это означает, что для прослушивания всего трафика на всех станциях ему достаточно получить ключ у ИТ-специалистов.
Чтобы расшифровать трафик в Wireshark, нажмите на вкладку Правка -> Настройки -> Протокол .
Откроется окно, как показано ниже. Нажмите на вкладку «Протокол IEEE802.11».
Затем нажмите кнопку «Изменить». Чтобы получить хешированный ключ PSK для сети, перейдите по ссылке https://www.wireshark.org/tools/wpa-psk.html .
Откроется веб-страница, как показано выше. Введите пароль и SSID (SSID используется в качестве соли в хэшах PSK) и нажмите «Сгенерировать PSK». Это приложение сгенерирует ваш хэш через несколько минут.
Наконец, введите тип ключа (обычно wpa-psk) из раскрывающегося меню и введите хэш PSK из приложения.
Теперь все фреймы данных будут расшифрованы для вашего удобства просмотра их содержимого.
Краткое содержание
Если в месте предполагаемого вторжения или компрометации используется Wi-Fi, проверка и анализ имеют решающее значение. Wireshark — это инструмент, подходящий для проверки как живых, так и захваченных кадров. Имея лишь небольшое представление о структуре кадров Wi-Fi, опытный эксперт может найти и определить возможный источник вредоносной активности в сети.
В последние годы Wi-Fi стал повсеместно распространённым в наших домах и на работе. Он обеспечивает удобство и ограниченный уровень безопасности, достаточный для использования большинством людей.
При любом расследовании, где доступен Wi-Fi, вы проявите халатность, если не проведёте проверку и анализ сети Wi-Fi на предмет наличия источников компрометации. Этот анализ включает в себя поиск аномалий, которые могут указывать на компрометацию или вредоносный трафик. В этом руководстве мы рассмотрим, как правильно анализировать Wi-Fi-трафик с помощью Wireshark для обнаружения такого вредоносного трафика.
Если вы не знакомы с Wireshark, сначала прочтите это руководство .
Шаг №1: просмотр беспроводных точек доступа и клиентов
Первый шаг — составить список доступных точек доступа и клиентов. Существует множество инструментов для этого, включая Netstumbler и Kismac, но я предпочитаю использовать пакет aircrack-ng (airodump-ng), как показано ниже.
Здесь мы видим BSSID каждой точки доступа в крайнем левом столбце и другие важные технические данные в следующих столбцах, а также ESSID в крайнем правом столбце. В нижней строке мы видим каждого клиента, подключенного к точке доступа, и его MAC-адрес.
Шаг №2: Загрузите и откройте Wireshark
Если у вас в системе не установлен Wireshark (он установлен по умолчанию в Kali), сделайте это сейчас. При запуске исполняемого файла откроется экран, подобный показанному ниже. Обычно вы выбираете интерфейс для сбора данных, но в этом руководстве мы будем использовать некоторые файлы захвата.
Шаг №3: Загрузите наши тестовые pcaps
Загрузите образец pcap-файла Network_Join_Nokia_Mobile.pcap с веб-сайта Wireshark здесь.
Затем откройте pcap, используя раскрывающийся список, как показано ниже, и нажмите ссылку «Открыть».
Шаг №4: Фильтры отображения
В Wireshark есть множество встроенных фильтров, которые можно найти на вкладке «Анализ» -> «Отобразить выражение фильтра» . Практически все фильтры, которые мы будем использовать, находятся в каталоге IEEE 802.11.
Шаг №5: Найдите кадры- маяки
В пакете протоколов 802.11 есть уникальный набор кадров. Каждый из этих типов кадров содержит различные доказательства для эксперта-криминалиста.
- Кадры управления — управляют связью между станциями
- Control Frames — поддерживает управление потоком
- Кадры данных — инкапсулируют данные уровня 3 и выше.
Вот некоторые из вопросов, которые мы пытаемся решить в нашем анализе:
- Есть ли какие-нибудь маяки в нашем трафике?
- Есть ли какие-либо ответы на зонд?
- Найдите все BBBSID и SSID
- Есть ли в нашей сети неавторизованные MAC-адреса?
Как видно выше, кадры-маяки входят в число кадров управления 802.11. Их тип — 0, а подтип — 0x08. Мы находим эти кадры-маяки, используя фильтр отображения в Wireshark, например:
wlan.fc.type_subtype==0x08
Если отфильтровать все, кроме кадров маяка, мы сможем определить SSID и адрес передатчика.
Чтобы отфильтровать все, кроме кадров маяка и ответа зонда, мы можем создать фильтр, используя логическое ИЛИ (||), например:
wlan.fc.type_subtype==0x08 || wlan.fc.type_subtype==0x05
Чтобы просмотреть трафик с одного MAC-адреса, мы можем использовать синтаксис wlan.addr, за которым следует MAC-адрес, например:
wlan.addr ==00:16:bc:3d:aa:57
Мы можем быть еще более конкретными и фильтровать трафик с адреса передатчика, используя фильтр wlan.ta, например:
wlan.ta ==00:16:bc:3d:aa:57
Шаг №6: Определение фреймов данных
В рамках нашего исследования нам обычно требуется просмотр кадров данных. Как уже упоминалось, кадры данных содержат данные, начиная с уровня 3 и выше.
Чтобы отфильтровать только фреймы данных, мы можем создать такой фильтр:
wlan.fc.type_subtype == 0x20
Конечно, мы можем быть очень точными и создавать фильтры, используя синтаксис Wireshark с логическими операторами ИЛИ (||), И (&&) и отрицанием (!). Мы можем отфильтровать устройства, отправляющие данные в сети Wi-Fi, с помощью следующего фильтра:
((wlan.ta == 00:16:bc:3d:aa:57) && !(wlan.fc == 0x8000)) && !(wlan.fc.type_subtype == 0x0005) && !(wlan.fc.type_subtype ==0x0004) && !(wlan.addr==ff:ff:ff:ff:ff:ff) && wlan.fc.type==2
Шаг №7 : Выявление атаки деаутентификации
В рамках типов кадров 802.11 один из них используется для деаутентификации связанных клиентов. Он может быть использован для создания эффективной атаки типа «отказ в обслуживании» (DoS) на точку доступа и является явным признаком попытки атаки методом подбора пароля с использованием aircrack-ng и других инструментов взлома Wi-Fi. Кадр деаутентификации — это кадр управления (тип 0) и подтип 0x0C. Мы можем найти эти кадры деаутентификации, создав фильтр отображения Wireshark, например:
wlan.fc.type_subtype==0x0c
Шаг №8: Другие полезные фильтры отображения
Для судебного следователя другими важными фильтрами кадров являются следующие:
Шаг №9: Расшифровка трафика
Как правило, трафик Wi-Fi шифруется. В случае WEP, WPA и WPA2-PSK используется единый ключ для всех станций. Это означает, что любой, у кого есть доступ к PSK, может прослушивать весь трафик со всех станций. Для следователя это означает, что для прослушивания всего трафика на всех станциях ему достаточно получить ключ у ИТ-специалистов.
Чтобы расшифровать трафик в Wireshark, нажмите на вкладку Правка -> Настройки -> Протокол .
Откроется окно, как показано ниже. Нажмите на вкладку «Протокол IEEE802.11».
Затем нажмите кнопку «Изменить». Чтобы получить хешированный ключ PSK для сети, перейдите по ссылке https://www.wireshark.org/tools/wpa-psk.html .
Откроется веб-страница, как показано выше. Введите пароль и SSID (SSID используется в качестве соли в хэшах PSK) и нажмите «Сгенерировать PSK». Это приложение сгенерирует ваш хэш через несколько минут.
Наконец, введите тип ключа (обычно wpa-psk) из раскрывающегося меню и введите хэш PSK из приложения.
Теперь все фреймы данных будут расшифрованы для вашего удобства просмотра их содержимого.
Краткое содержание
Если в месте предполагаемого вторжения или компрометации используется Wi-Fi, проверка и анализ имеют решающее значение. Wireshark — это инструмент, подходящий для проверки как живых, так и захваченных кадров. Имея лишь небольшое представление о структуре кадров Wi-Fi, опытный эксперт может найти и определить возможный источник вредоносной активности в сети.