Pull to refresh

Comments 56

>Основой для работы послужили утекшие несколько лет назад прошивки для baseband–процессоров отдельных телефонов.
А что, GSM настолько секретная технология, что нет ни доступных стандартов, никакой документации?
Почти все современные технологии максимально закрыты, и распространяются под NDA.
Есть. openbts.org/ например. С парой не слишком дорогих железок и опен-сорсного софта можно поднять свою GSM базовую станцию. Проблемма только в разрешение на нужные частоты, но при малой мощности передатчика, можно поэксперементировать и без него.
И базовой станции, и контроллера базовых станций, и телефона, и есть вспомогательные ноды для GPRS.
>Это позволило ученым понять, как работает алгоритм и «улучшить» его.
Судя по тексту, до утечки никто не знал даже алгоритма работы.
Что-то тут не то написали…
Traditionally, the details of how baseband processors work internally has been proprietary to makers of chips and handsets. But a few years ago, baseband code for a certain phone, the Vitelcom TSM30, leaked out. That enabled researchers to understand how baseband code works and spawned several open-source projects to study and tweak it.
Стандарты на GSM с какого момента стали полностью открытые. Никто в теории не мешал реализовывать самому свой бейзбэнд. Проблема была в патентах (они как я понимаю уже истекли) и в железе — и вот спеки на железяные части телефонов, как работают их процессоры (отдельные, для BaseBand) это все закрыто. Для чипов, которые в моторольских телефонах (несколько моделей C123/etc) хакеры раздобыли какие-то специ + реверс-инженеринг, отсюда проект osmocomBB на базе которого проводят такие исследования безопасности. Сам код телефонного стека хакеры сами писали, это не утекший код.
Denial of Service. Наверное, ещё проще это можно сделать, если пытаться зарегистрироваться на базовой станции миллионами ID.
думаю дело идет дальше… если телефон может получать сообщения за других, то это мягко говоря проблемка, первой жертвой определенно будет смс банкинг.
Вы не поняли сути атаки. Он не получает сообщения, а говорит «я могу получить» — из-за чего сообщение не доходит до адресата. Это совершенно не означает, что текст сообщения читаем — он шифруется.

Уязвимость шифров GSM — это отдельный разговор, да.
На 29C3 Nico Golde демонстрировал перехват чужих SMS с помощью такой атаки. Краткая суть: ОПСОСы (в Германии как минимум) не всегда проводят аутентификацию для Mobile Terminated сервисов, поэтому можно получить чужой звонок/СМС/etc. Но работает как я понимаю достаточно редко для того, чтобы быть очень серьезным. DOS надежнее.
Нет, там данные зашифрованы. Это примерно как подменить MAC, чтобы перехватывать чужие пакеты, но https данные останутся недоступными.
А какой механизм шифрования в данном случае аналогичен https в вашем примере? И что используется в качестве ключа шифрования? IMEI аппарата, производная от него, уникальная для каждого аппарата? Тогда базовая станция должна чётко знать, чьим ключом пользоваться, и внутри неё уже есть механизмы, позволяющие однозначно соотнести номр получателя звонка или СМС и аппарат, чьим ключом нужно производить шифрование. А коль так, то какой смысл в широковещательных запросах «Чей это звонок» или «Чья это СМС»?
Ключи для шифрования — Ki и IMSI сим-карты, емнип.
Скорее всего, как ключи для расшифровки используется «Ki» с sim-карты, он же служит для идентификации карты в сети, и его обычно нельзя вытащить напрямую. И этот код известен базовой станции.
Запрос посылается, грубо говоря, что бы нужный телефон отозвался. Он ведь может быть выключен или вне зоны действия. А вместо адресованного всегда отзывается подставной. Программа в телефонах и базовых станциях на такое хамское поведение не рассчитана, и в случае ошибки не переспрашивает.
Я скорее всего понял, что именно происходит, но до сих пор не понимаю, почему GSM устроен именно так, а не иначе. Ведь ответ «Это я», очевидно, содержит какой-то идентификатор аппарата, и простейшая защита от дурака, съедающая какое-то совсем смешное количество ресурсов, могла бы исключить либо серьёзно усложнить такую атаку. Были ли в то время какие-то объективные причины полагаться на добросовестность производителей телефонов настолько, чтобы не внедрять дополнительные механизмы проверки?
Сеть после ответа «это я» (Paging Response) проводит аутентификацию и тогда становится ясно — тот нам ответил мобильник или нет. Если нет — то давай до свидания. Просто судя по всему на этом сеть считает свою работу завершенной, если нам ответил не тот, то продолжать искать правильного абонента не нужно.
Всё это создавалось очень давно, тогда это была более закрытая область, никто не думал или не хотел думать насчет последствий реализации таких атак. GSM уязвим весьма и весьма, и фиксить там многих вещи уже нереально. Всё исправляется в следующих стандартах.
Разве ответ «Это я» не должен быть подписан или зашифрован?
Очевидно, нет. Скорее всего, когда разрабатывался протокол, предполагалось, что мобильные телефоны будут производится лишь несколькими доверенными и сертифицированными компаниями.
должен, но во-первых первая версия стандарта вроде этого не поддерживает а последующие могут принести в жертву безопасность в угоду скорости передачи
да и стандарт начал разрабатываться еще в конце 80-х так что по поводу шифрования там тоже все интересно

