Электромагнитная атака

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

В криптографии электромагнитными атаками называются атаки по сторонним каналам, работающие по принципу измерения электромагнитного излучения, испускаемого устройством, с последующим анализом полученного сигнала. Целью данного вида атак является захват ключей шифрования. Электромагнитные атаки обычно неинвазивны и пассивны, что означает, что эти атаки могут быть выполнены без физического ущерба для целевого устройства или его нормального функционирования[1]. Детектирование электромагнитных волн, испускаемых некоторыми устройствами, с целью получения информации также используется в перехвате ван Эйка[2]. Однако более качественный сигнал с меньшим количеством шумов может быть получен злоумышленником именно путем распаковывания чипа и получения сигнала на более близких расстояниях от источника. Электромагнитные атаки эффективны против криптографических реализаций, которые выполняют различные операции на основе данных, обрабатываемых в настоящем времени, например, алгоритм быстрого возведения в степень в алгоритме RSA. Различные операции испускают различное количество излучения, таким образом электромагнитный след шифрования может точно указать выполняемые операции, позволяя злоумышленнику полностью или частично получить закрытый ключ.

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


Предпосылки[править | править код]

Электромагнитное излучение[править | править код]

Электромагнитные волны представляют собой излучение, порождённое электрическими зарядами и их движением. Данный тип волн характеризуется таким параметром как длина волны. Любой электрический прибор, испускает электромагнитное излучение за счет магнитного поля. Таким образом, когда компьютер выполняет вычисления, такие как, например, шифрование, электричество, проходящее через транзисторы электронных схем, создает магнитное поле, что приводит к возникновению электромагнитных волн[3].

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

Индукционная катушка

Электронное устройство, выполняющее вычисления, синхронизируется с тактовыми импульсами, которые работают на частотах от мегагерц (МГц) до гигагерц (ГГц). Однако из-за аппаратной конвейерной обработки и сложности некоторых команд выполнение определенных операций требует несколько тактов[4][5]. Следовательно, частоты, на которых выполняются эти операции, в несколько раз ниже. Это означает, что не всегда необходимо оцифровывать сигнал с частотой тактовых импульсов. Часто можно получить информацию обо всех или большинстве операций выделяя сигналы с частотой порядка килогерц (кГц).

Разные устройства излучают информацию на разных частотах. Например, процессор Intel Atom будет пропускать ключи во время шифрования RSA и AES на частотах от 50 МГц до 85 МГц[6]. Реализация ECDSA в библиотеке Bouncy Castle для Android версии 4.4 уязвима для атак по сторонним каналам извлечения ключей в диапазоне 50 кГц[7].

Обработка сигнала[править | править код]

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

Как было упомянуто ранее, каждая операция, выполняемая компьютером, испускает электромагнитное излучение[3]. Более того при выполнении различные операции микросхема излучает волны на разных частотах. В случае электромагнитных атак по сторонним каналам злоумышленника интересуют только те несколько частот, на которых выполняются необходимы для шифрования операции. Задача обработки сигналов состоит в том, чтобы изолировать эти частоты от посторонних излучений и шумов. Для выделения сигналов в заданном диапазоне частот применяется полосовой фильтр. Иногда злоумышленник не знает, на каких частотах выполняется шифрование. В таком случае электромагнитный след может быть представлена в виде спектрограммы, которая должна помочь определить, какие частоты наиболее часто используются в разные моменты исполнения. Так же в зависимости от атакуемого устройства и уровня шума могут потребоваться применение нескольких фильтров.[8]

Методы атаки[править | править код]

Электромагнитные атаки могут быть разделены на: атаки простого электромагнитного анализа (simple electromagnetic analysis — SEMA) и атаки дифференциального электромагнитного анализа (differential electromagnetic analysis — DEMA).

Простой электромагнитный анализ[править | править код]

При атаках использующих простой электромагнитный анализ, злоумышленник получает ключ непосредственно из электромагнитного следа. Такой подход очень эффективен против реализаций асимметричной криптографии[9]. Как правило, требуется всего несколько электромагнитных следов, однако злоумышленнику необходимо иметь четкое представление о криптографическом устройстве и о реализации криптографического алгоритма. Реализации, уязвимые для атак на основе простого электромагнитного анализа, выполняют различные операции в зависимости от того, равен ли бит ключа 0 или 1. Более того различные операции будут использовать различное количество энергии и/или разные компоненты чипа. Таким образом, злоумышленник может наблюдать за всеми вычислениями шифрования, что позволит ему воссоздать ключ. Этот метод распространен во множестве различных типах атак по сторонним каналам, в частности, при атаках с анализом мощности.[10]

