Ясно, что небезопасно

Discussion in 'Мировые новости. Обсуждения.' started by procedure, 29 Mar 2008.

  1. procedure

    procedure Elder - Старейшина

    Joined:
    22 Dec 2007
    Messages:
    527
    Likes Received:
    257
    Reputations:
    46
    В первых числах марта коллектив студентов и сотрудников исследовательской группы "Цифровая безопасность" в университете Radboud города Неймеген (Нидерланды) обнаружил серьезнейшую уязвимость в бесконтактных смарт-картах широко распространенного типа. Подобные устройства, иногда называемые проксимити-картами, построены на основе RFID-чипов, то есть микросхем радиочастотной идентификации.

    На сегодняшний день пластиковые и картонные карточки с запрессованным в них RFID используются в самом разном качестве: как пропуска, средства оплаты проезда, цифровые кошельки для мелких покупок, дисконтные карты в торговых сетях и т. д. и т. п. Голландцам удалось взломать защиту в чипах типа Mifare Classic, изготовляемых компанией NXP, в прошлом - полупроводниковым подразделением корпорации Philips. Чипы Mifare занимают доминирующее положение на рынке бесконтактных карт, причем на долю Mifare Classic, имеющих оптимальное соотношение цена/безопасность, приходится около 90%. Общее число проданных карт компания Mifare оценивает в 500 млн. штук (другие источники сообщают об 1–2 млрд.).

    В современной жизни Голландии карты Mifare Classic занимают особое место, поскольку на их основе реализован гранд-проект OV-chipkaart - разворачиваемая ныне общенациональная система единой оплаты проезда в общественном транспорте - от метро и автобусов до железных дорог. Нечто подобное делается во многих мегаполисах планеты - Лондоне, Гонконге, Милане. Так, в Москве карточки Mifare Classic - это не только проездные в метро, но и "социальная карта москвича", перезаряжаемые карточки студентов и школьников, проездные для электричек и т. д. Но, вероятно, еще важнее, что чипы Mifare Classic широко используются по всему миру в картах пропусков для прохода в здания корпораций и правительственных учреждений.

    Все это означает, что слабости в защите таких карт будут иметь очень серьезные последствия. Если карту нетрудно клонировать, то становится возможным проход посторонних лиц на охраняемые объекты. Осуществимо ли это, решили проверить "на себе" голландские исследователи из университета Radboud, в котором допуск в здания контролируется, как и повсюду в Нидерландах, с помощью Mifare Classic.

    Члены группы Digital Security поставили перед собой цель отыскать слабости в собственных пропусках, а найдя их, попытаться клонировать карты. Результатом исследований стало обнаружение серьезных дефектов в механизме аутентификации Mifare Classic, позволивших:
    полностью восстановить секретную схему алгоритма шифрования Crypto-1, запечатанного в чип для защиты данных;
    отыскать относительно простой и дешевый метод для извлечения криптоключей из чипа.

    В результате удалось смоделировать атаку и успешно клонировать карточку-пропуск Mifare Classic для входа в здания университета.

    Технические нюансы

    Бесконтактная смарт-карта Mifare Classic была разработана в середине 1990-х годов. По сути, это чип памяти с дополнительными функциями защиты содержимого. Поскольку здесь нет процессора, функциональность карты не программируется. Криптографические операции, которые способен выполнять чип, реализованы на аппаратном уровне в виде так называемого регистра сдвига с линейной обратной связью, или LFSR (linear feedback shift register), и "фильтр-функции" для усложнения генерируемой шифр-последовательности. Этот криптоалгоритм, носящий имя Crypto-1, является коммерческой тайной NXP и никогда не публиковался для независимого анализа. Таким образом, безопасность карт Mifare Classic в значительной степени опирается на то, что устройство криптоалгоритма хранится в тайне. Такой подход принято именовать "безопасность через неясность" (security by obscurity), причем среди большинства серьезных криптографов он считается в корне ошибочным и бессчетное количество раз скомпрометированным. Не стал исключением и случай с Crypto-1.
    [​IMG]
    Общая криптосхема поточного шифра Crypto-1, восстановленная Нолем и Плётцем

    Типичный способ применения криптографии карт Mifare Classic - в процедурах аутентификации. Цель таких процедур, как известно, состоит в том, что две связывающиеся стороны неким формальным способом доказывают друг другу, кем они являются. Делается это предъявлением какой-либо известной обеим сторонам секретной информации, так называемого разделяемого секрета (или, иначе, общего криптоключа). Обе стороны, в данном случае карта Mifare и считывающий ее прибор, выполняют определенные операции, а затем сверяют получившиеся результаты, дабы быть уверенными в легитимности оппонента.

    Успешное завершение процедуры аутентификации является необходимым условием не только для открытия двери или турникета и входа на охраняемый объект, но и для обмена информацией с памятью Mifare Classic. Память чипа поделена на независимые секторы, каждый из которых защищен двумя криптографическими ключами.
    [​IMG]
    Построение библиотеки стандартных вентилей для восстановления криптосхемы

    Правильное управление криптографическими ключами - важная область исследований. Ошибки здесь часто приводят к серьезным последствиям для безопасности. Для случая Mifare Classic имеется два основных способа управления ключами.
    Все карты и все кардридеры, используемые в одном приложении, имеют одни и те же ключи для аутентификации. Это общепринятый подход для карт в системах контроля доступа.
    Каждая карта имеет свои собственные криптографические ключи. Для проверки ключей кардридер сначала должен определить, с какой именно картой начат обмен, а уже затем найти и вычислить связанные с нею ключи. Такая процедура именуется диверсификацией ключей и применяется в более разветвленных приложениях.
     
  2. procedure

    procedure Elder - Старейшина

    Joined:
    22 Dec 2007
    Messages:
    527
    Likes Received:
    257
    Reputations:
    46
    II часть

    Слабости в защите Mifare Classic


    Голландская группа Digital Security обнаружила серьезные дефекты в механизме аутентификации карт Mifare Classic. Во-первых, как уже сказано, это позволило сделать полное обратное восстановление схемы Crypto-1 и сконструировать собственную реализацию криптоалгоритма. Сделано это было с помощью известных в криптоанализе методов генерации сбоев. Если атакующая сторона при аутентификации не в точности следует правилам обмена, предписываемым протоколом, то в принципе - по нештатным реакциям - имеется возможность получать дополнительную информацию об устройстве неизвестной схемы. Целенаправленно манипулируя сигналами на входе и комбинируя их с ответной информацией, иногда можно выяснить, как устроен "черный ящик". Что и было сделано в данном случае.
    [​IMG]
    Слои чипа Mifare, восстанавливаемые в ходе разрушающего анализа

    Во-вторых, когда криптоалгоритм стал известен, стало возможным отыскать нужные секретные ключи. Например, усовершенствованным методом лобового вскрытия, то есть тотального перебора всех возможных ключевых комбинаций. Ибо длина ключа в Crypto-1 оказалась всего лишь 48 бит, так что при наличии подходящего быстрого вычислителя на полный "тупой" перебор требуется всего 9–10 часов работы. Правда, стоит такая техника недешево, однако голландским исследователям она и не понадобилась. Ибо Crypto-1, как выяснилось, имеет не только малую длину рабочего регистра (ключа), но и слабую функцию усложнения. Что позволило довольно легко отыскивать секретный ключ без лобового вскрытия. Специально подобранный вид запросов на (заведомо неудачную) аутентификацию дает в ответах некоторую информацию о битах секретного ключа. Если один раз заранее собрать результаты всех таких ответов в большую просмотровую таблицу, коль скоро устройство Crypto-1 уже известно, то атака на карту с неизвестным ключом становится быстрой и очень простой. Надо лишь загрузить ее ложными запросами, по таблице установить одну часть ключа, а затем быстрым перебором остальных бит восстановить недостающую часть и получить ключ полностью.
    [​IMG]
    Чип Mifare под микроскопом

    Поскольку разработанная голландцами атака предназначена лишь для подтверждения концепции, а не для реальных хищений личности через клонирование карт, при демонстрации потребовалось многократное опрашивание карты-жертвы для конструирования просмотровой таблицы. Чтобы записать результаты попыток "неудачной" аутентификации в компьютер, потребовалось несколько часов. Однако даже такой не слишком элегантный способ можно реализовать и в жизни, если незаметно расположить антенну кардридера поблизости от карты жертвы на несколько часов. Вдобавок есть все предпосылки к тому, чтобы оптимизировать атаку и радикально сократить число опросов карты-жертвы.

    Эксплуатация слабостей и контрмеры


    Как только секретный криптоключ извлечен из чипа карты, появляются самые разные возможности для злоупотреблений. Насколько тяжкими будут их последствия, зависит от ситуации. Если все карты доступа имеют один и тот же ключ, то вся система контроля оказывается в высшей степени уязвима. Правда, выразить эту уязвимость в цифрах не представляется возможным, поскольку открытой информации об объектах, охраняемых с помощью Mifare Classic, никто не публикует. Но следует подчеркнуть, что именно для такой ситуации голландская группа продемонстрировала реальную атаку, когда карта-пропуск одного из сотрудников университета была "незаметно" для него опрошена и клонирована с помощью портативного кардридера. Понятно, что владелец карты может даже не догадываться об этом.

     
  3. procedure

    procedure Elder - Старейшина

    Joined:
    22 Dec 2007
    Messages:
    527
    Likes Received:
    257
    Reputations:
    46
    III часть

    В ситуациях, когда используются диверсифицированные ключи, простор для злоупотреблений заметно сужается. Атаки здесь более сложны, однако не невозможны. Впрочем, реальных атак в данном направлении голландцы пока не демонстрировали.

    На техническом уровне никаких контрмер для данной атаки не просматривается. Экранирование карты в те моменты, когда она не используется, конечно, сокращает вероятность тайного считывания чипа. Но когда карта используется, становится возможен и перехват сигналов, если скрытая антенна расположена неподалеку от поста контроля доступа.
    [​IMG]
    Устройство Ghost для клонирования проездных карт, сконструированное Вердультом

    По этой причине специалисты рекомендуют усилить традиционные меры контроля. Доступ на охраняемые объекты необходимо защищать сразу несколькими способами, среди которых RFID-карта обеспечивает лишь один из механизмов контроля.

    Проблемы и вопросы


    Всякий раз, когда исследователи обнаруживают дыры в защите распространенных систем, неизбежно возникает вопрос - как поступать с этой информацией. Немедленная открытая публикация со всеми подробностями гарантированно вызовет рост злонамеренных атак и нанесет обществу вред. Если же надолго задержать информацию в секрете, то практически наверняка никто сам не станет предпринимать дополнительных шагов для усиления защиты. Поэтому обычно принимается компромиссное решение: подробности о дырах в защите публикуются с задержкой, предоставляющей время на исправление ошибок.
    В ситуации со взломом Mifare Classic и голландцы, и немцы пошли именно по этому пути - своевременно предупредив общество и заинтересованные инстанции об угрозе, но оставив при себе принципиально важные детали об устройстве слабой криптосхемы. При этом каждая из сторон, участвовавших во вскрытии, сочла необходимым в очередной раз раскритиковать пристрастие изготовителей к явно порочной концепции "безопасность через неясность". Ибо очевидно, что безусловно слабый алгоритм Crypto-1 никогда бы не попал в распространенные смарт-карты, пройди он через открытую независимую экспертизу.

    Богатый опыт свидетельствует, что практически ни разу при вскрытии хакерами секретной проприетарной криптосхемы не обнаруживалось сильного алгоритма, превосходящего открытые и хорошо известные. Отсюда напрашивается вывод, что секретные схемы для того и держат в тайне, дабы их слабости были известны лишь тем, "кому надо". Но вот надо ли это обществу?

    Автор: Киви Берд
    Опубликовано 28 марта 2008 года

    Из журнала "Компьютерра"
    http://www.computerra.ru/magazine/352574/