September 19

Как взломать WPS Wi-Fi используя скрипт OneShot

Взлом WPS (Wi-Fi Protected Setup) на маршрутизаторах возможен благодаря уязвимости Pixie Dust. Скрипт OneShot позволяет автоматизировать этот процесс и получить доступ к защищенной Wi-Fi сети, используя недостатки в реализации криптографических алгоритмов. Этот метод взлома не требует знаний в области сетевой безопасности и может быть выполнен даже новичками. В статье мы рассмотрим, как именно использовать скрипт OneShot для взлома WPS.

Пример взлома WPS Wi-Fi с помощью скрипта OneShot

У нас есть точ­ка доступа Wi-Fi, которая называется plcrouter (параметр SSID), и которая исполь­зует не самый надеж­ный механизм аутен­тифика­ции — WPS (Wi-Fi Protected Setup). Этот стан­дарт раз­работан для упро­щения нас­трой­ки бес­про­вод­ной сети и поз­воля­ет под­клю­чить­ся к сети с помощью вось­миз­начно­го ПИН‑кода (при этом вось­мая циф­ра — это чек‑сум­ма). Но про­токол WPS уяз­вим к нес­коль­ким ата­кам, самая популяр­ная из которых — Pixie Dust.

Pixie Dust — уязвимость в некоторых маршрутизаторах, использующих WPS (Wi-Fi Protected Setup). Она позволяет злоумышленникам получить доступ к беспроводной сети, взломав PIN-код WPS. Атака Pixie Dust работает за счет недостатков в реализации криптографических алгоритмов, что делает ее эффективной против уязвимых устройств.

Од­но из спе­циаль­ных сооб­щений (M3), которое роутер отправ­ляет кли­енту, содер­жит осо­бые хеши E-Hash1 и E-Hash2. Эти хеши вычис­ляют­ся сле­дующим обра­зом.

12E-Hash1 = HMAC-SHA-256(authkey) (E-S1 | PSK1 | PKE | PKR)E-Hash2 = HMAC-SHA-256(authkey) (E-S2 | PSK2 | PKE | PKR)

  • PSK1 — пер­вые четыре циф­ры WPS PIN, PSK2 — осталь­ные четыре циф­ры WPS PIN;
  • E-S1 и E-S2 — слу­чай­ные 128-бит­ные чис­ла;
  • PKE — пуб­личный ключ роуте­ра;
  • PKR — пуб­личный ключ кли­ента.

Та­ким обра­зом, неиз­вес­тны зна­чения E-S1 и E-S2, PSK1 и PSK2. При этом если мы узна­ем чис­ла E-S1 и E-S2, то смо­жем лег­ко подоб­рать PIN. Мно­гие роуте­ры исполь­зуют в качес­тве этих парамет­ров пос­тоян­ные чис­ла, а некото­рые и вов­се зна­чение 0, что дела­ет воз­можным быс­трый под­бор WPS PIN.

Статья в образовательных для обучения этичных хакеров. При написании статьи использовались личные устройства автора. Использование OneShot для несанкционированного доступа к чужим сетям без письменного разрешения является незаконным. Ни редакция spy-soft.net, ни автор не несут ответс­твен­ности за ваши действия.

Для выпол­нения ата­ки вос­поль­зуем­ся скрип­том OneShot, которо­му нуж­но передать BSSID (уникальный идентификатор, присваиваемый каждой точке доступа Wi-Fi в беспроводной сети.) точ­ки дос­тупа.

python3 oneshot.py -i wlan0 -b 02:00:00:00:01:00 -K

Ре­зуль­тат работы скрип­та для взлома WPS

В течение пяти минут получа­ем валид­ный PIN и пароль от точ­ки дос­тупа. Что­бы под­клю­чить­ся к Wi-Fi из тер­минала, будем исполь­зовать ути­литу wpa_supplicant, но спер­ва для нее нуж­но сде­лать файл с нас­трой­ками. А для это­го есть дру­гая ути­лита — wpa_passphrase.

wpa_passphrase plcrouter 'NoWWEDoKnowWhaTisReal123!' > plcrouter.configwpa_supplicant -B -c plcrouter.config -i wlan0

Под­клю­чение к точ­ке дос­тупа Wi-Fi

Хоть мы и под­клю­чились к точ­ке дос­тупа, но IP-адрес нам не дали.

Ин­форма­ция о сетевых интерфей­сах

Наз­начим адрес самос­тоятель­но. Исполь­зуем стан­дар­тную для роуте­ров Wi-Fi сеть 192.168.1.0.

ifconfig wlan0 192.168.1.22 netmask 255.255.255.0

Ин­форма­ция о сетевых интерфей­сах

Ос­талось под­клю­чить­ся к роуте­ру. Пароль у нас не зап­росят.

ssh [email protected]

На этом все. Теперь вы знаете, как легко взломать Wi-Fi WPS. Несмотря на то, что его используют редко, вы все еще можете встретить сети с включенным WPS.