Стало известно об ещё трёх уязвимостях процессоров Intel, которые могут использоваться вредоносным ПО и виртуальными машинами для похищения секретной информации из компьютерной памяти. Речь, в частности, может идти о паролях, личных и финансовых записях и ключах шифрования. Они могут быть извлечены из других приложений и даже защищённых хранилищ SGX и памяти в режиме SMM (System Management Mode). Уязвимы ПК, настольные системы и серверы.
Эти уязвимости, связанные с механизмом спекулятивных вычислений, были обнаружены исследователями ещё в январе, и тогда же Intel была проинформирована. В официальном блоге ведущий производитель процессоров для ПК и серверов сообщил, что в сочетании с обновлениями, выпущенными ранее в этом году, новые представленные сегодня заплатки смогут защитить пользователей от очередных уязвимостей. «Нам неизвестны случаи использования любого из этих методов в реальной обстановке для кражи данных, но это ещё раз напоминает о необходимости всем придерживаться основных правил безопасности», — отметила Intel.
Компания назвала этот набор уязвимостей L1TF (L1 Terminal Fault) и отметила, что два варианта атак можно закрыть с помощью уже доступных сейчас обновлений. А третий, который затрагивает лишь часть пользователей, — например, определённые центры обработки данных, — может потребовать дополнительных мер защиты.
Всего упомянуто три варианта атак: CVE-2018-3615 (извлечение данных из памяти анклавов Intel SGX), CVE-2018-3620 (извлечение данных из SMM и областей памяти ядра ОС) и CVE-2018-3646 (утечка данных из виртуальных машин). Уязвимости используют то обстоятельство, что при доступе к памяти по виртуальному адресу, приводящему к исключению (terminal page fault) из-за отсутствия флага Present в таблице страниц памяти (PTE), процессоры Intel спекулятивно рассчитывают физический адрес и загружают данные, если они имеются в L1-кеше. Спекулятивные расчёты производятся до проверки наличия данных в физической памяти и их доступности для чтения. Потом, в случае отсутствия флага Present в PTE операция отбрасывается, но информация оседает в кеше и её можно извлечь по сторонним каналам. Опасность L1TF состоит в том, что можно определить данные по любому физическому адресу (например, атаковать основную ОС из гостевой системы).
Исследователи, выявившие уязвимость, назвали её Foreshadow. «Когда вы смотрите на то, что с помощью Spectre и Meltdown взломать невозможно, то среди немногих областей остаются анклавы Intel Software Guard Extensions (SGX), — сказал Wired участник открытия Foreshadow Даниэль Генкин (Daniel Genkin). — SGX оставался неподвластен Spectre, поэтому наша работа в этом направлении была следующим логическим шагом».
AMD тоже прокомментировала ситуацию, сообщив на странице безопасности, посвящённой Specre-подобным уязвимостям: «Как и в случае с Meltdown, мы полагаем, что наши процессоры из-за архитектуры аппаратной защиты страниц памяти не подвержены новым вариантам атаки спекулятивного исполнения, называемым Foreshadow или Foreshadow-NG. Мы советуем клиентам, работающим с процессорами EPYC в своих центрах обработки данных, в том числе в виртуализированных средах, не устанавливать заплатки программного обеспечения для Foreshadow на свои платформы AMD». Совет этот не будет лишним, ведь подобные обновления безопасности могут снижать производительность систем.
Со времени публикации первоначальной информации о трёх видах уязвимостей CPU, связанных со спекулятивными вычислениями (под общим именем Meltdown и Spectre), был раскрыт целый ряд новых аналогичных вариантов атак — например, CVE-2018-3639, BranchScope, SgxSpectre, MeltdownPrime и SpectrePrime, Spectre 1.1 и 1.2 или SpectreRSB. Исследователи не исключают обнаружения новых видов подобных уязвимостей.
После первоначального обнародования сведений о Spectre и Meltdown Intel расширила свою программу стимулирования выявления уязвимостей и ошибок, открыв её для большего количества исследователей в области безопасности и предложив более крупные денежные вознаграждения.
Источники: