Хочу немного рассказать о том, что сильно повлияло на выбор «профессии на всю жизнь», и как следствие — на сферу деятельности моей компании.
В далеком 2000-м году я, выпускник Ялтинской школы, поступил в МАИ и заселился в общежитие. По дому скучалось сильно, хотелось звонить родителям почаще и наподольше, но связь между странами для студента-первокурсника была совсем недешевая. Никаких скайпов тогда не было, да что говорить — интернет был только по модему и тоже дорогой.
Где-то тогда родилась прекрасная идея: а что, если взломать телефонную карточку и звонить домой бесплатно с таксофона? 🙂 Сказано — сделано, и я начал исследовать эту область. Нашел себе в друзья одногруппника, у которого дома была возможность почерпнуть информацию из интернета.
Спустя время удалось выяснить, что перезаряжать карточки в принципе невозможно из-за их внутреннего устройства, но зато можно сделать эмулятор, который можно перепрошивать после каждого разговора. Я загорелся идеей еще сильнее: это сулило не только бесплатные звонки домой, но и было интересной задачей само по себе.
К сожалению, спустя время интернет подсказал, что таксофоны проектировали далеко не идиоты и о таких людях, как я, им известно. На таксофонах применяется механизм активной аутентификации (АА) карт. Телекарта, хоть и является простой памятью, но все же кое-что умеет делать, а именно — имеет какой-то механизм хеширования. Своего тактового генератора у нее нет, поэтому тактовые импульсы поступают с таксофона. В карту записан секретный ключ, который невозможно считать обычными утилитами (карта попросту его отдает данные по тому адресу). Аутентификация происходит следующим образом: таксофон сообщает карте случайную последовательность, а далее карта генерит хеш, в котором есть:
— случайная последовательность;
— секретный ключ;
— серийный номер карты;
— остаток минут на карте.
И все. Ключ не считаешь, алгоритм хеширования тогда тоже не был известен. А без прохождения аутентификации таксофон не позволит никуда звонить. Сделать дамп обмена с обычной карты и эмулировать его тоже не получится, потому что каждый раз участвует случайная последовательность.
Впрочем, меня это тогда не остановило, и я принялся изучать существующие алгоритмы шифрования. Думал найти пути взлома 🙂
Также у меня возникла отличная идея — спереть таксофон, изучить его и узнать алгоритм хеширования и сам ключ. Ведь в таксофоне он тоже должен быть записан, иначе как проверять? К счастью, спереть ничего не получилось. Да и меня ждал бы облом: ключ зашит в сменный SAM-модуль (похож на SIM-карту) и извлечь его оттуда невозможно. Кроме того, сама прошивка таксофона защищена от считывания (битом защиты), и считать ее тоже нельзя.
Но… Время летит, в мире IT все стремительно меняется, и то, что не получилось спереть, сегодня можно просто купить. За символическую сумму мне удалось приобрести такой таксофон на авито. Эх, как об этом мечталось в 2000-м году!
На голубеньких МГТС-овских таксофонах применен интересный замок — сейфового типа. Ручку сбоку нужно прокрутить несколько раз на строго определенный угол (для всех таксофонов он разный — это и есть кодовая последовательность). Очень хотелось открыть такой таксофон и посмотреть его внутренности, я даже выточил на токарном станке ключ, но вот кодовую последовательность узнать никак нельзя. В надежде услышать какие-то щелчки я надел стетоскоп, стал крутить ключик и слушать… Но ничего толкового услышать не удалось. Так и остался таксофон неоткрытым (к счастью!).
А теперь — картина спустя 15 лет. Таксофон пришел еще в родной упаковке, но без ключа и кода открытия. Пришлось вандалить его заднюю стенку, чтобы открыть рычаг изнутри:

Вот он, красавец.

Внутри несколько плат.

И тут сюрприз: никакого SAM-модуля нет! Получается, и активная аутентификация в МГТС не использовалась? Правда, есть другие способы обнаружения эмуляторов, но их, в принципе, можно обойти.
Никогда раньше не видел такого большого конденсатора 🙂

А вот и картоприемник. Кто помнит такие карточки? 🙂

Когда карта вставлена, она защелкивается. Хотя, кстати, в те времена этот механизм не работал — карту можно было вынуть в любой момент.

Вот и весь секрет, узнать который мечталось на 1-м курсе.
Впрочем, приехав домой в Ялту на каникулы, я продолжил эксперименты с украинскими таксофонами «Телекарт». Этот опыт был более яркий 🙂 Я расскажу о нем в следующий раз.