Установление алгоритмов обеспечения целостности сообщений и шифрования сообщений

Под аутентификацией сообщений понимается не только проверка подлинности источника сообщения, но и целостность данных. Проверка подлинности взаимодействующих сторон осуществляется только на момент аутентификации. Впоследствии нарушитель может начать реализовывать атаки, передавая ложные сообщения. Примером может быть ложная базовая станция, не участвовавшая во взаимной аутентификации с оборудованием пользователя UE. После завершения взаимной аутентификации ложная базовая станция приступает к передаче ложных сообщений. Аутентификация сообщений защищает от этой угрозы ИБ с помощью механизма проверки целостности данных. Работе механизма проверки целостности отдельных сообщений UMTS предшествует процедура установления алгоритмов обеспечения целостности сообщений и шифрования сообщений (рис. 23.9).

Сообщение 1 относится к протоколу управления радио-ресурсами RRC (Radio Resource Control). Это сообщение СSC (Connection Setup Complete) сообщает контроллеру RNC завершение установления радио-соединения между UE и RNC. Сообщению 1 предшествует не показанный на рис. 23.9 обмен другими сообщениями RRC Connection Request (запрос соединения) и Connection Setup (установление соединения). Все сообщения по протоколу RRC передаются на участке UE-RNC.

Сообщение 1 содержит возможности UE по обеспечении ИБ, включая алгоритмы по обеспечению защиты целостности данных UIA (UMTS integrity algorithm) и алгоритмы шифрования UEA (UMTS encryption algorithm). В состав сообщения 1 входит также значение, называемое START и занимает поле длиной 20 бит. Это значение используется в RNC и составляет часть счетчика последовательных номеров сообщений RRC. Этот счетчик COUNT-1 предназначен для защиты от угрозы «повтор», т.е. от злоумышленного воспроизведения ранее поступивших управляющих сообщений протокола RRC (между UE и RNC). Значение START является старшими 20 битами этого счетчика и называется сверхкадром HFN (Hyper Frame Number).

Сообщение 2 - это первое сообщение сетевого уровня из нескольких управляющих сообщений по выполнению функций взаимодействия UE с областью базовой сети. Примером может быть первое из сообщений, выполняющих процедуру обновления местоположения LU (Local Update). Необходимость в этом возникает в случае, если идентификатор местоположения LAI в USIM отличается от идентификатора местоположения LAI, в котором находится UE. Затем производится описанная выше процедура взаимной аутентификации и генерации ключей.

Установление алгоритмов обеспечения целостности сообщений и шифрования сообщений - student2.ru

Рис. 23.9. Установление алгоритмов обеспечения целостности сообщений и шифрования сообщений

Сообщение 3 содержит алгоритмы целостности и шифрования (UIA/UEA), которые область базовой сети (VLR/SGSN) считает допустимым на участке UE-RNC. В сообщение 3 входят также сгенерированные ключи целостности (IK) и шифрования (СК). Сообщение 3 называется командой «режима безопасности» (Security Mode Command) и расположено на прикладном уровне по протоколу RANAP (Radio Access Network Application Part) системы общеканальной сигнализации №7.

Как видно из рис. 23.9 контроллер RNC сравнивает допустимые алгоритмы UIA/UEA с возможностями UE и производит выбор.

Последующая процедура установления этих алгоритмов использует алгоритм обеспечения целостности сообщений. Проверке целостности подлежат сообщения управления ресурсами RRС (Radio Resource Control), т.е. сигнальных сообщений между UE и контроллером RNC. Сообщение 4 на рис. 23.9 является одним из таких сообщений RRC.

Механизм защиты целостности сообщений в UMTS основан на методе аутентичности сообщения МАС, описание которого приведено в приложении Г. Сообщение 4 содержит код аутентификации MAC-I (Message Authentification Code for Integrity), формирование которого приведено на рис. 23.10. Аутентификация сообщений с помощью MAC-I предусматривает использование алгоритма блочного шифрования KASUMI и общего секретного ключа целостности IK.

Установление алгоритмов обеспечения целостности сообщений и шифрования сообщений - student2.ru

Рис. 23.10. Формирование MAC-I

