Миллиона подопытных кроликов

На самом излете клинтоновской госадминистрации, осенью 2000 г. в Министерстве обороны США был начат крупномасштабный ввод новых хайтек‑бейджей для идентификации персонала на основе технологии смарт‑карт. В итоге свыше 4 миллионов человек, работающих в военном ведомстве, получают личные устройства с микропроцессором и памятью, получившие название «карта общего доступа».

Такая смарт‑карта ценой около 8 долларов и размером примерно со стандартную кредитную карточку обеспечивает военному и гражданскому персоналу не только проход на режимные объекты или загрузку в секретные компьютерные сети, но и несет в себе массу личной информации о владельце: имя, должность и звание, номер социального страхования, фотографию. Благодаря хранящемуся в карте «сертификату» ее владелец может ставить цифровую подпись под своей электронной почтой и служебными приказами.

Кроме того, испытываются и такие варианты применения, как внесение в карту расчетных сумм за еду в служебной столовой, хранение медицинской и стоматологической информации, результаты сдачи нормативов по физической подготовке и стрельбе… Как выразился тогдашний заместитель министра обороны по кадровым вопросам Бернард Росткер, руководство Пентагона «очень возбуждено от вроде бы безграничных возможностей технологии смарт‑карт». К середине 2003 года непрекращающиеся эксперименты с картами общего доступа привели к занесению в память чипа биометрической информации о владельце и к появлению возможностей бесконтактной идентификации, когда информация считывается с карты дистанционно [REOO][ВВОЗ].

Правозащитные организации с самого начала экспериментов не разделяли возбуждения военных начальников из Пентагона, справедливо усмотрев в этой акции закладывание основ для повсеместного внедрения цифровых идентификаторов в национальных масштабах. В том же 2000 году Дэвид Бэнисар, юрист известной правозащитной организации EPIC, предупреждал, что «военных очень часто используют как подопытных кроликов в тех ситуациях, когда опробование новшеств на гражданских лицах представляется слишком сомнительным. […] В конечном счете, опасность заключается в том, что людей станет возможным отслеживать на постоянной основе. А накапливаемые данные затем можно запросто использовать для таких целей, которые вовсе не подразумевались первоначально».

Как здесь с безопасностью?

Не подлежит сомнению, что индустрия смарт‑карт переживает ныне период мощного расцвета. В 2002 году по всему миру было продано чуть меньше 2 миллиардов интеллектуальных карточек со встроенным микрочипом, а в ближайшие годы ожидается рост этих цифр в разы. Причины тому просты, коль скоро области применения смарт‑карт все время расширяются: от телефонной карты до жетона аутентификации пользователя ПК, от «электронного кошелька» для хранения цифровых наличных до цифрового паспорта‑идентификатора граждан. Массовое внедрение смарт‑карт в повседневную жизнь сопровождается непременными заверениями официальных представителей индустрии и властей о том, что чип‑карты – это наиболее безопасная из существующих на сегодня технологий, потому что такие карты чрезвычайно очень сложно, практически невозможно вскрывать. Но так ли обстоят дела на самом деле?

Типичная смарт‑карта – это 8‑битный микропроцессор, постоянное запоминающее устройство (ROM), оперативная память (RAM), электрически перепрограммируемая память (EEPROM или Flash, где, в частности хранится криптографический ключевой материал), последовательные вход и выход. Все это хозяйство размещается в одном чипе, заключенном в корпус – обычно, пластиковую карту размером с кредитку.

Нравится это кому‑то или нет, но в действительности вскрытие смарт‑карт – явление весьма давнее и распространенное повсеместно. Как свидетельствуют специалисты, примерно с 1994 года практически все типы смарт‑карточных чипов, использовавшихся, к примеру, в европейских, а затем в американских и азиатских системах платного телевидения, были успешно вскрыты кракерами (т.е. криминальными хакерами) методами обратной инженерной разработки. Скомпрометированные секреты карт – схема и ключевой материал – затем продавались на черном рынке в виде нелегальных клон‑карт для просмотра закрытых ТВ‑каналов без оплаты компании‑вещателю. Менее освещенной в прессе остается такая деятельность, как подделка телефонных смарт‑карт или электронных кошельков, однако известно, что и в этой области далеко не все в порядке с противодействием взлому. Индустрии приходится регулярно заниматься обновлением технологий защиты процессора смарт‑карт, кракеры в ответ разрабатывают более изощренные методы вскрытия, так что это состязание еще далеко не закончено.

