Немецкий программист взломал первичный код шифрования разговоров в GSM сетях

Немецкий программист взломал первичный код шифрования разговоров в GSM сетях

Содержание

  • Введение
  • IMSI-ловушки. Что это?
  • Как это происходит
  • Анализ данных от диагностического интерфейса
  • Заключение
  • Полезные ссылки
  • Что такое IMSI?
  • Examples of IMSI numeric presentation[edit]
  • IMSI analysis[edit]
  • Home Network Identity[edit]
  • See also[edit]
  • WARNING
  • Что такое IMSI-перехватчик?
  • Когда появились первые IMSI-перехватчики?
  • Как IMSI-перехватчики монополизируют доступ к мобильнику?
  • Ассортимент продаваемых перехватчиков вызывает уважение. А что насчет кустарных поделок?
  • Могу ли я стать жертвой «случайного перехвата»?
  • Как IMSI-перехватчик может отслеживать мои перемещения?
  • Могут ли они слушать мои звонки?
  • Поиск по сайту
  • PHP Поиск
  • Форма определения оператора абонента (MNP)
  • Статистика по базе данных перенесенных номеров (БДПН)
  • IMSI, MCC, MNP, PLMN
    IMSI (International Mobile Subscriber Identity — международный идентификационный номер подписчика) Последние три цифры Вашего номера IMSI одинаковы с последними тремя цифрами серийного номера, напечатанного на Вашей SIM карте. IMSI — соответствует конкретному абоненту. IMSI 25099… соответствует Российскому(250) оператору Билайн(99).
    MCC (Mobile Country Code) — код, определяющий страну,в которой находится оператор мобильной связи, состоит из 3х десятичных цифр. Например, для России он равен 250, США — 310, Венгрия — 216, Китай — 460, Украина — 255, Белоруссия — 257.
    MNC (Mobile Network Code) — код мобильной сети (оператора). Он идёт после MCC. Состоит из 2х или 3х десятичных цифр и для каждого оператора он уникален. Используется для сетей GSM, UMTS, CDMA, Tetra. Таблица кодов MCC и MNC для операторов по всему миру.
    Коды MCC и MNP и соответствующие им названия страны и оператора доступны с помощью API запросов. Список МСС кодов.
    PLMN это код страны + код оператора, т.е. MCC + MNP.
    MSIN опознавательный номер абонентской станции — 10 десятичных знаков (для идентификации абонентской станции в пределах сети подвижной связи, к которой она подключена).
    LAC (Location Area Code) — код локальной зоны. В двух словах LAC — это объединение некоторого количества базовых станций, которые обслуживаются одним контроллером базовых станций (BSC). Этот параметр может быть представлен как в десятичном, так и в шестнадцатеричном виде.
    CellID (CID) — «идентификатор соты». Тот самый сектор базовой станции. Этот параметр также может быть представлен в десятичном, и шестнадцатеричном виде.
    MNP API
    Для получения информации об операторе абонента мобильной связи используйте следующий API-запрос: http://htmlweb.ru/api/mnp/phone/ТЕЛЕФОН?api_key=API_KEY_из_профиля Если успешно, то возвращается объект содержащий следующие поля: phone — номер телефона, region — Информация о регионе абонента: строка('Неизвестен') или массив ['id','name', …], mnc — mnc код оператора country — страна, например RU oper — Информация об операторе ['id','name','brand','mnc'] message — если есть доп. информация oper_from — id код оператора от кого перенесен, если номер перенесен от другого mobile=true — если данный абонент мобильной связи free=true — если это бесплатный номер типа 8-800 sip=true — данный номер работает по технологии IP-телефонииНапример: https://htmlweb.ru/json/mnp/phone/79185558000 {«status»:200, «phone»:79185558000, «region»:{«id»:49, «name»:»Ростовская область», «okrug»:»Южный федеральный округ», «autocod»:61.161, «capital»:1711, «english»:»Rostov oblast», «iso»:»ROS», «country»:»RU», «vid»:0}, «oper»:{«id»:3491, «name»:»МТС», «country»:»RU», «mnc»:1, «brand»:»»}, «upd»:»2018-12-12 08:58:16″, «mobile»:true, «limit»:18} Пример с перенесенным абонентом: https://htmlweb.ru/json/mnp/phone/79153472570 {«status»:200, «phone»:79153472570, «oper»:{«id»:4055, «name»:»ОАО «МегаФон»», «country»:»RU», «mnc»:2,»brand»:»МегаФон», «url»:»megafon.ru»}, «country»:»RU», «mnc»:2, «region»:{«id»:1, «name»:»Московская область», «okrug»:»Центральный федеральный округ», «autocod»:»50,90,150,190,177,199″, «capital»:1, «english»:»Moscow oblast», «iso»:»MOS», «country»:»RU», «vid»:0}, «oper_from»:1605, «mobile»:true, «limit»:79122 } Общие параметры для всех API сервисовДругие сервисы, доступные по APIСтоимсть API запроса и тарифы
    Получить номер телефона в любой из 150 стран
  • В каких ещё странах доступен перенос номера от одного оператора к другому

