Выпуск #8/2016
Е.Кузнецов, А.Сауров
Аппаратные трояны. Часть 2: примеры реализации, способы внедрения и активации
Аппаратные трояны. Часть 2: примеры реализации, способы внедрения и активации
Просмотры: 8031
Во второй части цикла статей, посвященных аппаратным закладкам в интегральных схемах – аппаратным троянам, приведены примеры их реализации и внедрения в интегральные схемы.
DOI:10.22184/1993-8578.2016.70.8.12.20
DOI:10.22184/1993-8578.2016.70.8.12.20
Теги: hardware backdoor hardware trojan malicious modification аппаратная закладка аппаратный троян кибербезопасность несанкционированная модификация
Аппаратные закладки лишь недавно попали в поле зрения исследователей, поэтому пока опубликовано сравнительно мало данных об их фактической реализации, и только в нескольких публикациях предпринято углубленное рассмотрение эффектов от атак с их использованием. Ниже рассматриваются наиболее интересные подходы к реализации аппаратных закладок.
В работе [1] представлены два наиболее общих подхода к созданию вредоносного процессора. Авторы показывают, как электрические схемы аппаратных троянов могут быть встроены в процессор для реализации таких атак, как кража паролей, расширение привилегий доступа и автоматические логины в систему. Представлена общая платформа для поддержки широкого спектра атак с возможностью их динамического обновления. В центральный процессор вносятся две модификации, которые реализуют механизм, обеспечивающий злоумышленнику доступ в защищенные области памяти, и теневой режим, позволяющий взломщику выполнить скрытую "встроенную программу". В работе описывается атака на логин, которая дает злоумышленнику полный высокий уровень доступа к процессору. Атака выполнена с помощью злонамеренной модификации, реализованной на схеме с использованием только 1 341 вентилей. Авторами впервые приведена реализация аппаратной закладки, которая может использоваться в качестве общей программируемой платформы для атак. Показано внесение такой модификации на уровне VHDL (языка описания аппаратуры интегральных схем), проведено моделирование и синтез ИС для платформы на базе процессора Leon 3 SPARC 40 MГц. Рассмотрено обнаружение такого аппаратного трояна путем анализа внесенных им возмущений в аналоговые и цифровые сигналы. В частности, отмечается, что операционной системе виден программный компонент механизма доступа к памяти, и могут быть обнаружены задержки сигнала, связанные с внесением модификации. Также в работе [1] показаны общие подходы для обеспечения защиты от подобных вредоносных процессоров.
С целью изучения способов внедрения аппаратных закладок в политехническом институте Нью-Йоркского университета проводятся ежегодные конференции CSAW (Cyber Security Awareness Week – Неделя знаний об информационной безопасности). В рамках этой конференции организуются состязания между командами по внедрению и поиску встроенных аппаратных систем (Embedded System Challenge). В 2008 году было дано задание получить доступ к криптографическому устройству "АЛЬФА" на основе ПЛИС путем внесения набора аппаратных закладок, при этом устройство должно проходить тест на достоверность. Участникам соревнования выдали исходный HDL-код и предоставили один месяц на разработку. Победили две команды, одна из которых разработала механизм утечки информации секретных ключей через канал входа-выхода, другая – организовала DoS-атаку. Если обобщить все участвовавшие в состязании разработки, то аппаратные закладки были в 90% случаев внесены на этапе фазы разработки ИС, 50% из них активировались пользователем и 75% аппаратных троянов были размещены в схемах входа-выхода [2].
В работе [3] анализируется пространство проектных параметров аппаратных закладок и предлагается схема размером менее 50 вентилей, вырабатывающая мощность, которая может служить побочным каналом для скрытой утечки секретной информации. Технология, получившая название MOLES (Malicious Off-chip Leakage Enabled by Side-channels), была реализована в криптографической ИС на основе алгоритма AES, спроектированной по проектным нормам 45 нм. Использование метода расширенного спектра при разработке аппаратного трояна MOLES позволило осуществлять считывание многоразрядной информации на основе анализа потребляемой мощности с чувствительностью ниже уровня собственных шумов ИС, что обеспечивает скрытность. Авторы [3] заявляют, что данная технология обладает максимальной скрытностью и невосприимчивостью к большинству методов обнаружения аппаратных троянов, таких как визуальный контроль, проведение функциональных тестов и обнаружение на основе характерных "дактилоскопических" признаков ИС. Хотя схема задействует малое количество логических вентилей, вычислительные затраты для восстановления считанных данных, имеющих малое отношение сигнал / шум, с учетом вариабельности характеристик технологии, могут иметь критическое значение. Авторы [3] предложили обобщенную методологию проектирования и реализации MOLES-схем, опираясь на математический аппарат теории обнаружения для анализа дифференциальной мощности, которая необходима для экстракции многоразрядных ключей. Полученные результаты основаны на моделировании экстракции только коротких ключей (8-бит), весьма далеких от реальной разрядности используемых ключей. При этом авторы указывают, какие вопросы необходимо решить для практического надежного восстановления многоразрядных ключей на основе анализа потребляемой мощности крипто-процессора.
В работе [4] проведены эксперименты с двумя упрощенными аппаратными закладками, встроенными в схемы шифрования на основе RSA – алгоритма для анализа эффектов, связанных с побочными каналами. В аппаратных закладках использовался простой счетчик, отключавший ИС после определенной пороговой величины, и компаратор, который сравнивал данные на системной шине или регистре с фиксированной величиной и вносил изменения в вычислительный процесс при превышении соответствия. Указывается, что такие аппаратные закладки достаточно трудно обнаружить, и они могут использоваться для отключения электрических схем, кражи информации, сбоев в системе, нарушения целостности и безопасности всей системы, в которую включена "зараженная" ИС.
В работе [5] рассматривается пример аппаратного трояна, действие которого приводит к утечке информации из ядра DES-шифрования. За такт схема извлекает один бит 56-разрядного ключа. Вскрывая один бит в каждом 64-разрядном блоке предаваемых данных, троян обеспечивает утечку информации. После накопления всех 56-ти блоков зашифрованного текста, полный ключ передается по радиоканалу, компрометируя шифрование. Извлеченный ключ спрятан в допустимом диапазоне амплитуды или частоты, обусловленном вариацией параметров технологического процесса, что обеспечивает соблюдение разработанных функциональных спецификаций ИС.
В работе [6] описан новый тип аппаратных закладок, основанных на надежностных характеристиках ИС. Этот тип троянов –достаточно простые модификации технологического процесса, которые приводят к ускорению деградации КМОП ИС. Изменения в технологии могут не затрагивать внутренние характеристики схемы, однако влияют на увеличение вариабельности технологических параметров, поэтому выявляются в ходе технологических тестов. Такие аппаратные трояны могут основываться на следующих деградационных физических явлениях: эффекте горячих электронов (эффект HCI), электрическом пробое затворного диэлектрика, эффекте температурной нестабильности при обратном смещении в р-МОП транзисторе (NBTI эффект), эффекте электромиграции. По классификации их можно отнести к постоянно действующим аппаратным троянам типа DoS (отказ в обслуживании), которые приводят к постепенной деградации рабочих характеристик, либо к ранним отказам отдельных частей ИС.
МЕХАНИЗМЫ АКТИВАЦИИ ЗАКЛАДОК
Как правило, после внедрения в систему аппаратная закладка находится в состоянии покоя, пока не будет активирована (запущена) для выполнения своей вредоносной функции. Механизмы активации могут иметь разнообразный характер, явный или скрытый, случайный, непосредственный, или заранее определенный, в результате которых аппаратный троян может изменять свое состояние и поведение. Знания об этих механизмах важны, поскольку процесс активации может нести информацию, позволяющую выявить и противодействовать аппаратной закладке. Следует пытаться активировать аппаратные трояны на этапах верификации ИС. Обычно это выполняется при аттестационном и функциональном тестировании ИС или при исследовании пространства состояний проекта, включая состояния входов-выходов и внутренней логики. Активация аппаратной закладки во время тестирования может помочь идентифицировать ее наличие в ИС. Различные механизмы активации и их классификация коротко рассмотрены ниже.
АППАРАТНЫЕ ТРОЯНЫ
С ВНУТРЕННЕЙ АКТИВАЦИЕЙ
Внутренняя активация основывается на некоторых специфических состояниях, при достижении которых в целевом устройстве происходит активация аппаратной закладки. В большинстве случаев она строится на схемах секвенциальной (последовательностной) или комбинационной логики.
АКТИВАЦИЯ НА ОСНОВЕ
КОМБИНАЦИОННОЙ ЛОГИКИ
Аппаратный троян с активацией на основе комбинационной логики запускается при достижении так называемого триггерного состояния, когда определенные значения (векторы) обнаруживаются на определенных узлах внутренней
В работе [1] представлены два наиболее общих подхода к созданию вредоносного процессора. Авторы показывают, как электрические схемы аппаратных троянов могут быть встроены в процессор для реализации таких атак, как кража паролей, расширение привилегий доступа и автоматические логины в систему. Представлена общая платформа для поддержки широкого спектра атак с возможностью их динамического обновления. В центральный процессор вносятся две модификации, которые реализуют механизм, обеспечивающий злоумышленнику доступ в защищенные области памяти, и теневой режим, позволяющий взломщику выполнить скрытую "встроенную программу". В работе описывается атака на логин, которая дает злоумышленнику полный высокий уровень доступа к процессору. Атака выполнена с помощью злонамеренной модификации, реализованной на схеме с использованием только 1 341 вентилей. Авторами впервые приведена реализация аппаратной закладки, которая может использоваться в качестве общей программируемой платформы для атак. Показано внесение такой модификации на уровне VHDL (языка описания аппаратуры интегральных схем), проведено моделирование и синтез ИС для платформы на базе процессора Leon 3 SPARC 40 MГц. Рассмотрено обнаружение такого аппаратного трояна путем анализа внесенных им возмущений в аналоговые и цифровые сигналы. В частности, отмечается, что операционной системе виден программный компонент механизма доступа к памяти, и могут быть обнаружены задержки сигнала, связанные с внесением модификации. Также в работе [1] показаны общие подходы для обеспечения защиты от подобных вредоносных процессоров.
С целью изучения способов внедрения аппаратных закладок в политехническом институте Нью-Йоркского университета проводятся ежегодные конференции CSAW (Cyber Security Awareness Week – Неделя знаний об информационной безопасности). В рамках этой конференции организуются состязания между командами по внедрению и поиску встроенных аппаратных систем (Embedded System Challenge). В 2008 году было дано задание получить доступ к криптографическому устройству "АЛЬФА" на основе ПЛИС путем внесения набора аппаратных закладок, при этом устройство должно проходить тест на достоверность. Участникам соревнования выдали исходный HDL-код и предоставили один месяц на разработку. Победили две команды, одна из которых разработала механизм утечки информации секретных ключей через канал входа-выхода, другая – организовала DoS-атаку. Если обобщить все участвовавшие в состязании разработки, то аппаратные закладки были в 90% случаев внесены на этапе фазы разработки ИС, 50% из них активировались пользователем и 75% аппаратных троянов были размещены в схемах входа-выхода [2].
В работе [3] анализируется пространство проектных параметров аппаратных закладок и предлагается схема размером менее 50 вентилей, вырабатывающая мощность, которая может служить побочным каналом для скрытой утечки секретной информации. Технология, получившая название MOLES (Malicious Off-chip Leakage Enabled by Side-channels), была реализована в криптографической ИС на основе алгоритма AES, спроектированной по проектным нормам 45 нм. Использование метода расширенного спектра при разработке аппаратного трояна MOLES позволило осуществлять считывание многоразрядной информации на основе анализа потребляемой мощности с чувствительностью ниже уровня собственных шумов ИС, что обеспечивает скрытность. Авторы [3] заявляют, что данная технология обладает максимальной скрытностью и невосприимчивостью к большинству методов обнаружения аппаратных троянов, таких как визуальный контроль, проведение функциональных тестов и обнаружение на основе характерных "дактилоскопических" признаков ИС. Хотя схема задействует малое количество логических вентилей, вычислительные затраты для восстановления считанных данных, имеющих малое отношение сигнал / шум, с учетом вариабельности характеристик технологии, могут иметь критическое значение. Авторы [3] предложили обобщенную методологию проектирования и реализации MOLES-схем, опираясь на математический аппарат теории обнаружения для анализа дифференциальной мощности, которая необходима для экстракции многоразрядных ключей. Полученные результаты основаны на моделировании экстракции только коротких ключей (8-бит), весьма далеких от реальной разрядности используемых ключей. При этом авторы указывают, какие вопросы необходимо решить для практического надежного восстановления многоразрядных ключей на основе анализа потребляемой мощности крипто-процессора.
В работе [4] проведены эксперименты с двумя упрощенными аппаратными закладками, встроенными в схемы шифрования на основе RSA – алгоритма для анализа эффектов, связанных с побочными каналами. В аппаратных закладках использовался простой счетчик, отключавший ИС после определенной пороговой величины, и компаратор, который сравнивал данные на системной шине или регистре с фиксированной величиной и вносил изменения в вычислительный процесс при превышении соответствия. Указывается, что такие аппаратные закладки достаточно трудно обнаружить, и они могут использоваться для отключения электрических схем, кражи информации, сбоев в системе, нарушения целостности и безопасности всей системы, в которую включена "зараженная" ИС.
В работе [5] рассматривается пример аппаратного трояна, действие которого приводит к утечке информации из ядра DES-шифрования. За такт схема извлекает один бит 56-разрядного ключа. Вскрывая один бит в каждом 64-разрядном блоке предаваемых данных, троян обеспечивает утечку информации. После накопления всех 56-ти блоков зашифрованного текста, полный ключ передается по радиоканалу, компрометируя шифрование. Извлеченный ключ спрятан в допустимом диапазоне амплитуды или частоты, обусловленном вариацией параметров технологического процесса, что обеспечивает соблюдение разработанных функциональных спецификаций ИС.
В работе [6] описан новый тип аппаратных закладок, основанных на надежностных характеристиках ИС. Этот тип троянов –достаточно простые модификации технологического процесса, которые приводят к ускорению деградации КМОП ИС. Изменения в технологии могут не затрагивать внутренние характеристики схемы, однако влияют на увеличение вариабельности технологических параметров, поэтому выявляются в ходе технологических тестов. Такие аппаратные трояны могут основываться на следующих деградационных физических явлениях: эффекте горячих электронов (эффект HCI), электрическом пробое затворного диэлектрика, эффекте температурной нестабильности при обратном смещении в р-МОП транзисторе (NBTI эффект), эффекте электромиграции. По классификации их можно отнести к постоянно действующим аппаратным троянам типа DoS (отказ в обслуживании), которые приводят к постепенной деградации рабочих характеристик, либо к ранним отказам отдельных частей ИС.
МЕХАНИЗМЫ АКТИВАЦИИ ЗАКЛАДОК
Как правило, после внедрения в систему аппаратная закладка находится в состоянии покоя, пока не будет активирована (запущена) для выполнения своей вредоносной функции. Механизмы активации могут иметь разнообразный характер, явный или скрытый, случайный, непосредственный, или заранее определенный, в результате которых аппаратный троян может изменять свое состояние и поведение. Знания об этих механизмах важны, поскольку процесс активации может нести информацию, позволяющую выявить и противодействовать аппаратной закладке. Следует пытаться активировать аппаратные трояны на этапах верификации ИС. Обычно это выполняется при аттестационном и функциональном тестировании ИС или при исследовании пространства состояний проекта, включая состояния входов-выходов и внутренней логики. Активация аппаратной закладки во время тестирования может помочь идентифицировать ее наличие в ИС. Различные механизмы активации и их классификация коротко рассмотрены ниже.
АППАРАТНЫЕ ТРОЯНЫ
С ВНУТРЕННЕЙ АКТИВАЦИЕЙ
Внутренняя активация основывается на некоторых специфических состояниях, при достижении которых в целевом устройстве происходит активация аппаратной закладки. В большинстве случаев она строится на схемах секвенциальной (последовательностной) или комбинационной логики.
АКТИВАЦИЯ НА ОСНОВЕ
КОМБИНАЦИОННОЙ ЛОГИКИ
Аппаратный троян с активацией на основе комбинационной логики запускается при достижении так называемого триггерного состояния, когда определенные значения (векторы) обнаруживаются на определенных узлах внутренней
eng



