Метод определения RSA-ключей через анализ изменения разности потенциалов
9 августа 2014 года
Исследователи компьютерной безопасности, продемонстрировавшие в прошлом году технику воссоздания RSA-ключа через анализ изменения звукового фона, исходящего от компьютера в процессе расшифровки данных, продолжили эксперименты в данной области и продемонстрировали возможность определения RSA и ElGamal ключей на основе измерения электрического потенциала.
Новый метод основан на том, что при выполнении различных операций энергопотребление CPU меняется, данные колебания гасятся схемами регулирования напряжения, которые пытаются поддерживать постоянное напряжение, но колебания разности потенциалов отражаются во всех цепях подачи напряжения. Измерить колебания разности потенциалов можно через организацию физического контакта с нулевой фазой (землей), например, подключив датчик к корпусу ноутбука (снять параметры можно просто прикоснувшись рукой к металлическим частям корпуса) или к жиле с "землёй" в кабелях VGA, USB, DisplayPort, HDMI или Ethernet. В качестве платформы для проведения атаки может выступать обычный смартфон.
Для восстановления закрытого ключа кроме адаптивного метода, используемого в атаке через анализ изменения звукового фона, может применяться неадаптивный метод, который позволяет сократить время атаки с часов до нескольких секунд. Адаптивный метод основан на инициировании автоматической расшифровки произвольных сообщений на целевой системе, например, должен быть запущен почтовый клиент, автоматически расшифровывающий сообщения. Атакующий периодически отправляет на данную систему немного изменённые сообщения, зашифрованные публично доступным ключом, и контролирует изменение разности потенциалов "земли" целевой системы, бит за битом восстанавливая значение ключа.
Неадаптивный метод позволяет восстановить ключ через анализ всего нескольких операций расшифровки одного и того же зашифрованного текста. При данном методе атакующий формирует специально подобранный зашифрованный текст и организует несколько раз его расшифровку в момент измерения разности потенциалов.
Исследователи продемонстрировали успешное применение метода для подбора 4096-разрядных ключей RSA и 3072-разрядных ключей ElGamal, используя различные способы фиксации колебаний разности потенциалов, в том числе при помощи анализа цепи входящего питания и электромагнитного излучения. Несмотря на тактовую частоту в гигагерцовом диапазоне и наличие посторонних шумов на полное восстановление ключа требуется от нескольких секунд при выборке с частотой порядка 2 MHz до одного часа при выборке с частотой порядка 40 kHz.
Атака применима для приложений, использующих libgcrypt 1.5.x, и старых выпусков GnuPG. GnuPG 2.x и выпуски начиная с 1.4.16 проблеме не подвержены, но проблема может проявиться для ключей Elgamal в случае связывания с проблемными версиями Libgcrypt (для проверки можно запустить команду "gpg2 --version"). В частности, GnuPG 2.x уязвим, если он связан с версией Libgcrypt младше 1.6.0 (начиная с GnuPG 1.4.16 использование Libgcrypt прекращено). Ветка Libgcrypt 1.6 проблеме не подвержена, для ветки 1.5 выпущено обновление 1.5.4, в котором уязвимость устранена.
Источники
править
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.