Новый вариант атаки Foreshadow, затрагивающий процессоры Intel, AMD, ARM и IBM

Автор Сообщение
news_bot ®

Стаж: 6 лет 2 месяца
Сообщений: 27286

Создавать темы news_bot ® написал(а)
09-Авг-2020 01:30

Группа исследователей из Грацского технического университета (Австрия) и Центра Гельмгольца по информационной безопасности (CISPA), выявила (PDF) новый вектор применения атаки по сторонним каналам Foreshadow (L1TF), позволяющей извлечь данные из памяти анклавов Intel SGX, SMM (System Management Mode), областей памяти ядра ОС и виртуальных машин в системах виртуализации. В отличие от предложенной в 2018 году изначальной атаки Foreshadow новый вариант не специфичен для процессоров Intel и затрагивает CPU других производителей, таких как ARM, IBM и AMD. Кроме того, новый вариант не требует высокой производительности и атака может быть осуществлена даже при помощи запуска кода на JavaScript и WebAssembly в web-браузере.
Атака Foreshadow пользуется тем, что при доступе к памяти по виртуальному адресу, приводящему к исключению (terminal page fault), процессор спекулятивно рассчитывает физический адрес и загружает данные, если они имеются в L1-кэше. Спекулятивное обращение выполняется до завершения перебора таблицы страниц памяти и независимо от состояния записи в таблице страниц памяти (PTE), т.е. до проверки наличия данных в физической памяти и их доступности для чтения. После завершения проверки доступности памяти, в случае отсутствия флага Present в PTE операция отбрасывается, но данные оседают в кэше и их можно извлечь при помощи методов определения содержимого кэша по сторонним каналам (через анализ изменения времени доступа к прокэшированным и не прокэшированным данным).
Исследователи показали, что имеющиеся методы защиты от Foreshadow неэффективны и реализованы с неверной трактовкой проблемы. Уязвимость
Foreshadow может быть эксплуатирована независимо от применения в ядре механизмов защиты, которые ранее считались достаточными. В итоге исследователями была продемонстрирована возможность совершения атаки Foreshadow в системах с относительно старыми ядрами, в которых включены все имеющиеся режимы защиты от Foreshadow, а также с новыми ядрами, в которых отключена только защита от Spectre-v2 (используется опция ядра Linux nospectre_v2).
Было обнаружено, что эффект упреждающей загрузки не связан с программными инструкциями prefetch или аппаратным эффектом
упреждающей загрузки в процессе доступа к памяти, а возникает при спекулятивном разыменовании регистров пространства пользователя в ядре. Подобное неверное толкование причины возникновения уязвимости изначально привело к предположению, что утечка данных в Foreshadow может произойти только через кэш L1, в то время как наличие в ядре определённых отрывков кода (prefetch-гаджетов) может способствовать утечке данных вне L1-кэша, например, в кэш L3.
Для блокирования атаки Foreshadow через кэш L3 показал эффективность метод защиты Spectre-BTB (Branch Target Buffer), реализованный в наборе патчей retpoline. Таким образом, исследователи считают необходимым оставление retpoline включённым даже на системах с новыми CPU, в которых уже имеется защита от известных уязвимостей в механизме спекулятивного выполнения инструкций CPU. При этом представители Intel завили, что не планируют добавлять в процессоры дополнительные меры защиты от Foreshadow и считают достаточным включения защиты от атак Spectre V2 и L1TF (Foreshadow).
===========
Источник:
OpenNet.RU
===========

Похожие новости: Теги для поиска: #_foreshadow, #_spectre
Профиль  ЛС 
Показать сообщения:     

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы

Текущее время: 29-Апр 22:11
Часовой пояс: UTC + 5