Защита связи

Безопасность в сетях WiMAX

Сети беспроводного доступа WiMAX, основанные на стандарте IEEE 802.16, являются сегодня новой быстро развивающейся телекоммуникационной технологией. Вопросы безопасности в них, также как и в сетях WiFi (IEEE 802.11), стоят более острым образом чем в проводных сетях, в связи с легкостью получения физической возможности подключения к сети. Стандарт IEEE 802.16 определяет протокол PKM (privacy and key management protocol), протокол приватности и управления ключом. На самом же деле, имеется в виду конфиденциальность (confidentiality), а не приватность (privacy).

Security Associations

Security Association (SA, ассоциация безопасности) - это данные о безопасности, которые разделяют базовая станция и один или несколько ее абонентов, для обеспечения защищенной передачи данных по сети WiMAX. SA бывают двух типов:

Data Security Association, ассоциация безопасности для данных.

Authorization Security Association, ассоциация безопасности для авторизации.

Data Security Association

Data SA бывают трех типов:

Primary SA, основная SA.

Static SA, статическая SA.

Dynamic SA, динамическая SA.

Primary SA устанавливаются абонентской станцией на время процесса инициализации. Базовая станция затем предоставляет static SA. Что касается dynamic SA, то они устанавливаются и ликвидируются по мере необходимости для сервисных потоков. Как Static SA, так и Dynamic SA могут быть одной для нескольких абонентских станций. Data SA состоит из

16-битный идентификатор SA.

Метод шифрования, применяемый для защиты данных в соединении.

Два Traffic Encryption Key (TEK, ключ шифрования траффика), текущий и тот, который будет использоваться, когда у текущего TEK закончится срок жизни.

Два двухбитных идентификатора, по одному на каждый TEK.

Время жизни TEK. Может иметь значение от 30 минут до 7 дней. Значение по умолчанию полдня.

Два 64-битных вектора инициализации, по одному на TEK (требуется для алгоритма шифрования DES).

Индикатор типа data SA (primary, static или dynamic).

Абонентские станции обычно имеют одну data SA для вторичного частотного канала управления (secondary management channel); и либо одну data SA для соединения в обе стороны (uplink и downlink), либо одну data SA для соединения от базовой станции до абонентской и одну - для обратного.

Authorization Security Association

Абонентская станция и базовая станция разделяют одну ассоциацию для безопасности авторизации. Базовая станция использует authorization SA для конфигурирования data SA. Authorization SA состоит из:

сертификат 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

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

Privacy and Key Management Protocol

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

На рисунке 1.14.1 показана процедура авторизации.

Процедура авторизации

Рисунок 1.14.1 - Процедура авторизации

  • 1. Абонентская станция начинает обмен, посылая сообщение, содержащее X.509 сертификат изготовителя абонентской станции. Обычно этот сертификат никак не используется базовой станцией, хотя возможно настроить базовую станцию так, что авторизоваться будут только абонентские станции от доверяемых производителей.
  • 2. Сразу после первого сообщения, абонентская станция отправляет сообщение, содержащее X.509 сертификат самой абонентской станции, ее криптографические возможности и идентификатор основной SA (Primary SA).
  • 3. Базовая станция по сертификату абонента определяет, авторизован ли он. Если он авторизован, она посылает сообщение, содержащее зашифрованный ключ авторизации, последовательный номер данного ключа авторизации, его время жизни, а также список идентификаторов Static SA, в которых абонент авторизован. Ключ авторизации шифруется алгоритмом RSA с публичным ключом, получаемым из сертификата абонентской станции. Однажды авторизовавшись, абонентская станция будет периодически переавторизовываться.

На рисунке 1.14.2 изображен обмен ключами Traffic Encryption Keys (TEK).

Передача ключа шифрования данных

Рисунок 1.14.2 - Передача ключа шифрования данных

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

HMAC для того, чтобы абонентская станция могла проверить подлинность этого сообщения.

2. В ответ на первое сообщение (при успешной проверке HMAC), или же по собственной инициативе абонентская станция посылает запрос на обновление ключа TEK, содержащий:

последовательный номер ключа авторизации, который был использован при генерации HMAC

идентификатор того SA, TEK которого необходимо обновить (совпадает с идентификатором из первого сообщения, если оно было)