К примеру, обычная атака на асимметричный RSA основана на том, что этапы шифрования зависят от значения битов ключа. Каждый бит обрабатывается операцией возведения в квадрат, а затем операцией умножения, если (и только если) бит равен 1[11].

Дифференциальный электромагнитный анализ[править | править код]

В некоторых случаях простой электромагнитный анализ (SEMA) невозможен или не дает достаточно информации. Атаки дифференциального электромагнитного анализа (DEMA) являются более сложными, но также более эффективными в случае реализации симметричной криптографии, в то время как атаки SEMA неприменимы[12]. Более того, в отличие от SEMA, DEMA-атаки не требуют большого количества информации об устройстве, на которое совершается атака.

Известные атаки[править | править код]

Устройства[править | править код]

В этом разделе будут рассмотрена эффективность атак, обсуждаемых в данной статье, на различных устройствах.

Смарт-карты[править | править код]

Smart card pinout

Смарт-карты были разработаны с целью обеспечения более безопасной финансовой транзакции по сравнению с традиционными кредитными картами. Они содержат простые встроенные интегральные схемы, предназначенные для выполнения криптографических функций[13]. Эти карты подключаются непосредственно к устройству чтения (кардридер), которое обеспечивает необходимую для выполнения зашифрованной финансовой транзакции мощность. Было продемонстрировано, что многие атаки по сторонним каналам эффективны против смарт-карт, так как эти карты получают питание и тактовую частоту непосредственно от устройства чтения. Таким образом, «вмешавшись» в работу кардридера, можно получить электромагнитные следы, а значит организовать атаку по сторонним каналам. Впрочем, другие работы показали, что и сами смарт-карты также уязвимы для электромагнитных атак[14][15][16].

ППВМ[править | править код]

Программируемая пользователем вентильная матрица (ППВМ), как правило, используется в реализации аппаратных криптографических примитивов для увеличения скорости. Такие реализации так же уязвимы, как и другие программные примитивы. Например, в 2005 году реализация шифрования асимметричной криптосистемы, основанной на эллиптических кривых, оказалась уязвимой для атак SEMA и DEMA[17]. Также, примером может служить блочный шифр ARIA — стандартный, реализованный с помощью ППВМ, примитив, который допускает утечку информации связанной с ключами[18].

Персональные компьютеры[править | править код]

В отличие от смарт-карт, которые являются простыми устройствами, выполняющими одну функцию, персональные компьютеры выполняют одновременно много задач. Следствием этого является тот факт, что из-за высокого уровня шума и высокой тактовой частоты выполнять электромагнитные атаки по сторонним каналам становится гораздо труднее. Несмотря на это, исследователями в 2015 и 2016 годах были продемонстрированы атаки, использующие технологию NFC. Данная атака была спроектирована для ноутбука. Полученный сигнал, наблюдаемый в течение нескольких секунд, был отфильтрован, усилен и оцифрован для извлечения автономного ключа. Для большинства подобных атак требуется дорогое лабораторное оборудование, более того злоумышленник должен находиться очень близко к компьютеру жертвы[19][20]. Однако, некоторые исследователи смогли продемонстрировать атаки с использованием более дешевого оборудования с расстояния до полуметра[21]. Однако эти атаки, все же, требовали сбора большего количества следов, чем атаки, использующие более дорогое оборудование.

Смартфоны[править | править код]

В настоящее время смартфоны представляют особый интерес для электромагнитных атак по сторонним каналам. С того момента, как появились мобильные платежные системы, такие как Apple Pay, системы электронной коммерции становятся все более популярным явлением. Кроме того, объем исследований, посвященных атакам по сторонним каналам безопасности мобильных телефонов, также увеличился[22]. В настоящее время большинство атак представляют собой по сути ту же концепцию, в которой используется дорогостоящее оборудование для обработки сигналов[23]. Результатом, полученным в ходе одной из этих атак, был тот факт, что коммерческий радиоприемник может обнаружить утечку данных с мобильного телефона на расстоянии до трех метров[24].

Тем не менее, атаки с использованием низкокачественного потребительского оборудования также оказались успешными. Используя внешнюю звуковую карту USB, извлеченную из станции беспроводной зарядки, исследователи смогли восстановить ключ подписи пользователя в ECDSA реализациях Android OpenSSL и Apple CommonCrypto[22][23][24].

