- PVSM.RU - https://www.pvsm.ru -
Когда деревья были чуточку выше, трава зеленее, солнце ярче, а я учился в институте, у меня была социальная карта студента. Она мне нравилась своей функциональностью и продуманностью, но, как и все хорошее, срок действия её закончился и пришлось на неопределенное время забыть об этом благе московской цивилизации. На смену ей пришла Тройка, которая частично смогла вобрать в себя плюсы СКС, но далеко не все…
Все началось с того, что я заболел и обнаружил, что потерял карточку ОМС. Несмотря на то, что номер я помнил наизусть, мне нужно было что-то, что можно приложить к зеленому инфомату в поликлинике, в противном случае, записаться к врачу и получить законный больничный не получится. Вариантов было много: восстановить полис (чтобы потом найти старый при первой же уборке); сгенерировать и распечатать штрих-код полиса (штрих-код на бумажке — несолидно), либо взять с собой свою старую социальную карту… Я остановился на последнем варианте. Если быть точнее, то я решил на нем не останавливаться, а записать на тройку свои полис аналогично тому, как он записан на социальной карте москвича.
Зная возможности Mifare Classic — совместимых карт, я решил объединить Тройку и старую студенческую карту ради удобства и просто из интереса к результату эксперимента.
Как мы знаем, карты Mifare Classic 1K и 4K вывели из оборота из-за уязвимостей в пользу более защищенных, но совместимых Mifare Plus S, Plus X 2k или Plus EV1 2k. Но суть осталась та же: как социальные, так и карты Тройка имеют одну и ту же начинку, с разницей лишь в объеме (количестве защищенных секторов, что в нашем случае абсолютно не играет значения).
Вооружившись статьями про исследования защищенности Тройки и Android приложением «Mifare Classic Tool», я решил заглянуть сначала внутрь социальной карты, чтобы найти место, где записан номер полиса ОМС. Благодаря документу почти двадцатилетней давности [1] я уже предполагал, что он будет в 5-м секторе карты, зарезервированном как медицинское приложение МГФОМС, что и подтвердилось на практике.

Искомый номер полиса оказался в 5м секторе на второй строке со 2го по 9й байт, то есть, в данном случае "7700009016811218". Отлично, зацепка (а, точнее, зацепище есть)!
Что касается карты Тройка, то там 5й сектор забит нулями, то есть, пока не используется. Ключи A и B отличаются от тех, которые на СКС, но это поправимо, их можно переписать такими же, как и там.

Помимо желанного номера полиса ОМС, в секторе присутствовали и другие данные, назначение которых мне неизвестно. Начитавшись статей про 8й сектор (электронный кошелек) и его защищенность имитовставками, я предположил, что здесь эти данные могут играть такую же роль имитовставки или контрольной суммы для проверки целостности данных в секторе. Поэтому я решил проверить это, переписав на одну Тройку весь сектор в точности, как на СКС, а на вторую — только номер полиса. Сказано — сделано!
Снял полный дамп с СКС, и записал на первую Тройку весь 5й сектор, а на вторую — записал отредактированный дамп 5го сектора, где фигурирует только номер полиса.
Прогулявшись до поликлиники и проверив обе карты, я смог с обеих войти на инфоматы и записаться к врачу! Разумеется, в качестве способа аутентификации следует выбрать «Карта москвича» или «Социальная карта москвича» (работают оба способа) и приложить карту к считывателю.
Из этого следует, что инфоматам достаточно лишь номера полиса в отведенном для него месте и знакомых им ключей от пятого сектора.
Теперь можно немало удивить работников поликлиники, продемонстрировав им использование Тройки в качестве полиса ОМС и проходить более удобную и современную бесконтактную аутентификацию, ибо даже современные полисы ОМС не поддерживают бесконтактный обмен информацией — их необходимо вставлять чипом в инфомат. И «Тройка» воистину становится ключом к городу, в частности, к поликлиникам.
Автор: mdstat
Источник [2]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/informatsionnaya-bezopasnost/325023
Ссылки в тексте:
[1] документу почти двадцатилетней давности: https://www.mos.ru/authority/documents/doc/22526220/
[2] Источник: https://habr.com/ru/post/461303/?utm_source=habrahabr&utm_medium=rss&utm_campaign=461303
Нажмите здесь для печати.