Группа исследователей из Иллинойсского университета разработала новую технику атаки по сторонним каналам, манипулирующую утечкой информации через кольцевую шину (Ring Interconnect) процессоров Intel. Атака позволяет выделять сведения о работе с памятью в другом приложении и отслеживать информацию о времени нажатия клавиш. Исследователи опубликовали инструментарий для проведения сопутствующих измерений и несколько прототипов эксплоитов.
Предложено три эксплоита, которые позволят:
Технология Ring Interconnect появилась в процессорах на базе микроархитектуры Sandy Bridge и состоит из нескольких закольцованных шин, используемых для связи вычислительных и графических ядер, северного моста и кэша. Суть метода атаки в том, что из-за ограничения пропускной способности кольцевой шины операции с памятью в одном процессе задерживают доступ к памяти другого процесса. Определив детали реализации через обратный инжиниринг атакующий может генерировать нагрузку, приводящую к задержкам доступа к памяти в другом процессе и использовать данные задержки в качестве стороннего канала для получения информации.
Атаки на внутренние шины CPU затруднены отсутствием информации об архитектуре и методах работы шины, а также высоким уровнем шума, затрудняющего выделение полезных данных. В принципах работы шины удалось разобраться через проведение обратного инжинирига протоколов, применяемых при передаче данных через шину. Для отделения полезной информации от шума была применена модель классификации данных, основанная на методах машинного обучения. Предложенная модель позволила организовать мониторинг задержек при вычислениях в конкретном процессе, в условиях когда несколько процессов одновременно обращаются к памяти и определённая часть данных отдаётся из процессорных кэшей.
Дополнительно можно отметить выявление следов применения при атаках на системы Linux эксплоита для первого варианта уязвимости Spectre (CVE-2017-5753). Утечка информации по сторонним каналам в эксплоите используется для поиска суперблока в памяти, определения inode файла /etc/shadow и вычисления адреса страницы памяти для извлечения файла из дискового кэша.
Источник статьи: https://www.opennet.ru/opennews/art.shtml?num=54717
Предложено три эксплоита, которые позволят:
- Восстановить отдельные биты ключей шифрования при использовании реализаций RSA и EdDSA, уязвимых к атакам по сторонним каналам (если задержки при вычислении зависят от обрабатываемых данных). Например, утечки отдельных битов с информацией о векторе инициализации (nonce) EdDSA достаточно для применения атак по последовательному восстановлению всего закрытого ключа. Атака труднореализуема на практике и может быть совершена при большом числе оговорок. Например, успешная эксплуатация показана при отключении SMT (HyperThreading) и сегментировании LLC-кэша между ядрами CPU.
- Определить параметры о задержках между нажатием клавиш. Задержки зависят от положения клавиш и позволяют через проведение статистического анализа с определённой вероятностью воссоздать вводимые с клавиатуры данные (например, большинство людей обычно набирают "s" после "a" значительно быстрее, чем "g" после "s").
- Организовать скрытый канал связи для передачи данных между процессами со скоростью около 4 мегабит в секунду, в котором не используется разделяемая память, процессорный кэш и специфичные для ядер CPU ресурсы и процессорные структуры. Отмечается, что предложенный метод создания скрытого канала очень трудно блокировать существующими методами защиты от атак по сторонним каналам.
Технология Ring Interconnect появилась в процессорах на базе микроархитектуры Sandy Bridge и состоит из нескольких закольцованных шин, используемых для связи вычислительных и графических ядер, северного моста и кэша. Суть метода атаки в том, что из-за ограничения пропускной способности кольцевой шины операции с памятью в одном процессе задерживают доступ к памяти другого процесса. Определив детали реализации через обратный инжиниринг атакующий может генерировать нагрузку, приводящую к задержкам доступа к памяти в другом процессе и использовать данные задержки в качестве стороннего канала для получения информации.
Атаки на внутренние шины CPU затруднены отсутствием информации об архитектуре и методах работы шины, а также высоким уровнем шума, затрудняющего выделение полезных данных. В принципах работы шины удалось разобраться через проведение обратного инжинирига протоколов, применяемых при передаче данных через шину. Для отделения полезной информации от шума была применена модель классификации данных, основанная на методах машинного обучения. Предложенная модель позволила организовать мониторинг задержек при вычислениях в конкретном процессе, в условиях когда несколько процессов одновременно обращаются к памяти и определённая часть данных отдаётся из процессорных кэшей.
Дополнительно можно отметить выявление следов применения при атаках на системы Linux эксплоита для первого варианта уязвимости Spectre (CVE-2017-5753). Утечка информации по сторонним каналам в эксплоите используется для поиска суперблока в памяти, определения inode файла /etc/shadow и вычисления адреса страницы памяти для извлечения файла из дискового кэша.
Источник статьи: https://www.opennet.ru/opennews/art.shtml?num=54717