Секреты SIM-карт
30 сентября 2007 | » Мобильные секреты

Как появились SIM-карты

SIM расшифровывается как Subscriber Identification Module или Модуль идентификации абонента. Как следует из названия, SIM-карта служит для идентификации абонента в сети сотовой связи.

На первых порах идентификацию пользователя в сети проводили, руководствуясь лишь заводским номером сотового телефона – ESN (Electronic Serial Number). Когда абонентов и производителей техники было немного, данный подход оправдывал себя. В итоге оборудование, то есть сотовый телефон и абонент, идентифицировались единым кодом. Кроме всего прочего такой подход порождал полную зависимость, скажем, пакета услуг и номера телефона от аппарата. То есть, поменяв сотовый, вы должны были ехать в офис оператора для того, чтобы серийные номера вашего телефона вносили в базу данных. Если мобильник ломался, требовалось некоторое время для того, чтобы вы снова могли пользоваться услугами связи.

Куда удобнее была бы независимая от телефона идентификация абонента. Этой задумкой руководствовались разработчики стандарта GSM, которые предложили разделить идентификацию абонентов и оборудования. Первой данную идею применила финская компания Radiolinija в 1991 году.

Предложенная схема идентификации действует и по сей день. В частности, как мы уже сказали, для идентификации абонента в сотовых сетях стандарта GSM (а также во многих других) применяется SIM-карта. Для полноты изложения отметим, что современные сотовые телефоны идентифицируются системой с помощью 15-значного номера IMEI (International Mobile Equipment Identifier – Международный идентификатор мобильного оборудования).

Поговорив об истории возникновения SIM-карт, попробуем рассмотреть эти интересные устройства ближе.

Что такое SIM-карта: назначение и развитие

Если говорить кратко, то SIM-карта – это компьютер. Cимка содержит микропроцессор, шины для ввода и вывода информации, типичный для компьютеров набор видов памяти ROM (постоянная), RAM (оперативная), EEPROM (перезаписываемая). Карта хранит в себе различные данные, с некоторыми из которых она обращается с особой осторожностью для того, чтобы обеспечить безопасность абонента.

В частности, на карте хранится следующая информация:

IMSI (International Mobile Subscriber Identifier) – Международный идентификационный номер мобильного абонента. Фактически – имя пользователя в системе.

Ki (Key) – индивидуальный ключ идентификации.

ICCID (Integrated Circuit Card ID) – серийный номер карты.

IMCI и ICCID хранятся на карте в незашифрованном виде, их сравнительно легко прочесть. А вот Ki надёжно скрыт от посторонних, все операции с ним карта проводит, используя внутренний процессор и память. Такая секретность необходима по одной простой причине – если кто-то узнает IMSI, ICCD и Ki вашей SIM-карты, у него появится совершать звонки от вашего имени и за ваши деньги.

Кроме идентификационных данных, карта может хранить дополнительную информацию. В частности, телефонную книгу, SMS-сообщения, списки вызовов, SIM-меню. Кстати, все вышеперечисленные функции появились в SIM-картах далеко не сразу. Так, в начале 90-х карты оснащались 8 Кб памяти и обеспечивали лишь основные возможности (приём и совершение звонков, приём SMS, роуминг), необходимые для работы в сотовых сетях. В середине 90-х набор поддерживаемых картой функций расширился.

В конце 90-х появляются карты с 16 и 64 Кб памяти, которые, включая более емкие экземпляры, используются и по сей день. Современные SIM-карты поддерживают массу функций, среди которых следует отметить так называемую SIM Application Toolkit. Данная возможность позволяет оператору оснастить телефоны абонентов дополнительным пунктом меню, который даёт доступ к различным сервисам оператора.

В настоящее время создаются SIM-карты, объём которых достигает сотен мегабайт. В частности, комания Msystems выпускает карты под общим названием MegaSIM, имеющие объёмы 128, 256, 512 Мб и 1 Гб. Гигабайтную карточку, которая называется S-SIM, анонсировал в конце 2006 года концерн Samsung. Такая карта позволяет хранить множество полезной информации – музыку, видеозаписи, игры.

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

Теперь, когда мы ближе познакомились с SIM-картами, поговорим о некоторых приёмах их использования.

Особенности использования

Многие из нас сталкивались с проблемой нескольких SIM-карт. Самое простое (но дорогое) решение заключается в покупке нескольких телефонов – по количеству этих самых карточек. Однако существуют способы лучше. В частности, если вы постоянно используете две-три SIM-карты, можно попытаться обзавестись так называемым Адаптером для 2 SIM (или даже утроителем) предназначенным для объединения под одним корпусом нескольких чипов от SIM-карт. Если двух-трёх номеров вам мало, подумайте о так называемой MultiSim+Реадер – карточке, которая совмещает в себе несколько обычных SIM-карт – как правило – до 10.
Сущность MultiSIM заключается в том, что в эту карту заносятся основные идентификационные данные из обычных SIM-карт. Для получения этих данных (в частности, Ki и IMSI) карту можно «взломать» с помощью специального ПО (и устройства для чтения SIM-карт – SIM-сканера). Взлому поддаются не все виды карт. К примеру, существуют несколько алгоритмов шифрования, использующихся для аутентификации абонента. Это COMP128v1, который наиболее сильно распространён в России, и COMP128v2 – его внедрение происходит в настоящий момент. Взлому подвержены лишь карты, использующие алгоритм шифрования COMP128v1.

Алгоритм шифрования (а также Ki) применяется на этапе аутентификации пользователя сетью. Выглядит это так: Ki известен SIM-карте и так называемому AuC – (Autentication Center) – центру аутентификации. Для того чтобы проверить подлинность карты, AuC отправляет на аппарат случайно сгенерированное 128-битное число, которое обрабатывается при помощи алгоритма шифрования, например, уже упомянутым COMP128v1. Причём, все вычисления ведутся внутри карты. В результате получается 32-битное число (SRES), которое отсылается для проверки в AuC. Если SRES, которое вычислил AuC, совпадает со SRES, вычисленным картой, значит, она проходит аутентификацию и пользователь подключается к системе. Взлом заключается в «бомбардировке» карты запросами и вычислении Ki на основе её ответов.

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

Обсудив особенности клонирования SIM-карт, скажем пару слов о безопасности их использования.

Безопасная работа с SIM-картами

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

Если говорить о безопасности, то SIM-карты имеют несколько уровней защиты. Как правило, абонентам приходится иметь дело с PIN и PUK-кодами. Строго говоря, телефон рекомендуется постоянно держать в состоянии, защищённом PIN-кодом, но редко кто выполняет эту рекомендацию.

© Заика Александр, MobiSet.ru


 
Клонирование SIM карт
26 сентября 2007 | Просмотров: 8248 | » Статьи

*102# ... Please wait ... Your accurate balance is $0.06

Довольно печальная картина, которую вы наверняка не раз наблюдали на экране своего мобильного друга. А вам приходила когда-нибудь в голову мысль о разговорах за чужой счет? Нет, я не буду учить вас воровать чужие симки и говорить по ним через службу дозвона. Так вас в тот же день отрубят, а за воровство еще и срок дадут. Есть тема пореальнее. Если сделать копию SIM карты какого-нибудь лоха, то вряд ли он догадается, что за его счет кто-то развлекается (если, конечно, не сильно наглеть). Однако меня преследовали немного другие побуждения.

Законные побуждения

Недавно у нас в Новосибирске появился третий оператор сотовой связи - Мегафон, знаменитый своими "щадящими" тарифами. Но Билайн и МТС, не желая отдавать ему своих драгоценных абонентов установили заоблачные цены на звонки этому ОПСОСу (ОПератор СОтовой Связи). Но у него все же есть одно явное преимущество даже перед городской телефонной сетью - звонки по межгороду (точнее внутри сибирского региона, в который входят весьма обширное число городов) и городские телефоны стоят так же, как и внутри сети! Поэтому появляется необходимость подключения к нескольким ОПСОСам. В моем случае к трем (У Билайн - дешевый Интернет, МТС - связь, Мегафон - межгород). То есть придется таскать с собой три симки и постоянно менять их. Один из выходов - купить три сотика и склеить их скотчем, однако это накладно и таскать с собой такую бандуру не каждому под силу. Но есть более элегантное решение.

Multi-SIM

