13.5. Защита информации в мобильной связи

13.5.1. GSM (2G)

Регистрация телефона в сети GSM построена с участием трёх сторон: SIM-карты мобильного устройства, базовой станции и центра аутентификации. SIM-карта и центр аутентификации обладают общим секретным 128-битным ключом $K_i$. Вначале телефон сообщает базовой станции уникальный идентификатор SIM-карты IMSI открытым текстом. Базовая станция запрашивает в центре аутентификации для данного IMSI набор параметров для аутентификации. Центр генерирует псевдослучайное 128-битовое число $\textrm{RAND}$ и алгоритмами A3 и A8 создаёт симметричный 54-битовый ключ $K_c$ и 32-битовый аутентификатор $\textrm{RES}$. Базовая станция передаёт мобильному устройству число $\textrm{RAND}$ и ожидает результата вычисления SIM-картой числа $\textrm{XRES}$, которое должно совпасть с $\textrm{RES}$ в случае успешной аутентификации. Схема аутентификации показана на рис. 13.7.

Рис. 13.7 — Односторонняя аутентификация и шифрование в GSM

Все вычисления для аутентификации выполняет SIM-карта. Ключ $K_c$ далее используется для создания ключа шифрования каждого фрейма $K = K_c ~\|~ n_F$, где $n_F$ 22-битовый номер фрейма. Шифрование выполняет уже само мобильное устройство. Алгоритм шифрования фиксирован в каждой стране и выбирается из семейства алгоритмов A5 (A5/1, A5/2, A5/3). В GSM применяется либо шифр A5/1 (используется в России), либо A5/2. Шифр A5/3 применяется уже в сети UMTS.

Аутентификация в сети GSM односторонняя. При передаче данных не используются проверка целостности и аутентификация сообщений. Передача данных между базовыми станциями происходит в открытом незашифрованном виде. Алгоритмы шифрования A5/1 и A5/2 нестойкие, количество операций для взлома A5/1 $2^{40}$, A5/2 $2^{16}$. Кроме того, длина ключа $K_c$ всего 54 бита. Передача в открытом виде уникального идентификатора IMSI позволяет однозначно определить абонента.

13.5.2. UMTS (3G)

В третьем поколении мобильных сетей, называемом UMTS, защищённость немного улучшена. Общая схема аутентификации (рис. 13.8) осталась примерно такой же, как и в GSM. Жирным шрифтом на рисунке выделены новые добавленные элементы по сравнению с GSM.

  1. Производится взаимная аутентификация SIM-карты и центра аутентификации по токенам $\textrm{RES}$ и ${\textrm{MAC}}$.
  2. Добавлены проверка целостности и аутентификация данных (имитовставка).
  3. Используются новые алгоритмы создания ключей, шифрования и имитовставки.
  4. Добавлены счётчики на SIM-карте $\textrm{SQN}_{\textrm{T}}$ и в центре аутентификации $\textrm{SQN}_{\textrm{Ц}}$ для защиты от атак воспроизведения. Значения увеличиваются при каждой попытке аутентификации и должны примерно совпадать.
  5. Увеличена длина ключа шифрования до 128 бит.
Рис. 13.8 — Взаимная аутентификация и шифрование в UMTS (3G)

Обозначения на рис. 13.8 следующие:

Алгоритмы $fi$ не фиксированы стандартом и выбираются при реализациях.

Из оставшихся недостатков защиты персональных данных можно перечислить.

  1. Уникальный идентификатор SIM-карты IMSI (англ. International Mobile Subscriber Identity) по-прежнему передаётся в открытом виде, что позволяет злоумышленнику идентифицировать абонентов по началу сеанса регистрации SIM-карты в мобильной сети.
  2. Шифрование и аутентификация производятся только между телефоном и базовой станцией, а не между двумя телефонами. Это является необходимым условием для подключения СОРМ (Система технических средств для обеспечения функций оперативно-розыскных мероприятий) по закону «О связи». С другой стороны, это повышает риск нарушения конфиденциальности персональных данных.
  3. Алгоритм шифрования A5/3 (KASUMI) на 128-битовом ключе теоретически взламывается атакой на связанных ключах основе известного открытого текста для 64 MB данных с использованием 1 GiB памяти за $2^{32}$ операций (2 часа на обычном ПК 2010 года, [33]).