Рассказ взломщика сотовых телефонов. Часть I
Скука
Дело было в конце 1993 года, бизнес с девчонками к тому моменту уже кончился. Жизнь и бизнес вернулись в обычное, скучное русло - выдушивание из иностранцев денег на "русское программирование". Писать об этом отдельно не имеет смысла, потому что все было предельно цинично и скучно - якобы десяток русских программистов и художников были заняты в крупном программном проекте. На деле же все делал один студент, а разница между его зарплатой и получаемыми деньгами и была источником моего существования.
Всё изменилось, когда выяснилось, что знакомый видеопират пользуется взломанным сотовым телефоном.
Взломанный телефон - это как? А так - звонишь ты, а платит кто-то другой (или вообще никто). Ты на время присваиваешь номер чужого телефона, и счет за твои переговоры приходит хозяину номера (в принципе, он может и отказаться платить за чужие разговоры).
Техническая сторона будет раскрыта чуть позже, но в тот самый момент пришло осознание, что это ТЕМА.
Мой сегмент рынка
Тусовка этого видеофила боялась бандитов как черт ладана, поэтому продвигала пиратчинку среди своих друзей, коммерсантов средней руки. У меня же, напротив, имелся вполне положительный опыт взаимодействия с этими самыми ужасными бандитами. Мне сразу стало понятно, что это - идеальный товар для людей, занятых разнообразной незаконной деятельностью. Судите сами - никаких следов (звонишь с разных номеров), не подслушать (кого подслушивать-то?), да и объем звонков у таких людей, как правило, столь велик, что никаких денег на честный телефон не хватит.
Первый вопрос
Первое, что нужно было решить для себя, это где переделывать телефоны. Можно было воспользоваться услугами уже существовавшей тусовки, но такое решение привело бы к зависимости от них и их ценовой политики. Памятуя о том, что сделанное одним может повторить другой, я обратился к знакомому нищему электронщику.
Гений без штанов
Знакомство с ним произошло за полгода до описываемых событий, когда изучался вопрос о создании перехватчика для автомобильной сигнализации. Потом расскажу об этом поподробнее. Пока что замечу, что она была создана, но наладить массовый сбыт - ввиду сложности использования - не удалось. Примерно во время нашего знакомства он продал свой телевизор и музыкальный центр, чтобы на что-то жить. Он сразу согласился стать главным техническим специалистом. Еще бы - эта тема пахла деньгами.
Не то чтобы он действительно был гением. Со временем я понял, что 90% его крутости и "профессионализма" - просто понты. Но, надо отдать ему должное, он и его команда (всего 4 человека) обладали фантастической работоспособностью и решали-таки любые технологические задачи.
Реклама, часть один
Для начала были извещены все специфические знакомые. Они узнали, что телефоны - отключенные за неуплату или со сложной судьбой - теперь можно не выбрасывать или отдавать детишкам. Теперь у них может появиться новая жизнь. Как обычно, этот контингент реагировал с гипертрофированным энтузиазмом. Именно в те времена появилась фразочка о "мешках телефонов". Реальность, как всегда, оказалась много скромнее.
Первый заказ
Первый заказ пришел из тюрьмы. Ну, не совсем тюрьмы - из изолятора временного содержания. И волновали людей не деньги, а секретность. Помню, мы даже внутренности телефона протерли - уничтожали отпечатки пальцев. Не все шло гладко, но результат был! Клиент (а это была девушка, хозяйка агентства недвижимости) осталась очень довольна и рассказала своим знакомым. Заказы посыпались.
Первая фаза
Сначала мы "делали" аппараты единственной на тот момент сотовой компании. Делали просто - подменяли номер внутри аппарата, прописывая другой, и все. Почти никакой защиты там не было. Номер хранился в энергонезависимой памяти (EEPROM) телефона. Раз разобравшись, как ее редактировать, мы уже легко повторяли операцию. Поначалу мы не продумали как следует ценовую политику и делали аппараты практически за бесценок - клиент платил один раз $150 (кажется) и потом, за каждую смену номера, еще $45.
Учитывая, что минута разговора по городу стоила $3, цены были более чем божескими. Скоро стало ясно, что долго так продолжаться не может - мы неграмотно действовали, "выдавая" один и тот же номер сразу нескольким клиентам. В результате они мешали друг другу: система обладала смешным свойством - с данного номера звонить может только один человек. Второй"срубает" первого с линии (я упрощаю, но эффект именно такой). Тогда мы и придумали вторую фазу.
Технология, часть один
Пора объяснить поподробнее, как же это - пиратировать чужой номер. Если неинтересно, можно смело читать следующий пункт. Ничего сверхзанимательного здесь нет, просто хочется все расставить на свои места. Пока мы обсуждаем систему NMT-450. В Москве аппаратурой этой системы пользуется Московская Сотовая (МСС), по России - это СОТЕЛ. В те времена телефонные аппараты системы NMT-450 были практически не защищены от взлома. Каждый аппарат в системе идентифицировался десятизначным кодом.
Расскажу о нем подробнее. Сразу хочу предупредить, что все это уже давно неактуально, потому что усилиями хакеров фирму Nokia вынудили разработать достойную систему защиты (SIS). Рассмотрим на примере Москвы. Допустим, у абонента номер телефона 8-гудок-2-900-4455 (совершенно случайно выбранный номер, не звоните туда!). Тогда в его аппарате могло быть прописано следующее: 480-4455-123, где 48 - код города Москва в системе NNT-450, 04455 - идентификатор собственно абонента (последние 5 цифр номера), а последние три цифры - защита.
Слабая такая защита. Дело в том, что обойти ее было проще простого - прописать туда три нуля (для продвинутых - "двоичных" нуля; если среди этих цифирей встречался нуль, он был "десятичным", то есть цифрой "A"). Таким образом, чтобы "подсесть" на телефон знакомого с номером 8-гудок-2-905-1112, нужно было записать в свой аппарат 485-1112 (защиту мы даже не учитывали - всегда обнуляли).
Вторая фаза
Целей у второй фазы операции было две: во-первых, облегчить жизнь клиентам, чтобы им не приходилось приезжать к нам за новыми номерами, во-вторых, нормализовать ценовую политику, то есть брать с клиентов больше денег.
Мы сделали так, что клиент теперь смог сам менять номер в своем телефонном аппарате. Стало очень удобно кончились деньги у одного, "пересел" на любого другого. В некоторых моделях аппаратов оказалось достаточно немного подправить программу (это же компьютер, как ни крути), для других было разработано специальное устройство, которое вставлялось внутрь и, как паук, подключалось к десятку контактов.
Цены мы тоже подняли - стали брать за модификацию аппарата от $300 до $400. Тут нужно заметить, что это мы брали столько, наши дилеры отрывались по полной программе - доходило аж до восьми сотен.
Кошмар
Через каких-то 10 месяцев именно этим словом определялось состояние функционеров операторов NMT-450. В некоторых городах пиратов было почти 10%, а объем неоплаченных разговоров - все 90%. Это уже не говоря о недовольстве клиентов. В общем, стало пахнуть керосином. Операторам в крупных городах пришлось срочно менять оборудование и аппараты абонентам, чтобы перейти на систему защиты SIS.
Приколы
Мы тяжело работали, но и веселья было предостаточно. С тех времен в обиходе остались несколько фраз. "Таскать телефоны мешками" - одна из них. Еще был прикольный случай, когда мы с приятелем зашли на Модную Большую Биржу. Там торговали металлом, валютой и еще хрен знает чем. Зашли мы к знакомому Большому Функционеру. Оба - с пиратскими телефонами. Когда ему понадобилось куда-то позвонить, мы оба предложили наши трубки. Он замешкался (напоминаю, тариф был около $3 минута), а мы ему и говорим: "Думаешь, мы платим?". Он, вероятно, решил, что мы - крутые бандиты и за нас платят какие-то люди. "Но ведь кто-то же платит!" - только и смог выдавить из себя Большой Функционер. Это фраза тоже осталась с нами навсегда.
Так кто же все-таки платил?
Сложный вопрос. Сначала, пока операторы не поверили в саму возможность взлома, они не принимали претензий. Но со временем, когда жалобы стали массовыми, в офисе стали происходить эксцессы с рукоприкладством (ясно, кто мог себе позволить платить по $3 в минуту?). Тогда операторы стали давать клиенту распечатку его звонков и просить его вычеркнуть незнакомые номера. После этого счет корректировался. Так все и устаканилось до момента, когда все 100% абонентов были переведены на защиту
Что же они не пытались бороться?
Все просто - никакого закона мы не нарушали, а наша крыша сразу договорилась с крышей сотового оператора (по их понятиям, "нельзя запретить вору воровать" или что-то в этом духе). В общем, чувствовали мы себя как сыр в масле. Наши клиенты тоже почти ничего не нарушали. Я сразу им объяснял, что, во-первых, доказать ничего нельзя, а во-вторых, даже если сознаться, то привлекут по двум нестрашным статьям административного кодекса - незаконное использование услуг и неразрешенный радиопередатчик. В общем, штраф в несколько МРОТов и все.
Ну защитились они, и что дальше?
А дальше мы переключились на другую систему (AMPS/NAMPS/DAMPS), которая была защищена не сильно лучше. Но эту историю я расскажу в следующий раз.
В завершение добавлю, что SIS введен вовсе не везде. До последнего времени в Мурманске его не было. А в Финляндии нет и до сих пор...
На чем мы там остановились?
Да, так вот, с введением защиты тема не умерла. Разумеется, мы знали о такой возможности и заранее к этому готовились. И вот, как сейчас помню, 1 апреля, в день, когда крупнейшие NMT-операторы заявили о 100% переводе своих клиентов на систему SIS, мы сделали первый, пока пробный, выход в эфир пиратированного телефона другой системы. В этот раз повезло операторам, которые использовали телефоны стандарта AMPS, и его модификациям (NAMPS, DAMPS). В Москве это BeeLine (Билайн).
Тут особого ума не надо - их же хакают по всей планете!
А вот и нет! То есть хакают, конечно. И 90% всех телефонов на земле именно этой системы. Но, во-первых, технология у американских фрикеров, мягко говоря, инфернальная. А во-вторых, несмотря на сотни криков, по делу в Internet так ничего и не нашлось. Только пустые разговоры, и - редко-редко - взломанная управляющая программа из телефона какой-нибудь античной модели. В качестве примера мусора из Internet привожу этот документ. Называется он MOTOROLA BIBLE. Он почти совершенно бесполезен, понты из него так и прут. В общем, делать пришлось все самим.
А что там такого особенного?
Дело в том, что американцы, когда создавали стандарт AMPS, думали головой, а не жопой, как европейцы со своим NMT. И защиту, какую-никакую, но заложили. Нужно заметить, что до нас по-хорошему, чисто, эту защиту никто так и не взломал. Все известные мне американские хакеры-фрикеры пользовались обходными путями.
И что же там была за защита?
Для своего времени - очень даже неплохая. У каждого телефонного аппарата есть неизменяемый заводской серийный номер ESN (Electronic Serial Number). Он выдается раз и навсегда (технология не предусматривает его замену). При продаже телефона оператор заполняет NAM (Number Address Module), где хранится номер телефона и ещё кое-какая техническая информация. Так вот, комбинация ESN и NAM и есть уникальный идентификатор абонента.
И что с ней делать?
Чтобы имитировать такой телефон (то есть подсесть на него), нужно знать ESN и NAM. Откуда можно взять эту информацию? Есть два способа - социально-инженерный и технологический. Первый - это trashing и подобные фокусы.
Какой такой trashing?
Trashing - это копание в мусоре, который выкидывают из магазинов, в надежде найти выброшенную копию контракта или что-нибудь еще (например, номер чужой кредитной карты, но об этом - в другой раз). К слову, в штатах мусор является федеральной собственностью, так что за копание в помойке можно схлопотать срок. В совке все проще.
А если без мусора?
Без мусора тоже можно обойтись - например, снять девочку, которая контракты выписывает, и за шоколадки/секс получать от нее чужие секреты. Опытный жулик так может обеспечить свои потребности, но коммерчески это неприменимо. Значит, остается второй способ - нужно искать технологическое решение. Тут тоже есть варианты. Можно купить промышленное устройство. Для этого нужно подделать бумаги, дающие право приобретать такое оборудование (абы кому такое не продают - только правоохранителям), и наскрести немалые деньги - товар штучный, цены - соответственно - атомные. И нужно понимать, что оборудование, которое можно купить таким образом, придумано и сделано для другого - это тестовое оборудование, которое заодно может и то, что требуется для взлома. Это примерно как вместо отмычки покупать гранатомет - препятствие в виде замка и двери будет устранено в обоих случаях. Так что лучше сделать такой агрегат самостоятельно.
Как?
Тут-то и началось самое интересное. Выяснилось, что никакой полезной информации нет. В Internet'е удалось найти только самое общее описание, и оно содержало огромное количество неточностей и ошибок. Пришла пора рассказать обо всем подробно.
Технология, часть 2
Опять же, если неинтересно, эту главку можно пропустить. Для интересующихся расскажу, как же оно действует. Разумеется, упрощенно, только то, что относится непосредственно к взлому. Взлом состоит из двух частей - сначала нужно чужую информацию добыть, и потом нужно ее записать в свой аппарат. Для установления связи аппарат сообщает о себе пару ESN+NAM (американские фрикеры их так и называют - pairs). Базовая станция (в народе - сота) эту информацию принимает и запрашивает у главного компьютера, существует такая пара или нет. Если существует, то соединение происходит. Здесь важно то, что пара передается в эфире как есть, то есть без кодирования. И ее можно перехватить. Для этого нужно сделать приемник и декодер. Вместо приемника можно использовать радио-сканер, только придется попотеть, чтобы найти нужный (в большинстве сканеров нужный диапазон закрыт). Дальше нужно декодировать принятый сигнал. Метод кодировки там - NRZ (non-return to zero). В аппарате нужно модифицировать программу так, чтобы он позволял несложно и оперативно менять ESN+NAM.
Ловилка
Сначала мы сделали приемник. Мы не хотели связываться с поиском правильного радио-сканера, поэтому собрали приемник сами. Конечно, катушки никто не наматывал, все было собрано из модулей. Потом к нему подцепили персональный компьютер, и первый NRZ-декодер был просто программой под Windows (или DOS? не помню уже). Именно так мы получили первые пары. Попробовали. Получилось. Тогда сделали первую автономную ловилку - коробочку размером с пару видеокассет, с антенной, жидкокристаллическим окошечком на 4 строчки, и разъемом для подключения к последовательному порту компьютера (RS-232). Она перехватывала сигнал от любого телефона системы AMPS в радиусе 100-120 метров, показывала в окошке пойманный номер, ESN и еще кое-что, к взлому непосредственно не относившееся. С этой коробочкой мы объездили не один город. Она до сих пор где-то валяется как память, хотя почти сразу были сделаны более совершенные устройства. Вот пример технологического вывода ловилки, который посылался в последовательный порт компьютера:
1.2.0.1.1.0.E.9748781!0.1.02.0.00.0.15.095!0.0.82EDC070!------!
1.2.1.1.1.0.E.9748943!0.1.00.3.0D.0.15.095!0.0.82E3EC1D!------!
1.2.1.1.1.0.E.9688191!0.1.00.3.0D.0.15.095!0.0.82EF7B26!------!
------!-----!-------!------!
1.3.1.1.1.0.E.9748781!0.2.02.0.00.0.15.095!0.1.82EDC070!0.0.9686119!
------!-----!-------!------!
1.2.1.1.1.0.E.9748943!0.1.00.3.0D.0.15.095!0.0.82E3EC1D!------!
1.2.0.1.1.0.E.2479400!-----!-------!------!
------!-----!-------!------!
1.2.1.1.1.0.E.9748943!-----!-------!------!
------!-----!-------!------!
1.2.1.1.1.0.E.2479400!0.1.00.3.0D.0.15.095!0.0.82F284B2!------!
1.3.1.1.1.0.E.9686678!0.2.02.0.00.0.15.095!0.1.82F005C8!0.0.4065644!
1.3.1.1.1.0.E.9686678!0.2.02.0.00.0.15.095!0.1.82F005C8!0.0.4065644!
------!-----!-------!------!
1.3.1.1.1.0.E.9686678!0.2.02.0.00.0.15.095!0.1.82F005C8!0.0.4065644!
1.2.0.1.1.0.E.7550968!0.1.02.0.00.0.15.095!0.0.82E54CAC!------!
Аппараты
Потом руки дошли и до взлома аппаратов. Сначала возникла проблема с идентификацией процессора, который жил внутри телефонов Motorola. Из общих соображений было ясно, что это, скорее всего, процессор той же фирмы. Однако модель удалось определить не сразу. Кажется, его звали MC68HC11A (впрочем, после стольких лет могу и ошибаться). Первое, что мы попытались сделать, это определить его цоколевку (то есть взаимное расположение ног). Это оказалось непросто - хотя в те времена Motorola уже начала выкладывать документацию на web, по закону подлости, именно этого процессора там не было. Тогда я вспомнил, что один мой приятель в Израиле работает на фирме Motorola. Я ему позвонил, он сходил в библиотеку фирмы, и через пару часов из нашего факса вылез требуемый документ. Работа закипела. Я написал простенький табличный дизассемблер и сделал табличку для нашего процессора. Электронщики возились очень долго, зато и результат превзошел ожидания - в аппарат можно было записать сразу 10 разных пар и быстро переключаться между ними.