Введение

Начнём издалека, а именно с того, что GSM-связь очень плохо поддаётся изучению. Нельзя просто так взять © и поэкспериментировать с мобильной связью. Хотите соорудить девайс и подключиться к сети, анализировать протокол? Облом — коммуникационные процессоры не имеют нужного API и тем более открытого кода.

По сути — это чёрные ящики за семью замками. Максимум, что они “выставляют” наружу — примитивный интерфейс на основе AT-команд. Хотя, если быть точным, то иногда немного больше – но об этом позже. Поднять свой сервер свою базовую станцию? Это долго, дорого и за вами могут приехать.

Существуют замечательные проекты, такие как OpenBTS и SDR (software defined radio), но не обольщайтесь. Во-первых, полноценная сотовая сеть состоит из множества компонентов, а во-вторых — необходимое железо неприлично дорогое. Вот такая несправедливость.Немецкий программист взломал первичный код шифрования разговоров в GSM сетяхНе хотите ли прикупить OpenBTS development kit (сетей 2.5G) фирмы Range Networks за $3300?Немецкий программист взломал первичный код шифрования разговоров в GSM сетяхEttus выпускает такие гик-девайсы для экспериментов в сотовых сетях вплоть до 6 ГГц. Цена около $4000.

IMSI-ловушки. Что это?

Но вернёмся к теме статьи. IMSI-ловушки — это мобильные ложные базовые станции, которые спецслужбы включают при различных обстоятельствах в разных местах. Мобильные телефоны “цепляются” к этим станциям, которые фактически выступают в роле Man-in-the-middle.

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

А где-то и до дебатов не доходит. Однако косвенные доказательства есть. Как правило, ловушки включаются в местах народных волнений, либо вокруг объектов, представляющих высокую государственную важность.

Часто IMSI-идентификаторы особо интересных личностей заносятся в список фильтрации, и далее работают только с телефонами конкретных людей. А теперь познакомимся с IMSI-ловушками поподробнее. Для начала классифицируем их поведение. Оно может поддерживать 2 режима — активный и пассивный.

В активном ловушка выступает в роли базовой станции. В пассивном — мониторит канал и другие базовые станции. Наиболее интересен, конечно же, активный режим. Опишем его функции.

Прикидываемся базовой станцией

Согласно алгоритму GSM, сотовый телефон обычно выбирает станцию с наиболее сильным сигналом. Это разумно — можно снизить мощность передатчика и сэкономить батарейку. Таким образом ловушка “забирает” телефоны на себя. Далее она запрашивает с телефона его…

  • IMSI: Interntaion Mobile Subscriber Identifier — фактически это уникальный номер SIM-карты;
  • IMEI: Interntaion Mobile Equipment Identifier — уникальный номер аппарата.

Это происходит в рамках стандартных протоколов GSM-стека. Итак, мы вышли на конкретного человека.IMSI-ловушка “StingRay” известной фирмы Harris

Нарушение связи

Возможно оставить абонента без связи: сначала “захватить” на себя, а потом оборвать, и так до бесконечности. А можно выдавать мусор или заведомо некорректные пакеты.

Перехват разговоров

Самое вкусное. Здесь все не так просто, однако проще чем могло бы быть. Как известно, в GSM предусмотрели защиту от несанкционированного съёма информации. Существует несколько режимов:

  • А5/0 — фактически это plain text, шифрования нет;
  • А5/1 — первый вариант с потоковым шифром, который сейчас уже не считается достаточно стойким;
  • А5/2 — экспортный вариант А5/1 с намеренно заниженной стойкостью. Куда уж ниже?!
  • А5/3 — достаточно стойкий вариант, возникший с приходом 3G.

Как показал известный хакер Harald Welte, вся схема защиты в GSM местами зиждется на популярном принципе Security through obscurity и содержит фундаментальные уязвимости. При этом столпы GSM-индустрии годами игнорируют эти факты — всех всё устраивает.

Как это происходит

