Categories: SecurityWi-Fi

Взлом Wi-Fi сети WPA/WPA2 – перехват handshake – часть 1

В этой статье речь пойдет о том, как взломать Wi-Fi сеть с шифрованием WPA/WPA2 путем перехвата handshake. Но для начала теория.

Теория WPA/WPA2

WPA (или как иногда называют WPA v1) обычно использует алгоритм шифрования TKIP. TKIP был разработан для повышение шифрования WEP, не требующий изменения железа для работы. WPA2 в обязательном порядке использует алгоритм шифрования AES-CCMP, который более мощный и надежный по сравнению с TKIP.

WPA и WPA2 позволяют использовать либо EAS-bases аутентификацию (RADIUS Server “Enterprise”) или Pre-Shared Key (PSK) “Personal”-based аутентификацию.

Шифрования WPA/WPA2 PSK уязвимы к атакам по словарю. Для осуществления этой атаки, необходимо получить 4-way WPA handshake между wifi-клиентом и точкой доступа (АР), а также словарь содержащий парольную фразу.

WPA/WPA2 PSK работает следующим образом: он вытекает из ключа предварительной сессии, которая называется Pairwise Transient Key (PTK). PTK, в свою очередь использует Pre-Shared Key и пять других параметров — SSIDAuthenticator Nounce (ANounce), Supplicant Nounce (SNounce), Authenticator MAC-address (MAC-адрес точки доступа) и Suppliant MAC-address (МАС-адрес wifi-клиента). Этот ключ в дальнейшем использует шифрование между точкой доступа (АР) и wifi-клиентом.

Злоумышленник, который в этот момент времени прослушивает эфир, может перехватить все пять параметров (см. предыдущий параграф). Единственной вещью, которой не владеет злодей это – Pre-Shared key. Давайте выясним, как создается Pre-Shared key.

Pre-Shared key получается/создается благодаря использованию парольной фразы WPA-PSK, которую отправляет пользователь, вместе с SSID. Комбинация этих двух параметров пересылается через Password Based Key Derivation Function (PBKDF2), которая выводит 256-bit’овый общий ключ.

В обычной/типичной WPA/WPA2 PSK атаке по словарю, злоумышленник будет использовать словарь с программой/инструментом. Программа будет выводить 256-bit’овый Pre-Shared Key для каждой парольной фразы и будет использовать ее с другими параметрами, которые были описаны в создании PTK. PTK будет использоваться для проверки Message Integrity Check (MIC) в одном из пакетов handshake. Если они совпадут, то парольная фраза в словаре будет верной, в противном случае наоборот (неверной). Именно так работает WPA/WPA2 PSK.

Практика

Важно: Не забываем о том, что нужно выбрать правильный wifi-клиент! Для этого внимательно смотрим питыподдерживаемых чипсетов. В качестве клиента я использую ALFA AWUS036H.

[ad name=»Alfa»]

После того как куплено/выбрано “правильное” железо, приступаем к его настройке. Для начала выполним команду airmon-ng, чтобы узнать какие интерфейсы имеются в системе:

$ sudo airmon-ng

У меня ALFA определяется, как интерфейс wlan2. Переводим wifi-клиента в режим монитора:

$ sudo airmon-ng start wlan2

Создался виртуальный интерфейс mon0, с ним мы и будем работать.

Теперь сканируем эфир с помощью airodump-ng:

$ sudo airodump-ng mon0

Так как мы все “хорошие”, будем тестировать все на наших АР. В моем случае это TestWireless. Переключаемся на нее:

$ sudo airodump-ng -w handshaketest -c 1 --bssid BC:AE:C5:71:D3:17  mon0
  • -w – название дамп-файла
  • -c – номер канала
  • –bssid – MAC-адрес точки доступа

Видим, что к АР подключен клиент. Это то, что нам нужно, потому знаем – перехват handshake возможен тогда и только тогда, когда к АР подключен клиент.

Теперь оставляем окно терминала где работает airodump-ng открытым. Открываем новое окно, в котором пишем:

$ sudo aireplay-ng -0 3 -a BC:AE:C5:71:D3:17  -c 70:F1:A1:72:b4:25 mon0
  • -0 — деаутентификация
  • 3 — количество пакетов
  • -a — MAC-адрес точки доступа (АР)
  • -c — MAC-адрес клиента, к которому применяется деаутентификация
[ad name=»MiBand2″]

Когда команда выполнилась, переходим в первое окно терминала (airodump-ng). Красным выделен перехваченныйhandshake. У вас должно быть тоже самое.

Все, теперь можно работать с aircrack-ng.

Для того, чтобы расшифровать handshake нам нужен будет словарь. Помним о том, что если пароля в словаре не будет, то и расшифровать не получится. Очень часто “домашние” пользователи ставят численные пароли. Так что начинайте с них.

Итак, словарь создали или скачали. Теперь приступаем к расшифровке. Но сначала еще раз проверим, перехватили ли мы handshake. Для этого вводим след. команду:

$ sudo aircrack-ng handshaketest-01.cap

Все ОК. Теперь приступаем к расшифровке. Выполним команду, ниже:

$ sudo aircrack-ng -w pass.txt -0 handshaketest-01.cap
  • -w — путь к словарю
  • -0 – использовать цвет

Вот и все. Как всегда ничего сложного!

Другие материалы по теме:

Click to rate this post!
[Total: 134 Average: 3.3]
cryptoworld

Специалист в области кибер-безопасности. Работал в ведущих компаниях занимающихся защитой и аналитикой компьютерных угроз. Цель данного блога - простым языком рассказать о сложных моментах защиты IT инфраструктур и сетей.

View Comments

Recent Posts

Лучший адаптер беспроводной сети для взлома Wi-Fi

Чтобы взломать сеть Wi-Fi с помощью Kali Linux, вам нужна беспроводная карта, поддерживающая режим мониторинга…

11 месяцев ago

Как пользоваться инструментом FFmpeg

Работа с консолью считается более эффективной, чем работа с графическим интерфейсом по нескольким причинам.Во-первых, ввод…

11 месяцев ago

Как создать собственный VPN-сервис

Конечно, вы также можете приобрести подписку на соответствующую услугу, но наличие SSH-доступа к компьютеру с…

11 месяцев ago

ChatGPT против HIX Chat: какой чат-бот с искусственным интеллектом лучше?

С тех пор как ChatGPT вышел на арену, возросла потребность в поддержке чата на базе…

11 месяцев ago

Разведка по Wi-Fi и GPS с помощью Sparrow-wifi

Если вы когда-нибудь окажетесь в ситуации, когда вам нужно взглянуть на спектр беспроводной связи, будь…

11 месяцев ago

Как обнаружить угрозы в памяти

Elastic Security стремится превзойти противников в инновациях и обеспечить защиту от новейших технологий злоумышленников. В…

11 месяцев ago