HMAC для того, чтобы базовая станция могла проверить подлинность этого сообщения.

  • 3. Если предыдущее сообщение пройдет аутентификацию HMAC, базовая станция посылает сообщение, содержащее:
    • - последовательный номер ключа авторизации, который был использован при генерации HMAC
    • - идентификатор SA, для которого проводится обновление ключа TEK
    • - прежний TEK, т.е. текущий TEK того SA, для которого запрошено обновление
    • - новый TEK, т.е. TEK, который будет использоваться, когда истечет срок жизни текущего TEK
    • - HMAC для проверки подлинности данного сообщения.

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

Шифрование DES в режиме электронной кодовой книги

Рисунок 1.14.3 - Шифрование DES в режиме электронной кодовой книги

Здесь KEK 1 - это первые 64 бит ключа KEK, а KEK 2 - последние 64 бит ключа KEK.

Шифрование данных

Стандарт IEEE 802.16 использует алгоритм DES в режиме сцепления блока шифров для шифрования данных.

В настоящее время DES считается небезопасным, поэтому в дополнении к стандарту IEEE 802.16e для шифрования данных был добавлен алгоритм AES. Сам процесс шифрования показан на рисунке 1.14.3 (для алгоритма DES).

Процесс шифрования данных при помощи алгоритма DES в режиме CBC

Рисунок 1.14.4 - Процесс шифрования данных при помощи алгоритма DES в режиме CBC

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

Шифрование AES

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

Cipher Block Chaining (CBC, режим сцепления блока шифров)

Counter Encryption (CTR, шифрование счетчика)

Counter Encryption with Cipher Block Chaining message authentication code (CCM, счетчиковое шифрование с message authentication code, полученным сцеплением блока шифров). Добавляет возможность проверки подлинности зашифрованного сообщения к режиму CTR.

Electronic Code Book (ECB, режим электронной кодовой книги). Используется для шифрования ключей TEK.

AES в режиме CCM, последовательность Nonce.

AES в режиме CCM

Рисунок 1.14.5 - AES в режиме CCM

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

Блок CBC.

Блок СВС

Рисунок 1.14.6 - Блок СВС

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

Блок Counter.

Блок counter

Рисунок 1.14.7 - Блок 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-блока.

Шифрование информационной части сообщения.

Шифрование информационной части сообщения

Рисунок 1.14.8 - Шифрование информационной части сообщения

Каждый из 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).

На рисунке 1.14.9 показано шифрование message authentication code в AES - CCM

шифрование message authentication code в AES - CCM

Рисунок 1.14.9 - шифрование message authentication code в AES - CCM

Уязвимости в стандарте IEEE 802.16

Атаки физического уровня, такие как глушение передачи сигнала, ведущее к отказу доступа или лавинный наплыв кадров (flooding), имеющий целью истощить батарею станции. Эффективных способов противостоять таким угрозам на сегодня нет.

Самозваные базовые станции, что связано с отсутствием сертификата базовой станции. В стандарте проявляется явная несимметричность в вопросах аутентификации. Предложенное решение этой проблемы - инфраструктура управления ключом в беспроводной среде (WKMI, wireless key management infrastructure), основанная на стандарте IEEE 802.11i. В этой инфраструктуре есть взаимная аутентификация с помощью сертификатов X.509.

Уязвимость, связанная с неслучайностью генерации базовой станцией ключей авторизации. Взаимное участие базовой и абонентской станции, возможно, решило бы эту проблему.

Возможность повторно использовать ключи TEK, чей срок жизни уже истек. Это связано с очень малым размером поля EKS индекса ключа TEK. Так как наибольшее время жизни ключа авторизации 70 суток, т.е. 100800 минут, а наименьшее время жизни ключа TEK 30 минут, то необходимое число возможных идентификаторов ключа TEK - 3360. А это означает, что число необходимых бит для поля EKS - 12.

Еще одна проблема связана, как уже упоминалось с небезопасностью использования шифрования DES. При достаточно большом времени жизни ключа TEK и интенсивном обмене сообщениями возможность взлома шифра представляет реальную угрозу безопасности. Эта проблема была устранена с введением шифрования AES в поправке к стандарту IEEE 802.16e. Однако, большое число пользователей до сих имеет оборудование, поддерживающее лишь старый стандарт IEEE 802.16.

 
< Пред   СОДЕРЖАНИЕ   Загрузить   След >