Опишем алгоритм, как ловушка вклинивается в эту систему. Сразу отметим, что если оператор изначально везде применяет А5/2, то задача становится тривиальной — этот шифр вскрывается в реальном времени. Но операторы не совсем идиоты, поэтому они используют А5/1.

Базовая станция анонсирует этот протокол и телефон на него “соглашается”, все довольны. Все шифры А5 работают на ключе, который хранится как у оператора, так и на SIM-карте. Он уникален для каждого абонента и за его сохранность отвечает крипточип SIM-карты.

Из этого следует, что ловушка по отношению к оригинальной базовой станции “прикидывается” абонентским устройством на алгоритме А5/1, а для реального телефона “прикидывается” базовой станцией на алгоритме А5/2, который вскрывается на лету.

Таким образом, ловушка извлекает секретный ключ абонента и реконструирует сессию с базовой станцией. Дело сделано. Как узнать, что ваш телефон переключился на слабый шифр? Обычно никак: индустрия сотовой связи заботится о людях — меньше знаешь, крепче спишь.

Однако в природе все же встречаются отдельные модели телефонов, которые как-то сигнализируют, и это не смартфоны. Где-то появляется иконка, а где-то незаметная строка утекает в лог, однако это обычно связано с переходом на А5/0. В любом случае, все это скорее исключения из правил.

Читайте также:  Asus представила доступный 5-дюймовый смартфон с поддержкой LTE

Противодействие

Естественно, борцы против Большого Брата не оставляют это дело без внимания. Так появился проект SnoopSnitch — это программа для Android, помогающая в обнаружении IMSI-ловушек в повседневной жизни.

Принцип её работы заключается в регулярном сборе статистики об окружающих базовых станциях: их характеристиках и местоположении. В случае обнаружения отклонения от привычной картины программа выдаёт предупреждение.

Тут же можно загрузить свои данные на сервер — там формируется глобальная база знаний обо всех базовых станциях мира. К сожалению, программа недоступна для большинства телефонов. Это связано с особенностью её работы.

Как уже было отмечено, в GSM-отрасли любые технические детали старательно вымарываются, но кое-что просачивается. Baseband-процессоры Qualcomm имеют специальный диагностический интерфейс (программный), через который возможно информирование о разных событиях из жизни сотовой связи.

В лучших традициях жанра, этот интерфейс недоступен обычным Android-приложениям, однако он все же доступен при наличии root. Если у вас телефон на чипсете Qualcomm, то, возможно, вам повезло. Познакомимся с интерфейсом поподробнее. Для начала выкачаем ядро для Qualcomm. Оно называется msm — по одноимённой серии Qualcomm SoC.

Взлом сотовых сетей GSM: расставляем точки над В«iВ» — Encyclopedia Electronica

Николай ЩЕТЬКО, ET CETERA

В середине лета сразу двое независимых исследователей на крупных хакерских конференциях продемонстрировали уязвимость средств шифрования голоса и сообщений в сотовых сетях стандарта GSM, самого популярного в мире на данный момент. Методы не революционны: они были известны и ранее, однако технический прогресс сделал «прослушку» сотовых сетей доступной практически любому злоумышленнику, экипированному необходимой техникой. Самое главное, что теперь вместо спецкомплексов (производства Rohde & Schwarz, Endoacustica и др.) за десятки и сотни тысяч долларов «чересчур любопытным» понадобится лишь мощный компьютер и желание разбираться в технических тонкостях.

Действительно ли сети GSM настолько уязвимы? Существуют ли прецеденты подобных взломов в Беларуси? На чем основаны предложенные хакерами методы взлома, в чем их особенности? Как защититься от угроз приватности? ET CETERA расставляет точки над «i» в этом вопросе.

Чтобы прояснить для себя все аспекты проблемы, в первую очередь мы обратились, разумеется, к сотовым операторам.

Р’ РњРўРЎ Рё velcom нам отказались что-либо официально комментировать, Р° РІРѕС‚ технический директор life:) Николай Юшкевич был более многословен: «Все требования СЃРѕ стороны нашего государства Рє этому РІРѕРїСЂРѕСЃСѓ всегда проверяются государством РЅР° этапе сертификации. Технологии РёРґСѓС‚ вперед, РІСЃРµ возможно. РќРѕ Рѕ прецедентах (взломов — РїСЂРёРј. авт.) как Сѓ РґСЂСѓРіРёС… операторов, так Рё Сѓ нас РІ сети СЏ РїРѕРєР° РЅРµ слышал».

