→ Принцип работы сетей GSM. Как работает радиоинтерфейс в GSM-сетях

Принцип работы сетей GSM. Как работает радиоинтерфейс в GSM-сетях

В пластмассовом корпусе маленького телефона, кроме аккумулятора, держателя карточки SIM и дисплея, мы обнаружим очень немного деталей. Печатная плата, несколько распаянных на ней микросхем, встроенная приёмо-передающая антенна, клавиатура (самая обычная «резинка» с пластмассовыми клавишами), световые индикаторы. Ну, ещё крошечный фотомодуль в камерофонах – с пластмассовыми линзочками объектива и очень маленькой светочувствительной матрицей, спрятанной в корпусе модуля (сенсор намного меньше, чем в самом дешёвом цифровом фотоаппарате, размером с рисовое зерно). Завершают эту печальную картину несколько соединительных проводков… Короче, ничего особенного. На первый взгляд сотовый телефон устроен ничуть ни сложней современного радиоприёмника. Портативный аналоговый (не цифровой!) радиоприёмник кажется даже более мудрёным – в нём есть верньер, шкала настройки с механической системой перемещения движка… За что же платим такие деньги? Что такого особенного скрывает в себе сотовый телефон?

Впрочем, не будем забывать, что сотовая связь одна из последних (вместе с персональным компьютером и Интернетом) великих технологий прошлого века. Люди уже побывали на Луне, посадили на Венеру автоматический зонд, опустились на дно глубочайшей в мире Марианской впадины, создали огромные воздушные и автомобильные транспортные системы, открыли строение атома и взорвали ядерную бомбу, а маленький радиотелефон с неограниченной зоной действия оставался лишь мечтой.

Телефон, как и компьютер, прошёл несколько стадий развития. Сначала он был здоровенным чемоданом с телефонной трубкой. В чемодане располагалось множество схем и деталей, а вес «портативного» устройства приближался к десятку килограммов. Потом появились телефоны «кирипичи». Они были полегче, поменьше, но их устройство тоже было достаточно, скажем так, насыщенным. Большая многодиапазонная радиола по сравнению с этим телефоном выглядела, как бутафорский надувной автомобиль рядом с настоящим лимузином. И только в начале 90-х годов сотовый телефон стал тем маленьким устройством карманного размера, которое мы используем сегодня. И всё это благодаря усилиям разработчиков нового (на то время) стандарта сотовой связи GSM. Только введением в сотовую телефонию цифровых технологий удалось уменьшить мощность передатчиков, повысить чувствительность приёмников и достичь высокого качества связи при ничтожно малых размеров самого абонентского устройства – сотового телефона.

Сегодня мы пользуемся маленьким телефоном и даже не задумываемся – а как, собственно, он работает? Что происходит внутри сотового телефона? Почему это маленькое и уже доступное всем и каждому устройство относят к области высоких технологий? В чём, собственно, его сложность (между тем обычный проводной телефон устройство до удивления простое – проще кофемолки или электробритвы)? И… что такое GSM?

История GSM началась в 80-е годы прошлого века, когда страны Европы имели собственные, несовместимые между собой, сети сотовой связи. Собственными сетями были оснащены страны Скандинавии, Великобритания, Франция и Германия. Несовместимость стандартов мешала распространению сотовой телефонии, усложняла жизнь и операторам, и абонентам. Невозможно было, к примеру, осуществлять автоматический роуминг при перемещении из зоны действия одной сети в зону действия другой. И абонентские устройства, сами сотовые телефоны, были далеко не универсальными. Для каждого типа сотовой связи нужно было разрабатывать уникальную аппаратуру.

Для преодоления барьера несовместимости в 1982 году была создана международная группа по разработке общего стандарта сотовой связи – Groupe Special Mobile или GSM. В 1990 году европейский институт телекоммуникационных стандартов, к которому перешли полномочия группы GSM, опубликовал спецификации так называемой "фазы I", а в середине 1991 года началась коммерческая эксплуатация первой сети этого стандарта. Сегодня GSM является самой распространенной системой сотовой связи в мире, а её название расшифровывается иначе - Global System for Mobile telecommunications или «глобальная система мобильных телекоммуникаций».

Следует заметить, что GSM первый общепринятый цифровой стандарт сотовой связи. К моменту принятия решения о его введении в мире уже существовало несколько развитых аналоговых систем – кроме скандинавской NMT, это были английская TACS и американская AMPS. Но разработчики новой системы резонно полагали, что цифровые методы сжатия и кодирования информации значительно расширят применения сотовой связи, обеспечат лучшее качество и предоставят пользователям невиданные ранее сервисы.

В сотовой связи стандарта GSM используются радиочастоты 900, 1800 или 1900 МГц (трехдиапазонные телефоны при этом могут использоваться в сетях любого из перечисленных частотных диапазонов). В сравнении с аналоговыми стандартами GSM имеет целый ряд преимуществ. Основные из них – применение маломощных передатчиков в абонентских аппаратах и в базовых станциях. Это удешевляет саму аппаратуру, но не сказывается на качестве связи. Кроме того, передача информации в цифровом виде позволяет легко обеспечить высокую степень конфиденциальности переговоров.

Технология GSM это на самом деле целый «букет» сложнейших технологий. Первая из них – технология оцифровка и кодирование звука. Поскольку оцифровка звука требует немалых вычислительных ресурсов, в каждом сотовом телефоне, даже в самом дешевом, работает достаточно мощный специализированный компьютер, который выполняет функции аналого-цифрового и цифро-аналогового преобразователей - АЦП и ЦАП.

Далее – технология многоканального выравнивания. Дело в том, что в диапазоне 900 МГц и выше радиосигнал легко отражается от стен зданий и других препятствий. В результате телефон получат множество отличающихся по фазе сигналов, из которых выделяет нужный, а остальные игнорирует.

При передвижении абонента сотовый телефон должен автоматически переходить с частоты на частоту без прерывания сеанса связи. Это обеспечивает технология «медленного частотного скачка». При этом каждая «порция» информации (а весь поток цифровой информации разделяется на «порции» в рамках так называемого тайм-слота – временного промежутка) передается по разным частотам.

Ещё одна любопытная технология GSM – прерывистая передача. Обратите внимание, как мы говорим по телефону. Скажем слово, пауза, скажем еще одно слово, снова пауза. Так вот, когда мы молчим, телефон отключает передатчик. Как только заговорим – включает. Этот механизм позволяет свести к минимуму энергопотребление сотового телефона. Умная получается машинка!

Еще какая умная – телефон и на прием работает тоже «прерывисто». Во включенном состоянии он ожидает сигнала базовой станции, но включается только на короткое время и тут же отключается… Теперь понятен смысл мигающего светового индикатора на вашем телефоне?

Все сотовые телефоны в зависимости от мощности встроенных радиопередатчиков подразделяются на несколько классов – от 20 ватт (настоящие монстры!), до 0,8 ватт (большинство популярных моделей). Но обычно, когда базовая станция находится рядом с абонентским устройством (а "соты" GSM в больших городах располагаются достаточно густо, чтобы избежать "мертвых" зон между строениями), полная мощность передатчика телефона для поддержания устойчивой связи не нужна. Для регулировки мощности используется механизм анализа количества ошибок при передаче-приёме. На его основе мощность передатчика базовой станции и телефона понижается до уровня, когда качество связи достаточно стабильно. Этот контроль мощности вещь очень тонкая. Большинство жалоб пользователей на плохое качество связи на его "совести".

© Николай Надеждин ,

В результате, физический канал между приемником и передатчиком определяется частотой, выделенными фреймами и номерами таймслотов в них. Обычно базовые станции используют один или несколько каналов ARFCN, один из которых используется для идентификации присутствия BTS в эфире. Первый таймслот (индекс 0) фреймов этого канала используется в качестве базового служебного канала (base-control channel или beacon-канал). Оставшаяся часть ARFCN распределяется оператором для CCH и TCH каналов на свое усмотрение.

2.3 Логические каналы

На основе физических каналов формируются логические. Um-интерфейс подразумевает обмен как пользовательской информацией, так и служебной. Согласно спецификации GSM, каждому виду информации соответствует специальный вид логических каналов, реализуемых посредством физических:

  • каналы трафика (TCH - Traffic Channel),
  • каналы служебной информации (CCH - Control Channel).
Каналы трафика делятся на два основных вида: TCH/F - Full rate канал с максимальной скоростью до 22,8 Кбит/с и TCH/H - Half rate канал с максимальной скоростью до 11,4 Кбит/с. Данные виды каналов могут быть использованы для передачи речи (TCH/FS, TCH/HS) и пользовательских данных (TCH/F9.6, TCH/F4.8, TCH/H4.8, TCH/F2.4, TCH/H2.4), например, SMS.

Каналы служебной информации делятся на:

  • Широковещательные (BCH - Broadcast Channels).
    • FCCH - Frequency Correction Channel (канал коррекции частоты). Предоставляет информацию, необходимую мобильному телефону для коррекции частоты.
    • SCH - Synchronization Channel (канал синхронизации). Предоставляет мобильному телефону информацию, необходимую для TDMA-синхронизации с базовой станцией (BTS), а также ее идентификационные данные BSIC .
    • BCCH - Broadcast Control Channel (широковещательный канал служебной информации). Передает основную информацию о базовой станции, такую как способ организации служебных каналов, количество блоков, зарезервированных для сообщений предоставления доступа, а также количество мультифреймов (объемом по 51 TDMA-фрейму) между Paging-запросами.
  • Каналы общего назначения (CCCH - Common Control Channels)
    • PCH - Paging Channel. Забегая вперед, расскажу, что Paging - это своего рода ping мобильного телефона, позволяющий определить его доступность в определенной зоне покрытия. Данный канал предназначен именно для этого.
    • RACH - Random Access Channel (канал произвольного доступа). Используется мобильными телефонами для запроса собственного служебного канала SDCCH. Исключительно Uplink-канал.
    • AGCH - Access Grant Channel (канал уведомлений о предоставлении доступа). На этом канале базовые станции отвечают на RACH-запросы мобильных телефонов, выделяя SDCCH, либо сразу TCH.
  • Собственные каналы (DCCH - Dedicated Control Channels)
    Собственные каналы, так же как и TCH, выделяются определенным мобильным телефонам. Существует несколько подвидов:
    • SDCCH - Stand-alone Dedicated Control Channel. Данный канал используется для аутентификации мобильного телефона, обмена ключами шифрования, процедуры обновления местоположения (location update), а также для осуществления голосовых вызовов и обмена SMS-сообщениями.
    • SACCH - Slow Associated Control Channel. Используется во время разговора, либо когда уже задействован канал SDCCH. С его помощью BTS передает телефону периодические инструкции об изменении таймингов и мощности сигнала. В обратную сторону идут данные об уровне принимаемого сигнала (RSSI), качестве TCH, а также уровень сигнала ближайших базовый станций (BTS Measurements).
    • FACCH - Fast Associated Control Channel. Данный канал предоставляется вместе с TCH и позволяет передавать срочные сообщения, например, во время перехода от одной базовой станции к другой (Handover).

2.4 Что такое burst?

Данные в эфире передаются в виде последовательностей битов, чаще всего называемых «burst», внутри таймслотов. Термин «burst», наиболее подходящим аналогом которому является слово «всплеск», должен быть знаком многим радиолюбителям, и появился, скорее всего, при составлении графических моделей для анализа радиоэфира, где любая активность похожа на водопады и всплески воды. Подробнее о них можно почитать в этой замечательной статье (источник изображений), мы остановимся на самом главном. Схематичное представление burst может выглядеть так:

Guard Period
Во избежание возникновения интерференции (т.е. наложения двух busrt друг на друга), продолжительность burst всегда меньше продолжительности таймслота на определенное значение (0,577 - 0,546 = 0,031 мс), называемое «Guard Period». Данный период представляет собой своего рода запас времени для компенсации возможных задержек по времени при передаче сигнала.

Tail Bits
Данные маркеры определяют начало и конец burst.

Info
Полезная нагрузка burst, например, данные абонентов, либо служебный трафик. Состоит из двух частей.

Stealing Flags
Эти два бита устанавливаются когда обе части данных burst канала TCH переданы по каналу FACCH. Один переданный бит вместо двух означает, что только одна часть burst передана по FACCH.

Training Sequence
Эта часть burst используется приемником для определения физических характеристик канала между телефоном и базовой станцией.

2.5 Виды burst

Каждому логическому каналу соответствуют определенные виды burst:

Normal Burst
Последовательности этого типа реализуют каналы трафика (TCH) между сетью и абонентами, а также все виды каналов управления (CCH): CCCH, BCCH и DCCH.

Frequency Correction Burst
Название говорит само за себя. Реализует односторонний downlink-канал FCCH, позволяющий мобильным телефонам более точно настраиваться на частоту BTS.

Synchronization Burst
Burst данного типа, так же как и Frequency Correction Burst, реализует downlink-канал, только уже SCH, который предназначен для идентификации присутствия базовых станций в эфире. По аналогии с beacon-пакетами в WiFi-сетях, каждый такой burst передается на полной мощности, а также содержит информацию о BTS, необходимую для синхронизации с ней: частота кадров, идентификационные данные (BSIC), и прочие.

Dummy Burst
Фиктивный burst, передаваемый базовой станцией для заполнения неиспользуемых таймслотов. Дело в том, что если на канале нет никакой активности, мощность сигнала текущего ARFCN будет значительно меньше. В этом случае мобильному телефону может показаться, что он далеко от базовой станции. Чтобы этого избежать, BTS заполняет неиспользуемые таймслоты бессмысленным трафиком.

Access Burst
При установлении соединения с BTS мобильный телефон посылает запрос выделенного канала SDCCH на канале RACH. Базовая станция, получив такой burst, назначает абоненту его тайминги системы FDMA и отвечает на канале AGCH, после чего мобильный телефон может получать и отправлять Normal Bursts. Стоит отметить увеличенную продолжительность Guard time, так как изначально ни телефону, ни базовой станции не известна информация о временных задержках. В случае, если RACH-запрос не попал в таймслот, мобильный телефон спустя псевдослучайный промежуток времени посылает его снова.

2.6 Frequency Hopping

Цитата из Википедии:

Псевдослучайная перестройка рабочей частоты (FHSS - англ. frequency-hopping spread spectrum) - метод передачи информации по радио, особенность которого заключается в частой смене несущей частоты. Частота меняется в соответствии с псевдослучайной последовательностью чисел, известной как отправителю, так и получателю. Метод повышает помехозащищённость канала связи.


3.1 Основные векторы атак

Посколько Um-интерфейс является радиоинтерфейсом, весь его трафик «виден» любому желающему, находящемуся в радиусе действия BTS. Причем анализировать данные, передаваемые через радиоэфир, можно даже не выходя из дома, используя специальное оборудование (например, старый мобильный телефон, поддерживаемый проектом OsmocomBB, или небольшой донгл RTL-SDR) и прямые руки самый обычный компьютер.

Выделяют два вида атаки: пассивная и активная. В первом случае атакующий никак не взаимодействует ни с сетью, ни с атакуемым абонентом - исключительно прием и обработка информации. Не трудно догадаться, что обнаружить такую атаку почти не возможно, но и перспектив у нее не так много, как у активной. Активная атака подразумевает взаимодействие атакующего с атакуемым абонентом и/или сотовой сетью.

Можно выделить наиболее опасные виды атак, которым подвержены абоненты сотовых сетей:

  • Сниффинг
  • Утечка персональных данных, СМС и голосовых звонков
  • Утечка данных о местоположении
  • Спуфинг (FakeBTS или IMSI Catcher)
  • Удаленный захват SIM-карты, исполнение произвольного кода (RCE)
  • Отказ в обслуживании (DoS)

3.2 Идентификация абонентов

Как уже упоминалось в начале статьи, идентификация абонентов выполняется по IMSI, который записан в SIM-карте абонента и HLR оператора. Идентификация мобильных телефонов выполняется по серийному номеру - IMEI. Однако, после аутентификации ни IMSI, ни IMEI в открытом виде по эфиру не летают. После процедуры Location Update абоненту присваивается временный идентификатор - TMSI (Temporary Mobile Subscriber Identity), и дальнейшее взаимодействие осуществляется именно с его помощью.

Способы атаки
В идеале, TMSI абонента известен только мобильному телефону и сотовой сети. Однако, существуют и способы обхода данной защиты. Если циклически звонить абоненту или отправлять SMS-сообщения (а лучше Silent SMS), наблюдая за каналом PCH и выполняя корреляцию, можно с определенной точностью выделить TMSI атакуемого абонента.

Кроме того, имея доступ к сети межоператорного взаимодействия SS7, по номеру телефона можно узнать IMSI и LAC его владельца. Проблема в том, что в сети SS7 все операторы «доверяют» друг другу, тем самым снижая уровень конфиденциальности данных своих абонентов.

3.3 Аутентификация

Для защиты от спуфинга, сеть выполняет аутентификацию абонента перед тем, как начать его обслуживание. Кроме IMSI, в SIM-карте хранится случайно сгенерированная последовательность, называемая Ki, которую она возвращает только в хэшированном виде. Также Ki хранится в HLR оператора и никогда не передается в открытом виде. Вцелом, процесс аутентификации основан на принципе четырехстороннего рукопожатия:

  1. Абонент выполняет Location Update Request, затем предоставляет IMSI.
  2. Сеть присылает псевдослучайное значение RAND.
  3. SIM-карта телефона хэширует Ki и RAND по алгоритму A3. A3(RAND, Ki) = SRAND.
  4. Сеть тоже хэширует Ki и RAND по алгоритму A3.
  5. Если значение SRAND со стороны абонента совпало с вычисленным на стороне сети, значит абонент прошел аутентификацию.

Способы атаки
Перебор Ki, имея значения RAND и SRAND, может занять довольно много времени. Кроме того, операторы могут использовать свои алгоритмы хэширования. В сети довольно мало информации о попытках перебора. Однако, не все SIM-карты идеально защищены. Некоторым исследователям удавалось получить прямой доступ к файловой системе SIM-карты, а затем извлечь Ki.

3.4 Шифрование трафика

Согласно спецификации, существует три алгоритма шифрования пользовательского трафика:
  • A5/0 - формальное обозначение отсутствия шифрования, так же как OPEN в WiFi-сетях. Сам я ни разу не встречал сетей без шифрования, однако, согласно gsmmap.org , в Сирии и Южной Корее используется A5/0.
  • A5/1 - самый распространенный алгоритм шифрования. Не смотря на то, что его взлом уже неоднократно демонстрировался на различных конференциях, используется везде и повсюду. Для расшифровки трафика достаточно иметь 2 Тб свободного места на диске, обычный персональный компьютер с Linux и программой Kraken на борту.
  • A5/2 - алгоритм шифрования с умышленно ослабленной защитой. Если где и используется, то только для красоты.
  • A5/3 - на данный момент самый стойкий алгоритм шифрования, разработанный еще в 2002 году. В интернете можно найти сведения о некоторых теоретически возможных уязвимостях, однако на практике его взлом еще никто не демонстрировал. Не знаю, почему наши операторы не хотят использовать его в своих 2G-сетях. Ведь для это далеко не помеха, т.к. ключи шифрования известны оператору и трафик можно довольно легко расшифровывать на его стороне. Да и все современные телефоны прекрасно его поддерживают. К счастью, его используют современные 3GPP-сети.
Способы атаки
Как уже говорилось, имея оборудование для сниффинга и компьютер с 2 Тб памяти и программой Kraken, можно довольно быстро (несколько секунд) находить сессионные ключи шифрования A5/1, а затем расшифровывать чей-угодно трафик. Немецкий криптолог Карстен Нол (Karsten Nohl) в 2009 году продемонстрировал способ взлома A5/1. А через несколько лет Карстен и Сильвиан Мюно продемонстрировали перехват и способ дешифровки телефонного разговора с помошью нескольких старых телефонов Motorola (проект OsmocomBB).

Заключение

Мой длинный рассказ подошел к концу. Более подробно и с практической стороны с принципами работы сотовых сетей можно будет познакомиться в цикле статей Знакомство с OsmocomBB , как только я допишу оставшиеся части. Надеюсь, у меня получилось рассказать Вам что-нибудь новое и интересное. Жду Ваших отзывов и замечаний! Добавить метки

В комментариях к постам про сеть WiMAX ( , ) и про GPRS был выражен интерес к сетям сотовой связи, поэтому решил реализовать свою давнюю задумку и описать хабрасообществу как же устроены современные сети сотовой связи.

На приведённой картинке изображена общая структура сетей сотовой связи. Изначально сеть разделяется на 2 больших подсети - сеть радиодоступа (RAN - Radio Access Network) и сеть коммутации или опорную сеть (CN - Core Network).

Хочу подчеркнуть, что буду описывать именно существующие сети сотовой связи для СНГ, потому что в Европе, Америке и Азии сети более развиты и их структура несколько отличается от наших сетей, про это напишу как-нибудь позже, если будет интерес.

Сперва, хотелось бы рассказать в общих словах про сеть, а потом более подробно расскажу про функции каждого из элементов сети.

Сеть радиодоступа

Существующие сети радиодоступа у наших операторов - продукт долгой эволюции, поэтому они состоят из сети радиодоступа к GSM (GERAN - GSM EDGE Radio Access Network) и сеть радиодоступа к UMTS (UTRAN - UMTS Terrestrial Radio Access Network). Сверху слева на картинке вы видите GERAN, внизу слева, соответственно UTRAN. Наибольшие изменения при переходе от GSM к UMTS происходят как раз в сети радиодоступа - оператору нужно построить вторую сеть и заново покрыть уже имеющиеся территории.

Сеть радиодоступа - эта та паутина, которой охвачены огромные территории городов и открытых местностей, за счёт неё как раз и обеспечивается то огромное погрытие, которое предоставляют сети сотовой связи.

Опорная сеть

Опорная сеть - ядро сетей сотовой связи. Название опорная - мой вольный перевод, в GSM эту часть сети называют сетью коммутации, в UMTS - Core Network, что по сути можно перевести как ядро сети. К этому ядру, как периферийные устройства к системному блоку, могут подключаться различные сети радиодоступа. Опорная сеть мало эволюционирует в связи с эволюцией от GSM к UMTS, эта сильная эволюция происходит немного позже - её уже прошли западные и азиатские операторы, у нас же она только начинается.

Опорная сеть на приведённой выше картинке разделена на 2 части - верхняя правая часть отвечает за голосовые соединения, или CS-соединения (Circuit Switch), нижняя правая часть отвечает за пакетные соединения, или же PS-соединения (Packet Switch).

Опорная сеть сосредоточена в одном или нескольких зданий, принадлежащих оператору сотовой связи, в больших машинных залах - проще говоря огроменнейшая серверная, где стоит большое количество шкафов оборудования, их ещё холодильниками иногда называют, потому что с виду очень похожи:)

HLR - Home Location Register, Регистр положения домашних абонентов.
По сути это большая база данных, в которой хранится всё об абоненте данной сети. В крупных сетях, таких, как у операторов большой тройки, таких узлов несколько - они разбросаны по регионам. Их количество измеряется единицами штук. Для того, чтобы понимать порядки - в Питере такой узел один, в Москве другой, на Урале ещё один, ещё на Кавказе, в Сибири - 3-4 штучки… На практике это может быть распределённая БД, потому что ёмкости одного HLR может не хватить для хранения данных обо всех абонентах. Тогда оператор докупает ещё один HLR (физическое устройство) и организует распределённую БД.

Какая же информация там хранится? По большей части, это информация об услугах, подключенных у абонента:
- может ли абонент совершать исходящие звонки
- может ли абонент отправлять/принимать SMS
- разрешена ли услуга конференц-связи
- ну и все остальные возможные услуги
Также здесь хранится такая важная информация, как идентификатор того MSC, в зоне действия которого сейчас находится абонент. Позже мы увидим для чего это может быть нужно.

MSC/VLR

MSC - Mobile Switching Center, центр коммутации для мобильных абонентов;
VLR - Visitor Location Register, регистр положения гостевых абонентов.
Логически это 2 раздельных узла, но на практике, это реализовано в одном и том же устройстве.
VLR хранит в себе копию тех данных, которые записаны в HLR с той лишь разницей, что тут уже нет информации о том MSC, в зоне действия которого находится абонент. Здесь хранится информация о том, в зоне действия какого BSC находится данный абонент. Ну и здесь, естественно, хранятся данные только о тех абонентах, которые сейчас находятся в зоне действия того MSC, к которому подключен данный VLR.

MSC - классический коммутатор (конечно, не такой классический, который можно увидеть в музеях, где сидели бабушки и перетыкали проводки). Основные его функции - для исходящего вызова - определить куда переключить вызов, для входящего же соединения - определить на какой BSC отправить вызов. Для выполнения этих то функций он и обращается в VLR за хранящейся там информацией. Здесь стоит заметить, что это плюс разнесения HLR и VLR - MSC не будет стучаться в HLR каждый раз, когда абоненту что-то нужно, а будет всё делать своими силами. Также MSC собирает данные для биллинга, далее эти данные скармливаются соответствующим системам.

AUC - AUthentication Center, центр аутентификации абонентов. Этот узел отвечает за то, чтобы злоумышленник не мог получить доступ к сети от вашего лица. Также этот узел генерирует ключи шифрования, с помощью которых шифруется ваше соединение с сетью в самом уязвимом месте - на радиоинтерфейсе.

GMSC - Gateway MSC, шлюзовой коммутатор. Этот узел сети используется только при входящих вызовах. У операторов есть определённая номерная ёмкость, этой номерной ёмкости сопоставляются шлюзовые коммутаторы сетей связи (сотовых, фиксированных). Когда вы набираете номер друга, ваш звонок доходит до коммутатора (MSC) вашей сети и он определяет куда дальше отправить этот вызов на основе имеющихся у него соответствий между номерами и шлюзами сетей. Звонок отправляется на GMSC сотового оператора, которым пользуется ваш друг. Далее GMSC делает запрос в HLR и узнаёт в зоне действия какого MSC сейчас находится вызываемый абонент. Туда дальше и перенаправляется вызов.

SGSN - Serving GPRS Support Node, обслуживающий узел поддержки GPRS. Этот узел отвечает за то, чтобы определить каким образом предоставлять услуги на основе запрошенной APN (Access Point Name, точки доступа, например, mms.beeline.ru). Также на этом узле осуществляется посчёт трафика.

GGSN - Gateway GPRS Support Node, шлюзовой узел поддержки GPRS. Ну это шлюз, отвечает за правильную доставку пакетов до пользователя.

BSC - Base Station Controller, контроллер базовых станций. Узел, к которому подключаются базовые станции, дальше он осуществляет управление базовыми станциями - назначает какому абоненту где сколько ресурсов выделить, определяет каким образом осуществляются хэндоверы. Когда с MSC приходит сигнал о входящем соединении для абонента, контроллер осуществляет процедуру пейджинга - через все подчинённые ему базовые станции посылает вызов данному абоненту, который должен отозваться через одну из базовых станций.

TRC - TRansCoder, транскодер. Устройство, отвечающее за перекодирование речи из формата GSM в стандартный формат телефонии, используемый в фиксированных сетях связи и обратно. Таким образом, получается, что речь передаётся в формате сетей фиксированной связи в сети GSM на участке от GMSC до TRC.

BTS - Base Transceiver Station, базовая приёмопередающая станция. Это то, что непосредственно находится близко к самому пользователю. Именно базовые станции образуют ту самую паутину, которой накрывают операторы сотовой связи, именно от их количества зависит территория, на которой предоставляют услуги операторы сотовой связи. По сути - довольно глупое устройство, оно обеспечивает выделение пользователям отдельных каналов связи, преобразует сигнал в высокочастотный, который будет передаваться в эфир, ну и выдаёт этот самый высокочастотный сигнал на антенны. А вот антенны то мы и можем наблюдать каждый день.

Хочу заметить, что антеннки - это не есть базовая станция:) Базовая станция похожа на холодильник - шкафчик с модулями, который стоит в специальном месте. Это специальное место - например, синенькие вагончики, которые ставятся под красно-белыми вышками где-нибудь в пригороде.

В результате, физический канал между приемником и передатчиком определяется частотой, выделенными фреймами и номерами таймслотов в них. Обычно базовые станции используют один или несколько каналов ARFCN, один из которых используется для идентификации присутствия BTS в эфире. Первый таймслот (индекс 0) фреймов этого канала используется в качестве базового служебного канала (base-control channel или beacon-канал). Оставшаяся часть ARFCN распределяется оператором для CCH и TCH каналов на свое усмотрение.

2.3 Логические каналы

На основе физических каналов формируются логические. Um-интерфейс подразумевает обмен как пользовательской информацией, так и служебной. Согласно спецификации GSM, каждому виду информации соответствует специальный вид логических каналов, реализуемых посредством физических:

  • каналы трафика (TCH - Traffic Channel),
  • каналы служебной информации (CCH - Control Channel).
Каналы трафика делятся на два основных вида: TCH/F - Full rate канал с максимальной скоростью до 22,8 Кбит/с и TCH/H - Half rate канал с максимальной скоростью до 11,4 Кбит/с. Данные виды каналов могут быть использованы для передачи речи (TCH/FS, TCH/HS) и пользовательских данных (TCH/F9.6, TCH/F4.8, TCH/H4.8, TCH/F2.4, TCH/H2.4), например, SMS.

Каналы служебной информации делятся на:

  • Широковещательные (BCH - Broadcast Channels).
    • FCCH - Frequency Correction Channel (канал коррекции частоты). Предоставляет информацию, необходимую мобильному телефону для коррекции частоты.
    • SCH - Synchronization Channel (канал синхронизации). Предоставляет мобильному телефону информацию, необходимую для TDMA-синхронизации с базовой станцией (BTS), а также ее идентификационные данные BSIC .
    • BCCH - Broadcast Control Channel (широковещательный канал служебной информации). Передает основную информацию о базовой станции, такую как способ организации служебных каналов, количество блоков, зарезервированных для сообщений предоставления доступа, а также количество мультифреймов (объемом по 51 TDMA-фрейму) между Paging-запросами.
  • Каналы общего назначения (CCCH - Common Control Channels)
    • PCH - Paging Channel. Забегая вперед, расскажу, что Paging - это своего рода ping мобильного телефона, позволяющий определить его доступность в определенной зоне покрытия. Данный канал предназначен именно для этого.
    • RACH - Random Access Channel (канал произвольного доступа). Используется мобильными телефонами для запроса собственного служебного канала SDCCH. Исключительно Uplink-канал.
    • AGCH - Access Grant Channel (канал уведомлений о предоставлении доступа). На этом канале базовые станции отвечают на RACH-запросы мобильных телефонов, выделяя SDCCH, либо сразу TCH.
  • Собственные каналы (DCCH - Dedicated Control Channels)
    Собственные каналы, так же как и TCH, выделяются определенным мобильным телефонам. Существует несколько подвидов:
    • SDCCH - Stand-alone Dedicated Control Channel. Данный канал используется для аутентификации мобильного телефона, обмена ключами шифрования, процедуры обновления местоположения (location update), а также для осуществления голосовых вызовов и обмена SMS-сообщениями.
    • SACCH - Slow Associated Control Channel. Используется во время разговора, либо когда уже задействован канал SDCCH. С его помощью BTS передает телефону периодические инструкции об изменении таймингов и мощности сигнала. В обратную сторону идут данные об уровне принимаемого сигнала (RSSI), качестве TCH, а также уровень сигнала ближайших базовый станций (BTS Measurements).
    • FACCH - Fast Associated Control Channel. Данный канал предоставляется вместе с TCH и позволяет передавать срочные сообщения, например, во время перехода от одной базовой станции к другой (Handover).

2.4 Что такое burst?

Данные в эфире передаются в виде последовательностей битов, чаще всего называемых «burst», внутри таймслотов. Термин «burst», наиболее подходящим аналогом которому является слово «всплеск», должен быть знаком многим радиолюбителям, и появился, скорее всего, при составлении графических моделей для анализа радиоэфира, где любая активность похожа на водопады и всплески воды. Подробнее о них можно почитать в этой замечательной статье (источник изображений), мы остановимся на самом главном. Схематичное представление burst может выглядеть так:

Guard Period
Во избежание возникновения интерференции (т.е. наложения двух busrt друг на друга), продолжительность burst всегда меньше продолжительности таймслота на определенное значение (0,577 - 0,546 = 0,031 мс), называемое «Guard Period». Данный период представляет собой своего рода запас времени для компенсации возможных задержек по времени при передаче сигнала.

Tail Bits
Данные маркеры определяют начало и конец burst.

Info
Полезная нагрузка burst, например, данные абонентов, либо служебный трафик. Состоит из двух частей.

Stealing Flags
Эти два бита устанавливаются когда обе части данных burst канала TCH переданы по каналу FACCH. Один переданный бит вместо двух означает, что только одна часть burst передана по FACCH.

Training Sequence
Эта часть burst используется приемником для определения физических характеристик канала между телефоном и базовой станцией.

2.5 Виды burst

Каждому логическому каналу соответствуют определенные виды burst:

Normal Burst
Последовательности этого типа реализуют каналы трафика (TCH) между сетью и абонентами, а также все виды каналов управления (CCH): CCCH, BCCH и DCCH.

Frequency Correction Burst
Название говорит само за себя. Реализует односторонний downlink-канал FCCH, позволяющий мобильным телефонам более точно настраиваться на частоту BTS.

Synchronization Burst
Burst данного типа, так же как и Frequency Correction Burst, реализует downlink-канал, только уже SCH, который предназначен для идентификации присутствия базовых станций в эфире. По аналогии с beacon-пакетами в WiFi-сетях, каждый такой burst передается на полной мощности, а также содержит информацию о BTS, необходимую для синхронизации с ней: частота кадров, идентификационные данные (BSIC), и прочие.

Dummy Burst
Фиктивный burst, передаваемый базовой станцией для заполнения неиспользуемых таймслотов. Дело в том, что если на канале нет никакой активности, мощность сигнала текущего ARFCN будет значительно меньше. В этом случае мобильному телефону может показаться, что он далеко от базовой станции. Чтобы этого избежать, BTS заполняет неиспользуемые таймслоты бессмысленным трафиком.

Access Burst
При установлении соединения с BTS мобильный телефон посылает запрос выделенного канала SDCCH на канале RACH. Базовая станция, получив такой burst, назначает абоненту его тайминги системы FDMA и отвечает на канале AGCH, после чего мобильный телефон может получать и отправлять Normal Bursts. Стоит отметить увеличенную продолжительность Guard time, так как изначально ни телефону, ни базовой станции не известна информация о временных задержках. В случае, если RACH-запрос не попал в таймслот, мобильный телефон спустя псевдослучайный промежуток времени посылает его снова.

2.6 Frequency Hopping

Цитата из Википедии:

Псевдослучайная перестройка рабочей частоты (FHSS - англ. frequency-hopping spread spectrum) - метод передачи информации по радио, особенность которого заключается в частой смене несущей частоты. Частота меняется в соответствии с псевдослучайной последовательностью чисел, известной как отправителю, так и получателю. Метод повышает помехозащищённость канала связи.


3.1 Основные векторы атак

Посколько Um-интерфейс является радиоинтерфейсом, весь его трафик «виден» любому желающему, находящемуся в радиусе действия BTS. Причем анализировать данные, передаваемые через радиоэфир, можно даже не выходя из дома, используя специальное оборудование (например, старый мобильный телефон, поддерживаемый проектом OsmocomBB, или небольшой донгл RTL-SDR) и прямые руки самый обычный компьютер.

Выделяют два вида атаки: пассивная и активная. В первом случае атакующий никак не взаимодействует ни с сетью, ни с атакуемым абонентом - исключительно прием и обработка информации. Не трудно догадаться, что обнаружить такую атаку почти не возможно, но и перспектив у нее не так много, как у активной. Активная атака подразумевает взаимодействие атакующего с атакуемым абонентом и/или сотовой сетью.

Можно выделить наиболее опасные виды атак, которым подвержены абоненты сотовых сетей:

  • Сниффинг
  • Утечка персональных данных, СМС и голосовых звонков
  • Утечка данных о местоположении
  • Спуфинг (FakeBTS или IMSI Catcher)
  • Удаленный захват SIM-карты, исполнение произвольного кода (RCE)
  • Отказ в обслуживании (DoS)

3.2 Идентификация абонентов

Как уже упоминалось в начале статьи, идентификация абонентов выполняется по IMSI, который записан в SIM-карте абонента и HLR оператора. Идентификация мобильных телефонов выполняется по серийному номеру - IMEI. Однако, после аутентификации ни IMSI, ни IMEI в открытом виде по эфиру не летают. После процедуры Location Update абоненту присваивается временный идентификатор - TMSI (Temporary Mobile Subscriber Identity), и дальнейшее взаимодействие осуществляется именно с его помощью.

Способы атаки
В идеале, TMSI абонента известен только мобильному телефону и сотовой сети. Однако, существуют и способы обхода данной защиты. Если циклически звонить абоненту или отправлять SMS-сообщения (а лучше Silent SMS), наблюдая за каналом PCH и выполняя корреляцию, можно с определенной точностью выделить TMSI атакуемого абонента.

Кроме того, имея доступ к сети межоператорного взаимодействия SS7, по номеру телефона можно узнать IMSI и LAC его владельца. Проблема в том, что в сети SS7 все операторы «доверяют» друг другу, тем самым снижая уровень конфиденциальности данных своих абонентов.

3.3 Аутентификация

Для защиты от спуфинга, сеть выполняет аутентификацию абонента перед тем, как начать его обслуживание. Кроме IMSI, в SIM-карте хранится случайно сгенерированная последовательность, называемая Ki, которую она возвращает только в хэшированном виде. Также Ki хранится в HLR оператора и никогда не передается в открытом виде. Вцелом, процесс аутентификации основан на принципе четырехстороннего рукопожатия:

  1. Абонент выполняет Location Update Request, затем предоставляет IMSI.
  2. Сеть присылает псевдослучайное значение RAND.
  3. SIM-карта телефона хэширует Ki и RAND по алгоритму A3. A3(RAND, Ki) = SRAND.
  4. Сеть тоже хэширует Ki и RAND по алгоритму A3.
  5. Если значение SRAND со стороны абонента совпало с вычисленным на стороне сети, значит абонент прошел аутентификацию.

Способы атаки
Перебор Ki, имея значения RAND и SRAND, может занять довольно много времени. Кроме того, операторы могут использовать свои алгоритмы хэширования. В сети довольно мало информации о попытках перебора. Однако, не все SIM-карты идеально защищены. Некоторым исследователям удавалось получить прямой доступ к файловой системе SIM-карты, а затем извлечь Ki.

3.4 Шифрование трафика

Согласно спецификации, существует три алгоритма шифрования пользовательского трафика:
  • A5/0 - формальное обозначение отсутствия шифрования, так же как OPEN в WiFi-сетях. Сам я ни разу не встречал сетей без шифрования, однако, согласно gsmmap.org , в Сирии и Южной Корее используется A5/0.
  • A5/1 - самый распространенный алгоритм шифрования. Не смотря на то, что его взлом уже неоднократно демонстрировался на различных конференциях, используется везде и повсюду. Для расшифровки трафика достаточно иметь 2 Тб свободного места на диске, обычный персональный компьютер с Linux и программой Kraken на борту.
  • A5/2 - алгоритм шифрования с умышленно ослабленной защитой. Если где и используется, то только для красоты.
  • A5/3 - на данный момент самый стойкий алгоритм шифрования, разработанный еще в 2002 году. В интернете можно найти сведения о некоторых теоретически возможных уязвимостях, однако на практике его взлом еще никто не демонстрировал. Не знаю, почему наши операторы не хотят использовать его в своих 2G-сетях. Ведь для это далеко не помеха, т.к. ключи шифрования известны оператору и трафик можно довольно легко расшифровывать на его стороне. Да и все современные телефоны прекрасно его поддерживают. К счастью, его используют современные 3GPP-сети.
Способы атаки
Как уже говорилось, имея оборудование для сниффинга и компьютер с 2 Тб памяти и программой Kraken, можно довольно быстро (несколько секунд) находить сессионные ключи шифрования A5/1, а затем расшифровывать чей-угодно трафик. Немецкий криптолог Карстен Нол (Karsten Nohl) в 2009 году способ взлома A5/1. А через несколько лет Карстен и Сильвиан Мюно продемонстрировали перехват и способ дешифровки телефонного разговора с помошью нескольких старых телефонов Motorola (проект OsmocomBB).

Заключение

Мой длинный рассказ подошел к концу. Более подробно и с практической стороны с принципами работы сотовых сетей можно будет познакомиться в цикле статей , как только я допишу оставшиеся части. Надеюсь, у меня получилось рассказать Вам что-нибудь новое и интересное. Жду Ваших отзывов и замечаний!
  • мобильные устройства
  • радиоканал
  • радиосвязь
  • Добавить метки

    По состоянию на ноябрь 2007г. в России было около 168 млн. абонентов мобильной связи. При этом 85 % из них - клиенты GSM-операторов "большой тройки" - "Мобильных телесистем" (МТС), "Мегафона" и "Вымпелкома". Несмотря на то, что годовые темпы прироста постоянно сокращаются, уровень проникновения сотовых услуг в целом по России составляет 107%, при этом в Московской лицензионной зоне (МЛЗ) этот показатель составил 164%.

    Лидерство в приросте абонентской базы в общероссийском масштабе удерживает Мегафон, а в МЛЗ он уступает по этому показателю компании МТС. Среди федеральных и региональных операторов наиболее высокие темпы прироста абонентов в годовом исчислении демонстрируют Tele2, НТК, Байкалвестком и Енисейтелеком.

    Региональные GSM-операторы, не входящие в "большую сотовую тройку", ищут способ конкурентной борьбы с гигантами рынка. Большинство независимых GSM-операторов в России появились в последние несколько лет на базе операторов устаревшего стандарта AMPS. Все они в 2001-2002 гг. получили от Минсвязи лицензии, дающие им право на работу в стандарте GSM-1800.
    Сейчас эти компании одна за другой запускают GSM-сети, но их абоненты, оказавшись в других регионах, вынуждены платить за связь в роуминге по $1-$1,5 за минуту. Теперь эти компании намерены договориться о единых роуминговых тарифах друг для друга, что позволит абонентам сетей при перемещении по стране ощущать себя не хуже клиентов МТС, "Вымпелкома" и "МегаФона", для которых единые и сравнительно низкие тарифы на внутрисетевой роуминг являются одним из ключевых преимуществ операторов "большой тройки".

    Открытое Акционерное Общество «Мобильные ТелеСистемы» (МТС) - крупнейший оператор сотовой связи в России и странах СНГ, обслуживающий более 74 миллионов абонентов. Лицензионный портфель МТС включает большинство регионов России, Украину, Белоруссию, Узбекистан и Туркменистан, а население, проживающее в зоне действия сети МТС, составляет более 230 миллионов человек.
    Компания "Мобильные ТелеСистемы" была образована в октябре 1993 года. 19 ноября 1993 года МТС получила первую лицензию на оказание услуг сотовой связи стандарта GSM. 15 мая 1994 г. были совершены первые звонки в сети МТС и уже 7 июля 1994 года МТС начала подключать первых абонентов.
    В июне 2002 года МТС запустила сеть в Республике Беларусь. В марте 2003 года МТС приобрела контрольный пакет акций UMC, ведущего оператора мобильной связи в Украине.

    ОАО "Мегафон" - общероссийский оператор мобильной связи стандарта GSM 900/1800. Образован в мае 2002 года. Лицензионная территория ОАО "МегаФон" охватывает 100% территории России - все 89 субъектов РФ, где проживает 145 миллионов человек. МегаФон - первый общероссийский оператор мобильной связи стандарта GSM 900/1800.

    ОАО "ВымпелКом" является оператором сотовой связи в России, предоставляющим свои услуги под торговой маркой "Билайн". Лицензии на предоставление услуг сотовой связи группы компаний "ВымпелКом" охватывают территорию, на которой проживает 94% населения России, включая Москву, Московскую область и Санкт-Петербург. Сеть "Билайн" работает на территории 76 субъектов РФ.
    Компания "ВымпелКом" организована 15сентября 1992 г. В июне 1997 года осуществлен успешный запуск первой в России сети стандарта GSM-1800- "БИЛАЙН 1800". 21 октября 1998 года компания успешно запустила в Москве первую очередь двухдиапазонной сети GSM-900/1800.
    24 марта 1999 года АО "ВымпелКом" вошел в число членов Ассоциации Операторов GSM, которая объединяет компании, работающие встандарте GSM-900 и GSM-1800 на территории России и ряда стран СНГ.

    ЗАО «СредневолжскаяМежрегиональная Ассоциация РадиоТелекоммуникационных Систем» (СМАРТС) было основано в мае 1991 г. в Самаре. Учредителями компании на 95% являются физические лица. Сейчас GSM-сеть СМАРТС охватывает 16 регионов России. На сегодняшний день СМАРТС заключила роуминговые соглашения практически со всеми российскими сетями в 74 регионах. Мировой роуминг у компании действует в 78 странах.

    ОАО"Уралсвязьинформ" –крупнейший оператор мобильной связи и интернет-услуг Уральского региона. Компания работает на территории семи субъектов РФ общей площадью 1,9 млн. кв. км с населением более 15 млн. человек

    НСС Нижегородская Сотовая Связь - в конце июня 1995 года компания начала работу с абонентами. В 1999 году компания наладила связь с миром посредством международного роуминга.

    ОАО "Сибирьтелеком" - это крупнейший оператор телекоммуникационных услуг в Сибирском федеральном округе. Компания действует на территории около 5 тыс.кв.км с численностью населения порядка 21 млн. человек.

    TELE2 , до 1993года известная под названием Comviq, была основана в Швеции в 1981 году. В России TELE2 являетс явладельцем 12 российских компаний-операторов мобильной связи. Первая в России сеть мобильной связи TELE2 была запущена в Иркутске 1 апреля 2003 года.

    Знаете ли вы, что

     

     

    Это интересно: