Берд Киви - Гигабайты власти. Информационные технологии между свободой и тоталитаризмом
Описанная техника вскрытия успешно применяется любителями-кракерами. Далее же вкратце будут описаны некоторые технологии, доступные хорошо оснащенным лабораториям, занимающимся изучением полупроводников. В мире сейчас насчитываются сотни таких лабораторий - в университетах и промышленных исследовательских центрах, к примеру. Имеется достоверная информация, что наиболее продвинутые кракеры арендуют эту технику и тщательно изучают новейшие промышленные технологии обратной инженерной разработки (подробнее об этом в следующем разделе «Возня в подполье, война на небесах»).
Микрозондирование чипа, извлеченного из смарт-карты
В начале 1990-х годов в Кавендишской лаборатории Кембриджа создана технология обратного восстановления схемы сложных кремниевых чипов, позволяющая аккуратно снимать слои микросхемы один за другим. Одно из примененных там новшеств - техника показа примесных N и Р слоев на основе эффекта Шоттки: тонкая пленка из золота или палладия накладывается на чип, образуя диод, который может быть виден в электронном луче. Изображения последовательных слоев чипа вводятся в компьютер, специальное программное обеспечение очищает первоначально нечеткие образы, выдает их ясное представление и распознает стандартные элементы чипа. Данная система была протестирована на процессоре Intel 80386 и ряде других устройств. Работа над восстановлением 80386 заняла две недели, причем для правильной реконструкции обычно требуется около шести образцов чипа. Результатом работ могут быть диаграммы масок и схем или даже список библиотечных ячеек, из которых чип был сконструирован.
В условиях, когда конструкция и принципы функционирования чипа уже известны, существует очень мощная технология, разработанная в ШМ для исследования чипа в работе даже без удаления защитного слоя. Для измерения рабочих характеристик устройства над ним помещают кристалл ниобата лития. Показатель преломления этой субстанции изменяется при изменении электрического поля, и потенциал находящегося под ней кремния может считываться с помощью ультрафиолетового лазерного луча, проходящего через кристалл под скользящим углом наклона. Возможности этой технологии таковы, что можно считывать сигнал в 5 В и с частотой до 25 МГц. По сути дела, это стандартный путь для хорошо оснащенных лабораторий при восстановлении криптоключей в чипах, конструкция которых известна.
Исследование техники разрезания чипа ведет к более общей (и сравнительно меньше изученной) проблеме - атакам, которые включают в себя активную модификацию исследуемого чипа, а не просто пассивное его исследование. К примеру, есть все основания полагать, что некоторые успешные атаки пиратов на систему платного ТВ проводились с использованием рабочих станций с фокусированием ионного пучка (Focused Ion Beam workstation - FIB). Такой аппарат может вырезать траки в металлизированном слое чипа и формировать новые траки или изолирующие слои. Кроме того, FIB может имплантировать ионы для изменения толщины слоя кремния и даже строить сквозные переходы к проводящим структурам в нижележащих слоях чипа. Такие аппараты стоят несколько миллионов долларов, но, как показывает практика, не слишком богатые злоумышленники арендуют дорогое оборудование на некоторое время у крупных полупроводниковых компаний.
Снимок электронным микроскопом, демонстрирующий результаты обработки чипа сфокусированным ионным пучком ( FIB )
Обеспеченные таким инструментарием атаки на смарт-карты становятся более простыми и мощными. Типичная атака заключается в отсоединении почти всех процессов ЦПУ от шины, кроме памяти EEPROM и той компоненты ЦПУ, что генерирует доступ по чтению. Например, программный счетчик может быть оставлен подсоединенным таким образом, что области памяти становятся по порядку доступны на считывание по мере подачи тактовых импульсов.
Как только это сделано, атакующему требуется лишь одна игла микропробника для считывания всего содержимого EEPROM. В результате процесс анализа становится более легким, чем при пассивном исследовании, когда обычно анализируется только трасса выполнения. Также это помогает избежать чисто механических трудностей одновременной работы с несколькими иглами-микропробниками на линиях шины, ширина которых составляет лишь несколько микрон.
Program Counter
load
load low high
Microcode Control Unit
1
земля
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].