Як зламати Wi-Fi

  1. Терміни Wi-Fi мереж
  2. Що необхідно для злому Wi-Fi
  3. Переклад Wi-Fi адаптера в режим монітора
  4. Що таке рукостискання (хендшейк)
  5. Огляд Wi-Fi мереж
  6. Виконання атаки деаутентіфікація
  7. Атака по словнику на пароль Wi-Fi
  8. висновок

Використання бездротових мереж Wi-Fi в даний час стало дуже поширеним. Багато користувачів замислюються про безпеку своїх мереж і комп'ютерів, іноді у них виникають питання, як зламують Wi-Fi, наскільки ця загроза реальна?

У цій замітці я пропоную звичайним користувачам, можливо, далеким від питань аудиту безпеки бездротових мереж Wi-Fi, подивитися на їх Wi-Fi мережу очима хакера і навіть задатися питанням, як зламати Wi-Fi?

Хоча далі матеріал викладено максимально простою мовою, нам не обійтися без понять, специфічних для аудиту Wi-Fi.

Терміни Wi-Fi мереж

Точка Доступу (також Access Point), скорочено ТД, AP - пристрій, який забезпечує роботу мережі Wi-Fi, до нього підключаються Клієнти. Найчастіше точками доступу є роутери.

Клієнт (станція) - пристрій, який підключається до Точці Доступу. Найчастіше це комп'ютери, ноутбуки, мобільні телефони і т.д.

ESSID і SSID - це імена бездротових Wi-Fi мереж - саме їх ви бачите, коли вибираєте до якої мережі підключитися. Строго кажучи, ESSID і SSID це не одне і те ж, але в аудиті Wi-Fi ці терміни часто використовуються як взаємозамінні. На скріншоті нижче ESSID (іменами мереж) є MiAl, wifi88 і т.д .:

BSSID - це MAC-адресу бездротової карти. Приклад MAC-адреси: 50: 46: 5D: 6E: 8C: 20. Більш докладно про це розповідається в замітці « Як дізнатися MAC-адресу і як по MAC-адресу дізнатися виробника ».

Рукостискання (також хендшейк, handshake) - дані, якими обмінюються Станція і Точка Доступу в момент створення Wi-Fi з'єднання. Ці дані містять інформацію, що дозволяє підібрати пароль від мережі Wi-Fi.

Брут-форс (також повний перебір) - метод атаки на пароль, що полягає в переборі всіх можливих варіантів пароля. Вимагає багато часу і обчислювальних ресурсів.

Перебір по словнику (атака за словником) - метод атаки на пароль, що полягає в переборі часто зустрічаються варіантів пароля. Має гарне співвідношення витрачених ресурсів до отриманих результатів.

Онлайн перебір пароля Wi-Fi - метод підбору пароля, який полягає в підключенні до Точці Доступу з різними кандидатами в паролі. Практично не застосовується через вкрай низьку швидкість перебору.

Офлайн перебір пароля Wi-Fi - метод підбору пароля, який полягає в захопленні Рукостискання і підборі такого пароля, який би відповідав цьому рукостискання. Цей підбір не вимагає підключення до Точці Доступу і виконується на багато порядків швидше, ніж онлайн перебір. Також він може виконуватися на обчислювальних потужностях відеокарт, що збільшує швидкість перебору ще на кілька порядків.

WPA і WPA2 - технологія захищеного доступу до Wi-Fi, прийшла на зміну застарілої технології WEP.

Бездротова Wi-Fi карта (або безпровідною Wi-Fi адаптер) - будь-яка мережева карта, здатна підключатися до мережі Wi-Fi. У ноутбуках і телефонах вони вбудовані всередину корпусу, в настільних комп'ютерах зазвичай являють собою зовнішній пристрій, що підключається по USB.

Режим монітора (Monitor Mode) - властивість деяких бездротових адаптерів приймати пакети даних, які призначені не тільки для них, але і для інших бездротових пристроїв.

Мережевий інтерфейс - ім'я, умовне позначення в Linux мережевих карт / адаптерів.

Канал мережі Wi-Fi - умовне цифрове позначення частоти, на якій в даний момент працює Точка Доступу.

Що необхідно для злому Wi-Fi

  • Комп'ютер, на який можна встановити Linux
  • Спеціалізоване програмне забезпечення, для Linux воно є вільним (тобто поширюється безкоштовно і у нього відкритий вихідний код)
  • Бездротова Wi-Fi карта, яка підтримує режим монітора. список актуальних карт.
  • Відповідні знання та навички - це ви знайдете в даній статті.

Wi-Fi карти з підтримкою режиму монітора є у вільному продажу, їх ціна відповідає цінам інших бездротовим картками з аналогічними характеристиками. У моєму ноутбуці вбудована карта виявилася з підтримкою режиму монітора - тобто це не є рідкістю і їх можуть дістати будь-які бажаючі.

Спеціалізоване ПО для аудиту Wi-Fi мереж, як уже було сказано, поширюється вільно, за замовчуванням воно присутнє в спеціалізованих дистрибутивів, наприклад, в Kali Linux (За посиланням загальна інформація та інструкції по установці).

Як можна переконатися, всі компоненти необхідні для злому Wi-Fi є досить доступними.

Всі подальші дії виконуються в Kali Linux.

Переклад Wi-Fi адаптера в режим монітора

За замовчуванням бездротові адаптери знаходяться в «керованому» (managed) режимі. Цей режим дозволяє підключатися до Точці Доступу в якості звичайного Клієнта.

Режим монітора (monitor) призначений для аналізу Wi-Fi мереж. В цьому режимі бездротова карта приймає фрейми (їх ще називають кадри) від будь-яких джерел, що знаходяться на тому ж каналі.

Оскільки нам потрібно захопити рукостискання, яке складається з даних, які Станція відправляє Точці Доступу і Точка Доступу відправляє Станції (тобто які ні на якому етапі не призначені для нас), то нам необхідно перевести нашу Wi-Fi карту в режим монітора, щоб вона була здатна побачити ці дані і зберегти їх для подальшої обробки.

Щоб ввести команди для перекладу Wi-Fi адаптера в режим монітора, нам потрібно дізнатися ім'я бездротового інтерфейсу. Для цього відкрийте консоль і введіть команду:

sudo iw dev

Ім'я бездротового інтерфейсу зазначено в рядку зі словом Interface, тобто в моєму випадку ім'ям є wlan0. Запам'ятовуємо це значення, оскільки в подальшому воно нам знадобитися.

Режим монітора не є чимось звичайним для операційної системи, тому деякі програми без попиту, мовчки перекладають Wi-Fi адаптер в керований режим. Нам це може перешкодити, тому наступними двома командами ми закриваємо програми, які можуть нам перешкодити:

sudo systemctl stop NetworkManager sudo airmon-ng check kill

Тепер, нарешті, ми можемо перевести бездротову карту в режим монітора. Для цього виконайте послідовність команд

sudo ip link set <ИНТЕРФЕЙС> down sudo iw <ИНТЕРФЕЙС> set monitor control sudo ip link set <ИНТЕРФЕЙС> up

замінивши <ИНТЕРФЕЙС> на дійсне ім'я вашого бездротового інтерфейсу (у мене це wlan0):

sudo ip link set wlan0 down sudo iw wlan0 set monitor control sudo ip link set wlan0 up

Здається, що нічого не сталося, але набравши команду

sudo iw dev

Ми побачимо приблизно наступне:

Ми побачимо приблизно наступне:

У ній рядок type monitor говорить про те, що наша бездротова карта в режимі монітора.

Що таке рукостискання (хендшейк)

Як вже було сказано, рукостискання - це дані, які в кілька етапів передаються між Станцією і Точкою доступу в той момент, коли Станція підключається до Точці Доступу. Це означає, що для захоплення рукостискання нам потрібно переключитися на канал, на якому працює Точка Доступу, для прослуховування радіосигналів і дочекатися моменту, коли Станція підключається до неї. Оскільки очікування може затягнутися, що застосовується прийом, званий Атака Деаутентіфікація, який полягає в примусово скиданні Wi-Fi з'єднання між Точкою Доступу та Станцією. Відразу після такого відключення, Станція намагається підключитися знову, а ми в цей момент захоплюємо рукостискання.

На жаль, цей метод не працює, якщо до Точці Доступу ніхто не підключений.

Огляд Wi-Fi мереж

Щоб атакувати Wi-Fi мережу нам потрібно знати деякі її характеристики. Щоб отримати список всіх доступних в діапазоні досяжності Wi-Fi мереж виконайте команду:

sudo airodump-ng wlan0

Зверніть увагу, що якщо у вас інше ім'я бездротового інтерфейсу, то замість wlan0 вам потрібно вписати це ім'я.

Описана атака може бути застосована тільки для мереж із захистом WPA2 або WPA - таких переважна більшість.

Буде виведений схожий список мереж:

Коли ви побачите в списку мережу, яку хочете атакувати, то зупиніть програму, для цього натисніть CTRL + c.

