Открыть сервис

Атаки по побочным каналам

Атаки по побочным каналам (англ. side-channel attacks) — класс методов криптоанализа, основанных на анализе информации, непреднамеренно утекающей из физической реализации криптографической системы, а не на математических свойствах самого алгоритма. В отличие от традиционных атак, направленных на взлом математической структуры шифра, атаки по побочным каналам используют такие параметры, как время выполнения операций, потребляемую мощность, электромагнитное излучение, акустические сигналы или тепловые следы. Эти методы представляют серьёзную угрозу для устройств с ограниченными ресурсами (смарт-карты, RFID-метки, мобильные устройства) и встроенных систем, где физический доступ к оборудованию возможен.

История

Первые упоминания об использовании побочных каналов для получения секретной информации относятся к середине XX века. В 1956 году британская разведка MI5 использовала анализ акустических колебаний для восстановления текста, набираемого на механических шифровальных машинах «Энигма» (операция «Энгель»). Однако систематическое научное исследование этого класса атак началось в 1990-х годах.

В 1996 году Пол Кохер (Paul Kocher) опубликовал работу «Timing Attacks on Implementations of Diffie-Hellman, RSA, DSS, and Other Systems», в которой впервые математически обосновал возможность восстановления секретных ключей по времени выполнения криптографических операций. Эта работа стала основополагающей для всей области. В 1999 году Кохер совместно с коллегами представил метод атаки по анализу потребляемой мощности (power analysis), который продемонстрировал уязвимость смарт-карт.

В 2000-х годах развитие микроэлектроники и распространение мобильных устройств привели к появлению новых типов побочных каналов: электромагнитного излучения, акустических сигналов от процессоров и даже тепловых карт. В 2010-х годах были обнаружены атаки на уровне микроархитектуры процессоров (например, Meltdown и Spectre), которые использовали утечки через кэш-память и спекулятивное выполнение команд.

Классификация атак по побочным каналам

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

По типу физического канала

  • Временные атаки (timing attacks) — основаны на измерении времени выполнения криптографических операций. Различия во времени могут возникать из-за оптимизаций компилятора, ветвлений в коде или разной длины обрабатываемых данных. Например, в реализации RSA без защитных мер время возведения в степень зависит от количества единичных битов в ключе.
  • Атаки по потребляемой мощности (power analysis) — делятся на простой анализ мощности (SPA) и дифференциальный анализ мощности (DPA). SPA использует прямую корреляцию между потребляемой мощностью и выполняемыми операциями, а DPA — статистическую обработку множества измерений для выделения слабого сигнала, связанного с секретными данными.
  • Электромагнитные атаки (EM attacks) — регистрируют электромагнитное излучение, генерируемое при переключении транзисторов в процессоре. ЭМИ может быть измерено на расстоянии до нескольких метров с помощью специальных антенн.
  • Акустические атаки (acoustic attacks) — используют звуки, издаваемые компонентами устройства (например, конденсаторами или катушками индуктивности) при выполнении операций. В 2013 году исследователи из Университета Тель-Авива показали возможность восстановления ключей RSA по звуку работы компьютера.
  • Тепловые атаки (thermal attacks) — основаны на анализе тепловых следов, остающихся на клавиатуре или корпусе устройства после ввода данных. Инфракрасная камера может зафиксировать нагрев от пальцев, позволяя восстановить введённые символы.
  • Оптические атаки (optical attacks) — используют отражение света от экрана или клавиатуры, а также анализ свечения светодиодов, которое может модулироваться в зависимости от обрабатываемых данных.
  • Кэш-атаки (cache attacks) — эксплуатируют разницу во времени доступа к кэш-памяти разных уровней. Атака Prime+Probe позволяет определить, какие ячейки кэша заняты, что даёт информацию о выполняемых операциях. К этому классу относятся Meltdown и Spectre.

По способу доступа

  • Физические атаки — требуют непосредственного доступа к устройству (подключение измерительной аппаратуры, снятие крышки корпуса).
  • Удалённые атаки — проводятся без физического контакта, например, через сеть или по беспроводному каналу. В 2020 году была продемонстрирована атака на мобильные телефоны через анализ времени отклика на сетевые запросы.
  • Программные атаки — реализуются вредоносным ПО, которое измеряет локальные параметры (например, время выполнения инструкций или состояние кэша) на том же устройстве, где работает целевая криптосистема.

Принцип работы и методы защиты

Общий механизм

Любая физическая реализация криптографического алгоритма неизбежно порождает побочные сигналы, коррелирующие с обрабатываемыми данными. Например, при выполнении операции умножения в RSA процессор потребляет разную мощность в зависимости от того, умножается ли число на 1 или на 0. Атакующий, имея возможность измерять этот сигнал, может восстановить биты секретного ключа.

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

Методы защиты

  • Маскирование (masking)разделение секретных данных на несколько случайных долей (shares) так, что ни одна из них не раскрывает исходное значение. Операции выполняются над долями, а результат восстанавливается только в конце.
  • Сокрытие (hiding) — выравнивание времени выполнения и потребляемой мощности для всех операций, независимо от обрабатываемых данных. Это достигается за счёт фиксированных циклов, добавления случайных задержек или использования аппаратных блоков с постоянным временем.
  • Экранирование (shielding) — физическая защита устройства от утечки сигналов: металлические корпуса, фильтры в цепях питания, развязка по питанию.
  • Дублирование (duplication) — выполнение одной и той же операции дважды с разными данными и сравнение результатов для обнаружения аномалий.
  • Аппаратные контрмеры — использование специализированных криптопроцессоров с интегрированными датчиками, которые обнаруживают попытки измерения побочных сигналов и стирают ключи.

Примеры известных атак

Meltdown и Spectre (2018)

В январе 2018 года были публично раскрыты две уязвимости, затрагивающие большинство современных процессоров Intel, AMD и ARM. Meltdown (CVE-2017-5754) позволял читать память ядра операционной системы из пользовательского пространства, используя спекулятивное выполнение команд. Spectre (CVE-2017-5753 и CVE-2017-5715) использовал предсказание ветвлений для доступа к памяти других процессов. Обе атаки относятся к классу кэш-атак по побочным каналам. Исправления привели к снижению производительности процессоров на 5–30 % в зависимости от нагрузки.

Атака на смарт-карты (1999)

Пол Кохер и его коллеги продемонстрировали, что с помощью анализа потребляемой мощности можно восстановить секретный ключ смарт-карты за несколько минут. Для этого использовался дифференциальный анализ мощности (DPA): измерялась мощность при выполнении тысяч операций шифрования, а затем статистически выделялся сигнал, коррелирующий с битами ключа. Эта атака привела к пересмотру стандартов безопасности для смарт-карт.

Акустическая атака на RSA (2013)

Исследователи из Университета Тель-Авива показали, что звук работы блока питания компьютера содержит информацию о выполняемых операциях. В эксперименте они восстановили 4096-битный ключ RSA, записывая акустический сигнал на расстоянии до 10 метров. Атака использовала корреляцию между частотой звука и потребляемой мощностью, которая зависит от обрабатываемых данных.

Значение и последствия

Атаки по побочным каналам изменили подход к проектированию криптографических систем. Если раньше безопасность алгоритма оценивалась исключительно математически, то теперь требуется учитывать физические аспекты реализации. Это привело к развитию области «криптографии на основе физических ограничений» (physical cryptography) и появлению стандартов FIPS 140-3, которые включают требования к устойчивости к побочным каналам.

В промышленности атаки по побочным каналам используются для тестирования защищённости банковских карт, SIM-карт, аппаратных модулей безопасности (HSM) и устройств Интернета вещей (IoT). В то же время эти методы активно применяются спецслужбами для взлома шифровального оборудования.

Критика и ограничения

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

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

Источники

  • Kocher P. Timing Attacks on Implementations of Diffie-Hellman, RSA, DSS, and Other Systems. — CRYPTO, 1996.
  • Kocher P., Jaffe J., Jun B. Differential Power Analysis. — CRYPTO, 1999.
  • Kocher P. et al. Spectre Attacks: Exploiting Speculative Execution. — IEEE S&P, 2019.
  • Lipp M. et al. Meltdown: Reading Kernel Memory from User Space. — USENIX Security, 2018.
  • Genkin D., Shamir A., Tromer E. RSA Key Extraction via Low-Bandwidth Acoustic Cryptanalysis. — CRYPTO, 2014.
  • Mangard S., Oswald E., Popp T. Power Analysis Attacks: Revealing the Secrets of Smart Cards. — Springer, 2007.
  • Standaert F.-X. Introduction to Side-Channel Attacks. — In: Secure Integrated Circuits and Systems, Springer, 2010.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →