Нoвый вaриaнт aтaки Spectre нa прoцeссoры Intel мoжнo испoльзoвaть для взлoмa aнклaвoв (зaщищённыx oблaстeй испoлнeния) Software Guard Extensions (SGX) и прoсмoтрa их содержимого. Так называемая атака по сторонним (или побочным) каналам SgxPectre влияет на программы с повышенным уровнем защиты на базе Intel SGX.
Команды Intel SGX поддерживаются в платформах на базе настольных процессоров Core 7-го поколения и серверных Xeon E3 v5 и выше. Intel разработала технологию для защиты исходного кода и данных от несанкционированного доступа и изменения. Особенно важные части приложения могут быть помещены разработчиками в такой защищённый анклав с помощью специальных команд и SDK и в теории должны быть защищены от системного ПО, включая гипервизоров и ОС. Недавно Microsoft начала поддерживать SGX в своей облачной платформе Azure, что позволяет разработчикам защищать данные от недобросовестных сотрудников в своих ЦОД.
Как объясняют исследователи из Университета штата Огайо в документе, подробно описывающем SgxPectre, атаки Meltdown и Spectre на процессоры поднимают вопросы относительно устойчивости SGX к ним. Судя по выкладкам, технология уязвима, и эту проблему так же сложно исправить. Злоумышленник, использующий SgxPectre, может, как сообщается, полностью нарушить конфиденциальность SGX-анклавов и узнать содержимое защищённой области памяти.
Атака фокусируется на двух аппаратных функциях процессоров Intel, которые предназначены для повышения производительности посредством спекулятивных вычислений. К ним относятся предсказание ветвлений кода анклава, чем можно манипулировать с помощью кода вне анклава и неявное кеширование памяти, вызванное спекулятивно исполненными инструкциями. По словам разработчиков, сейчас уязвимостям подвержен любой код, созданный с помощью Intel SDK.
С атакой можно бороться с помощью IBRS (Indirect Branch Restricted Speculation), которая является одним из исправлений, вносимых Intel в обновления микрокода своих чипов против Spectre CVE-2017-5715 (целевое внедрение в ветвь). Но поскольку обновление микрокода может быть не применено или отменено злоумышленником, разработчикам, полагающимся на SGX в облаке, придётся проверять номер версии безопасности процессора во время удалённого подключения.
Исследователи выпустили инструмент сканирования уязвимостей для поиска проблемных шаблонов кода и планируют в будущем опубликовать открытые исходные коды эксплойтов SgxPectre. Intel обещает, что исправлений Spectre и Meltdown в сочетании с обновлением SGX SDK, которое выйдет 16 марта, будет достаточно для преодоления проблемы. Полное заявление журналистам ZDNet:
«Мы знаем об исследовании университета штата Огайо и ранее публиковали в Сети информацию и рекомендации о том, как на Intel SGX могут влиять уязвимости анализа побочных каналов. Мы ожидаем, что существующие исправления для Spectre и Meltdown в сочетании с обновлённым инструментарием разработки ПО для поставщиков приложений SGX, который мы планируем выпустить 16 марта, будут эффективны против методов, описанных в этом исследовании. Мы рекомендуем клиентам убедиться, что они всегда используют самые последние версии наборов инструментов».
Источник: