Питання безпеки в мережах WiMAX, заснованих на стандарті IEEE 802.16, так само, як і в мережах WiFi (IEEE 802.11), стоять гостріше, ніж в дротяних мережах у зв'язку з легкістю підключення до мережі.

Стандарт IEEE 802.16 визначає протокол PKM (privacy and key management protocol), протокол приватності й керування ключем. Насправді ж, мається на увазі конфіденційність (confidentiality), а не приватність (privacy) [1].

Захищені зв'язки ред.

Захищений зв'язок (Security Association, SA) — одностороннє з'єднання для забезпечення захищеної передачі даних між пристроями мережі. SA бувають двох типів:

  • Data Security Association, захищений зв'язок для даних.
  • Authorization Security Association, захищений зв'язок для авторизації.

Захищений зв'язок для даних ред.

Захищений зв'язок для даних буває трьох типів:

  • Первинна (основна) (Primary SA);
  • Статична (Static SA);
  • Динамічна (Dynamic SA).

Первинний захищений зв'язок встановлюється абонентською станцією на час процесу ініціалізації. Базова станція потім надає статичний захищений зв'язок. Що стосується динамічних захищених зв'язків, то вони встановлюються і ліквідуються по мірі необхідності для сервісних потоків. Як статичний, так і динамічний захищені зв'язки, можуть бути одним для декількох абонентських станцій.

Захищений зв'язок для даних визначається:

  • 16-бітним ідентифікатором зв'язку.
  • Методом шифрування, що використовуються для захисту даних в з'єднанні.
  • Двома Traffic Encryption Key (TEK, ключ шифрування трафіку), поточний і той, який буде використовуватися, коли у поточного TEK закінчиться термін життя.
  • Двома двохбітними ідентифікаторами, по одному на кожен TEK.
  • Часом життя TEK. Може мати значення від 30 хвилин до 7 днів. Значення за замовчуванням — 12 годин.
  • Двома 64-бітними векторами ініціалізації, по одному на TEK (потрібно для алгоритму шифрування DES).
  • Індикатором типу зв'язку (первинна, статична або динамічна).

Абонентські станції зазвичай мають один захищений зв'язок для даних для вторинного частотного каналу управління (secondary management channel); і, або один захищений зв'язок для даних для з'єднання в обидві сторони (uplink і downlink), або один захищений зв'язок для даних для з'єднання від базової станції до абонентської і одну — для зворотного.

Захищений зв'язок для авторизації ред.

Абонентська станція і базова станція поділяють один захищений зв'язок для авторизації. Базова станція використовує захищений зв'язок для авторизації для конфігурування захищеного зв'язку для даних.

Захищений зв'язок для авторизації визначається:

  • сертифікат X. 509, ідентифікує абонентську станцію, а також сертифікатом X. 509, ідентифікує виробника абонентської станції.
  • 160-бітовим ключем авторизації (authorization key, AK). Використовується для аутентифікації під час обміну ключами TEK.
  • 4-бітовим ідентифікатором ключа авторизації.
  • Часом життя ключа авторизації може приймати значення від 1 дня до 70 днів. Значення за замовчуванням - 7 днів.
  • 128-бітовим ключем шифрування ключа (Key encryption key, KEK). Використовується для шифрування і розподілу ключів TEK.
  • Ключем HMAC для низхідних повідомлень (downlink) при обміні ключами TEK.
  • Ключем HMAC для висхідних повідомлень (uplink) при обміні ключами TEK.
  • Списком data SA, для якого ця абонентська станція авторизована.

KEK обчислюється наступним чином:

  1. Проводиться конкатенація шістнадцяткового числа 0x53 з самим собою 64 рази. Виходять 512 біт.
  2. Праворуч приписується ключ авторизації.
  3. Обчислюється геш-функція SHA-1 від цього числа. Виходять 160 біт на виході.
  4. Перші 128 біт беруться в якості KEK, інші відкидаються.

Ключі HMAC обчислюються наступним чином:

  1. Проводиться конкатенація шістнадцяткового числа 0x3A (uplink) або 0x5C (downlink) з самим собою 64 рази.
  2. Праворуч приписується ключ авторизації.
  3. Обчислюється геш-функція SHA-1 від цього числа. Виходять 160 біт на виході. Це і є ключ HMAC.

Розширюваний протокол аутентифікації ред.

Extensible Authentication Protocol (EAP, розширюваний протокол аутентифікації) — це протокол, що описує більш гнучку схему аутентифікації порівняно з сертифікатами X. 509. Він був введений в додатку до стандарту IEEE 802.16 e. EAP-повідомлення кодуються прямо в кадри управління. У зв'язку з цим в протокол PKM були додані два нових сполучення PKM EAP request (EAP-запит) і PKM EAP response (EAP-відповідь). Стандарт IEEE 802.16 e не встановлює якийсь певний метод аутентифікації EAP, ця область зараз активно досліджується.