Механизм защиты выполняется формированием MAC-I с помощью односторонней функции f9, которая управляется секретным ключом IK. MAC-I представляет собой 32-битовую случайную комбинацию, которая добавляется к каждому сообщению RRC. На приемной стороне формируется XMAC-I полученного сообщения RRC, которое сравнивается с поступившим MAC-I вместе с сообщением. Совпадение MAC-I и XMAC-I показывает, что принятое сообщение поступило от подлинного источника, а само сообщение является тем же, которое было отправлено. На этом завершается аутентификация принятого сообщения.
Кроме самого сообщения протокола RRC и ключа IK входами функции f9 являются:

— счетчик COUNT-I (32 бит): увеличивается на единицу после каждого нового сообщения RRC. COUNT-I состоит из старших 20 бит HFN, 8 бит со значением 0 и 4 бита последовательных номеров сообщений RRC.

— FRESH: случайное число, сгенерированное RNC. Значения COUNT-I и FRESH служат защитой от угрозы «повтор».

— бит направления (восходящее или нисходящее).

Сообщение 4 протокола RRC (команда «режим безопасности», Security Mode Command) информирует UE о выбранных алгоритмах UIA/UEA. В UE производится вычисление XMAC-I, которое сравнивается с поступившем MAC-I с сообщением 4. Целостность сообщения 4 подтверждается при их совпадении.

Сообщение 5 протокола RRC Security Mode Complete ("режим безопасности" установлен) указывает, что UE успешно перешло на выбранные алгоритмы защиты целостности и шифрования. После приема сообщений 5 в RNC производится аутентификация этого сообщения, т.е. проверка подлинности источника сообщений и его целостности.

В сообщения 6 RNC информирует область базовой сети о завершении установки режима безопасности. Это сообщение (Security Mode Complete) передается по протоколу RANAP. На этом завершается установление безопасной связи при передаче сигнальных сообщений между оборудованием пользователя и контроллером базовых станций.

Шифрование сообщений

Как было отмечено в разделе 22.3.3, TMSI/P-TMSI передаются пользователю из сети (VLR/SGSN) в зашифрованном виде. Аналогично в GSM TMSI передается на радио-участке MS в зашифрованном виде. Настоящий раздел посвящен процедуре шифрования в UMTS. На рис. 23.11 приведена схема алгоритма шифрования/дешифрования в UMTS.

Шифрованию/дешифрованию подлежат сообщения сигнализации (например, TMSI/P-TMSI, LAI) и информационные данные. Механизм шифрования основан на принципе поточного шифра. Данные открытого текста побитно суммируются по модулю 2 с псевдослучайной комбинацией. Псевдослучайная комбинация (ключевой поток) образуется с помощью одного из алгоритмов, обозначенных общей функцией f8. Выбор конкретного алгоритма производится с помощью процедуры установления режима безопасности (разд. 23.3.З.).

 
  Установление алгоритмов обеспечения целостности сообщений и шифрования сообщений - student2.ru

Рис. 23.11. Алгоритм шифрования/дешифрования в UMTS

Входными параметрами функции f8 являются:

· ключ шифрования СК;

· счетчик Count-C той же длины, что и счетчик Count-I для защиты целостности данных;

· канал (идентификатор радиоканала);

· бит направления (восходящее или исходящее);

· длина. Так как данные, подлежащие шифрованию, представляют собой блоки определенной длины, то значение поля «длина» в 16 бит указывает на длину блока ключевого потока.

Счетчик Count-C выполняет функцию защиты от раскрытия зашифрованного текста. Count-C увеличивается на единицу после каждого блока ключевого потока. Таким образом, достигается шифрование двух блоков данных разными блоками ключевого потока. В противном случае (если два различных блока открытого текста шифруются одной и той же ключевой последовательностью) зашифрованные блоки легко взламываются. Для этого достаточно их сложить по модулю 2 и получить в результате сумму по модулю 2 двух блоков открытого текста. Последняя сумма легко расшифровывается. Такая же проблема может возникнуть, если не использовать идентификатор канала' при формировании ключевой последовательности.

Для защиты от угрозы «повтор» при маскировании нарушителя под UE или RNC используется процедура проверки счетчика. Для того чтобы минимизировать риск от этой угрозы, RNC может в любой момент запросить UE содержание его счетчика Count-C. Если значение Count-С UE не соответствует значению Count-C RNC, то соединение RRC сбрасывается.

Дополнения к разделу 23.3. “Информационная безопасность UMTS”

Наши рекомендации