Сумна правда про безпеку домашнього Wi-Fi

Ви купуєте дорогий роутер, встановлюєте складний пароль і нікому його не повідомляєте, але все одно помічаєте, що швидкість часом якось просідає… Гірше, тільки якщо ви виявите крадіжку особистих даних, заблокований комп’ютер та інші принади. Незважаючи на антивірус і інший захист.

Виявляється, домашній Wi-Fi далеко не так захищений, як ви думаєте. Розбираємося, чому.

Уразливий WPA2

Сучасні точки доступу Wi-Fi захищені в основному протоколом WPA2. У ньому реалізовано CCMP і шифрування AES. CCMP (Counter Mode with Cipher Block Chaining Message Authentication Code Protocol) – це протокол блочного шифрування з кодом автентичності повідомлення (MAC) та режим зчеплення блоків і лічильника, який був створений для заміни більш слабкого TKIP (використовувався в попередниках, WPA і WEP). Власне, CCMP використовує AES (Advanced Encryption Standard) – симетричний алгоритм блочного шифрування (розмір блоку 128 біт, ключ 128/192/256 біт).

Об’єктивно кажучи, WPA2 – досить старий протокол

Його розробили на початку 2000-х, а з 13 березня 2006 року підтримка WPA2 стала обов’язковою.

Відповідно, і вразливостей в протоколі знайдено чимало. Наприклад, ще 23 липня 2010 року опублікували дані про діри під назвою Hole196. Використовуючи її, авторизовавшийся в мережі користувач може застосовувати свій закритий ключ для розшифровки даних інших користувачів і підміняти MAC-адреси, а значить, використовувати ресурси зламаної мережі для атак на різні веб-ресурси без ризику бути виявленим. Без всякого брутфорса і злому ключів!

Патчі, треба сказати, випустили не всі. А далі пішло-поїхало…

Все, що написано далі, ми розповідаємо виключно в ознайомлювальних цілях. Можете перевірити на своєму домашньому Wi-Fi

Злом WPA2

Сьогодні Wi-Fi c WPA2 в основному зламують брутфорсом і атакою по словнику. Хакери моніторять бездротову карту, сканують ефір, відстежують і записують потрібні пакети.

Після цього виконується деавторизация клієнта. Це потрібно для хэндшейка – захоплення початкового обміну пакетами. Можна, звичайно, почекати, поки клієнт підключиться. Але цього може і не відбутися, принаймні, в найближчі кілька хвилин.

Після деавторизации зломщикам навіть не потрібно знаходитися поблизу від потрібної точки доступу. Подальша атака проводиться офлайн через спеціальний додаток, що використовує файл з хэндшейком.

Для злому WPA2 часто використовують утиліту Kismet для Linux. Після вибору потрібної мережі визначається канал, на якому вона знаходиться. Потім в меню Kismet -> Config Channel потрібно вказати в мережевій карті цей номер каналу: вибрати пункт Lock у вікні, що з’явилося, вказати номер у поле Chan/Freq і натиснути Change.

Після цього потрібно вибрати бажану мережу і натиснути Enter. Kismet запустить збір пакетів. Якщо їх кількість почне рости, залишається чекати, поки в мережі запишеться Handshake. Його наявність можна перевірити утилітою aircrack-ng – командою aircrack-ng имя_файла_дампа.

Файли з захопленими пакетами мають розширення .pcapdump.

Після цього потрібно запустити брутфорс. Бажано заздалегідь знайти файл з паролями. Брутфорс проводиться командою aircrack-ng –b XX:XX:XX:XX:XX:XX –w passwords.txt /tmp/*.pcapdump, де

  • XX:XX:XX:XX:XX:XX – BSSID мережі,
  • passwords.txt – текстовий файл з паролями для брутфорса,
  • /tmp/*.pcapdump – адреса розміщення файлос з захопленими пакетами.

Інший варіант – перебір всіх паролів, наприклад, утилітою John the Ripper. Ймовірність у цьому випадку 100%, але до фіналу можуть пройти роки.

Атака KRACK

Атака перевстановлення ключа (Key Reinstallation Attack) на WPA2 дозволяє скинути nonce. Після цього можна відтворити пакети, які були відправлені раніше, і розшифрувати їх.

Атаку стали широко використовувати в 2016 році. Бельгійські дослідники Метті Ванхуф і Франк Писсенс першими публічно розкрили механізм її дії.

KRACK дозволяє прослуховувати і підробляти дані, які передаються між точкою доступу і клієнтом (смартфоном, планшетом, комп’ютером тощо).

Для генерації ключа в мережах Wi-Fi використовується схема 4-етапного рукостискання (4-way-handshake). Процес стартує, як тільки новий клієнт підключається до Wi-Fi. Отриманий ключ використовують для шифрування пакетів даних.

В атаці KRACK хакер змушує жертву перевстановити ключ на третьому етапі хэндшейка. З-за перевстановлення ключа шифрування послаблюється. Хакер дізнається ключ і починає прослуховувати дані. Небезпечніше всього це для систем Linux і Android 6.0 – за умовчанням в них переустановлюється нульовою ключ.

З допомогою експлуатації уразливості можна прослуховувати трафік і викрадати з нього паролі, HTTP-куки та ін., дешифрувати пакети TCP SYN, встановлювати лічильник пакетів і викрадати сеанс TCP. Фактично вразливість дає можливість провести атаку «людина посередині» і вставляти шкідливі модулі в HTTP дані.

Зміна пароля до Wi-Fi від такої атаки не допоможе. Вирішити проблему зможе лише оновлення прошивки. Випуск патчів від KRACK відстежує, приміром, Github.

Злом WPS

Багато сучасні роутери підтримують протокол Wi-Fi Protected Setup, який використовується для напівавтоматичного підключення до бездротової мережі Wi-Fi. Він був розроблений для спрощення підключення до WPS. Спростив, звичайно, процес і для зловмисників теж.

У PIN-коді WPS, який дозволяє підключитися до мережі, вісім знаків. Причому восьмий символ є контрольною сумою.

Уразливість в WPS-протоколі дозволяє перевіряти PIN-коди блоки: перший блок включає чотири цифри, другий – три (восьма цифра обчислюється). У підсумку маємо 9999 + 999 = 10998 варіантів PIN-коду.

Для злому WPS підходить утиліта Reaver. Вона є, приміром, в дистрибутиві Kali Linux.

Алгоритм дій простий:

  1. Переклад адаптера у режим моніторингу командою airmon-ng start wname, де wname – ім’я адаптера.
  2. Аналіз відповіді команди – в ньому вказується ім’я віртуального інтерфейсу (найчастіше mon0).
  3. Сканування Wi-Fi-діапазону на наявність точок з WPS (хоча б одна в багатоквартирному будинку або торговому центрі точно знайдеться) командою wash -i mon
  4. Аналіз BSSID (Basic Service Set Identification) з першої колонки – його використовують в якості ідентифікатора точки доступу.
  5. Перебір паролів командою reaveri mon0 –vvb 64:XX:XX:XX:XX:F4, де
  • -i mon0 – це інтерфейс,
  • -b 64:XX:XX:XX:XX:F4 це BSSID атакується точки,
  • -vv необов’язковий ключ, який включає детальний висновок.

Процес перебору може зайняти кілька годин. Його результат – підібраний PIN-код і ключ безпеки мережі.

Альтернативи – додатки WPS Connect, WIFI WPS WPA TESTER для Android та ін. З iPhone складніше, тому що з офіційного App Store додатки швидко видаляють або відхиляють на старті, а з неофіційних магазинів ви встановлюєте програми на свій страх і ризик.

Щоб боротися з цією атакою, потрібно відключити WPS на роутера або точки доступу. Тоді зламувати буде нічого.

Наслідки атак

Найпростіше – використовувати вашу Wi-Fi-мережа для отримання безкоштовного інтернет-доступу. «Симптоми»: падіння швидкості, перевищення лімітів трафіку, збільшення пінгу.

Хакери можуть використовувати ваш Wi-Fi для вчинення протиправних дій. Приміром, злому мереж і акаунтів, розсилки спаму і т. п. Якщо правоохоронні органи відстежать злочинців до вашого IP, доведеться пояснювати. Ймовірність невелика, але неприємно.

Нарешті, найстрашніше – якщо хакери вирішать перехопити і розшифрувати ваш трафік. І отримати дані, які ви не хотіли б комусь надавати: паролі від соціальних мереж і банківських аккаунтів, інтимні фото, особисте листування.

Нарешті, є можливість здійснення атаки «людина посередині». Можна перехоплювати сеанси TCP, виконувати вставку інформації в сеанси HTTP, відтворювати адресні або широкомовні пакети.

Резюме

Галактика в небезпеці. Передача даних в звичайних домашніх Wi-Fi мережах, не кажучи вже про публічних, небезпечна. Перше, що варто зробити – відключити WPS, якщо він у вас включений. І не використовувати в якості пароля номер свого мобільного або кличку вихованця.

Не забувайте і про прості правила безпеки:

  1. Не заходьте в банківські та інші важливі акаунти з безкоштовного Wi-Fi в громадських місцях. Варто використовувати VPN або мобільний інтернет (теоретично і там можна перехопити дані, але це набагато дорожче і складніше).
  2. Оновлювати прошивку маршрутизатора.
  3. Регулярно міняйте пароль від домашнього Wi-Fi.
  4. Також має сенс дозволити роутеру бачити пристрою з фіксованого списку MAC-адрес (ноутбуки, смартфони і т. п.).
  5. Вимкніть віддалене адміністрування.
  6. Увімкніть гостьовий доступ.
  7. Приховайте SSID мережі.

Екзотичний варіант – встановити майнер на базі Coinhive і майнить Monero на пристроях підключилися. Щоб не повадно було :)

Наостанок нагадаємо про відкритому сервісі Wi-Fi Map. Він показує точки доступу, паролі до яких відомі. Є у вигляді програми (iOS, Android) і бота в Telegram. Але дані в нього додають самі користувачі, так що паролі не завжди актуальні.

LIVE-новини Apple: Facebook,
ВКонтакте і

Telegram