Протокол ключів авторизації та шифрування ред.

Privacy and Key Management Protocol (PKM Protocol) — це протокол для отримання ключів авторизації та шифрування трафіку TEK.

Авторизація ред.

 
  1. Абонентська станція починає обмін, посилаючи повідомлення, що містить X. 509 сертифікат виробника абонентської станції. Зазвичай цей сертифікат ніяк не використовується базовою станцією, хоча можливо налаштувати базову станцію так, що авторизуватися будуть тільки абонентські станції від довірених виробників.
  2. Відразу після першого повідомлення абонентська станція відправляє повідомлення, що містить сертификат X. 509 самої абонентської станції, її криптографічні можливості й ідентифікатор первинної SA (Primary SA).
  3. Базова станція за сертифікатом абонента визначає, авторизований він. Якщо він авторизований, вона посилає повідомлення, що містить зашифрований ключ авторизації, послідовний номер даного ключа авторизації, час його життя, а також список ідентифікаторів статичних SA, в яких абонент має права. Ключ авторизації шифрується алгоритмом RSA з публічним ключем, який отриманий із сертифіката абонентської станції.

Одного разу авторизувавшись, абонентська станція буде періодично переавторизовуватися.

Обмін ключами ред.

 
  1. Базова станція посилає повідомлення, примушує абонентську станцію оновити ключ шифрування трафіку TEK. Повідомлення містить:
  • послідовний номер ключа авторизації, який був використаний при генерації HMAC
  • ідентифікатор того SA, TEK якого необхідно оновити
  • HMAC для того, щоб абонентська станція могла перевірити справжність цього повідомлення.
  1. У відповідь на перше повідомлення (успішної перевірки HMAC), або ж за власною ініціативою абонентська станція посилає запит на оновлення ключа TEK, що містить:
  • послідовний номер ключа авторизації, який був використаний при генерації HMAC
  • ідентифікатор того SA, TEK яке необхідно оновити (збігається з ідентифікатором із першого повідомлення, якщо воно було)
  • HMAC для того, щоб базова станція могла перевірити справжність цього повідомлення.
  1. Якщо попереднє повідомлення пройде аутентифікацію HMAC, базова станція посилає повідомлення, що містить:
  • послідовний номер ключа авторизації, який був використаний при генерації HMAC
  • ідентифікатор SA, для якого проводиться оновлення ключа TEK
  • колишній TEK, тобто поточний TEK того SA, для якого здійснено запит на оновлення
  • новий TEK, тобто TEK, який буде використовуватися, коли закінчиться термін життя поточного TEK
  • HMAC для перевірки даного повідомлення.

Обидва ключа TEK передаються в зашифрованому вигляді. В IEEE 802.16 для цього використовується потрійний DES в режимі електронної кодової книги c ключем KEK:

 

Тут KEK 1 — це перші 64 біт ключа KEK, а KEK 2 — останні 64 біт ключа KEK.

Шифрування даних ред.

Стандарт IEEE 802.16 використовує алгоритм DES в режимі зчеплення блоку шифрів для шифрування даних. В даний час DES вважається небезпечним, тому у додатку до стандарту IEEE 802.16 e для шифрування даних був доданий алгоритм AES.

DES ред.

 

Шифрування даних проходить наступним чином. Вектор ініціалізації з даного data SA і поле синхронізації проходять побітовую операцію, яка виключає АБО подається, як ініціалізований вектор алгоритму DES в режимі зчеплення блоку шифрів (CBC, cipher block chaining). Також на вхід схеми подається ключ TEK для шифрування і відкритий текст повідомлення. Алгоритм видає зашифрований текст. Заголовок Generic MAC header (GMH) не змінюється, за винятком бітового поля EC, а кінцевик CRC, якщо він є, змінюється під зашифрований текст.

AES ред.

Стандарт 802.16 e визначає використання шифрування AES в чотирьох режимах:

  • Cipher Block Chaining (CBC, режим зчеплення блоку шифрів)
  • Counter Encryption (CTR, шифрування лічильника)
  • Counter with Encryption Cipher Block Chaining message authentication code (CCM, лічильникове шифрування з message authentication code, отримане зчепленням блоку шифрів). Додає можливість перевірки достовірності зашифрованого повідомлення до режиму CTR.
  • Electronic Code Book (ECB, режим електронної кодової книги). Використовується для шифрування ключів TEK.

Nonce ред.

 

В режимі CCM, для шифрування корисної інформації передавальна станція генерує на кожен пакет nonce — байтовую послідовність, перші 5 байт якої являють собою початок Generic MAC Header. Далі йдуть 4 зарезервованих байта, що мають нульові значення. Потім слідує 4-байтовий номер пакета Packet Number (PN) в даному data SA. Значення Packet Number ставиться в 1 при встановленні нового data SA або нового TEK.

Блок CBC ред.

 

Блок CBC складається з однобайтового прапора, має значення 00011001, послідовності nonce і поля, що містить довжину інформаційної частини повідомлення.

Блок Counter ред.

 

Блок Counter складається з однобайтового прапора, має значення 00000001, послідовності nonce і поля, що містить номер i Counter-блоку. Число i може змінюватися від нуля до n, де n — кількість Counter-блоків, необхідних для покриття всього повідомлення і коду message authentication code.

Створення і шифрування message authentication code в AES — CCM ред.

 

При створенні message authentication code використовується модифікований режим CBC, в якому замість иніціалізованого вектора IV, до початку інформаційної частини повідомлення приєднується початковий (нульовий) блок CBC. Далі ця пара зашифровується алгоритмом AES в режимі CBC з ключем TEK. Останні 128 біт зашифрованого тексту беруться в якості message authentication code (код автентичності). Далі message authentication code шифрується побітовим додаванням по модулю двох вихідного message authentication code і зашифрованого за допомогою алгоритму AES в режимі CTR початкового (нульового) Counter-блоку.

Шифрування інформаційної частини повідомлення ред.

 

Кожен з n, що залишилися Counter-блоків (нульовий вже був задіяний в шифруванні message authentication code) зашифровують методом AES в режимі CTR з ключем TEK. Потім результат складають побітовим додаванням по модулю два з інформаційною частиною повідомлення. Отриманий зашифрований текст разом із зашифрованим message authentication code, номером пакета даних, заголовком Generic MAC Header і CRC-кінцевиком відправляється на фізичний рівень. При цьому в заголовку GMH поле EC (Encryption Control) встановлюють у одиницю, оскільки дані були зашифровані, а в двухбітовому полі EKS (Encryption Key Sequence) стоїть індекс використаного при цьому ключа TEK (traffic encryption key).

Уразливості в стандарті IEEE 802.16 ред.

  • Атаки фізичного рівня, такі як глушіння передачі сигналу, що веде до відмови доступу або лавинний наплив кадрів (flooding), що має метою виснажити батарею станції. Ефективних способів протистояти таким загрозам на сьогодні немає.
  • Самозвані базові станції, що пов'язані з відсутністю сертифіката базової станції. У стандарті проявляється явна несиметричність у питаннях аутентифікації. Запропоноване рішення цієї проблеми — інфраструктура управління ключем у бездротовому середовищі (WKMI, wireless key management infrastructure), що засноване на стандарті IEEE 802.11 i. У цій інфраструктурі є взаємна аутентифікація за допомогою сертифікатів X. 509.[2]
  • Уразливість, пов'язана з невипадковістю генерації базовою станцією ключів авторизації. Взаємна участь базової і абонентської станції, можливо, вирішила б цю проблему.[3]
  • Можливість повторно використовувати ключі TEK, чий термін життя вже минув. Це пов'язано з дуже малим розміром поля EKS індексу ключа TEK. Так як найбільший час життя ключа авторизації 70 діб, тобто 100800 хвилин, а найменший час життя ключа TEK - 30 хвилин, то необхідне число можливих ідентифікаторів ключа TEK — 3360. А це означає, що кількість необхідних біт для поля EKS — 12.
  • Ще одна проблема пов'язана, як уже згадувалося, з небезпекою використання шифрування DES. При досить великому терміні  життя ключа TEK і інтенсивному обміні повідомленнями, можливість злому шифру представляє реальну загрозу безпеці. Ця проблема була усунена з введенням шифрування AES в поправці до стандарту IEEE 802.16 e. Однак, велике число користувачів до цих пір має обладнання, що підтримує лише старий стандарт IEEE 802.16.

Примітки ред.

  1. См. например: Fernandez, E.B. & VanHilst, M., Chapter 10 «An Overview of WiMAX Security» in «WiMAX Standards and Security» (Edited by M. Ilyas & S. Ahson), CRC Press, June 2007
  2. Y. Fan, Z. Huaibei, Z. Lan, and F. Jin, An Improved Security Scheme in WMAN Based on IEEE Standard 802.16, Wuhan, China, 2005 (Улучшенная схема безопасности в сетях WMAN на основе стандарта IEEE 802.16).
  3. D. Johnston and J. Walker, Overview of IEEE 802.16 security, IEEE Security & Privacy, Vol. 2, pp. 40-48, 2004 (Обзор безопасности в стандарте IEEE 802.16, безопасность и приватность IEEE, том 2, стр. 40-48)

Див. також ред.

Література ред.

  • Glore, N. & Mishra, A., Chapter 11 «Privacy and Security in WiMax Networks» in «WiMAX Standards and Security» (Edited by M. Ilyas & S. Ahson) — Boca Raton, Florida: CRC Press, 2008 — ISBN 978-1-4200-4523-9
  • Стандарт IEEE 802.16-2001[недоступне посилання з лютого 2019].
  • Поправка до стандарту IEEE 802.16 e-2005.