Смарт‑карты в своих потенциальных возможностях имеют целый ряд очень важных преимуществ в сравнении с другими технологиями. Обладая собственным процессором и памятью, они могут участвовать в криптографических протоколах обмена информацией, и, в отличие от карточек с магнитной полоской, здесь хранимые данные можно защищать от неавторизованного доступа. Серьезная проблема лишь в том, что реальная стойкость этой защиты очень часто переоценивается. Далее будет представлен краткий обзор наиболее важных технологий, используемых при вскрытии смарт‑карт. Эта информация важна для любого человека, желающего получить реальное представление о том, как происходит вскрытие защищенных устройств и каких затрат это стоит.

Вскрытие бывает разное

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

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

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

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

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

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

Очевидно, что неразрушающие атаки особо опасны, поскольку не оставляют за собой следов компрометации. Но понятно и то, что сама природа атак такого рода подразумевает детальное знание как процессора, так и программного обеспечения конкретной карты. С другой стороны, для разрушающих атак микрозондированием требуется очень мало исходных знаний о конкретной конструкции, поэтому при относительно небольшом наборе приемов они обычно срабатывают в отношении весьма широкого ряда разных чипов. Таким образом, можно говорить, что атака на новую смарт‑карту обычно начинается с разрушающей обратной инженерной разработки, результаты которой помогают создать более дешевые и быстрые неразрушающие атаки. В частности, именно такая последовательность событий многократно отмечена при вскрытии карт условного доступа в системах платного телевидения [КК99].

Разрушающие атаки

Итак, к этому типу атак принято относить такие способы компрометации смарт‑карт, которые сопровождаются вскрытием корпуса устройства. Публичное представление таких методов, применяемых в кракерском подполье, впервые, похоже, было сделано в 1996 году исследователями из Кембриджского университета Россом Андерсоном и Маркусом Куном в ходе Второго семинара USENIX по электронной коммерции. Еще более подробно эти технологии описаны в совместной статье Куна и Оливера Кеммерлинга 1999 года «Принципы конструирования защищенных процессоров смарт‑карт», а также в последующей докторской диссертации Куна, которая, правда, в отличие от первых двух статей в Интернете не опубликована. В самом кратком изложении суть этих работ примерно такова [АК96][КК99].

Типичный чиповый модуль смарт‑карты имеет тонкое пластиковое основание размером около квадратного сантиметра с контактными зонами с обеих сторон. Одна сторона модуля видна на самой смарт‑карте и контактирует со считывателем; кремниевая матрица приклеена к другой стороне основания, подсоединяясь с помощью тонких золотых или алюминиевых проводов. Та сторона пластины, где находится чип, покрыта эпоксидной смолой, там чиповый модуль вклеивается в карту. Вынуть чип из карты легко. Прежде это делали с помощью острого ножа или ланцета, срезая пластик тыльной стороны карты до тех пор, пока не покажется эпоксидная смола. Потом научились быстро вынимать чип, просто разогревая пластмассу до мягкого состояния. Далее удаляют эпоксидный слой, нанося несколько капель концентрированной азотной кислоты (» 98%). Прежде, чем кислота успевает растворить слишком много эпоксидного слоя и затвердеть, кислоту и смолу смывают ацетоном. Эта процедура повторяется от 5 до 10 раз, пока полностью не покажется кремниевая матрица. Если все было сделано аккуратно и соединительная проводка осталась неповрежденной, то чип остается полностью функциональным.

миллиона подопытных кроликов - student2.ru

миллиона подопытных кроликов - student2.ru

Полностью функциональный процессор смарт‑карты, пластиковый корпус которой удален для экспериментов с микропробником.

Следующим этапом, если процессор совершенно новый и неизвестный, становится создание карты его схем. Сейчас для этого обычно применяют оптический микроскоп и цифровую камеру, с помощью которых делают большую, размером несколько метров, мозаику из высокого разрешения снимков поверхности чипа. У большинства чипов имеется защитный поверхностный слой (пассивация) из оксида или нитрата кремния, который предохраняет их от излучений оборудования и диффузии ионов. Азотная кислота на него не действует, поэтому для его удаления специалисты используют сложный метод сухого травления. Но это не единственная возможность для доступа к поверхности. Другим методом, особенно когда схема в целом известна, является использование игл‑микропробников, которые с помощью ультразвуковой вибрации удаляют защитный слой непосредственно под точкой контакта. Кроме того, для локального удаления защитного слоя применяются лазерные резаки‑микроскопы, используемые в лабораториях клеточной биологии.

Описанная техника вскрытия успешно применяется любителями‑кракерами. Далее же вкратце будут описаны некоторые технологии, доступные хорошо оснащенным лабораториям, занимающимся изучением полупроводников. В мире сейчас насчитываются сотни таких лабораторий – в университетах и промышленных исследовательских центрах, к примеру. Имеется достоверная информация, что наиболее продвинутые кракеры арендуют эту технику и тщательно изучают новейшие промышленные технологии обратной инженерной разработки (подробнее об этом в следующем разделе «Возня в подполье, война на небесах»).

миллиона подопытных кроликов - student2.ru

Микрозондирование чипа, извлеченного из смарт‑карты

В начале 1990‑х годов в Кавендишской лаборатории Кембриджа создана технология обратного восстановления схемы сложных кремниевых чипов, позволяющая аккуратно снимать слои микросхемы один за другим. Одно из примененных там новшеств – техника показа примесных N и Р слоев на основе эффекта Шоттки: тонкая пленка из золота или палладия накладывается на чип, образуя диод, который может быть виден в электронном луче. Изображения последовательных слоев чипа вводятся в компьютер, специальное программное обеспечение очищает первоначально нечеткие образы, выдает их ясное представление и распознает стандартные элементы чипа. Данная система была протестирована на процессоре Intel 80386 и ряде других устройств. Работа над восстановлением 80386 заняла две недели, причем для правильной реконструкции обычно требуется около шести образцов чипа. Результатом работ могут быть диаграммы масок и схем или даже список библиотечных ячеек, из которых чип был сконструирован.

В условиях, когда конструкция и принципы функционирования чипа уже известны, существует очень мощная технология, разработанная в ШМ для исследования чипа в работе даже без удаления защитного слоя. Для измерения рабочих характеристик устройства над ним помещают кристалл ниобата лития. Показатель преломления этой субстанции изменяется при изменении электрического поля, и потенциал находящегося под ней кремния может считываться с помощью ультрафиолетового лазерного луча, проходящего через кристалл под скользящим углом наклона. Возможности этой технологии таковы, что можно считывать сигнал в 5 В и с частотой до 25 МГц. По сути дела, это стандартный путь для хорошо оснащенных лабораторий при восстановлении криптоключей в чипах, конструкция которых известна.

Исследование техники разрезания чипа ведет к более общей (и сравнительно меньше изученной) проблеме – атакам, которые включают в себя активную модификацию исследуемого чипа, а не просто пассивное его исследование. К примеру, есть все основания полагать, что некоторые успешные атаки пиратов на систему платного ТВ проводились с использованием рабочих станций с фокусированием ионного пучка (Focused Ion Beam workstation – FIB). Такой аппарат может вырезать траки в металлизированном слое чипа и формировать новые траки или изолирующие слои. Кроме того, FIB может имплантировать ионы для изменения толщины слоя кремния и даже строить сквозные переходы к проводящим структурам в нижележащих слоях чипа. Такие аппараты стоят несколько миллионов долларов, но, как показывает практика, не слишком богатые злоумышленники арендуют дорогое оборудование на некоторое время у крупных полупроводниковых компаний.

миллиона подопытных кроликов - student2.ru

Снимок электронным микроскопом, демонстрирующий результаты обработки чипа сфокусированным ионным пучком ( FIB )

Обеспеченные таким инструментарием атаки на смарт‑карты становятся более простыми и мощными. Типичная атака заключается в отсоединении почти всех процессов ЦПУ от шины, кроме памяти EEPROM и той компоненты ЦПУ, что генерирует доступ по чтению. Например, программный счетчик может быть оставлен подсоединенным таким образом, что области памяти становятся по порядку доступны на считывание по мере подачи тактовых импульсов.

Как только это сделано, атакующему требуется лишь одна игла микропробника для считывания всего содержимого EEPROM. В результате процесс анализа становится более легким, чем при пассивном исследовании, когда обычно анализируется только трасса выполнения. Также это помогает избежать чисто механических трудностей одновременной работы с несколькими иглами‑микропробниками на линиях шины, ширина которых составляет лишь несколько микрон.

Program Counter load

load low high

миллиона подопытных кроликов - student2.ru

Microcode Control Unit

земля

X X

шина данных (8 bit)

адресная шина (16 bit)

игла микропробника

сигнал синхронизации

EEPROM

X‑удалeнное соединение, *‑созданное новое соединение

Модифицированная атака на криптопроцессор с помощью рабочей станции FIB , позволяющая легко осуществить доступ к засекреченному содержимому EEPROM , используя единственную иглу‑микропробник

Индуцирование сбоев (глич‑атаки)

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

В конце сентября 1996 г. коллектив авторов из Bellcore, научно‑исследовательского центра американской компании Bell, сообщил о том, что обнаружена серьезная потенциальная слабость общего характера в защищенных криптографических устройствах, в частности, в смарт‑картах для электронных платежей. Авторы – Бонэ, ДеМилло и Липтон – назвали свой метод вскрытия «криптоанализом при сбоях оборудования», суть же его в том, что искусственно вызывая ошибку в работе электронной схемы с помощью ионизации или микроволнового облучения, а затем сравнивая сбойные значения на выходе устройства с заведомо правильными значениями, теоретически можно восстанавливать криптографическую информацию, хранящуюся в смарт‑карте [BD97].

Исследования ученых показали, что новой угрозе подвержены все устройства, использующие криптоалгоритмы с открытыми ключами для шифрования информации и аутентификации пользователя. Это могут быть смарт‑карты, применяемые для хранения данных (например, электронных денег); SIM‑карточки для сотовой телефонии; карточки, генерирующие электронные подписи или обеспечивающие аутентификацию пользователя при удаленном доступе к корпоративным сетям. Правда, разработанная в Bellcore атака была применима для вскрытия ключей исключительно в криптосхемах с открытым ключом – RSA, алгоритм цифровой подписи Рабина, схема идентификации Фиата‑Шамира и тому подобные конструкции.

Главным же результатом публикации Bellcore стало то, что к известной, вообще говоря, в узком кругу проблеме было привлечено внимание гораздо большего числа исследователей. И меньше чем через месяц после появления статьи Бонэ и его коллег, в октябре 1996 г., стало известно и о разработке аналогичной теоретической атаки в отношении симметричных шифров, т.е. криптоалгоритмов закрытия данных с общим секретным ключом. Новый метод был разработан знаменитым тандемом израильских криптографов Эли Бихамом и Ади Шамиром, получив название «Дифференциальный анализ искажений» или ДАИ (по‑английски DFA).

На примере самого распространенного блочного шифра DES эти авторы продемонстрировали, что в рамках той же «беллкоровской» модели сбоя в работе аппаратуры можно «вытащить» полный ключ DES из защищенной смарт‑карты путем анализа менее 200 блоков шифртекста (блок DES – 8 байт). Более того, впоследствии появился еще ряд работ Бихама‑Шамира с описанием методов извлечения ключа из смарт‑карты в условиях, когда о реализованной внутри криптосхеме не известно практически ничего [BS97].

Наиболее часто критика в адрес ДАИ, особенно со стороны выпускающих смарт‑карты фирм, сводилась к тому, что вся эта методика носит сугубо теоретический характер. Ведь никто, дескать, не продемонстрировал на практике, что сбойные ошибки можно вызывать именно в криптосхеме, причем конкретно в алгоритме разворачивания ключа…

Но уже весной 1997 года появилось описание не теоретической, а весьма практичной атаки, получившей название «усовершенствованный метод ДАИ». Авторы атаки, уже упоминавшиеся кембриджский профессор Росс Андерсон и его (в те времена) аспирант из Германии Маркус Кун, продемонстрировали, что могут извлекать ключ из смарт‑карты менее чем по 10 блокам шифртекста. В основу нового метода была положена модель принудительных искажений или «глич‑атак» (от английского glitch – всплеск, выброс), реально практикуемых кракерами при вскрытии смарт‑карт платного телевидения. Под глич‑атаками понимаются манипуляции с тактовой частотой или напряжением питания смарт‑карт, что позволяет выдавать дампы с ключевым материалом на порт выхода устройства. Эффективность глич‑атак продемонстрирована кембриджскими авторами как на симметричных криптосхемах, так и на вскрытии алгоритмов с открытым ключом [АК97].

Наши рекомендации