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

Атака по сторонним каналам

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

История

Первые упоминания об утечках информации через физические каналы относятся к 1950-м годам, когда в разведывательных службах США и Великобритании изучали перехват электромагнитного излучения от электронных устройств (проект TEMPEST). Однако как самостоятельная область криптоанализа атаки по сторонним каналам сформировались в середине 1990-х годов. В 1996 году Пол Кохер (Paul Kocher) опубликовал работу, демонстрирующую атаку по времени выполнения (timing attack) на алгоритм RSA, что стало отправной точкой для систематического изучения этого направления. В 1999 году Кохер, Джошуа Яффе и Бенджамин Жюн представили атаку по анализу мощности (power analysis attack), показавшую возможность извлечения секретных ключей из смарт-карт. С тех пор область активно развивалась: в 2000-х годах были открыты атаки на основе электромагнитного излучения (EMA), акустические атаки (например, на принтеры и клавиатуры), а в 2010-х — атаки на кэш-память (Cache Attacks) и спекулятивное выполнение (Spectre, Meltdown). В России исследования в этой области ведутся в рамках криптографических стандартов (ГОСТ Р 34.10-2012, ГОСТ Р 34.11-2012) и разработки защищённых аппаратных решений.

Классификация атак по сторонним каналам

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

Тип каналаФизический параметрПримеры атакУстройства-мишени
Временной (Timing)Время выполнения операцийАтака на RSA по времени возведения в степеньСмарт-карты, серверы
Мощностной (Power)Потребляемая мощностьПростая атака по мощности (SPA), дифференциальная атака по мощности (DPA)Смарт-карты, мобильные устройства
Электромагнитный (EM)Электромагнитное излучениеАтака на AES через излучение шины данныхМикроконтроллеры, ноутбуки
АкустическийЗвуковые колебанияАтака на клавиатуру по звуку нажатия клавишКлавиатуры, принтеры
Тепловой (Thermal)Температурные профилиАтака на PIN-код по тепловому следуБанкоматы, клавиатуры
ОптическийСветовое излучениеАтака на светодиоды состоянияСетевые устройства
Кэш-атака (Cache)Задержки доступа к кэш-памятиPrime+Probe, Flush+ReloadПроцессоры x86, ARM

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

  • Инвазивные — требуют физического вскрытия устройства (например, снятие защитного слоя чипа для доступа к шинам данных). Применяются в лабораторных условиях.
  • Полуинвазивные — не требуют разрушения корпуса, но предполагают модификацию (например, лазерное облучение для сбоя вычислений).
  • Неинвазивные — работают с внешними измерениями (время, мощность, излучение) без вмешательства в устройство. Наиболее практичны для реальных атак.

По методологии анализа

  • Простые атаки (Simple Side-Channel Attacks, SSA) — анализируют одну или несколько трасс (например, осциллограмм мощности) для прямого выявления операций (SPA, SEMA).
  • Дифференциальные атаки (Differential Side-Channel Attacks, DSA) — используют статистические методы (DPA, DEMA) для выделения слабого сигнала из множества измерений, усредняя шумы.
  • Атаки по шаблону (Template Attacks) — предварительно обучаются на эталонном устройстве для создания профиля утечки, затем применяют к целевому.

Механизмы утечки

Физические процессы в электронных устройствах неизбежно создают побочные сигналы, коррелирующие с обрабатываемыми данными. Основные механизмы:

  • Изменение потребляемой мощности: при переключении логических элементов (транзисторов) происходит кратковременный всплеск тока, зависящий от обрабатываемых битов. Например, в алгоритме AES (Advanced Encryption Standard) операция SubBytes реализуется через таблицы замен (S-box), и доступ к разным элементам таблицы потребляет разную мощность.
  • Электромагнитное излучение: токи в проводниках создают магнитное поле, которое может быть зафиксировано антенной. Излучение особенно сильно на тактовой частоте и её гармониках.
  • Временные задержки: условные переходы (if/else) в коде могут выполняться за разное время в зависимости от данных. В криптографии это характерно для операций модульного возведения в степень (RSA) или умножения в эллиптических кривых.
  • Акустические колебания: компоненты (конденсаторы, катушки индуктивности) могут издавать звук при изменении напряжения, особенно на частотах, слышимых человеком (до 20 кГц).
  • Тепловыделение: локальный нагрев микросхемы зависит от активности отдельных блоков; тепловые камеры позволяют определить, какие участки чипа были задействованы.

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

Атака по времени на RSA (1996)

Пол Кохер показал, что время возведения в степень в RSA зависит от количества единичных битов в секретном ключе. Измеряя время для множества подписей, можно восстановить ключ бит за битом. Контрмера — реализация с постоянным временем (например, метод Montgomery ladder).

Дифференциальная атака по мощности на AES (1999)

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

Атака Spectre (2018)

Атака на спекулятивное выполнение в процессорах Intel, AMD и ARM (организация признана иноагентом в РФ) использует утечку через кэш-память. Спекулятивно выполненный код может загружать данные в кэш, которые затем извлекаются через анализ времени доступа (Flush+Reload). Это позволяет читать память других процессов, включая криптографические ключи. Уязвимость затронула миллиарды устройств.

Атака на клавиатуру по звуку (2005)

Группа исследователей из Калифорнийского университета в Беркли показала, что запись звука нажатия клавиш с помощью микрофона (например, в смартфоне) позволяет восстановить вводимый текст с точностью до 90% для английского языка. Анализ основан на различиях в акустическом спектре каждой клавиши.

Атака на PIN-код по тепловому следу (2011)

После ввода PIN-кода на клавиатуре банкомата тепловая камера фиксирует остаточное тепло от пальцев. Порядок нажатия определяется по времени остывания клавиш. Контрмера — использование сенсорных экранов с равномерным нагревом.

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

Защита от атак по сторонним каналам требует комплексного подхода, включающего аппаратные и программные контрмеры.

Аппаратные контрмеры

  • Экранирование: металлические корпуса и фильтры для подавления электромагнитного излучения (стандарт TEMPEST).
  • Шумогенерация: введение случайных токов или тактовых импульсов для маскировки полезного сигнала.
  • Сбалансированная логика: использование дифференциальных схем (например, SABL — Sense Amplifier Based Logic), где потребление мощности не зависит от данных.
  • Детекторы атак: мониторинг напряжения, тактовой частоты и температуры для обнаружения попыток измерения.

Программные контрмеры

  • Постоянное время выполнения: исключение условных переходов, зависящих от секретных данных (например, использование арифметики с фиксированным числом шагов).
  • Маскирование (Blinding): разделение секретных данных на случайные доли (additive masking) или умножение на случайное число (multiplicative blinding). Например, в RSA перед возведением в степень сообщение умножается на случайное число, а после — делится на него.
  • Случайные задержки: вставка случайных пауз в выполнение операций для усложнения временного анализа.
  • Кэш-барьеры: инструкции, очищающие кэш-память после критических операций (CLFLUSH в x86).

Стандарты и рекомендации

  • ISO/IEC 19790 — требования к криптографическим модулям, включая защиту от атак по сторонним каналам.
  • NIST SP 800-140 — рекомендации по тестированию на устойчивость к атакам по мощности и времени.
  • ГОСТ Р 34.10-2012 — российский стандарт электронной подписи, предусматривающий контрмеры (например, обязательное использование постоянного времени для операций с эллиптическими кривыми).

Значение и критика

Атаки по сторонним каналам представляют собой одну из наиболее практичных угроз для современных криптографических систем, особенно в области встраиваемых устройств и интернета вещей (IoT). Они показали, что теоретическая стойкость алгоритма (например, AES или RSA) не гарантирует безопасности при реальной реализации. Критика данного направления связана с тем, что многие атаки требуют физического доступа к устройству или дорогостоящего оборудования (осциллографы, тепловизоры), что ограничивает их применение в реальных условиях. Однако развитие удалённых атак (например, через кэш-память или акустику) расширяет область угроз. В России исследования в этой области координируются Техническим комитетом по стандартизации «Криптографическая защита информации» (ТК 26), а также учитываются при сертификации средств криптографической защиты информации (СКЗИ) в ФСБ России.

Источники

  • 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., Genkin D., Gruss D. et al. Spectre Attacks: Exploiting Speculative Execution // IEEE S&P 2019.
  • 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 // Secure Integrated Circuits and Systems. Springer, 2010.
  • ГОСТ Р 34.10-2012 «Информационная технология. Криптографическая защита информации. Процессы формирования и проверки электронной цифровой подписи».
  • NIST SP 800-140 (Draft) — Side-Channel Attack Resistant Implementation of Cryptographic Algorithms.

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

На главную BFOmetr →