Есть такой девайс - называется Multi-SIM.
Внешне похож на обычную SIMку, а по функциональности как десять (хотя зависит от ее типа), причем не обязательно от одного оператора! С технической точки зрения Multi-SIM карта (она же Clone Card) - это контактная чиповая карточка (она же smart-карта) с микропроцессором PIC и памятью EEPROM. Для работы в качестве SIM-карт (точнее их эмуляции) она специально прошивается соответствующим программатором. Теперь подробнее о возможностях, которые перед вами открывает этот stuff. Для каждого номера можно независимо указать номер центра SMS и настройки GPRS. Какую SIM загружать при включении телефона вы выбираете, вводя соответствующий для каждой симки PIN-код. Или же, если не хотите каждое утро набирать его (для тех, кто выключает телефон на ночь) задаете по умолчанию какую симку загружать. Так же в меню телефона появляется новый пункт, из которого можно быстро переключиться на другую симку (т.е. другого ОПСОСа). Телефон для этого выключать не надо. Переключение (вместе с регистрацией в сети) занимает меньше 20 секунд.

Как это работает?


Для эмуляции SIMки нужно сначала достать из нее регистрационные данные - это так называемые международный идентификатор абонента - IMSI (International Mobile Subscriber Identity) и индивидуальный ключ аутентификации абонента KI (Key Individual). Если эти самые KI и IMSI известны и у вас есть Multi-SIM карта, прошитая SIM-EMU версии 6 или 5, (Рекомендую покупать уже прошитую и обрезанную карту - сэкономите на программаторе и нервных клетках, которые не восстанавливаются), то вставляйте Multi-SIMку в сотовый и, следуя пунктам меню симки, вводите KI, IMSI для каждой симки, которую хотите эмулировать и какие хотите PIN, PUK коды, а также номера SMS центров. Все, карта готова. Основную трудность представляет нахождение этих самых KI&IMSI.

Немного теории..

Ключ KI хранится на СИМ-карте в закрытой области памяти, т.е. внешнего доступа к нему нет. Остальные данные, типа телефонной книги, sms-ок и прочего хранится в защищенной области памяти, которая может быть защищена только PIN кодом. Шифрованием занимается алгоритм A3-A8, который реализован на аппаратном уровне в СИМ-карте. Примерно так все происходит: базовая станция (БС) посылает случайное число (возможно 32-х разрядное), соответственно телефон получает его, передает в SIM-ку, она шифрует по алгоритму A3-A8 с использованием KI, и далее результат передается обратно на БС, таким образом KI никогда не передается в эфир в открытом виде (из этого по идее следует, что его невозможно вычислить через эфир), далее базовая станция делает то же самое, и в конце этого события сравнивает свой результат с присланным, и если он сходится, то можно звонить - доступ к коммутатору разрешен.

Добываем KI&IMSI

Однако, разработчики этого алгоритма (алгоритм шифрования COMP128-1) допустили серьезную ошибку, благодаря которой можно вычислить KI и IMSI. Для того, чтобы считать эти данные необходимо специальное устройство, называемое GSM SIM Card Reader (считыватель, программатор), которое нужно либо самому собрать, либо купить.

Схема

Кроме того, как вы догадываетесь, нужен специальный софт для работы с этим делом. Я пользуюсь SimScan верси 2.01. У меня на XP без проблем работает. Разобраться с ней у вас не составит труда, единственное, что посоветую - оставьте все настройки по умолчанию. У меня на третьем пне c 256 Mб оперативки сканирование заняло 40 минут, однако следует заметить, что лимитирующим фактором здесь является скорость обращения к SIM карте, а не скорость компьютера. Если сканирование прошло удачно, и вы получили KI и IMSI, то дело в шляпе. А если нет... то возможно два варианта: либо симка запоролась (скорее всего) и вам придется ее менять, либо не запоролась... Дело в том, что нехорошие операторы придумали новую "защиту" - ставят ограничение на число обращений к сим-карте, однако я с такими не встречался и у меня ни одного летального исхода не было. Слышал про реальную защиту COMP128-2, с которой SimScan не справляется. Но я думаю, что наши люди и с ней разберутся. Так что дерзайте!

А что будет если...

...одновременно использовать копию и оригинал sim в сети? Люди, которые с этим детально разбирались говорят: Работает нормально, разговор сбрасывается только если обе карточки находятся в зоне действия одной базовой станции. Если в разных городах или в роуминге - вообще без проблем. Звонок входящий приходит на ту, которая последний раз общалась с базовой станцией. Но в каждом конкретном случае бывают нюансы, которые зависят от настройки оборудования у оператора.

Типы карточек:

Вот таблица, показывающая какие типы карточек бывают и их параметры: