Маленькие секреты больших технологий
Автор: Киви Берд
Новая система проездных чип-карт, вводимая в Голландии для оплаты проезда в городском общественном транспорте и на железной дороге, оказалась гораздо более уязвимой, чем ожидалось. На ее создание ушло 2 млрд. евро, что немало даже для небедных Нидерландов, однако по меньшей мере уже три независимых исследования продемонстрировали небезопасность конечного продукта.
В целом новая система, получившая название OV-chipkaart, построена на основе бесконтактных смарт-карт с RFID-микросхемой. Пассажир может купить или разовую картонную карточку на одну-две поездки, или постоянную пластиковую карту для регулярной езды. Карточку прикладывают к окошку турникета и при входе в транспорт, и при выходе из него, поскольку ридер не только аутентифицирует карту, но и списывает с чипа разную сумму в зависимости от длительности поездки.
Разовая картонная и постоянная пластиковая карты основаны на существенно разных технологиях. Чип дешевой разовой карты, именуемой Mifare Ultralight, не имеет никакой криптографии. В постоянной же пластиковой карте (Mifare Classic) информация защищена гораздо серьезнее, но увы, не столь надежно, как можно было бы ожидать при нынешнем уровне развития электроники.
Впервые алгоритм атаки на проездные карты (тогда - Ultralight) опубликовали в июле 2007 года Питер Зикерман и Мориц ван дер Шее (Pieter Sieckerman, Maurits van der Schee) из Амстердамского университета. Суть атаки в том, что память чипа оказалось возможным "перематывать" в предыдущее состояние, так что по одноразовой карте в принципе можно было ездить сколько угодно в пределах срока ее действия. Исследователи показали, что эту очевидную дыру нетрудно залатать, слегка подправив программное обеспечение системы. Но одновременно было установлено, что сконструированная хакерами контрафактная карта Ultralight сможет постоянно обманывать ридеры, а отследить и заблокировать ее чрезвычайно сложно.
Неустранимая слабость одноразовых карт Ultralight в том, что они не имеют криптографии, то есть чип карты не способен утаить никаких секретов от атакующей стороны. С помощью доступного оборудования злоумышленник может легко считать информацию из RFID-чипа и изготовить "клон", идентичный исходной карте. С тем лишь отличием, что контрафактная карта после каждого использования неизменно возвращается в первоначальное (полностью оплаченное) состояние.
Голландский студент Роэл Вердулт (Roel Verdult) недавно воплотил в жизнь идею клонирования Mifare Ultralight, затратив на устройство около 40 евро. В начале года об изысканиях Вердулта рассказало национальное телевидение; передача получила большой резонанс, а студента даже пригласили выступить в парламенте. Многим депутатам захотелось в подробностях узнать, насколько слабой оказалась система, стоившая 2 миллиарда. (В сетевых комментариях по этому поводу завистливые американцы отметили, что, будь дело в США, чересчур инициативного студента давно повязали бы и припаяли пожизненный срок - как пособнику террористов.)
В более серьезные проездные карты Mifare Classic встроен чип с криптографией. Здесь для защиты информации имеются секретные ключи, используемые при аутентификации карты ридером. Поэтому в лоб клонировать такую карту злоумышленник не может. Однако в качестве алгоритма шифрования, на основе которого построена безопасность системы, выбран не какой-нибудь общеизвестный сильный криптоалгоритм, а засекреченный фирменный (изготовителем карт Mifare является компания NXP, подразделение гиганта Philips).
Давным-давно известно, что уповать на секретность шифра - дело зряшное. В декабре прошлого года германские хакеры Карстен Ноль, Старбаг и Хенрик Плётц (Karsten Nohl, Starbug, Henryk Ploetz) на конференции 24CCC объявили о завершении обратной инженерной разработки криптоалгоритма карты Mifare Classic. Полного описания восстановленной криптосхемы хакеры публиковать из осторожности не стали, но и раскрытой информации вполне достаточно, чтобы слабость использованного в карте шифра стала очевидной.
Хотя в семействе Mifare имеются более безопасные карты (например, применяемая в других странах Европы DESfire на основе стойкого шифра тройной-DES), для голландской транспортной системы по неизвестным пока причинам выбрали Mifare Classic с проприетарным шифром и ключом 48 бит. Даже если этот шифр конструктивно хорош и не вскрывается быстрой атакой (что не факт), короткий ключ не в силах противостоять тотальному перебору всех возможных комбинаций. Их число, около 280 триллионов, может показаться большим, однако при современных возможностях техники на лобовое вскрытие ключа уйдет лишь несколько дней или даже часов. Если же воспользоваться хорошо освоенной технологией предвычислений и заранее подготовить данные на емком жестком диске, то вскрытие произвольного 48-битного ключа и вовсе становится минутным делом…
В бурных сетевых дискуссиях по поводу слабостей в защите новой голландской системы всплыло несколько малоизвестных фактов. Например, что проездные, а теперь и платежные RFID-карточки знаменитой лондонской системы Oyster построены на основе тех же чипов Mifare Classic; что карты хоть и неважно защищены, зато содержат в памяти информацию о последних тридцати пяти поездках, и что - самое интересное - голландская система семь лет хранит информацию обо всех маршрутах поездок по каждой пластиковой карте, оформляемой на человека персонально. Иначе говоря, есть основания полагать, что удешевленная и упрощенная защита карточек - это своего рода плата за обеспечение обостренных интересов государства ко всем перемещениям своих граждан.