Захват PMKID для атак на WPA без клиента

Beginner
Практиковаться сейчас

Введение

В этой лабораторной работе вы изучите современный метод тестирования безопасности беспроводных сетей WPA/WPA2. В частности, вы научитесь захватывать идентификатор главного ключа пары (PMKID). PMKID является частью протокола WPA и иногда может быть запрошен у точки доступа (AP) без подключения клиента. Захват этого PMKID позволяет провести офлайн-атаку методом перебора для обнаружения пароля Wi-Fi, что часто называют атакой "без клиента" (clientless attack).

Мы будем использовать два основных инструмента: hcxdumptool для захвата PMKID из сетевого трафика и hcxtools для обработки захваченных данных. К концу этой лабораторной работы вы успешно захватите PMKID из симулированной точки доступа и сохраните его для последующего взлома.

Установка hcxtools и hcxdumptool

На этом этапе мы установим необходимые инструменты для нашей атаки. hcxdumptool — это сложный инструмент, предназначенный для захвата пакетов из сетей Wi-Fi, специально нацеленный на сбор информации, полезной для атак, такой как PMKID. hcxtools — это набор утилит, используемых для преобразования и манипулирования захваченными данными в форматы, совместимые с программным обеспечением для взлома паролей, таким как Hashcat.

Мы будем использовать менеджер пакетов apt-get для установки обоих инструментов. Откройте терминал и выполните следующую команду. Вам потребуются привилегии sudo для установки новых пакетов в системе.

sudo apt-get install -y hcxtools hcxdumptool

После завершения команды система загрузит и установит оба пакета и их зависимости. Вы увидите вывод, указывающий на распаковку и настройку пакетов.

Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following NEW packages will be installed:
  hcxdumptool hcxtools
0 upgraded, 2 newly installed, 0 to remove and ...
...
Setting up hcxtools (6.2.7-2) ...
Setting up hcxdumptool (6.2.7-2) ...

После установки инструментов мы готовы начать прослушивание сетевого трафика.

Использование hcxdumptool для прослушивания маяков AP в интерфейсе

На этом шаге мы будем использовать hcxdumptool для начала захвата пакетов Wi-Fi. Для этой лабораторной работы для вас создан виртуальный беспроводной интерфейс с именем mon0 в режиме мониторинга (monitor mode). Режим мониторинга позволяет интерфейсу захватывать весь трафик Wi-Fi в эфире, а не только тот, который адресован ему.

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

Выполните следующую команду в вашем терминале. В лабораторной среде уже работает тестовая точка доступа (Access Point) с именем TestAP, которую hcxdumptool обнаружит.

sudo hcxdumptool -i mon0 --enable_status=1
  • -i mon0: Указывает интерфейс, используемый для захвата.
  • --enable_status=1: Включает отображение статуса, которое показывает информацию об обнаруженных сетях и захваченных данных.

После выполнения команды hcxdumptool начнет сканирование. Вы увидите таблицу обнаруженных точек доступа и клиентов. Дайте ему поработать около 15-20 секунд.

start capturing (stop with ctrl+c)
INTERFACE:...............: mon0
FILTERLIST (MAC).........: 0 entries
FILTERLIST (ESSID).......: 0 entries
MAC ACCESS POINT.........: 2a:50:e4:4c:a8:75 (incremented on every new client)
MAC CLIENT...............: 2e:50:e4:4c:a8:75 (incremented on every new client)
REPLAYCOUNT..............: 64326
ANONCE...................: 2a5d171a2a5d171a2a5d171a2a5d171a2a5d171a2a5d171a2a5d171a2a5d171a

[21:12:30 - 001] [FOUND ACCESS POINT: 02:00:00:00:01:00 (TestAP)]
...

Через некоторое время вы можете остановить процесс захвата, нажав Ctrl+C в терминале.

Определение хэша PMKID в выводе инструмента

На этом шаге вы научитесь определять, когда PMKID был успешно захвачен. Пока hcxdumptool работает, он активно опрашивает точки доступа, чтобы увидеть, ответят ли они PMKID. Когда это удается, он выводит четкое сообщение на консоль.

Если вы дали выполниться команде из предыдущего шага, вы должны были увидеть строку, похожую на приведенную ниже. Эта строка является подтверждением того, что у нас есть то, что нам нужно.

[21:12:32 - 001] [FOUND PMKID] 02:00:00:00:01:00 -> 2e:50:e4:4c:a8:75

Разберем этот вывод:

  • [FOUND PMKID]: Это ключевой индикатор. Он означает, что hcxdumptool успешно запросил и получил PMKID.
  • 02:00:00:00:01:00: Это BSSID (MAC-адрес) точки доступа (TestAP).
  • -> 2e:50:e4:4c:a8:75: Это MAC-адрес станции (нашего виртуального клиента), который hcxdumptool использовал для отправки запроса.

Увидев это сообщение, вы успешно захватили PMKID. На этом шаге вам не нужно выполнять никаких новых команд; цель состоит в том, чтобы понять вывод из предыдущего шага.

Понимание

Сохранение хэша PMKID в файл для взлома

На этом заключительном шаге мы снова запустим hcxdumptool, но на этот раз сохраним захваченные данные, содержащие PMKID, в файл. Этот файл затем можно будет использовать с другими инструментами, такими как hcxpcapngtool и hashcat, для офлайн-взлома.

Мы используем флаг -o для указания выходного файла. Стандартным форматом для таких захватов является pcapng.

Выполните следующую команду. Она начнет захват и сохранит все найденные данные в файл с именем captured_pmkid.pcapng в вашем текущем каталоге (~/project).

sudo hcxdumptool -i mon0 -o captured_pmkid.pcapng --enable_status=1

Позвольте инструменту работать до тех пор, пока вы снова не увидите сообщение [FOUND PMKID]. Как только вы его увидите, вы можете остановить захват с помощью Ctrl+C.

После остановки инструмента проверьте, был ли создан файл, перечислив содержимое каталога:

ls -l

В выводе вы должны увидеть файл captured_pmkid.pcapng:

total 8
-rw-r--r-- 1 root  root  1060 Dec 12 21:15 captured_pmkid.pcapng
-rw-r--r-- 1 labex labex  159 Dec 12 21:10 hostapd.conf

Этот файл теперь содержит PMKID из сети TestAP. Следующим логичным шагом в реальной атаке было бы преобразование этого файла в формат хэша и использование инструмента для взлома паролей для поиска исходного пароля.

Резюме

В этой лабораторной работе вы успешно освоили основы атаки на WPA/WPA2 без клиента путем захвата PMKID.

Вы начали с установки необходимых пакетов hcxtools и hcxdumptool. Затем вы использовали hcxdumptool для прослушивания на интерфейсе в режиме мониторинга, идентифицировали сообщение [FOUND PMKID], подтверждающее успешный захват, и поняли ключевое теоретическое преимущество этого метода по сравнению с традиционными атаками, основанными на рукопожатиях. Наконец, вы сохранили захваченный PMKID в файл pcapng, подготовив его к следующему этапу аудита безопасности, которым является офлайн-взлом паролей. Этот навык является ценным дополнением к инструментарию любого специалиста по тестированию безопасности беспроводных сетей.