Новый уровень изоляции в Zen 6
Разработчики ядра Linux начали подготовку к поддержке новой аппаратной функции безопасности в процессорах архитектуры AMD Zen 6. Согласно патчу, опубликованному инженером AMD Бориславом Петковым (Borislav Petkov), архитектура Zen 6 внедряет изоляцию контекстов буфера целевых ветвлений (Branch Target Buffer Context Isolation, BTB CTX). Это решение направлено на устранение уязвимости Speculative Return Stack Overflow (SRSO), которая затрагивала поколения от Zen 1 до Zen 4.
Отказ от SafeRET в пользу аппаратной защиты
Ключевое отличие Zen 6 заключается в том, что новая функция BTB позволяет изолировать пользовательские и системные контексты (user/kernel), а также контексты гостевой и хостовой сред (guest/host) на аппаратном уровне. Благодаря этому становится ненужной программная защита SafeRET, которая ранее использовалась для смягчения последствий SRSO. Однако векторы атак user/user и guest/guest остаются открытыми, поэтому для их защиты по-прежнему требуется механизм Spectre v2 с принудительной инвалидацией предсказаний (IBPB) при переключении контекстов.
Технические детали реализации
Патч, размещенный в ветке tip/tip.git (x86/bugs), добавляет новую строку митигации. Ядро будет автоматически обнаруживать наличие функции BTB CTX и сообщать об этом в системных логах. Это позволяет операционной системе корректно настраивать политики безопасности в зависимости от возможностей процессора.
| Характеристика | Zen 1 – Zen 4 | AMD Zen 6 |
|---|---|---|
| Основная уязвимость | SRSO (Speculative Return Stack Overflow) | SRSO (устранена аппаратно) |
| Метод защиты | Программный митигатор SafeRET | Аппаратная изоляция BTB CTX |
| Изоляция контекстов | Отсутствует (уязвимо к cross-context атакам) | Полная изоляция user/kernel и guest/host |
| Защита user/user | Частичная/отсутствует | Требует Spectre v2 + IBPB |
Сроки внедрения
Патч уже находится в репозитории и, вероятно, будет включен в цикл разработки ядра Linux v7.4. Возможна также его интеграция в текущую ветку v7.3 в качестве исправления ошибок. На данный момент подробной информации о других изменениях в безопасности для Zen 6 не поступало, но эта функция становится первым шагом к более безопасной архитектуре AMD.
Источник: Phoronix ↗
