Процессоры Intel (в том числе поколений Raptor Lake и Alder Lake) подвержены новому типу Branch Target Injection (BTI) атаки, получившей название Indirector. Она может использоваться для кражи конфиденциальных данных.

Indirector эксплуатирует уязвимости в Indirect Branch Predictor (IBP) и Branch Target Buffer (BTB), двух аппаратных компонентах современных процессоров Intel, чтобы манипулировать спекулятивным выполнением с целью извлечения данных.

Атаку Indirector представили исследователи из Калифорнийского университета в Сан-Диего, и все подробности об атаке будут раскрыты на предстоящей конференции USENIX Security Symposium в августе 2024 года.

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

В результате Indirector осуществляет атаки, используя три основные механизма:

  • iBranch Locator: кастомный инструмент, использующий методы вытеснения для выявления индексов и тегов ветвей-жертв и точного обнаружения записей IBP для конкретных ветвлений;
  • инъекции IBP/BTB: выполнение направленных инжектов для спекулятивного выполнения кода;
  • обход ASLR: нарушение Address Space Layout Randomization (ASLR) путем выявления точного расположения косвенных переходов и их целей, что в итоге облегчает прогнозирование и манипулирование потоком управления защищенных процессов.

Также исследователи отмечают, что помимо спекулятивного выполнения кода, достигаемого за счет направленных инъекций, злоумышленники могут использовать side-channel атаки на кеш, например, измерять время доступа, чтобы получить информацию об используемых данных.

Сообщается, что атаки Indirector представляют угрозу для процессоров Intel Raptor Lake и Alder Lake, 12-го и 13-го поколения процессоров Core.

Intel уведомили о проблеме еще в феврале 2024 года, и компания уже сообщила об Indirector другим производителям оборудования и ПО.

Исследователи предлагают два основных способа защиты от от Indirector: более агрессивное использование Indirect Branch Predictor Barrier (IBPB) и усиление Branch Prediction Unit (BPU) за счет применения более сложных тегов, шифрования и рандомизации. Однако при этом следует учитывать заметное влияние на производительность, которое будет особенно заметно при использовании IBPB, поэтому реализация предлагаемых мер потребует весьма тонкой балансировки.

Отмечается, что в Linux IBPB активируется по умолчанию при переходе в режим SECCOMP или в задачах с ограниченными косвенными переходами в ядре, однако его использование ограничено из-за падения производительности на 50%.

Исследователи уже опубликовали на GitHub proof-of-concept и инструменты для реализации описанных ими инжектов.

  • Подпишись на наc в Telegram!

    Только важные новости и лучшие статьи

    Подписаться

  • Подписаться
    Уведомить о
    0 комментариев
    Межтекстовые Отзывы
    Посмотреть все комментарии