Немецкий программист взломал первичный код шифрования разговоров в GSM сетях

  • Официальных комментариев РѕС‚ государственных органов получить РЅРµ удалось: РЅРё РІ Оперативно-аналитическом центре РїСЂРё президенте Республики Беларусь (РћРђР¦), РЅРё РІ Управлении «К» РњР’Р” Беларуси РЅР° наши запросы РЅРµ ответили, Р° РІ Министерстве СЃРІСЏР·Рё Рё информатизации порекомендовали обратиться РІ РћРђР¦.
  • Тем РЅРµ менее отдельные эксперты РІ данной сфере согласились поделиться СЃРІРѕРёРј мнением, Рё РЅРµ только РЅР° анонимной РѕСЃРЅРѕРІРµ. РќРѕ для начала…
  • Немного теории

Сотовый телефон или «мобильный терминал» подключается к сети оператора через базовые станции.

Одна базовая станция (специализированные приемопередатчик+компьютер, включенные в опорную сеть сотовой компании) обслуживает одновременно несколько аппаратов и является своеобразным «шлюзом», через который проходят голосовые разговоры, интернет-данные и другая связанная с конкретным абонентом информация.

Данные, которыми обмениваются в открытом радиоэфире мобильный терминал и базовая станция, предусмотрительно шифруются при помощи специализированных алгоритмов семейства A5.

�х несколько: A5/0 (без шифрования), А5/1 (наиболее массовый, 64-битный ключ), A5/2 (более слабое шифрование), A5/3 (наиболее устойчивый метод, ключ 128 бит).

Проблема в том, что A5/1 и A5/2 были разработаны достаточно давно, в 1987 и 1989 годах, и с тех пор сильно устарели.

Эти схемы шифрования взломаны, Р° значит, злоумышленник, обладающий определенным спец-РџРћ Рё РЅРµ слишком РґРѕСЂРѕРіРѕР№ техникой, может перехватывать (слушать Рё записывать, Р° также РІ некоторых случаях управлять маршрутизацией) Р·РІРѕРЅРєРё Рё SMS пользователей РїСЂСЏРјРѕ РёР· радиоэфира СЂСЏРґРѕРј СЃ местом своего нахождения. Более свежий алгоритм Рђ5/3 считается надежным — подтвержденных случаев его взлома РЅРµ известно.

Однако взломанный и старый А5/1 остается самым популярным вариантом в мире, и дело тут не только и не столько в инертности либо прижимистости операторов: источник в одной из белорусских сотовых компаний сообщил ET CETERA, что переходу на А5/3 мешает качество реализации алгоритма в ряде абонентских устройств. Многие терминалы сообщают о поддержке A5/3, но при этом работают с данной системой шифрования некорректно. А лишний поток жалоб, учитывая значительный процент «проблемного» оборудования в сети, никому не нужен. Белорусские операторы работают с уязвимым алгоритмом A5/1, заверил нас источник. �спользование данного алгоритма подтвердили в life:).

Все сказанное касается, в первую очередь, голоса и SMS: данные (интернет-трафик) шифруются другими алгоритмами (GEA1/GEA2/GEA3), информации о взломе которых в прессе и открытом доступе пока не проскальзывало. К тому же дата-трафик гораздо проще при необходимости защищать более мощными методами шифрования.

Впрочем, чтобы слушать чужие разговоры, РёРЅРѕРіРґР° даже РЅРµ нужно взламывать криптографическую защиту — существуют более изящные СЃРїРѕСЃРѕР±С‹.

Метод 1: фальшивая базовая станция

РћРґРёРЅ РёР· хорошо известных Рё успешно работающих методов — использование «фальшивой базовой станции», атака типа В«man in the middleВ» («человек посередине»).

Фундаментальная проблема системы безопасности GSM связана с тем, что при регистрации в сети аппарат проверяется сетью на принадлежность к ней, а вот сам телефон проверить сеть на адекватность не может, чем успешно и пользуются «прослушиватели».

РћРЅРё ставят РІ непосредственной близости РѕС‚ абонента источник мощного сигнала, мимикрирующий РїРѕРґ стандартную базовую станцию сотовой сети. Телефон РІРёРґРёС‚ станцию Рё РЅРµ может удержаться, чтобы Рє ней РЅРµ подключиться — сигнал-то такой мощный, хороший!

Аппарат подключается, Рё псевдобазовая станция командует ему отключить шифрование (перейти РЅР° алгоритм A5/0) — телефон обязан подчиниться.

Теперь все разговоры с него, пока аппарат находится в зоне действия фальшивой базовой станции, в открытом виде проходят через систему злоумышленника.

Там РѕРЅРё записываются (обрабатываются, перенаправляются Рё С‚.Рї.) Рё лишь потом поступают — или РЅРµ поступают, как СѓР¶ решит оператор «шлюза» — РІ настоящую сотовую сеть.

Ничего взламывать РЅРµ надо: телефон слепо выполняет команды ненастоящей базовой станции Рё отключает шифрование, Р° остальное — дело техники.

Метод старый, РЅРѕ ранее для его реализации нужно было приобрести дорогостоящий комплекс (обладателем патента РЅР° технологию, кстати, является известная фирма Rohde & Schwarz) или собрать его самому РёР· РЅРµ менее дорогостоящих компонентов. Теперь же программное обеспечение для «эмулятора базовой станции» СЃРІРѕР±РѕРґРЅРѕ лежит РІ Сети (разумеется, формально OpenBTS Рё аналоги открыто (разумеется, ции”печения для “обрать его самому РёР· РЅРµ менее дорогостоящих компонентов. упают РІ настоящую сотовую сеть. предназначены для решения РґСЂСѓРіРёС…, абсолютно невинных, задач), Р° техническая часть обойдется желающим РІ сравнительно СЃРєСЂРѕРјРЅСѓСЋ СЃСѓРјРјСѓ.

Р’ этом РіРѕРґСѓ шуму РЅР° известной хакерской конференции Defcon навел РљСЂРёСЃ Пэйджетт, который продемонстрировал, насколько легко заинтересованный специалист может перехватить Рё записать разговоры (РїРѕ сети GSM, конечно) слушателей своего доклада http://www.tombom.co.uk/cellphonespying.odp. Самое любопытное РІ этом докладе http://www.youtube.com/watch?v=q8JuYh7Km34 РЅРµ сам факт перехвата — техника, повторимся, отнюдь РЅРµ РЅРѕРІР°. Самое любопытное то, что, РїРѕ словам РљСЂРёСЃР°, система РёР· ноутбука СЃ открытым РџРћ (Debian/OpenBTS/Asterisk), радиомодулей (USRP1 плюс дочерние платы) Рё РґРІСѓС… направленных антенн обошлась ему РІ скромные полторы тысячи долларов. Также примечательно, что СЃ точки зрения американских законов демонстрация РЅРµ покидала правового поля: для легитимизации работы РІ радиоэфире РљСЂРёСЃ воспользовался любительской радиолицензией, Р° флэшку СЃРѕ всеми прослушанными/записанными РІ С…РѕРґРµ выступления разговорами показательно уничтожил.

Безусловно, РІСЃРµ выглядит красиво лишь РІ теории, Р° РЅР° практике действует СЂСЏРґ серьезных ограничений: каждый встречный-поперечный СЃ полутора тысячами РІ кармане прослушивать эфир РЅРµ сможет — хотя Р±С‹ потому, что РѕРЅ должен быть достаточно подкован РІ техническом плане.

Читайте также:  Паровая швабра: рейтинг лучших фирм и моделей, как выбрать, отзывы покупателей

Хватает и других аспектов.

Первое и важнейшее ограничение: абонента придется «сопровождать» при движении, чтобы он «случайно» не подключился к настоящей сети сотового оператора. А раз так, то с гораздо меньшими усилиями можно контролировать переговоры абонента более традиционными способами.

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

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

Третий вопрос связан с индикацией. Большинство сотовых аппаратов информируют владельцев о том, что шифрование отключено, специальной пиктограммой или текстом.

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

Однако операторы также имеют возможность отключить индикацию на аппарате, запрограммировав соответствующим образом выдаваемые абонентам SIM-карты.

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

Как же защититься РѕС‚ подобных уязвимостей? Самый простой СЃРїРѕСЃРѕР± — пользоваться исключительно 3G-сетями.

Тогда будет применяться более мощный алгоритм аутентификации пользователя (кстати, он может работать и в 2G-сетях), в рамках которого не только телефон опознается сетью, но и сеть проверяется на корректность аппаратом. Увы, 3G-покрытию до покрытия 2G еще очень далеко, и на практике работать только в 3G для нашей страны практически нереально.

  1. Правда, Сѓ злоумышленников есть лазейка даже СЃ 3G: РѕРЅРё РјРѕРіСѓС‚ целенаправленно «глушить» 3G-диапазон, Рё если телефон РЅРµ настроен РІ режим «только 3GВ» (чаще всего действительно работает вариант В«2G+3GВ», РїРѕ причине слабого покрытия), то РѕРЅ, РЅРµ найдя 3G-сети, подключится Рє фальшивой базовой станции 2G…
  2. Конечно же, абоненту важно следить за поведением телефона, а также за корректностью номеров входящих вызовов: если номер выглядит странно, а ваш собеседник говорит, что у него все в порядке, то не исключено, что где-то неподалеку затаился злоумышленник.
  3. Метод 2: расшифровка разговоров и SMS

Перехват разговоров в сети GSM

Переходим к рассмотрению взлома GSM. Статьи про уязвимости в A5/1 появились около 15 лет назад, но публичной демонстрации взлома A5/1 в ус- ловиях реального мира до сих пор не было.

Более того, как видно из описания работы сети надо понимать, что помимо взлома самого алгоритма шифрования нужно решить еще ряд сугубо инженерных проблем, которые обычно всегда опускаются из рассмотрения (в том числе на публичных демонстрациях). Большинство статей по взлому GSM опираются на статью Эли Баркана в 2006 году и исследование Карстена Нола (Karsten Noh).

В своей статье Баркан с соавторами показал, что т.к. в GSM коррекция ошибок идет до шифрования (а надо бы наоборот), возможно определенное уменьшение пространства поиска для подбора KC и реализация known– ciphertext атаки (при полностью пассивном прослушивании эфира) за прием- лемое время с помощью предварительно вычисленных данных.

Сами авторы статьи говорят, что при приеме без помех для взлома в течение 2 минут требуется 50 терабайт предвычисленных данных. В той же статье (в разделе про A5/2) указывается, что сигнал из эфира всегда идет с помехами, которые усложняют подбора ключа.

Для A5/2 приведен измененный алгоритм, который способен учитывать помехи, но при этом требует вдвое большего объема предвычисленных данных и, соответственно, время взлома увеличивает в два раз. Для A5/1 указана возможность построения аналогич- ного алгоритма, но сам он не приведен.

Можно предположить, что в этом случае также нужно увеличить объем предвычисленных данных вдвое. Процесс подбора ключа A5/1 является вероятностным и зависит от времени, т.е. чем дольше идет прослушивание, тем больше вероятность подобрать KC. Таким образом, заявленные в статье 2 минуты – это примерное, а не гарантированное время подбора KC.

Карстен Нол разрабатывает самый известный проект по взлому GSM сетей. Его фирма, занимающаяся проблемами компьютерной безопасности, собиралась к концу 2009 года выложить в открытый доступ радужные таблицы сессионных ключей алгоритма A5/1, который используется для шифрования речи в сетях GSM.

Свой демарш против A5/1 Карстен Нол объясняет желанием привлечь внимание общественности к существующей проблеме и заставить операторов связи переходить на более совершенные технологии. Например, технология UMTS предполагает использование 128 битного алгоритма A5/3, стойкость которого такова, что никакими доступными средствами на сегодняшний день взломать его не удастся.

По расчетам Карстена, полная таблица ключей A5/1 в упакованном виде будет занимать 128 петабайт и распределенно храниться на множестве компьютеров в сети. Для ее расчета потребуется около 80 компьютеров и 2–3 месяца работы. Существенное уменьшение времени вычислений должно оказать использование современных CUDA графических карт и программируемых массивов Xilinx Virtex.

В частности много шума наделало его выступление на 26С3 (Chaos Communication Congress) в декабре 2009 года. Кратко сформулировать суть выступления можно так: в скором времени можно ожидать появление бюджетных системы для онлайн декодирования A5/1. Переходим к инженерным проблемам.

Как получить данные из эфира? Для перехвата разговоров надо иметь полноценный сканер, который должен уметь разбираться, какие базовые вещают вокруг, на каких частотах, каким операторам они принадлежат, какие телефоны с какими TMSI в настоящий момент активны. Сканер должен уметь следить за разговором с указанного телефона, корректно обрабатывать переходы на другие частоты и базовые станции. В интернете есть предложения по приобретению подобного сканера без дешифратора за 40–50 тыс. долларов. Это нельзя назвать бюджетным устройством. Таким образом, для создания прибора, который после несложных манипуляций мог начинать прослушивать разговор по телефону, необходимо:

а) реализовать часть, которая работает с эфиром. В частности, позволяет указать, какой из TMSI соответствует искомому телефону или с помощью активных атак заставить телефоны «обнаружить» свои реальные IMSI и MSISDN;

