SLAM - атака на CPU Intel, AMD и ARM, позволяющая определить содержимое памяти
Автор
Сообщение
news_bot ®
Стаж: 6 лет 9 месяцев
Сообщений: 27286
Группа исследователей из Амстердамского свободного университета представила новую технику атаки SLAM (Spectre Linear Address Masking), предлагающую новый способ эксплуатации микроархитектурных уязвимостей класса Spectre, в котором утечка данных происходит при трансляции неканонических адресов, а для обхода проверок каноничности привлекаются предоставляемые в новых процессорах расширения для маскировки линейных адресов. Исследователями опубликован инструментарий с реализацией метода и предложена демонстрация, показывающая как можно извлечь из памяти ядра данные, соответствующие определённой маске (показано как за несколько десятков секунд в Ubuntu выделить из памяти ядра строку с хэшем пароля пользователя root).
Извините, данный ресурс не поддреживается. :( Атака может быть совершена на системах с процессорами Intel, поддерживающими расширение LAM (Linear Address Masking), процессорами AMD с расширением UAI (Upper Address Ignore) и процессорами ARM с расширением TBI (Top Byte Ignore). Указанные расширения позволяют использовать часть битов 64-разрядных указателей для хранения не связанных с адресацией метаданных (для обычных программ не требуется столько памяти, что могут адресовать 64-разрядные указатели, поэтому верхние биты могут быть задействованы, например, для проверок, связанных с обеспечением безопасности). Интересно, что процессоры Intel, AMD и ARM с поддержкой LAM, UAI и TBI ещё только анонсированы, но массово не производятся, что делает SLAM первой спекулятивной атакой на будущие CPU. Атака также может быть совершена на старых CPU AMD Zen+ и Zen 2, подверженных уязвимости CVE-2020-12965.
По аналогии с эксплуатацией уязвимостей Spectre для осуществления атаки SLAM требуется наличие в ядре определённых последовательностей инструкций (гаджетов), приводящих к спекулятивному выполнению инструкций. Подобные инструкции приводят к спекулятивному чтению данных из памяти в зависимости от внешних условий, на которые может влиять атакующий. После определения ошибочного прогноза результат спекулятивного выполнения отбрасывается, но обработанные данные остаются в кэше и могут затем быть извлечены при помощи анализа по сторонним каналам. Для извлечения осевших в кэше данных исследователями задействован метод Evict+Reload, основанный на создании условий для вытеснения данных из кэша (например, создаётся активность, равномерно заполняющая кэш типовым содержимым) и выполнения операций, время выполнения которых позволяет судить о наличии данных в процессорном кэше.
Для совершения атаки SLAM используются гаджеты на основе кода, в котором контролируемые атакующим данные (ниже переменная "secret") используются как указатель. Например:
void unmasked_gadget(long **secret) {
**secret;
}
Отмечается, что подобные шаблоны кода часто используются в программах, например, в ядре Linux выявлены десятки тысяч таких гаджетов, из которых как минимум несколько сотен пригодны для использования в эксплоитах. Утечка может быть блокирована через добавление в подобные гаджеты дополнительных инструкций, блокирующих спекулятивное выполнение. Компания Intel намерена предоставить программный метод блокирования утечки до начала поставки процессоров с поддержкой LAM. Компания AMD рекомендовала использовать существующие методы блокирования атак класса Spectre v2. Разработчики ядра Linux для защиты от атаки решили отключить по умолчанию поддержку LAM до публикации рекомендаций Intel по блокированию уязвимости.
===========
Источник:
OpenNet.RU
===========
Похожие новости
- Главная ссылка к новости (https://twitter.com/vu5ec/stat...)
- OpenNews: BHI - новая уязвимость класса Spectre в процессорах Intel и ARM
- OpenNews: Доступен Kasper, сканер проблем со спекулятивным выполнением кода в ядре Linux
- OpenNews: CROSSTalk - уязвимость в CPU Intel, приводящая к утечке данных между ядрами
- OpenNews: Чипы памяти DDR4 остаются уязвимы для атак RowHammer, несмотря на добавленную защиту
- OpenNews: Реализация DDIO в чипах Intel допускает сетевую атаку по определению нажатий клавиш в сеансе SSH
Похожие новости:
- Выпуск дистрибутива Armbian 23.11
- Уязвимость в CPU AMD, позволяющая обойти механизм защиты SEV (Secure Encrypted Virtualization)
- Уязвимость Reptar, затрагивающая процессоры Intel
- Ubuntu ограничит доступ к user namespace
- Уязвимости в драйвере к GPU ARM, уже применяемые для совершения атак
- Уязвимость в CPU AMD Zen1, приводящая к утечке информации о прошлых операциях при делении на ноль
- Компания Intel присоединилась к разработке CentOS Stream
- Выпуск дистрибутива Armbian 23.08
- AMD опубликовал код прошивки для механизма защиты SEV (Secure Encrypted Virtualization)
- Компания JetBrains объявила о поддержке Wayland в IDE IntelliJ и OpenJDK
Теги для поиска: #_slam, #_cpu, #_intel, #_amd, #_arm
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 21-Ноя 15:55
Часовой пояс: UTC + 5
Автор | Сообщение |
---|---|
news_bot ®
Стаж: 6 лет 9 месяцев |
|
Группа исследователей из Амстердамского свободного университета представила новую технику атаки SLAM (Spectre Linear Address Masking), предлагающую новый способ эксплуатации микроархитектурных уязвимостей класса Spectre, в котором утечка данных происходит при трансляции неканонических адресов, а для обхода проверок каноничности привлекаются предоставляемые в новых процессорах расширения для маскировки линейных адресов. Исследователями опубликован инструментарий с реализацией метода и предложена демонстрация, показывающая как можно извлечь из памяти ядра данные, соответствующие определённой маске (показано как за несколько десятков секунд в Ubuntu выделить из памяти ядра строку с хэшем пароля пользователя root). Извините, данный ресурс не поддреживается. :( Атака может быть совершена на системах с процессорами Intel, поддерживающими расширение LAM (Linear Address Masking), процессорами AMD с расширением UAI (Upper Address Ignore) и процессорами ARM с расширением TBI (Top Byte Ignore). Указанные расширения позволяют использовать часть битов 64-разрядных указателей для хранения не связанных с адресацией метаданных (для обычных программ не требуется столько памяти, что могут адресовать 64-разрядные указатели, поэтому верхние биты могут быть задействованы, например, для проверок, связанных с обеспечением безопасности). Интересно, что процессоры Intel, AMD и ARM с поддержкой LAM, UAI и TBI ещё только анонсированы, но массово не производятся, что делает SLAM первой спекулятивной атакой на будущие CPU. Атака также может быть совершена на старых CPU AMD Zen+ и Zen 2, подверженных уязвимости CVE-2020-12965. По аналогии с эксплуатацией уязвимостей Spectre для осуществления атаки SLAM требуется наличие в ядре определённых последовательностей инструкций (гаджетов), приводящих к спекулятивному выполнению инструкций. Подобные инструкции приводят к спекулятивному чтению данных из памяти в зависимости от внешних условий, на которые может влиять атакующий. После определения ошибочного прогноза результат спекулятивного выполнения отбрасывается, но обработанные данные остаются в кэше и могут затем быть извлечены при помощи анализа по сторонним каналам. Для извлечения осевших в кэше данных исследователями задействован метод Evict+Reload, основанный на создании условий для вытеснения данных из кэша (например, создаётся активность, равномерно заполняющая кэш типовым содержимым) и выполнения операций, время выполнения которых позволяет судить о наличии данных в процессорном кэше. Для совершения атаки SLAM используются гаджеты на основе кода, в котором контролируемые атакующим данные (ниже переменная "secret") используются как указатель. Например: void unmasked_gadget(long **secret) {
**secret; } =========== Источник: OpenNet.RU =========== Похожие новости
|
|
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 21-Ноя 15:55
Часовой пояс: UTC + 5