На прошлой неделе исследователи из Швейцарской высшей технической школы Цюриха (ETH Zurich) опубликовали детали новой аппаратной уязвимости, затрагивающей процессоры Intel шести поколений начиная с 2018 года. Новое исследование стало логическим продолжением предыдущей работы (мы писали о ней здесь), в которой была предложена атака Retbleed. Новая атака, получившая название Branch Privilege Injection, также нацелена на обход защитных механизмов, предложенных после обнаружения уязвимости Spectre v2 еще в 2017 году.



Spectre v2 эксплуатирует «фичу» всех современных процессоров, обеспечивающую спекулятивное выполнение инструкций еще до того, как был получен результат предыдущих вычислений. Как выяснилось в 2017 году, это открывает возможность чтения данных из защищенных областей оперативной памяти. Механизм предсказания ветвлений можно натренировать так, что секретная (обычно недоступная атакующему) информация будет загружена в кэш-память процессора и считана оттуда «по стороннему каналу». Новая работа исследователей ETH Zurich демонстрирует, как можно обойти сразу два разных метода, направленных на защиту от Spectre-подобных атак, реализовав состояние гонки в работе предсказателя ветвлений.

Для защиты от Spectre v2 в процессорах Intel были применены технологии Indirect Branch Restricted Speculation (IBRS) и Indirect Branch Prediction Barrier (IBPB). Обе разными методами направлены на решение общей задачи: запретить спекулятивный доступ к чувствительным областям оперативной памяти либо отменить результаты вычислений до того, как данные сможет прочитать потенциальный злоумышленник. Развивая успех Retbleed (где удалось обойти «программный» метод защиты, известный как Retpoline), исследователи обнаружили, что ограничения на работу системы спекулятивного выполнения инструкций накладываются асинхронно с собственно самим спекулятивным выполнением. При переключении между выполнением инструкций для разных пользователей, с высокими и низкими привилегиями в системе, возникает ситуация, при которой можно выполнить инструкции от процесса без привилегий, и на них не будут распространяться ограничения IBRS или IBPB.

В результате авторам работы удалось реализовать систему чтения произвольных участков оперативной памяти в ОС Ubuntu процессом без привилегий и с достаточно высокой для такого метода скоростью 5,6 килобайта в секунду. Точность считывания секретов также была высокой — до 98%. Исследователи нашли сразу три разных варианта организовать состояние гонки. Два из них реализуют разные сценарии обхода защиты IBRS, соответственно для приложения с привилегиями пользователя, способного выполнять чтение из памяти ядра ОС, и для гостевой ОС, способной читать данные, доступные только гипервизору. Отдельно был исследован метод обхода технологии IBPB.

Уязвимости подвержены процессоры Intel, выпускаемые с 2018 года, когда начали применяться технологии защиты от атак типа Spectre v2, и вплоть до поколения Raptor Cove 2023 года. Отдельно были исследованы процессоры AMD Zen 4 и Zen 5, а также процессоры на архитектуре ARM с ядрами Cortex X1 и A76. На AMD и ARM подобную атаку реализовать не удалось — из-за отличий в реализации технологии предсказания ветвлений. Более современные процессоры Intel также неуязвимы, так как имеют расширенную систему блокировки потенциально опасных спекулятивных вычислений. В подверженных уязвимости процессорах Intel проблема решается с помощью обновления микрокода.

Что еще произошло

Эксперты «Лаборатории Касперского» делятся наблюдениями и прогнозами по эволюции шифровальщиков в 2025 году. Еще одна публикация анализирует ландшафт угроз для систем промышленной автоматизации в первом квартале этого года.

Компания Google анонсировала набор технологий Advanced Protection для устройств на базе Android, аналогичный Lockdown Mode в смартфонах Apple iPhone. Advanced Protection включает целый ряд защитных механизмов, включая, например, запрет на подключение к сетям 2G, ограничение передачи данных по кабелю, а также ведение расширенных логов, упрощающих выявление попыток взлома.

Апдейт iOS/iPadOS до версии 18.5 закрывает ряд серьезных уязвимостей и одну досадную ошибку в мессенджере FaceTime — там в некоторых случаях во время звонков не работала кнопка Mute.

Комментарии (4)


  1. kenomimi
    19.05.2025 16:22

    Ни одного 100% рабочего PoC для Spectre и компании по сей день не показано. Ну, так, чтобы взять не подготовленный комп и стырить пароли на вход в систему, например. Всё только теоретизирования и мутные примеры, которые на практике не реализуемы вообще. Зато патчей наклепали... Есть подозрение, что у кого-то стали мало покупать процов, потому надо старые назвать уязвимыми, максимально затормозить патчами псевдобезопасности, чтобы лихо продать новые...


  1. vesper-bot
    19.05.2025 16:22

    А казалось бы, достаточно выключить на хрен все предсказания, убрав саму дыру.


    1. domix32
      19.05.2025 16:22

      Всего-то наполовину уменьшить скорость.


      1. vesper-bot
        19.05.2025 16:22

        В худшем случае. С учетом подхода типа bigSMALL и иже с ним (E/P ядра, вот это всё) "просто" больше станет нагрузка на производительные ядра, не более того. Ну и может будет стимул поменьше ветвлений запиливать в машинный код.