Dmitry Astapov (_adept_) wrote,
Dmitry Astapov
_adept_

Category:

SmartSIM, TurboSIM, YesSIM и другие устройства для "разлочки" телефонов

Отвечаю на вопрос из пункта приема вопросов: "В интернете обильно продаются всяческие "i-SmartSim SIM Card Unlock Attachment for Nokia and Most Other Cell Phones", стоят от 5 USD. Обычно выглядит как плёночка с чипом, вставляемая между симкой и телефоном. Знакомый мой одну такую купил, и говорит, что в самом деле смог использовать привязанный iPhone с SIMкой другого оператора.
Как это может работать?
"

Поиск по названию этих продуктов в основном выдает либо сайты производителей, либо тонны форумов с сообщениями вида: "а на телефоне X с симкой Y будет работать или нет?". Описания принципов работы таким образом найти не получилось.

Все дальнейшее - мои предположения по теме, в правильности которых я уверен процентов на 80. Буду рад, если кто-то знающий наверняка подтвердит это или опровергнет.

Итак, что же из себя представляют волшебные средства для unlock-а телефонов? Это тонкая (~0,7 мм) печатная плата с микросхемкой, подкладываемая под вашу SIM-карту. Чтобы такой "бутерброд" влез в держатель для SIM-карты, приходится подрезать вашу SIM-карту или вырезать в ней дырку (как показано на рисунке справа), в которую войдет микросхема.

В инструкции по эксплуатации подобный девайсов есть два любопытных момента:
1)Требуется, чтобы ваша сим-карта до этого была хоть раз вставлена в телефон и зарегистрировалась в нужной вам сети. Вынуть сим-карту из упаковки, подложить "анлокер" и включить телефон нельзя - телефон не зарегистрируется в сети.
2)Иногда (как утверждают производители - не слишком часто) после потери сети телефон не будет в ней регистрироваться заново. Тогда надо вынуть симку и анлокер, засунуть симку в другой аппарат, зарегистрироваться в сети, и вернуть симку на место.

Похоже, тут и есть ключ к разгадке. Берем GSM 11.11 "Specification of the Subscriber Identity Module -
Mobile Equipment (SIM - ME) interface" и читаем (фигурно порезано и откомментировано мной. Сокращение "ME" - это телефон, mobile equipment):

"11.2.1 SIM initialization
After SIM activation[...], if the CHV1 verification procedure (т.е. проверка PIN-кода) is performed successfully, the ME then runs the SIM Phase request procedure.
For a SIM requiring PROFILE DOWNLOAD, then the ME shall perform the PROFILE DOWNLOAD procedure in accordance with TS 11.14 [27]. [...] then the SIM is able to allow the REHABILITATE command to rehabilitate EFIMSI and EFLOCI.
[..]
For a SIM of Phase 2 or greater, GSM operation shall only start if one of the two following conditions is fulfilled:
‑ if EFIMSI and EFLOCI are not invalidated, the GSM operation shall start immediately;
‑ if EFIMSI and EFLOCI are invalidated, the ME rehabilitates these two EFs.
[..]
then GSM operation shall start."

Тут есть несколько важных для нас моментов: если в телефоне установлена "модная" и современная SIM-карта, то сразу после проверки PIN-кода телефон должен сделать "PROFILE DOWNLOAD" и доложить SIM-карте о своих возможностях (размер экрана, поддержка доп. услуг и т.п.), а SIM-карта, в свою очередь, рассказывает телефону о своих возможностях (в соответствии со стандартом GSM 11.14). В частности, SIM-карта может сказать, что она умеет выдавать нотификации о том, что какая-то важная информация, хранящаяся на SIM-карте, изменилась. Запомним это.
Далее, EFIMSI and EFLOCI - это elementary file-ы (т.е. области памяти) в SIM-карте, хранящие информацию о IMSI и последнем известном location телефона в сети.

Получается, что анлокер работает примерно таким образом:
Телефон после включения делает запрос PIN-кода, передает его SIM-карте и начинает процедуру "SIM Initialization". Телефон запрашивает содержимое EFIMSI, чтобы проверить, не invalidated ли оно. Как я понимаю, где-то в этот момент в firmware телефона отрабатывают процедуры "залочки", проверяющие, не сунули ли в телефон "левый" SIM. Анлокер, который принимает все запросы от телефона, не передает их оригинальной SIM-карте, а отвечает вместо нее, возвращая телефону "левый" IMSI, принадлежащий нужному оператору - тому, на которого залочен телефон.

Когда телефон добирается до фазы "Location Information request", анлокер перестает вмешиваться в работу телефона и SIM-карты, и в эфир уходит реальный IMSI, хранящийся на реальной SIM-карте, вставленой за "анлокером".

Я не уверен, не съедут ли у телефона мозги от того, что с какого-то момента SIM-карта начнет отдавать другой IMSI. Впрочем, в GSM 11.14 есть лазейка (раздел 6.4.7.1, "EFIMSI changing procedure"): SIM-карта с SIM Toolkit может послать телефону уведомление о том, что ее IMSI изменился (например, в результате over-the-air обновления конфигурации SIM-карты со стороны оператора), и телефон должен принять это к сведению, переспросить новое значение IMSI и без перерегистрации в сети работать дальше.

Возможно, анлокер использует эту функцию для того, чтобы пройти включение телефона и инициализацию SIM-а с одним значением IMSI, а затем поменять его на другое.

В простых моделях анлокеров есть настройка под названием "IMSI Patch count", которую рекомендуют устанавливать в значение "1" или "2". Подозреваю, это кол-во начальных обращений к EFIMS, перехватываемых анлокером, в ходе которых он отвечает за SIM-карту, подставляя нужное значение IMSI.

Остается один вопрос - откуда анлокер узнает, какое значение IMSI надо дать телефону, чтобы тот поверил, что в нем стоит "родная" SIM-карта? Некоторые анлокеры используют "универсальные" значения MCC=001, MNC=01, которые по стандартам GSM являются аналогом сегментов 127.0.0.*, 10.0.* и т.п. из адресного пространства TCP/IP и используются в тестовых сетях. По стандарту любой телефон должен без лишних вопросов принять SIM-карту с такими кодами страны и сети. Другие анлокеры требуют один раз вставить в телефон SIM-карту оператора, на которого он залочен, считывают с нее IMSI и используют в будущем. Наконец, есть анлокеры, которые позволяют с помощью программатора задать коды MCC и MNC, которые будут использоваться.

PS
Кроме того, я обновил предпоследний пост про "псевдо-базовые" и их функции.
Tags: gsm
Subscribe
  • Post a new comment

    Error

    default userpic

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 9 comments