Припустимо, мене цікавить мережу з ESSID (ім'ям) dlink. Як видно з скріншоту, її характеристиками є: BSSID - це 00: 1E: 58: C6: AC: FB, вона використовує WPA2, працює на шостому каналі. Також нульове значення #Data (захоплені дані, що відправляються це ТД) дозволяє припустити, що до неї підключена одна або більше станцій.

Для захоплення рукостискання використовується команда такого вигляду:

sudo airodump-ng -c КАНАЛ --bssid MAC_АДРЕС -w Фото ИНТЕРФЕЙС

де:

  • КАНАЛ - це канал, на якому працює ТД
  • MAC_АДРЕС - це BSSID атакується ТД
  • Фото - ім'я файлу, куди буде записано рукостискання
  • ІНТЕРФЕЙС - ім'я бездротового інтерфейсу в режимі монітора

Для моїх даних команда виглядає так:

sudo airodump-ng -c 6 --bssid 00: 1E: 58: C6: AC: FB -w capture wlan0

На наступному скріншоті знову видно, що цікавить нас ТД, а також тепер видно розділ зі станціями:

У повному списку ТД розділ зі станціями також був присутній, але йшов за нижній край екрану, тому на скріншот не потрапив.

Для станції ми в поле BSSID ми можемо побачити значення, яке відповідає BSSID точки доступу, тобто 00: 1E: 58: C6: AC: FB, це означає, що в даний момент ця Станція підключена до цікавить нас ТД. Тепер є два варіанти:

1) чекати поки Станція від'єднатися і знову підключиться до ТД з природних причин

2) виконати атаку деаутентіфікація для прискорення процесу

Виконання атаки деаутентіфікація

Для виконання деаутентіфікаціі, не припиняючи записи трафіку, запущеного на попередньому етапі, відкрийте нове вікно консолі і введіть туди команду виду:

sudo aireplay-ng -0 3 -a MAC_АДРЕС ИНТЕРФЕЙС

де:

  • MAC_АДРЕС - це BSSID атакується ТД
  • ІНТЕРФЕЙС - ім'я бездротового інтерфейсу в режимі монітора

У моєму випадку команда виглядає так:

sudo aireplay-ng -0 3 -a 00: 1E: 58: C6: AC: FB wlan0

Програма виведе приблизно наступне:

8:17:30 Waiting for beacon frame (BSSID: 00: 1E: 58: C6: AC: FB) on channel 6 NB: this attack is more effective when targeting a connected wireless client (-c <client's mac>). 8:17:30 Sending DeAuth to broadcast - BSSID: [00: 1E: 58: C6: AC: FB] 8:17:30 Sending DeAuth to broadcast - BSSID: [00: 1E: 58: C6: AC: FB] 8:17:31 Sending DeAuth to broadcast - BSSID: [00: 1E: 58: C6: AC: FB]

А в правому верхньому куті екрану для захоплення даних з'явиться новий запис:

WPA handshake: 00: 1E: 58: C6: AC: FB

Вона означає, що рукостискання успішно захоплено.

Атака по словнику на пароль Wi-Fi

Тепер нам потрібно запустити перебір даних.

Підготуємо словник:

cp /usr/share/wordlists/rockyou.txt.gz. gunzip rockyou.txt.gz cat rockyou.txt | sort | uniq | pw-inspector -m 8 -M 63> newrockyou.txt

Файл словника в цьому випадку називається newrockyou.txt.

Щоб дізнатися ім'я захопленого рукостискання виконайте команду:

ls -l capture *

При цьому буде виведено щось на кшталт такого (записів може бути більше, якщо ви неодноразово захоплювали рукостискання):

-rw-r - r-- 1 root root 73164 Вересня 30 8:24 capture-01.cap -rw-r - r-- 1 root root 478 Вересня 30 8:24 capture-01.csv -rw-r --r-- 1 root root 583 Вересня 30 8:24 capture-01.kismet.csv -rw-r - r-- 1 root root 2766 Вересня 30 8:24 capture-01.kismet.netxml

netxml

Нас цікавить тільки файл capture-01.cap - саме він містить рукостискання.

Для перебору по словнику використовується наступна команда:

aircrack-ng -w ФАЙЛ_СЛОВАРЯ ФАЙЛ_ЗАХВАТА

Отже, в моєму випадку точна команда наступна:

aircrack-ng -w newrockyou.txt capture-01.cap

Ця команда запускає підбір пароля, в процесі перебору показується наступне вікно:

Пароль підібраний:

Про це говорить запис KEY FOUND! [Pattayateam], в якій паролем від Wi-Fi мережі є pattayateam. Використовуючи цей пароль можна підключитися до бездротової точки доступу з будь-якого пристрою (комп'ютера, телефону) як це роблять інші легітимні користувачі.

висновок

Як можна переконатися, злом Wi-Fi не є чимось виключно складним, хоча і вимагає знання деяких команд Linux. Тут показаний тільки один приклад з безлічі варіацій атаки на Wi-Fi. Якщо вас зацікавила тема аудиту бездротових мереж, то зверніться до книги « Злом Wi-Fi мереж з Kali Linux ».

Пов'язані статті:

Багато користувачів замислюються про безпеку своїх мереж і комп'ютерів, іноді у них виникають питання, як зламують Wi-Fi, наскільки ця загроза реальна?