Эксперты по информационной безопасности Технологического института штата Джорджия продемонстрировали, как с помощью атаки на побочный канал можно извлечь ключи шифрования из сессии OpenSSL (версии 1.1.0g).
Исследователи успешно извлекли ключи секретные ключи RSA-шифрования из мобильных устройств и встраиваемых систем, причем даже без физического доступа к ним: достаточно было считать «аналоговые сигналы, случайно производимые процессорами устройств».
«Наш подход демонстрирует использование электромагнитного излучения двух мобильных телефонов и одной встраиваемой системы: после лишь единоразового дешифрования в реализации RSA с фиксированным окном возможно перехватить достаточно значений для очень эффективного (занимающего несколько секунд) реконструирования полного секретного ключа RSA-шифрования», - говорится в исследовании, представленном на конференции USENIX.
Атаки на побочные каналы с целью извлечения критически важной информации - довольно распространенное явление, существует довольно обширный набор методик для их осуществления.
800 МГц – 1,1 ГГц
В данном случае исследователи нашли способ «снимать» данные с двух мобильных устройств на базе ОС Android и встраиваемой системы; все они построены на базе процессоров ARM с частотным диапазоном 800 МГц - 1,1 ГГц.
с помощью которого можно установить ключи RSA по излучению ARM-процессоров
Как выяснилось, эти частоты попадают в диапазон компактных коммерческих программно-определяемых радиосистем (Software-defined radio, SDR), таких как Ettus B200mini. Разместив приемники «очень близко, но без физического контакта» к мобильным устройствам и встраиваемой системе, им удалось перехватить электромагнитные сигналы с процессоров.
«Атака восстанавливает биты экспоненты при модульном экспонировании из аналоговых сигналов, которые непроизвольно излучаются процессором при выполнении кода постоянной времени, конструирующего значение каждого «окна» экспоненты», - поясняют исследователи, отмечая, что для извлечения данных не подходят сигналы, которые соответствуют операциям возведения в квадрат, умножению и/или активности кэша во время операций умножения и поискам по таблице.
Эта методика позволила корректно извлекать 95,7-99,6% секретных битов экспоненты из сигналов, в зависимости от системы.
Остроту проблемы можно снизить, если биты экспоненты возможно извлекать только целочисленными группами (десятками бит), нежели по одному за раз. Такое извлечение намного сложнее произвести технически.
Исправления внесены
Соответствующее исправление было предложено разработчикам библиотеки OpenSSL, и уже 20 мая этого года оно было интегрировано в основную ветвь исходного кода OpenSSL.
- Проблема в том, что внесение исправлений в исходный код популярной библиотеки еще не означает, что они попадут в конечные устройства в ближайшем будущем, - отмечает Олег Галушкин, директор по информационной безопасности компании SEC Consult Services. - Особенно это касается встраиваемых систем, которые далеко не всегда поддаются обновлению по архитектурным причинам. В любом случае, это один из тех случаев, когда любые разработки, использующие OpenSSL, следует обновить до последней версии как можно быстрее.
Источник: CNEWS