Злом WPA2 за допомогою вразливості KRACK: в небезпеці все WiFi мережі!

  1. Злом WPA2: хронологія подій
  2. Загальні відомості про уразливість в протоколі WPA2
  3. Суть атаки KRACK
  4. Наслідки злому WPA2
  5. Як захиститися від уразливості KRACK?

Група дослідників повідомила про виявлення ряду критичних вразливостей в WPA2, технології, яка забезпечує безпеку з'єднання для всіх сучасних захищених Wi-Fi-мереж

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

Атаки на основі виявлених критичних вразливостей в WPA2, які отримали узагальнену назву KRACK (Key Reinstallation Attacks), використовують уразливості в самому стандарті Wi-Fi, а не в окремих продуктах або рішеннях, тому загрозу підвладна будь-яка реалізація WPA2. Іншими словами, будь-який сучасний пристрій, що підтримує Wi-Fi, є вразливим до атак KRACK, не залежно від виробника або того, якою операційною системою воно керується: Android, iOS, macOS, Linux, Windows, OpenBSD та інші.

Злом WPA2: хронологія подій

Меті Ванхоф (Mathy Vanhoef), бельгійський дослідник з Льовенського католицького університету, виявив дану проблему в конкретних рішеннях ряду виробників ще в минулому році. Близько року він займався її дослідженням, після чого в середині липня 2017 року повідомив про уразливість постачальників обладнання, яке тестував. Спілкування з останніми переконало його, що проблема носить не локальний характер, пов'язаний з конкретною помилкою в реалізації деяких рішень, а глобальний, що відноситься до самого протоколу.

Будь-яке сучасне пристрій, що підтримує WiFi, є вразливим до атак KRACK.

В популярність був поставлений координаційний центр CERT / CC за рішеннями проблем безпеки в Інтернеті, чиї фахівці приєдналися до дослідження і взяли на себе управління по координації спільних дій широкого кола залучених до процесу учасників. Зокрема, CERT / CC розіслав 28 серпня 2017 року повідомлення про уразливість великій кількості виробників по всьому світу, погодив дати розголошення інформації та виходу оновлень. Однак, не все пройшло гладко, як хотілося дослідникам. Зокрема, частина компаній і організацій, які про проблему дізналися ще в липні, поспішили випустити «мовчазні» поновлення раніше узгодженого терміну розкриття інформації. Широкого резонансу вони не викликали, але підвищили ризики виявлення проблеми сторонніми особами раніше наміченого терміну.

Про виявленні проблеми широкої громадськості стало відомо ближче до вечора 16 жовтня 2017 року, коли група фахівців з безпеки мереж виступила зі скоординованим заявою. Більш детально про знайдені вразливості було розказано на конференції ACM з комп'ютерів і комунікаційної безпеки 1 листопада 2017 року, де було представлено доповідь «Key Reinstallation Attacks: Forcing Nonce Reuse in WPA2» ( «Атака перевстановлення ключів: примусове повторне використання Nonce в WPA2»). Трохи раніше Меті Ванхоф виклав свій дослідницький доповідь в мережу ( http://papers.mathyvanhoef.com/ccs2017.pdf ), Присвятив проблемі сайт ( https://www.krackattacks.com ), Опублікував відео з демонстрацією атаки, а також створив репозиторій на GitHub, де на даний момент доступний скрипт перевірки однієї з виявлених ним вразливостей ( https://github.com/vanhoefm/krackattacks-test-ap-ft ).

Відео з демонстрацією злому WPA2 за допомогою атаки KRACK.

Загальні відомості про уразливість в протоколі WPA2

Дослідниками було виявлено можливість при встановленні з'єднання між точкою доступу і клієнтом проводити маніпуляції з трафіком узгодження (також часто званим «рукостисканням» від англ. Handshake) для стандарту WPA2 (Wi-Fi Protected Access II), а також більш старої версії стандарту WPA. Вони змогли домогтися повторного використання параметра nonce і сесійного (сеансового) ключа в результаті ініціації процедури переустановлення ключа шифрування з боку атакується клієнта або точки доступу (в деяких випадках).

Уразливість KRACK при реалізації атаки посередника полегшує зловмисникам дешифрування і інжект пакетів, перехоплення TCP-з'єднання і додавання шкідливого коду в HTTP-контент.