Примеры уязвимых схем шифрования[править | править код]

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

  • Libgcrypt — криптографическая библиотека GnuPG, реализация алгоритма шифрования с открытым ключом ECDH (уязвимость протокола исправлена в данный момент)[20];
  • GnuPG реализация 4096-битного RSA (уязвимость протокола исправлена в данный момент)[25][26];
  • GnuPG реализация 3072-битного ElGamal (уязвимость протокола исправлена в данный момент)[27][28];
  • GMP реализация 1024-битного RSA[29];
  • OpenSSL реализация of 1024-bit RSA[30].

Выполнимость[править | править код]

Мобильные платежные системы[править | править код]

Точки систем продаж, принимающие платежи с мобильных телефонов или смарт-карт, уязвимы. В таких системах могут быть спрятаны индукционные катушки, что позволит злоумышленнику записать финансовые транзакций со смарт-карт или платежи с мобильных телефонов. После извлечения записанной информации злоумышленник может подделать карту или совершить мошеннические платежи с помощью закрытого ключа. Был предложен сценарий, в котором мобильные платежи осуществляются с помощью биткойн-транзакций. Однако, поскольку в реализации биткойн-клиента для Android используется ECDSA, ключ подписи может быть извлечен в точке продажи[31]. Организовать такую атаку будет чуть сложнее, чем использовать скиммеры магнитной полосы, которые в настоящее время популярны при работе с традиционными карточками.

Контрмеры[править | править код]

Было предложено несколько контрмер против электромагнитных атак. Однако единого идеального решения пока не существует. Многие из следующих вариантов контрмер усложняют проведение электромагнитных атак, но не предотвращают их полностью.

Физические контрмеры[править | править код]

Один из наиболее эффективных способов предотвращения электромагнитных атак заключается в том, чтобы затруднить злоумышленнику сбор электромагнитного сигнала на физическом уровне. Например, посредством уменьшения уровня сигнала или защиты чипа[32].

Для снижения и фильтрации сигнала, а также создания посторонних шумов, маскирующих сигнал, эффективной мерой является экранирование цепей и проводов, например, клетка Фарадея.

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

Контрмеры на реализации[править | править код]

Поскольку многие электромагнитные атаки, особенно атаки SEMA, полагаются на асимметричные реализации криптографических алгоритмов, эффективной контрмерой является гарантия, что операция, выполняемая на определенном шаге алгоритма, не дает информацию о значении текущего бита. Рандомизация порядка битового шифрования, прерывания процесса и тактового цикла — все это эффективные способы затруднить осуществление атак[33].

Применение[править | править код]

  • Секретная программа Агентства национальной безопасности TEMPEST фокусируется как на слежке за системами, наблюдая электромагнитное излучение, так и на оборудовании для защиты от таких атак[34].
  • Федеральная комиссия по связи излагает правила, регулирующие непреднамеренные выбросы электронных устройств, в части 15 Кодекса Федеральных правил, раздел 47. Федеральная комиссия связи США не предоставляет сертификат о том, что устройства не производят избыточные выбросы, а вместо этого полагается на процедуру самопроверки[35].

