Разработчик Google предложил защиту от LVI-атак

Несколько дней тому назад здесь в блоге мы говорили о LVI, который классифицируется как новая серия атак которые затрагивают только процессоры Intel и характеризуются последовательностью атак, основанных на манипуляциях с теми же микроархитектурными структурами, что и в атаках MDS, Spectre и Meltdown.

Основное различие между Я нападаю на нихs LVI и MDS заключается в том, что MDS управляет определением содержимого микроархитектурных структур, которые остаются в кеше после спекулятивной обработки ошибок или операций загрузки и сохранения, в то время как Атаки LVI позволяют подставлять атакующего в микроархитектурные структуры. повлиять на последующее спекулятивное исполнение кода жертвы.

Хотя Intel упоминает, что работает над решением В связи с этим они упоминают, что эта неудача вызывает большие трудности с возможностью успешного выполнения процесса, поэтому они считают, что для достижения успеха в ней необходимо выполнить несколько требований, и именно эта неудача была каталогизирована с чрезвычайными трудностями. .

Теме статьи:
LVI: новый класс атак спекулятивного исполнения на процессоры Intel

Кроме того, Золя мосты (разработчик Google) работал над проблемой и недавно предложил патч для компилятора LLVM с защитой SESES (Подавление побочных эффектов спекулятивного выполнения), которая помогает блокировать атаки на определенные механизмы спекулятивного выполнения, которые влияют на процессоры Intel, такие как LVI.

Предлагаемый способ защиты реализован на уровне компилятора и основан на добавлении операторов LFENCE компилятором при генерации машинного кода, который вставляется перед каждой инструкцией чтения или записи в памяти, а также перед первой инструкцией ветвления в группе инструкций, завершающейся в блоке.

Смягчение состоит из шага компилятора, который вставляет LFENCE перед
каждая инструкция чтения из памяти, инструкция записи в память и первая
оператор ветвления на группе терминаторов в конце
базовый блок. 

Команда LFENCE ожидает подтверждения всех предыдущих показаний из памяти и не допускает упреждающего выполнения инструкций, следующих за LFENCE до завершения подтверждения.

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

В наших тестах использование защиты SESES для пакета BoringSSL привело к 14-кратному снижению количества операций, выполняемых библиотекой в ​​секунду - производительность собранной с защитой версии библиотеки оказалась в среднем только производительность 7.1% незащищенной версии (расширена в зависимости от теста с 4% до 23%)

В дополнение к полной версии защиты, этот патч реализует три флага для отключения части защиты..

По умолчанию эти флаги отключены. Флаги не предназначены для обеспечения безопасного варианта смягчения последствий. Индикаторы предназначены для использования пользователями, которые хотят поэкспериментировать, чтобы улучшить производительность
смягчение.

Для сравнения, механизм, ранее предложенный для GNU Assembler, который выполняет подстановку LFENCE после каждой операции загрузки из памяти и перед некоторыми инструкциями ветвления, показал снижение производительности примерно в 5 раз (22% кода без защиты).

Метод защиты также был предложен и реализован инженерами Intel, но результаты тестов производительности еще не опубликованы. Первоначально исследователи, обнаружившие LVI-атаку, предсказывали снижение производительности в 2-19 раз при применении полной защиты.

Наконец, если вы хотите узнать об этом больше, вы можете проверить подробности По следующей ссылке. 


Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.