Таким чином, зловмисник при реалізації атаки посередника (Man in the middle) між точкою доступу і клієнтом, порушивши порядок прийому або повторної відправки повідомлень, може отримати можливість частково маніпулювати синхронізацією і передачею повідомлень в протоколах WPA2 Four-way, Group Key, Fast Basic Service Set (BSS) Transition, PeerKey, Tunneled Direct-Link Setup (TDLS) PeerKey (TPK), а також Wireless Network Management (WNM) Sleep Mode. Залежно від використовуваного протоколу шифрування даних (WPA-TKIP, AES-CCMP або GCMP) і деяких ситуаційних чинників, ефектом від цих маніпуляцій буде перевстановлення раніше вже використовуваних сесійних ключів, а також перевантаження лічильників nonces і replay. Як результат, повторне використання ключів полегшує зловмисникам дешифрування і інжект (ін'єкцію) пакетів, перехоплення TCP-з'єднання (TCP connection hijacking), додавання шкідливого коду в HTTP-контент або повторне мовлення unicast-, broadcast- і multicast-кадрів.

Для документування цих вразливостей в протоколі WPA2 координаційним центром CERT / CC були призначені визначається одним із таких CVE:

  • CVE-2017-13077: reinstallation of the pairwise key in the Four-way handshake;
  • CVE-2017-13078: reinstallation of the group key in the Four-way handshake;
  • CVE-2017-13079: reinstallation of the integrity group key in the Four-way handshake;
  • CVE-2017-13080: reinstallation of the group key in the Group Key handshake;
  • CVE-2017-13081: reinstallation of the integrity group key in the Group Key handshake;
  • CVE-2017-13082: accepting a retransmitted Fast BSS Transition Reassociation Request and reinstalling the pairwise key while processing it;
  • CVE-2017-13084: reinstallation of the STK key in the PeerKey handshake;
  • CVE-2017-13086: reinstallation of the Tunneled Direct-Link Setup (TDLS) PeerKey (TPK) key in the TDLS handshake;
  • CVE-2017-13087: reinstallation of the group key (GTK) when processing a Wireless Network Management (WNM) Sleep Mode Response frame;
  • CVE-2017-13088: reinstallation of the integrity group key (IGTK) when processing a Wireless Network Management (WNM) Sleep Mode Response frame.

Суть атаки KRACK

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

У зловмисників з'явилася можливість за допомогою повторного транслювання криптографічних повідомлень рукостискання обдурити пристрій-жертву і спровокувати переустановку вже раніше використаного ключа шифрування.

Коли заново ключ шифрування, пов'язані з ним параметри, такі як інкрементний номер переданого пакета (nonce) і номер прийнятого пакета (replay counter) скидаються до своїх початкових значень. Виявлена ​​уразливість дозволяє активному зловмисникові, який затримує або блокує обмін пакетами між клієнтом і точкою доступу, втручатися в спілкування між точкою доступу і клієнтом. Він може за допомогою повторного транслювання криптографічних повідомлень рукостискання обдурити пристрій-жертву і спровокувати переустановку вже раніше використаного ключа. Таким чином, наступний ключовий потік буде ідентичний попередньому ключовому потоку, так як ті ж самі значення параметра nonce (тобто значення лічильника) використовуються в парі з тим же самим ключем шифрування, який вже раніше використовувався. Як тільки це відбудеться, зловмисник з невеликим зусиллям зможе розшифрувати трафік (наприклад, це завдання стає очевидною, якщо повторно використовуваний ключовий потік здійснює передачу відомого зловмисникові контенту), і таким чином отримати доступ до персональної інформації, яка передається через Wi-Fi-мережу . Власне, атакуючий зможе розшифрувати далеко не всі передані пакети, але, так як відтепер така можливість стала реальністю, краще виходити з припущення, що будь-який передається пакет може бути дешифрований зловмисником.

Подібний принцип здійснення захищеного з'єднання (чотирьохетапну рукостискання) визначається поточною версією набору стандартів бездротового зв'язку IEEE 802.11, є обов'язковим при сертифікації Wi-Fi-пристроїв і рішень і, відповідно, використовується всіма сучасними захищеними Wi-Fi-мережами. Це означає, що всі захищені WiFi-мережі в світі уразливі (з певною варіативністю) до атак KRACK. Так, наприклад, атака працює проти персональних і корпоративних мереж Wi-Fi, проти старого стандарту WPA і сучасного WPA2, і навіть проти мереж, які побудовані на використанні тільки захищеного стандарту шифрування ключів AES.

Ключ шифрування встановлюється після отримання клієнтом повідомлення 3 чотирьохетапну рукостискання. По суті, щоб гарантувати безпеку з'єднання, ключ необхідно встановлювати і використовувати тільки один раз. На жаль, протоколом WPA2 це не гарантується. Так як при передачі по бездротовій мережі повідомлення може бути втрачено або спотворено, точка доступу може повторно кілька разів передавати повідомлення 3, якщо вона не отримала відповідного підтвердження від клієнта. Клієнт, в свою чергу, може кілька разів отримувати повідомлення 3 чотирьохетапну рукостискання, кожен раз переустанавлівая один і той же ключ шифрування, а також обнулити параметри nonce і replay counter, використовувані протоколом шифрування. Збираючи і ретранслюючи повідомлення чотирьохетапну рукостискання, атакуючий може домогтися використання того ж ключа шифрування кілька разів. Використовуючи подібну техніку, можна також маніпулювати рукостисканнями протоколів Group Key, Fast Basic Service Set (BSS) Transition, PeerKey, Tunneled Direct-Link Setup (TDLS) PeerKey (TPK), а також кадрами Wireless Network Management (WNM) Sleep Mode.

Наслідки злому WPA2

Можливість дешифрування пакетів може використовуватися для дешифрування пакетів TCP SYN. Це дозволить атакуючому отримати порядкові номери TCP-з'єднання і захопити TCP-сеанс. В результаті у зловмисників з'явилася можливість здійснювати на Wi-Fi-мережі, захищені за допомогою WPA2, найбільш поширені атаки проти відкритих бездротових мереж: додавання шкідливих модулів в HTTP-з'єднання. Наприклад, це може бути вставка шкідливого програмного забезпечення в HTTP-дані, які отримує жертва з переглянутих нею веб-сайтів.

Атаки KRACK ефективні незалежно від виробника і операційної системи, якою керується пристрій.

Вплив атаки може мати особливо катастрофічні наслідки, якщо жертва використовує протоколи шифрування WPA-TKIP або GCMP, а не AES-CCMP. У цьому випадку повторне використання nonce дозволяє атакуючому не тільки розшифрувати, але і змінювати передані пакети. Більш того, GCMP використовує один і той же ключ аутентифікації в обох напрямках, і цей ключ може бути відтворений завдяки даній атаці. Варто також відзначити, що протокол шифрування GCMP лежить в основі стандарту IEEE 802.11ad (більш відомий як Wireless Gigabit або WiGig), який, як очікується, отримає широке поширення в найближчі пару років.

Напрямок, в якому пакети можуть бути скомпрометовані, залежить від рукостискання, яке атаковано. При звичайній атаці чотирьохетапну рукостискання зловмисник отримує можливість розшифровувати (і в деяких випадках підробляти) пакети, відправлені клієнтом. Але при атаці рукостискання стандарту IEEE 802.11r (Fast BSS Transition, відомого також як швидкий роумінг), можна розшифровувати (і в деяких випадках підробляти) пакети, відправлені від точки доступу клієнту.

Атака KRACK має важкі наслідки, якщо спрямована проти утиліти «wpa_supplicant» версії 2.4 і вище, яку зазвичай використовують WiFi-клієнти під керуванням різних дистрибутивів Linux, а також Android версії 6.0 і вище. Додаткова проблема полягає в тому, що ключ шифрування обнуляється, тобто очищається з пам'яті після установки в перший раз. Це полегшує атакуючому перехоплення і управління трафіком, який передається пристроями під керуванням цими операційними системами. Тому, як очікується, процес оновлення смартфонів і інших Android-пристроїв, який дозволить ефективно протидіяти даної уразливості, затягнеться. Таким чином, близько 50% сучасних Android-пристроїв у всьому світі вкрай вразливі до виявленої проблеми.

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

Як захиститися від уразливості KRACK?

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

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

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

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

Заміна пароля ніяк не вплине на ефективність атаки KRACK. Використання VPN і HTTPS, відмова від використання стандарту IEEE 802.11r ускладнить задачу атакуючому, але повністю убезпечити вас не зможе. Тому подібні кроки ні в якому разі не повинні сприйматися як вирішення проблеми, а можуть бути лише тимчасовим заходом, поки ви повністю не забезпечите безпеку своєї Wi-Fi-мережі.

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

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

Підписуйтесь на розсилку, діліться статтями в соцмережах і задавайте питання в коментарях!

Підписуйтесь на розсилку, діліться статтями в соцмережах і задавайте питання в коментарях

Завжди на зв'язку, Ігор Панов.


Див. також:

Як захиститися від уразливості KRACK?

Дополнительная информация

rss
Карта