Атака SgxSpectre может нарушить конфиденциальные данные, хранящиеся в анклавах Intel SGX

Новейшая атака Spectre, получившая название SgxSpectre, может подвергнуть риску конфиденциальные данные, хранящиеся в анклавах SGX.

SgxSpectre - еще одна атака Spectre, представляющая опасность для конфиденциальных данных.

Ошибка процессора Spectre-Meltdown[1] обнаруженные в начале 2018 года, представляют собой большую проблему, чем ожидали Microsoft, Intel и другие технологические гиганты. Ему удалось не только перейти от чипов Intel и AMD к чипам Skylake, Kaby Lake, Coffee Lake; это позволило хакерам инициировать несколько кампаний по распространению вредоносного ПО.[2] и программные атаки.

В начале марта 2018 года группа из шести ИТ-исследователей из Университета штата Огайо обнаружила новый вариант атаки Spectre, получивший название SgxSpectre, который можно использовать для взлома анклавов Intel Software Guard Extensions (SGX), которые отвечают за изоляцию конфиденциальных компоненты. Фактически, данные, охраняемые этими анклавами, вероятно, наиболее уязвимы, поскольку компоненты операционной системы не могут взаимодействовать с данными, защищенными анклавом.

Кэролайн Триппель и Дэниел Лустиг, исследователи из Принстонского университета, и Маргарет Мартоноси от Nvidia предвидели возможность подобных атак и изложили сценарий в своей научной работе. называется

«MeltdownPrime и SpectrePrime: использование автоматически синтезированных атак. Протоколы согласованности, основанные на признании недействительными ».[3] Это новейшие уязвимости Meltdown и Spectre, которые могут привести к атаке на конфиденциальные данные.

Предыдущие уязвимости Meltdown и Spectre не имели доступа к конфиденциальным данным, защищенным SGX.

Intel Software Guard Extensions (SGX) - относительно новая функция, доступная в современных процессорах Intel. Это позволяет создавать так называемые анклавы для защиты программного обеспечения, которое имеет дело с чрезвычайно конфиденциальными данными и информацией о кодировании.

Последствия предыдущих атак Spectre и Meltdown на SGX не были ясны. Тем не менее, невосприимчивость анклавов SGX с самого начала вызвала много вопросов. Оказалось, что ни одна из этих уязвимостей не имеет признаков, позволяющих взломать защиту SGX, но, очевидно, хакеры нацелены на данные внутри анклавов. Вот почему SgxSpectre эволюционировал.

По мнению исследователей уязвимости SgxSpectre,[4] уязвимость позволяет использовать «Состояние гонки между введенными, спекулятивно выполненными ссылками на память, которые приводят к наблюдаемым трассировкам кэша побочного канала, и задержке разрешения ветвления». В настоящее время уязвимость может затронуть Intel SGX, SDK, Rust-SGX и Graphene-SDX.
На систему может повлиять включение определенного шаблона кода в библиотеках программного обеспечения. Злоумышленник, нацеленный на информацию, хранящуюся в анклавах, использует спекулятивное выполнение и выполняет прогнозирование кода анклава, ища небольшие вариации размера кеша. Как пояснили исследователи,

Блоки предсказания ветвления, используемые в режиме анклава для предсказания целей ветвления, не очищаются полностью при входе в анклав. Следовательно, код вне целевого анклава (работающий либо в незащищенной области памяти, либо в другом анклаве) может манипулировать целями предсказания ветвления внутри целевого анклава.

Intel выпустила инструмент для сканирования уязвимостей

Людям, не связанным с миром IT, вся процедура может показаться сложной. Короче говоря, с помощью уязвимостей Meltdown и Spectre хакеры нашли способ использовать слабые места паттеров кода SDX. Эти уязвимости впоследствии позволяют хакерам изменять библиотеки времени выполнения SDK и атаковать любую систему, разработанную с помощью официального SGX SDK Intel.

Intel и Microsoft немедленно отреагировали на обнаруженную уязвимость Meltdown и Spectre и начали выпуск патчей. К сожалению, не все из них работают, поэтому обязательно следить за новостями об этой уязвимости.

Indirect Branch Restricted Speculation (IBRS) - одно из исправлений, представленных Intel. Он обращается к Spectre Variant с предоставлением адаптированного микрокода. Однако этот патч не ориентирован на уязвимость SGX SDK.
Крайний срок выпуска патча SgxSpectre - 16 марта 2018 г. Разработчикам приложений придется заменить старую версию SDK на ту, которую Intel собирается выпустить в приложения на основе SGX.

Тем, кто хочет проверить наличие на своем ПК уязвимых кодов, специалисты создали инструмент для сканирования уязвимостей,[5] который проверяет программы анклава и проверяет шаблон кода. В случае обнаружения эксплойтов SgxPectre пользователь будет предупрежден и побужден установить инструментарий, разработанный Intel, вместе с устаревшим инструментарием разработки программного обеспечения для поставщиков приложений SGX.