но что касается их работы как я мельком глянул — они просто говорят мол «ну мы же знаем что это все можно взломать так что мы просто взяли готовый ключ вот и все»

Скрытый текст
Nevertheless, as outlined before this step, it can
be trivially obtained by a 3rd party by using a tool like
kraken [40]. Cracking of Kc is merely a step that has
to be performed prior to our attack, but is not part of
the problem itself, which is the race condition.
Вы, видимо, не понимаете, что такое race condition, а что такое криптография. Это две вообще никак не связанные вещи. То, что показано в видео никак не позволит злоумышленнику своровать данные (смс, звонок). Всё что тут происходит — это race condition из-за которого оригинальный абонент никогда не узнает, что ему звонят или шлют смс.
Проблема немного в другом.
Все алгоритмы известны, общее представление любой желающий может получить в рамках самого обычного курса «Введение в GSM» (у многих сотовых операторов такой курс проходят чуть ли не все сотрудники технических подразделений). Детали можно получить как на более детальных курсах так и просто почитав документацию.

Смысл исследования в том, что ранее «цена входа» (цена на создание подобного устройства) была крайне высока.
Требовалась участие команды разработчиков — аналоговой части, цифровой обработки, реализации всех необходимых протоколов (хотябы на базовом уровне). На всё это требуются немалые ресурсы и время.

Тут же удалось найти и разобрать прошивку уже существующего устройства, которое легко можно купить на eBay'е в необходимых объёмах за совершенно незначительную сумму. Все необходимые алгоритмы в своё время уже разработала Motorola.
Всё что осталось — начать отвечать на не предназначенные для аппарата запросы.
Задача сложная, но её сложность на порядки ниже той, которая была бы при разработке устройства «с нуля».

Да, «подслушать» чужие SMS или перехватить звонки не получится (всё же зашифровано), всё что реализовано — очень быстро ответить «да, это я», а потом не пройти аутентификацию. Но и этого уже достаточно, чтобы заблокировать работу одного или нескольких аппаратов в данном секторе данной БС.

