Блог компании Crossover
Информационная безопасность
Процессоры
15 августа

Spectre и Meltdown больше не самые опасные атаки на CPU Intel. Исследователи сообщили об уязвимости Foreshadow



В начале этого года информационное пространство потрясли новости о Spectre и Meltdown — двух уязвимостях, использующих спекулятивное исполнение кода для получения доступа к памяти (статьи и переводы на эту тему на Хабре: 0, 1, 2, 3, 4, 5, 6, 7, 8 и в поиске можно найти еще десяток других). Примерно в тоже время, когда техническое сообщество активно обсуждало снижение производительности процессоров Intel и проблемы архитектуры современных процессоров в целом, которые и позволяют эксплуатацию подобных дыр, две группы исследователей независимо друг от друга стали внимательнее исследовать вопрос спекулятивного исполнения кода на процессорах Intel.

Как итог, обе группы пришли к тому, что использование этого вектора атаки позволяет не только получить доступ к кэшу процессора, но и считывать/изменять содержимое защищенных областей Intel SGX (1, 2), в расшифровке — Intel Software Guard Extensions. Таким образом еще более серьезной атаке подвержены новейшие чипы от Intel на архитектурах Sky Lake (шестое поколение) и Kaby Lake (седьмое и восьмое поколение). И все было бы не так печально, если бы SGX использовалась только системой, но к этим областям обращаются и пользовательские приложения.

Сразу необходимо отметить, что все исследователи, которые публично зарепортили новую уязвимость — White Hat и предварительно оповестили Intel о наличии проблемы. Еще с мая производитель процессоров совместно с разработчиками Linux и представителями Microsoft вошли в контакт с основными разработчиками ПО и раскатывают мини-патчи, которые должны закрыть найденную брешь. Однако учитывая спекулятивную природу уязвимости (подразумевается эксплуатация спекулятивного исполнения кода), патчи могут оказаться неэффективными.

Что может Foreshadow


С оригиналом отчета от самих исследователей вы можете ознакомиться на этой странице. Потенциально уязвимость Foreshadow (L1 Terminal Fault в классификации Intel) через эксплуатацию исполнения спекулятивного кода может получить доступ к L1-кэшу процессора, а также к защищенной области SGX трех последних поколений процессоров Intel. При этом Foreshadow может извлечь из кэша любую информацию, в том числе и информацию о режиме эксплуатации системы, к Kernel-ядру или гипервизору.

Поясняющее видео от исследователей

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

Демонстрация чтения памяти через эксплуатацию Foreshadow

Атаке Foreshadow / L1-terminal-fault были присвоены следующие номера CVE:

  • CVE-2018-3615 для атаки на SGX.
  • CVE-2018-3620 для атаки на ядро ОС и режим SMM.
  • CVE-2018-3646 для атаки на виртуальные машины.

Стоит сказать пару слов о SGX. Intel Software Guard Extensions — это технология создания защищенных анклавов внутри памяти процессора для хранения и произведения операций с наиболее ценными данными. Реализована она была в трех последних поколениях продуктов Intel и являлась одним из рубежей, которые «взять» Spectre и Meltdown не смогли. Технология SGX активно используется не только операционными системами для своей работы, но и пользовательскими приложениями, для которых важна защищенность данных. Например, одним из таких приложений является клиент 1password для Windows, о чем гордо сообщали разработчики приложения еще в 2017 году. С того момента 1password на Windows хранит в области, создаваемой SGX, мастер-ключ. Сколько еще приложений, оперирующих персональными данными, хранят информацию в SGX как в «надежном хранилище» неизвестно.

Amazon, Google и Microsoft уже заявили о том, что пропатчили свою облачную инфраструктуру и пользовательским сервисам ничего не угрожает, во что очень хочется верить. Пользователям же остается только устанавливать последние обновления для своих ОС и надеяться на лучшее.
+88
57,1k 76
Комментарии 202