26.09 // Генераторы случайных чисел: атаки через электропитание


Генераторы случайных чисел (а они могут быть только аппаратными) часто строят на использовании различных естественных физических эффектов в полупроводниковых электронных устройствах. Как обычно, эти устройства подвержены хитроумным атакам, проводимым через “побочные каналы”.

Например, в работе (Markettos, Moore[link1]), исследователи наводят в цепи питания защищённого микроконтроллера “паразитный сигнал” (гармонику) и тем самым эффективно убивают “случайность” генерируемых в микроконтроллере чисел. Речь идёт, главным образом, о микросхемах, используемых в банковских системах (смарт-карты, банкоматы) для генерации случайных чисел (идентификаторов транзакций, ключей шифрования и т.п.).

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

Точно предсказать (смоделировать) различия в работе множества подобных физических осцилляторов на практике невозможно. Поэтому, на первый взгляд, описанная технология генерации “случайности” достаточно надёжна.

Однако введение “модулирующего” сигнала подходящей частоты (близкой, к частоте, на которую настроены “колебательные контуры” генератора случайных чисел) в питание микросхемы приводит к тому, что отдельные осцилляторы быстро синхронизируются между собой с высокой точностью – в результате схема в целом перестаёт выполнять свою функцию, а генерируемые числа становятся легко предсказуемыми. Пишут, что в одной из конфигураций число вариантов уменьшили с 232 (около 4 млрд) до всего лишь 225. Вполне радикально, так сказать.

Атака “неразрушающая”, модулирующий сигнал находится в пределах норм электропитания микросхемы. Более того, наводить колебания в “питающих каналах” можно дистанционно, облучая, скажем, банкомат СВЧ-полем.

Также см. комментарии по ссылке источника

Источник: http://dxdt.ru/2009/09/19/2635/, http://www.lightbluetouchpaper.....n-to-random-numbers/[link2]

Ссылки
[link1] http://www.cl.cam.ac.uk/~atm26/papers/markettos-ches2009-inject-trng.pdf

[link2] http://www.lightbluetouchpaper.org/2009/09/08/tuning-in-to-random-numbers/