Процессоры Intel уязвимы перед атакой Indirector
Процессоры от Intel, включая семейства Alder Lake и Raptor Lake, столкнулись с новым видом атаки под названием Indirector. Этот метод применяется для кражи конфиденциальной информации.Ученые Калифорнийского университета из Сан-Диего исследовали его. Детали будут обнародованы на конференции USENIX Security Symposium 08/2024 года. Атаки представляют угрозу для Intel Raptor Lake и Alder Lake, 12-го и 13-го поколения процессоров Core. Intel сообщила о проблеме уже 02/2024 года и разослала уведомления про Indirector другим производителям оборудования и ПО.
Indirector использует уязвимости в Indirect Branch Predictor (IBP) и Branch Target Buffer (BTB) - двух ключевых компонентах аппаратуры процессоров Intel, манипулируя спекулятивным выполнением для извлечения данных.
Исследователи выявили проблемы в функционировании систем IBP и BTB, связанные с процессами индексации, тегирования и обмена данными. Кроме того, системы имеют прогнозируемую структуру, и это является еще одной "лазейкой" для злоумышленников.
Indirector использует несколько методов для проведения атак:
- Кастомный инструмент iBranch Locator, который определяет индексы и теги ветвей-жертв и точно находит записи IBP для определенных ветвлений.
- Направленные инъекции IBP/BTB для спекулятивного выполнения кода.
- Нарушение механизма ASLR (Address Space Layout Randomization) путем определения точного расположения косвенных переходов и их целей, что облегчает предсказание и манипуляции потоком управления защищенных процессов.
Есть два ключевых метода защиты от Indirector: активное применение Indirect Branch Predictor Barrier (IBPB) и усиление Branch Prediction Unit (BPU) с использованием более сложных механизмов тегирования, шифрования и рандомизации. Однако такие меры могут существенно влиять на производительность, особенно в случае использования IBPB, поэтому необходимо тщательно настраивать баланс между безопасностью и производительностью.
IBPB в Linux включается автоматически при переходе в режим SECCOMP или при выполнении задач с ограниченными косвенными переходами в ядре, при этом на 50% снижается производительность. На GitHub доступны proof-of-concept и инструменты для реализации описанных выше видов защиты.
04 Jul 2024, 19:41:46