б) реализовать алгоритм подбора KC для A5/1, хорошо работающий на реальных данных (с помехами/ошибками, пропусками и т.п.);

в) рассчитать для него «радужные таблицы» (rainbow tables);

г) объединить все эти пункты в законченное работающее решение.

Карстен и остальные исследователи в основном решают пункт «в». В частности он его коллеги предлагают использовать OpenBTS, airdump и Wireshark для создания перехватчика IMSI (IMSI catcher). Пока можно сказать, что это устройство эмулирует базовую станцию и встраивается между MS и настоящей базовой станцией.

Докладчики утверждают, что SIM–карта легко может запретить телефону показывать, что он работает в режиме шифрования A5/0 (т.е. без шифрования вообще) и что большинство SIM–карт в обороте именно такие. Это действительно возможно. В GSM 02.07, написано (Normative Annex B.1.

26), что SIM–карта содержит специальный бит OFM в поле Administrative , который при значении равном единице, приведет к запрету индикации шифрования соединения (в виде амбарного замочка). В GSM 11.11 указаны следующие права доступа к этому полю: чтение доступно всегда, а права на запись описаны как «ADM».

Конкретный набор прав, регулирующих запись в это поле, задается оператор на этапе создания SIM–карт. Таким образом, докладчики надеются, что большая часть карт выпускается с установленным битом и телефоны у них действительно не показывают индикацию отсутствия шифрования. Это действительно существенно облегчает работу IMSI сatcher–а т.к.

владелец телефона не может обнаружить отсутствие шифрования и что–то заподозрить. Интересная деталь.

Исследователи столкнулись с тем, что прошивки телефонов тестируются на соответствие спецификациям GSM и не тестируются на обработку нештатных ситуаций, поэтому, в случае некорректной работы базовой станции (например, «подставная» OpenBTS, которая использовалась для перехвата) телефоны зачастую зависают.

Наибольший резонанс вызвало заявление, что всего за $1500 можно из USRP, OpenBTS, Asterisk и airprobe собрать готовый комплект для прослушивания разговоров. Эта информация широко разошлась по Интернету, только авторы этих новостей и производных от них статей забыли упомянуть, что сами докладчики деталей не предоставили, а демонстрация не состоялась.

В декабре 2010 года Карстен и Мунот (Sylvain Munaut) снова выступил на конференции 27С3 с докладом про перехват разговоров в GSM сетях. На этот раз они представили более полный сценарий, но в нем присутствует множество «тепличных» условий. Для обнаружения местоположения они используют интернет–сервисы, которые дают возможность вбрасывать в сеть SS7 запросы «send routing info».

Читайте также:  Новая серия ноутбуков от Lenovo - ThinkPad Edge

SS7 – это сеть/стек протоколов, которые используются для общения телефонных операторов (GSM и «наземных») друг с другом и для общения компонент сети GSM друг с другом. Далее авторы делают ссылку на реализацию мобильной связи в Германии. Там полученное в результате запроса RAND хорошо коррелирует с кодом региона (area code/zip code).

Поэтому такие запросы там дают возможность определить с точностью до города или даже части города, где в Германии находится этот абонент. Но так делать оператор не обязан. Теперь исследователи знают город. После этого они берут сниффер, едут в найденный ранее город и начинают посещать все его LAC.

Приехав на территорию, которая входит в какой–то LAC, они посылают жертве SMS и слушают, идет ли пейджинг(paging) телефона жертвы (это происходит по незашифрованному каналу, во всех базовых сразу). Если вызов есть, то они получают сведения о TMSI, который был выдан абоненту. Если нет – едут проверять следующий LAC. Необходимо заметить, что т.к.

IMSI при пейджинге не передается (и исследователи его не знают), а передается только TMSI (который они и хотят узнать), то производится «атака по времени» (timing attack). Они посылают несколько SMS с паузами между ними, и смотрят, для каких TMSI производится пейджинг, повторяя процедуру до тех пор, пока в списке «подозрительных» TMSI не останется только один (или ни одного). Чтобы жертва не заметила такого «прощупывания», посылается такой SMS, который не будет показан абоненту. Это или специально созданный flash sms, или неверный (битый) SMS, который телефон обработает и удалит, при этом пользователю ничего показано не будет. Выяснив LAC, они начинают посещать все соты этого LAC, посылать SMS–ки и слушать отклики на пейджинг. Если есть ответ, то жертва находится вот в этой соте, и можно начинать взламывать ее сессионный ключ (KC) и слушать ее разговоры. Перед этим необходимо записать эфир. Здесь исследователи предлагают следующее:

1) существуют производимые на заказ FPGA–платы, которые способны одновременно записывать все каналы либо uplink (канал связи от абонента (телефона или модема) к базовой станции сотового оператора), либо downlink (канал связи от базовой станции к абоненту) частот GSM (890–915 и 935–960 МГц соответственно). Как уже было отмечено, стоит такое оборудование 40– 50 тыс. долларов, поэтому доступность такого оборудования для простого ис- следователя безопасности сомнительна;

2) можно брать менее мощное и более дешевое оборудование и слушать часть частот на каждом из них. Такой вариант стоит примерно 3,5 тыс. евро с решением на базе USRP2;

3) можно сначала сломать сессионный ключ, и потом декодировать траффик «на лету» и следовать за сменой частоты (frequency hopping) при помощи четырех телефонов, у которых вместо родной прошивки стоит альтернативная прошивка OsmocomBB. Роли телефонов: 1–й телефон используется для пейджинга и контроля ответов, 2–й телефон выделен абоненту для разговора.

При этом каждый телефон должен писать и прием и передачу. Это очень важный пункт. До этого момента OsmocomBB фактически не работал и за год (с 26С3 до 27С3) OsmocomBB был доделан до пригодного к использованию состояния, т.е. до конца 2010 года не было практического работающего решения. Взлом сессионного ключа.

Находясь в одной соте с жертвой, они посылают ей SMS, записывают общение жертвы с базовой, и взламывают ключ, пользуясь тем, что во время установления сессии (session setup) происходит обмен множеством полупустых пакетов или с предсказуемым содержимым. Для ускорения взлома используются радужные таблицы.

На момент проведения 26C3 эти таблицы были не так хорошо заполнены и взлом делался вовсе не за минуты и даже не за десятки минут (авторы упоминают час).

То есть, до 27C3 даже у Карстена (основного исследователя в этой области) не было решения, которое позволяло взломать KC за приемлемое время (в течении которого, скорее всего, не произойдет смена сессионого ключа (rekeying)).

Затем исследователи пользуются тем, что смена ключа редко делается после каждого звонка или SMS и сессионный ключ, который они узнали, не будет меняться в течение какого–то времени. Теперь, зная ключ, они могут декодировать зашифрованный траффик к/от жертвы в режиме реального времени, и делать смену частоты (frequency hopping) одновременно с жертвой.

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

1) Технология, описанная выше не существует в виде, доступном для любого желающего (в т.ч. script kiddies). Это даже не конструктор, а заготовка для деталей конструктора, которые надо доделывать до пригодного к исполь- зованию состоянию.

Исследователи неоднократно замечают, что у них нет четких планов по выкладыванию в общий доступ конкретики реализации.

Это означает, что на основании этих наработок производители Ближнего Востока не изготавливают массово устройства за 100 долларов, которые могут слушать все.

2) OsmocomBB поддерживает только одно семейство чипов (хотя и самое распространенное).

3) Способ определения местоположения по запросам к HLR и перебору LAC работает скорее в теории, чем на практике. На практике злоумышленник или знает, где находится жертва физически, или не может попасть в туже соту что и жертва. Если злоумышленник не может послушать ту же соту, в ко- торой находиться жертва, то способ не работает.

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

Более того, пейджинг работает не в момент отправки, а в определенные временные окна и пачками (по пейджинг–группам со своими очередями, номер которой есть остаток от деления IMSI на количество каналов, которое в каждой соте может быть свое), что опять усложняет реализацию.

4) Допустим, LA найден. Теперь надо “нащупать” ответ абонента. Передатчик телефона имеет мощность 1–2 ватта. Соответственно, проскани- ровать его с расстояния нескольких десятков метров тоже является задачей (не простой).

Получается парадокс: LA накрывает, например, целую область (город). В ней, например, 50 сот, у некоторых из которых радиус действия доходит до 30 км. Мы пытаемся поймать и расшифровать на ненаправленную антенну излучение.

Для реализации этой задачи в таком варианте требуется много оборудования. Если же исходить из предпосылки, при которой жертва находиться в прямой видимости, т.е.

расстояния, на котором перехват выгля- дит более реалистичным, намного эффективнее и проще направленный мик- рофон. Надо отметить, что на демонстрации исследователи перехватывают свои телефоны на расстоянии 2–х метров.

5) Перемещение жертвы между сотами также вызывает проблемы, т.к. вам также надо перемещаться вместе с ней.

6) Телефоны, используемые в демонстрации, требуют аппаратной модификации, в них нужно убрать фильтр с антенны, в противном случае теле- фоны «чужой» uplink не «увидят». Фильтр в телефоне нужен для того что бы «слушать» не все частоты, а только «свою».

7) Если в сети регулярно происходит смена ключа (rekeying) или меняются TMSI (ни один из исследователей не учитывал это), то это способ не работает вообще или работает очень плохо (время расшифровки может оказаться больше чем время разговора).

8) Прослушивать всю сеть не получится, надо знать номер телефона.

Ссылка на основную публикацию
Adblock
detector