Анализ побочных каналов утечки

Летом 1998 г. пришло известие еще об одном методе вскрытия смарт-карт, также более чем успешно реализованном на практике. Совсем небольшая, состоящая из 4 человек консалтинговая криптофирма Cryptography Research из Сан-Франциско разработала чрезвычайно эффективный аналитический инструментарий для извлечения секретных ключей из криптографических устройств. По словам главы фирмы Пола Кочера, которому в ту пору было 25 лет, исследователям «не удалось найти ни одной карты, которую нельзя было бы вскрыть».

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

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

Кочер и его коллеги, можно сказать, переизобрели секретные методы спецслужб и научились вскрывать защиту смарт-карт с помощью привлечения аппарата математической статистики и алгебраических методов исправления ошибок для анализа флуктуации в потреблении чипом электропитания. Делалось это примерно в течение полутора лет с 1996 по 1998 год, когда специалисты Cryptography Research занимались задачей о том, каким образом можно было бы повысить стойкость портативных криптографических жетонов, включая смарт-карты. Не предавая свои исследования широкой огласке, они знакомили сообщество производителей смарт-карт с разработанными в фирме видами атак, получившими названия ПАП (простой анализ питания) и ДАЛ (дифференциальный анализ питания, или DPА) [KJ99].

Вполне очевидно, что данные методы анализа заслуживают самого серьезного внимания, поскольку атаки такого рода можно проводить быстро и используя уже готовое оборудование ценой от нескольких сотен до нескольких тысяч долларов. Базовые же концепции новой методики вскрытия сформулированы в более ранней и достаточно известной работе Пола Кочера «Криптоанализ на основе таймерной атаки» [РК96], где было продемонстрировано, что можно вскрывать криптоустройства, просто точно замеряя интервалы времени, которые тем требуются на обработку данных.

Что же касается ПАП-атак, то здесь аналитик непосредственно наблюдает за динамикой потребления энергии системой. Количество расходуемой энергии изменяется в зависимости от выполняемой микропроцессором инструкции, а для точного отслеживания флуктуации в потреблении питания можно использовать чувствительный амперметр. Так выявляются большие блоки инструкций – циклы DES, операции RSA и т. д., – поскольку эти операции, выполняемые процессором, имеют внутри себя существенно различающиеся по виду фрагменты. При более сильном усилении удается выделять и отдельные инструкции. В то время как ПАП-атаки главным образом строятся на визуальном анализе с целью выделения значимых флуктуации питания, значительно более эффективный метод ДАЛ построен на статистическом анализе и технологиях исправления ошибок для выделения информации, имеющей корреляции с секретными ключами.

Кое-что новое

В июне 2002 г. был обнародован еще один метод вскрытия смарт-карт и защищенных микроконтроллеров, получивший название «атака оптическим индуцированием сбоев» (optical fault induction attack). Этот класс атак был обнаружен и исследован в Кембриджском университете русским аспирантом Сергеем Скоробогатовым и его руководителем Россом Андерсоном. Суть метода в том, что сфокусированное освещение конкретного транзистора в электронной схеме стимулирует в нем проводимость, чем вызывается кратковременный сбой. Такого рода атаки оказываются довольно дешевыми и практичными, для них не требуется сложного и дорогого лазерного оборудования.

Например, сами кембриджские исследователи в качестве мощного источника света использовали фотовспышку, купленную в магазине подержанных товаров за 20 фунтов стерлингов. Для иллюстрации мощи новой атаки была разработана методика, позволяющая с помощью вспышки и микроскопа выставлять в нужное значение (0 или 1) любой бит в SRAM-памяти микроконтроллера. Методом «оптического зондирования» (optical probing) можно индуцировать сбои в работе криптографических алгоритмов или протоколов, а также вносить искажения в поток управляющих команд процессора. Понятно, что перечисленные возможности существенно расширяют уже известные «сбойные» методы вскрытия криптосхем и извлечения секретной информации из смарт-карт [SA02].

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

Этими же специалистами из Кембриджа совместно с учеными компьютерной лаборатории Лувенского университета (Бельгия) недавно разработаны еще несколько новых методов считывания информации из защищенных чипов смарт-карт. Общим для данных методов является то, что они индуцируют поддающиеся замерам изменения в аналоговых характеристиках ячеек памяти. Например, сканируя ячейки сфокусированным лазером или наводя в них вихревые токи с помощью индуктивной спирали на игле микропробника, можно повысить электромагнитные утечки, выдающие записанное там значение бита, но при этом само это значение сохраняется в ячейке ненарушенным. Сильным охлаждением чипа в нужный момент времени можно «заморозить» содержимое интересующего регистра и считать из него (ключевую) информацию, обычно хранящуюся или передаваемую в зашифрованном виде. Эта технология применима к самым разным типам памяти от RAM до FLASH и реально продемонстрирована считыванием ключей DES из ячеек RAM без какого-либо физического контакта с чипом [SQ02].

Данная работа проведена учеными по заказу проекта Евросоюза GSCard и ставит перед собой цель создания смарт-карт следующего поколения, способных максимально противостоять современным атакам вплоть до «полуразрушающих». Создание абсолютной защиты, естественно, не является реалистичным для реально применяемых устройств, одно из главных достоинств которых – дешевизна.

Наглядно и убедительно, но – для своих

Арсенал средств защиты смарт-карт на сегодняшний день весьма разнообразен. Разрушающим методам вскрытия могут противостоять емкостные датчики или оптические сенсоры под светонепроницаемой оболочкой (что кракеры давно научились обходить), либо «специальный клей» – особое покрытие для чипов, которое не только непрозрачно и обладает проводимостью, но также надежно противостоит попыткам уничтожить его, обычно разрушая кремниевый слой, находящийся под ним. Такие покрытия относятся к федеральному стандарту США FIPS 140-1 и широко используются в американской военной промышленности, но повсеместно распространенными в быту их назвать нельзя.