Административные данные и карты для тестирования
Наряду с SIM-картами, предназначенными для обычных или привилегированных клиентов мобильной связи, спецификация GSM предусматривает существование специальных карт, необходимых для технического обслуживания и эксплуатации системы. Такие карты идентифицируются по содержимому их файла AD (7F20:6FAD).
После представления или дезактивации конфиденциального кода CHV1 можно прочитать первый байт файла при помс-щи следующей последовательности команд:
АО А4 00 00 02 7F 20 АО А4 00 00 02 6F AD АО ВО 00 00 01
Полученный результат позволяет отнести карту к одной из представленных ниже стандартных категорий:
• 00: normal operation - обычный режим работы (обычная SIM-карта);
• 80: type approval - подтверждение типа (карта предназначена для тестов на соответствие);
• 01: normal + specific facilities - обычные + специальные функции;
• 81: type approval + specific facilities - подтверждение типа + специальные функции;
• 02: maintenance - техническое обслуживание (off line);
• 04: cell test - тестирование соты.
Карта для тестирования, работающая в некоторых мобильных телефонах фирмы Motorola (иногда продаваемая за 1000 и даже более франков), может быть также реализована, если первый байт ее файла AD получит значение 81Ь, а самой карте будет присвоен код сети 001-01 (МСС =001, MNC = 01), при этом идентификационный номер IMSI программируется следующим образом:
80 90 01 01 XX XX XX XX XX
Учитывая, что номер IMSI записывается в инвертированном виде, в файле 7F20: 6F07 можно записать:
08 09 10 10 10 32 54 76 98
Запись в файле AD, как и в IMSI, может производиться только после представления кода администратора ADM1 (8 байт).
Предположим, что в ASCII этот код имеет вид «ADMINISTV. После преобразования в шестнадцатеричный формат он может быть представлен в виде последовательности команд, выполнять которую лучше сразу после сброса карты (подачи на нее напряжения питания):
АО 20 00 0В 08 41 44 40 49 4Е 49 53 54
Если этот код правильный, то полученный отчет 90 00 будет свидетельствовать об успешном выполнении операции.
Очевидно, что операторы не раскрывают код ADM1 выпускаемых ими карт своим клиентам и тем более код ADM4, позволяющий, в частности, прочитать или изменить код ADM1. Поэтому не следует превращать в карту для тестирования обычную SIM-карту, у которой, например, закончился срок действия.
На имитаторы SIM-карты, построенные на базе микроконтроллера PIC (этот вопрос бьш рассмотрен в главе 4), естественно, такое ограничение не распространяется.
Другой, еще более соблазнительной возможностью является использование «открытой операционной системы» чип-карты, например, карты «BasicSIM» (см. главу 4), которая предоставляет совершенно свободный доступ к следующим файлам:
3F00:2FE2 (ICCID)
7F10:6F3A (ADN, Abbreviated Dialling Numbers)
7F10:6F3B (FDN, Fixed Dialling Numbers)
7F10:6F3C (SMS, Short Messages)
7F10:6F3D (CCP, Capability Configuration Parameters)
7F10:6F40 (MSISDN, Own Numbers)
7F10:6F42 (SMSP,-Short Messages Service Parameters)
7F10:6F43 (SMSS, SMS Status)
7F10:6F44 (LMD, Last Number Dialed)
7F20/7F21:6F05 (LP, Language Preference)
7F20/7F21:6F07 (IMSI, International Mobile Subscriber Indentity)
7F20/7F21:6F20 (Kc, Ciphering Key)
7F20/7F21:6F30 (PLMN, Preferred PLMNs)
7F20/7F21:6F31 (HPLMN search period)
7F20/7F21:6F38 (SST, SIM Service Table)
7F20/7F21:6F3E (GID1, Group Identifier level 1)
7F20/7F21:6F3F (GID2, Group Identifier level 2)
7F20/7F21:6F74 (BCCH, Broadcast Control Channels)
7F20/7F21:6F78 (ACC, Access Control Class)
7F20/7F21:6F7B (FPLMN, Forbidden PLMNs)
7F20/7F21:6F7E (LOCI, Location Information)
7F20/7F21:6FAD (AD, Administrative Data)
7F20/7F21:6FAE (Phase)
Запись в IMSI такой карты может быть следующей:
АО А4 00 00 02 7F 20 АО А4 00 00 02 6F 07
АО D6 00 00 09 08 09 10 10 10 32 54 76 98
Запись bAD может иметь, например, такой вид:
АО А4 00 00 02 7F 20 АО А4 00 00 02 6F АО
АО D6 00 00 01 81 или АО D6 00 00 03 81 FF FF
В любом случае надо получить отчет 90 00, чтобы убедиться в правильном выполнении операции.
Если вставить карту в совместимый с ней мобильный телефон марки Motorola и в течение приблизительно трех секунд нажимать на клавишу #, то можно войти в режим тестирования. После этого появляется
возможность вести диалог с операционной системой мобильного телефона при помощи следующих команд, выбранных среди наиболее безобидных:
• 19# - воспроизводит номер версии программного обеспечения;
• 58# - воспроизводит код защиты;
• 59# - воспроизводит код «запирания» телефона (но не «отпирания»);
• 01 # - позволяет выйти из режима тестирования.
Для проведения дальнейших исследований потребуется серьезная документация (которую' можно отыскать в Internet). В противном случае дилетантское использование некоторых команд может привести к выводу из строя мобильного телефона или даже нарушению работы сетей.
На самом деле, если мобильный телефон, снабженный такой картой, не пытается самопроизвольно зарегистрироваться в какой-либо сети, применяемые команды, наоборот, могут инициировать этот процесс, со всеми вытекающими отсюда последствиями.