p.s. Ещё лет 8 назад видел хитрую WiFi точку (Access Point) с модифицированной прошивкой. При включении точка блокировала определённый канал в радиусе пары сотен метров. Всё что она делала — постоянно создавала коллизии.
Не лучше ситуация и с автомобильными сигнализациями — устройство себестоимостью в $5-10 может заблокировать сигналки в радиусе пары сотен метров.
Так что проблема далеко не нова… :(
Возможно, ваша точка проводила атаку деаутентификации. Такую атаку легко обнаружить при помощи ноутбука с адаптером, драйвер которого поддерживает мониторинг (iw dev wlan0 interface add mon0 type monitor). Провести ее соответственно также можно с обычного оборудования.
Атаку с коллизиями провести сложнее (на первый взгляд), но и обнаружить не столь очевидно.
Также можно просто зашуметь частоту (включить микроволновку).
но ведь абоненты из этой соты все еще могут делать исходящие звонки, отправлять SMS и пользоваться EDGE?
Это временно. Скоро моторола начнет отвечать «Я — базовая станция, чего хотел?»
Вы можете смеяться, но на базе этих моторольских телефонов уже сделали сильно урезанную базовую станцию.
Интересно как? Насколько я понимаю, в BS и ME там очень разные требования к железу, например допуски точности по таймерам, и т.д.
На 29C3 рассказывали: www.youtube.com/watch?v=_Any94luS7s
Переделав L1 в стеке на телефоне получили трансивер и использовали OpenBTS (или OsmoBTS) в качестве остальных уровней стека. Не знаю как сейчас, но тогда было ограничение — только 1 тайм-слот. Т.е. звонки делать нельзя, только регистрация и смс.
Спасибо, интересно! Например проблему часов он «решил» постоянно синхронизируя генераторы частот по имеющемся в эфире настоящим базовым станциям. Там еще куча забавных хаков. На настоящую БС это, конечно, не тянет, но то, что ему удалось добиться с помощью обычного телефона — безусловно вызывает восхищение :)
Ребята из проектов Osmocom вообще вызывают восхищение. Делают кучу сложный и крутых опен-сорс телеком решений.
На настояющую не тянет, да. Думаю они эо just for fun делали, хотя с другой стороны за 10 баксов можно получить трансивер для OpenBTS… это круто. Пусть даже только и на смс.
Да. Но только абонентам вне «испорченной» соты.
теперь понятно, почему в кино не показывают ограбления, где грабители отрубают сигнализации, работающие через GSM — очень просто, доступно, молодежно и вариантов больше чем один.
сигнализацию достаточно заглушить дешевой китайской глушилкой.
Кроме того, сигнализация обычно отправляет данные, а не получает.
Тут мы можем блокировать абонентов во-первых выборочно, во-вторых на значительном расстоянии.
аутентификации базовых станций на терминале, то есть проверки подлинности на стороне клиента, как раз очень не хватает в GSM.
Судя по модели телефона, ребята за основу взяли стек OsmocomBB.
Небольшая ошибочка, таким образом можно блокировать телефоны не просто в рамках одной соты, а во всей location area.
Можно использовать во время ЕГЭ.
Насколько я понял, все равно можно будет с телефона выйти в ICQ/Skype и общаться уже там. Ломается только получение входящих звонков и SMS.
Использовать такое на ЕГЭ — это жестко. Оно же может положить связь во всем городе.
Для ЕГЭ достаточно маленькой GSM глушилки, которая просто создает обычные помехи в небольшом радиусе. Недавно был в Таиланде, так там они на каждом углу с лотков продаются. В россии купить тяжелее конечно…
Интересно — не является ли эта уязвимость просто недокументированной «особенностью» протокола, на которую исследователи просто случайно наткнулись.
Сразу вспомнился фича в телефонах Nokia 1100, которая позволяла получать чужие СМС'ки, про неё даже была статья на Хабре habrahabr.ru/post/60227/
Вот теперь появятся хакеры-вымогатели, которые будут раскидывать по городу такие перепрошитые телефоны, а потом связываться с оператором и ставить условие «Или вы нам переводите столько-то денег, или мы полностью блокируем сотовую связь в городе»
Скорее бы уже. Может тогда они наконец закроют эту уязвимость.
Если это проблема самого протокола, то возможно, для закрытия надо будет и протокол изменить, и все старые абонентские устройства перепрошить. А это не реально.
Абонентские терминалы трогать не надо. Просто когда они ответят на Paging надо их не обрубать, как вторых (первым ответил телефон злоумышленника), а авторизовать и если все ок, то продолжать работу.
Но это требует фикса на устройствах в самой сети, а это куча вендоров и всё это ещё должно быть совместимо между собой… проще забить.
Ненавижу «тыкание» в статьях.
Поддержива. Сразу возникает ощущение, что статья украдена с какого-то желтого сайтика, ведущегося подростком для подростков.
Хе-хе… А в дискуссии двухлетней давности один товарищЬ, похоже, имеющий некоторое отношение к отрасли, долго убеждал меня что тикеты из этого списка (те, которые specification issue) — фигня, и серьёзно относиться к этому не стоит: вона в Интернете у нас скока этих DoS-уязвимостей. :(
сота «опрашивает» подключенные устройства для поиска того, которому они предназначены. И только один телефон отвечает, по сути, говоря «Это я»

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

А в 3G или 4G так же просто посложней или там что то совсем другое?
Надо вокруг Госдумы таких телефонов напрятать…
То-то они срать кирпичами начнут! ;)
Sign up to leave a comment.