Примечания[править | править код]

  1. F. Koeune, FX. Standaert, 2005, с. 100.
  2. Wim van Eck. Electromagnetic radiation from video display units: An eavesdropping risk? (англ.). — 1985. — December (vol. 4). — P. 1. — doi:10.1016/0167-4048(85)90046-X. Архивировано 22 декабря 2019 года.
  3. 1 2 K. Gandolfi, C. Mourtel, F. Olivier, 2001, с. 253.
  4. K. Gandolfi, C. Mourtel, F. Olivier, 2001, с. 252.
  5. G. Hinton, D. Sager, M. Upton, D. Boggs, Desktop Platforms Group, 2001, с. 9.
  6. A. Hoang Do, A. Thu Htet, S. Thet Ko, 2013, с. 57.
  7. P. Belgarric, PA Fouque, G. Macario-Rat, M. Tibouchi, 2016, с. 8.
  8. Timo Kasper, David Oswald, Christof Paarc, 2012, с. 5—6.
  9. Z. Martinasek, V. Zeman, K. Trasy, 2012, с. 4—5.
  10. Z. Martinasek, V. Zeman, K. Trasy, 2012, с. 3.
  11. C. Luo, Y. Fei, D. Kaeli, 2019, с. 4—5.
  12. A. Hoang Do, A. Thu Htet, S. Thet Ko, 2013, с. 15.
  13. Smart Card FAQ: How do Smart Cards Work. Smart Card Alliance. Дата обращения: 10 ноября 2019. Архивировано 27 апреля 2018 года.
  14. D. Samyde, S. Skorobogatov, R. Anderson, JJ. Quisquater. On a new way to read data from memory. — Security in Storage Workshop, 2002. — Декабрь. — С. 65–69. — ISBN 978-0-7695-1888-6. — doi:10.1109/SISW.2002.1183512.
  15. Electromagnetic analysis (ema): Measures and counter-measures for smart cards. — 2001. — Т. 2140. — С. 200–210. — ISBN 978-3-540-42610-3. — doi:10.1007/3-540-45418-7_17. Архивировано 8 марта 2021 года.
  16. Agrawal D., Archambeault B., Rao JR., Rohatgi P. The EM side-channel(s) // Cryptographic Hardware and Embedded Systems - CHES 2002. — Springer, Berlin, Heidelberg. — Т. 2523. — С. 29–45. — ISBN 978-3-540-00409-7. — doi:10.1007/3-540-36400-5_4. Архивировано 3 ноября 2021 года.
  17. Electromagnetic analysis attack on an FPGA implementation of an elliptic curve cryptosystem (англ.). — 2005. — November (vol. 2). — P. 1879–1882. — ISBN 978-1-4244-0049-2. — doi:10.1109/EURCON.2005.1630348.
  18. Kim C., Schläffer M., Moon S. Differential side channel analysis attacks on FPGA implementations of ARIA (англ.) // ETRI Journal. — 2008. — Vol. 30, no. 2. — P. 315—325. — doi:10.4218/etrij.08.0107.0167.
  19. D. Genkin, L. Pachmanov, I. Pipman, E. Tromer, 2015, с. 96.
  20. 1 2 Genkin D., Pachmanov L., Pipman I., Tromer E. ECDH key-extraction via low-bandwidth electromagnetic attacks on PCs. — Т. 9610. — С. 219–235. — ISBN 978-3-319-29484-1. — doi:10.1007/978-3-319-29485-8_13.
  21. D. Genkin, L. Pachmanov, I. Pipman, E. Tromer, 2015, с. 19—20.
  22. 1 2 Kenworthy G., Rohatgi P. Mobile Device Security: The case for side channel resistance (англ.). — 2012. — P. 1.
  23. 1 2 Genkin D., Pachmanov L., Pipman I., Tromer E., Yarom Y. ECDSA Key Extraction from Mobile Devices via Nonintrusive Physical Side Channels (англ.). — 2016. — P. 4—5. — doi:10.1145/2976749.2978353. Архивировано 15 июня 2021 года.
  24. 1 2 Goller G, Sigl G. Side Channel Attacks on Smartphones and Embedded Devices Using Standard Radio Equipment. — Constructive Side-Channel Analysis and Secure Design, 2015. — Т. 9064. — С. 263. — ISBN 978-3-319-21475-7. — doi:10.1007/978-3-319-21476-4_17.
  25. D. Genkin, L. Pachmanov, I. Pipman, E. Tromer, 2015, с. 103.
  26. D. Genkin, I. Pipman, E. Tromer, 2015, с. 2.
  27. D. Genkin, L. Pachmanov, I. Pipman, E. Tromer, 2015, с. 100.
  28. D. Genkin, I. Pipman, E. Tromer, 2015, с. 6.
  29. A. Hoang Do, A. Thu Htet, S. Thet Ko, 2013, с. 45.
  30. A. Hoang Do, A. Thu Htet, S. Thet Ko, 2013, с. 51.
  31. P. Belgarric, PA Fouque, G. Macario-Rat, M. Tibouchi, 2016, с. 9.
  32. Zhou Y., Feng D. Side-Channel Attacks: Ten Years After Its Publication and the Impacts on Cryptographic Module Security Testing (англ.) : journal. — 2005. — P. 17. Архивировано 17 мая 2017 года.
  33. F. Koeune, FX. Standaert, 2005, с. 9.
  34. M. Kuhn, R. Anderson, 1998, с. 124.
  35. FCC Rule Part 15b. FCC certification. Дата обращения: 10 ноября 2019. Архивировано из оригинала 30 марта 2016 года.

Литература[править | править код]