Процессоры и память

В механизме предсказания переходов процессоров AMD и Intel нашлась Spectre-подобная уязвимость

Группа специалистов по безопасности во главе с учёными из Калифорнийского университета в Сан-Диего на конференции ACM ASPLOS 2024 представила доклад о двух новых найденных уязвимостях в новейших процессорах Intel и AMD. Уязвимость затрагивает неисчислимое множество процессоров, а её устранение грозит катастрофическим снижением производительности.

Источник изображения: Hosein Yavarzadeh

Никогда такого не было и вот опять. Со времён обнаружения уязвимостей Meltdown и Spectre в процессорах Intel, AMD и других компаний в январе 2018 года, когда об этом было широко объявлено, исследователи обнаружили множество других разновидностей этих дыр в старых, новых, и новейших процессорах обеих компаний и не только. Проблема выявилась в механизме спекулятивного выполнения команд, без чего наращивание производительности процессоров было бы затруднительно. Беда в том, что ограничение подобных механизмов ощутимо снижало производительность процессоров и с этим приходилось мириться.

Новые уязвимости, обнаруженные в новейших процессорах, также имеют отношение к механизмам предсказания и, конкретно, используют механизмы предсказания ветвлений (переходов). Доклад по проблеме называется «Pathfinder: атаки с потоком управления высокого разрешения, использующие предсказатель ветвления», а сама уязвимость получила название Pathfinder.

Компании Intel и AMD были уведомлены об уязвимости заблаговременно, что произошло в ноябре 2023 года. Вчера обе они выпустили объявления по поводу доклада учёных. Компания Intel сообщила, что ничего нового по сравнению с уязвимостями Spectre v1 не открыто и у неё нет никаких новых рекомендаций по проблеме, кроме ранее озвученных. Защита против Spectre v1 уже встроена в новые процессоры компании и не требует коррекции. Копания AMD, в свою очередь, сообщила об отсутствии эксплойтов, эксплуатирующих новые уязвимости, поэтому говорить, в общем-то, не о чем.

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

Знание о путях ветвления команд, вне зависимости, принятые они или не принятые, даёт хорошее представление о данных выполняемой программы. Во всём этом ведущую роль играет история ветвлений, данные о которой хранятся в таблицах прогнозирования. Предыдущие атаки, анализируя записи в таблицах, использовали этот механизм, чтобы выявить последние операции по конкретным адресам. Регистр истории PHR в последних архитектурах Intel записывает адреса и точный порядок последних 194 ветвей кода. Учёные показали, что они могут не только фиксировать самые последние результаты переходов, но и результаты каждой ветви в последовательном порядке. Более того, новая уязвимость раскрывает глобальный порядок всех ветвей и даёт доступ не только к последним 194 переходам, но и восстанавливает значительно более длинную историю ветвлений.

«Мы успешно захватили последовательности из десятков тысяч ветвей в точном порядке, используя этот метод для утечки секретных изображений во время обработки широко используемой библиотекой изображений libjpeg», — сказал Хосейн Яварзаде (Hosein Yavarzadeh), аспирант кафедры компьютерных наук и инженерии Калифорнийского университета в Сан-Диего и ведущий автор статьи.

Исследователи также представили исключительно точную атаку типа Spectre, позволяющую злоумышленникам создавать сложные шаблоны неверных предсказаний ветвей в коде жертвы. «Эта манипуляция приводит жертву к выполнению кода по непреднамеренному пути, вынужденно раскрывая её конфиденциальные данные», — добавил профессор компьютерных наук Калифорнийского университета в Сан-Диего Дин Таллсен (Dean Tullsen).

«В то время как предыдущие атаки могли перенаправлять одну ветвь или первый объект ветви, выполняемый несколько раз, у нас теперь есть такой точный контроль, что мы можем перенаправлять, например, 732-й экземпляр ветви, выполняемый тысячи раз», — пояснил Таллсен.

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

«Pathfinder может выявить результат практически любой ветви практически любой программы-жертвы, что делает его самой точной и мощной атакой с извлечением микроархитектурного потока управления, которую мы видели до сих пор», — говорят исследователи. Но Intel и AMD, как сказано выше, предлагают не беспокоиться по поводу новых уязвимостей, хотя новые бюллетени по безопасности, скорее всего, они выпустят.

Источник

Похожие статьи

Добавить комментарий

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

Кнопка «Наверх»
Закрыть