The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"SPOILER - новая атака на механизм спекулятивного выполнения ..."
Отправлено opennews, 06-Мрт-19 12:34 
Группа исследователей из Вустерского политехнического института (США) и Любекского университета (Германия) раскрыли детали новой атаки SPOILER на механизм спекулятивного выполнения операций в процессорах. Атака специфична для процессоров Intel и не проявляется в CPU AMD и ARM. Предложенная техника атаки даёт возможность определить отражение виртуальных адресов в физическую память, что позволяет существенно повысить эффективность проведения известных низкоуровневых атак, манипулирующих раскладкой страниц в физической памяти.

По данным исследователей техника SPOILER позволяет в 4096 раз ускорить проведение атаки Prime+Probe для определения содержимого памяти на основе анализа состояния процессорного кэша. Метод также применим для определения размещённых друг за другом страниц памяти, что позволяет повысить до 100% эффективность атаки RowHammer, применяемой для выборочного изменения содержимого памяти других процессов. В том числе отмечается возможность реализации подобных атак из виртуальных машин, например, с использованием выполняемого в браузере JavaScript-кода, несмотря на ранее предпринятые в браузерах меры ограничения точности таймера.

Разработанные для Spectre меры защиты не блокируют атаку SPOILER. Атаки класса Spectre манипулируют спекулятивным выполнением отдельных инструкций, результат которых отбрасывается процессором после определения неудачного прогноза, но следы выполнения оседают в общем кэше. Техника SPOILER затрагивает механизм упреждающей загрузки содержимого памяти в регистры процессора.

Для взаимодействия с памятью в процессоре используется буфер упорядоченного доступа к памяти (MOB, Memory Order Buffer), реализующий два цикличных буфера - один для записи данных из регистров в память, а другой для чтения из памяти в регистры. Разбор буфера записи всегда выполняется в порядке следования инструкций, а буфер чтения допускает упреждающую загрузку данных в кэш, не дожидаясь синхронизации с буфером записи и лишь частично проверяя зависимость.

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

Подобная манипуляция приводит к возникновению задержки при конфликте доступа к физическим адресам, появление которой можно отследить. Используя инструкции rdtscp и mfence можно добиться заполнения буфера записи адресами с идентичным смещением, но в разных виртуальных страницах памяти. Далее анализируя задержки при обращении к областям памяти с такими же смещениями но в разных страницах памяти атакующий может выявить сбои при определении зависимостей в буфере упорядоченного доступа к памяти и определить раскладку страниц физической памяти.

Проблема проявляется начиная с первого поколения процессоров Intel Core. В процессорах AMD и ARM применяется иная логика обработки буфера упорядоченного доступа к памяти, поэтому проблема их не затрагивает. Компания Intel было уведомлена об уязвимости 3 месяца назад, но исправления пока не предложены. По мнению выявивших уязвимость исследователей программные способы защиты не эффективны для блокирования атак на базе техники SPOILER и проблему можно решить только на аппаратном уровне, ценой заметного снижения производительности.


https://www.opennet.ru/opennews/art.shtml?num=50257

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру