Одна ошибка в маршрутизации обнулила безопасность чипов.

Облачные серверы, которые обещают полную защиту данных, оказались не такими уж неприступными. Специалисты нашли способ обойти одну из ключевых технологий защиты в процессорах AMD – причём без физического доступа к оборудованию. Атака под названием FABRICKED нацелена на технологию защищённых виртуальных машин AMD SEV-SNP, которую используют облачные провайдеры для изоляции клиентских данных. Суть проблемы кроется в том, как внутри процессора передаются данные между компонентами.
В современных чипах AMD используется внутренняя шина Infinity Fabric. Она связывает ядра, память и устройства ввода-вывода. Когда система запускается, прошивка настраивает правила маршрутизации: какие данные куда отправлять. Предполагалось, что даже при недоверенной прошивке защита SEV-SNP останется надёжной.
Однако FABRICKED показывает обратное. Злоумышленник с доступом к гипервизору или прошивке может изменить правила маршрутизации и перенаправить важные операции. В результате защитный сопроцессор получает ложную картину системы и инициализирует её неправильно. Атака позволяет читать и записывать произвольные данные в память защищённой виртуальной машины. Более того, злоумышленник может подделывать отчёты проверки подлинности, которые должны подтверждать, что система работает в безопасном режиме.
Ключевая проблема связана с таблицей RMP, которая отвечает за контроль доступа к памяти. Когда система запускается, сопроцессор должен заполнить эту таблицу корректными данными. Но если перенаправить записи, таблица остаётся в небезопасном состоянии. Тогда гипервизор получает доступ к памяти виртуальной машины, хотя не должен его иметь.
Исследователи обнаружили ещё более неприятный сценарий. Злоумышленник может включить так называемый режим отладки уже после того, как система прошла проверку. В норме такой режим запрещён, потому что позволяет читать и изменять память виртуальной машины. Но манипулируя таблицей защиты, ограничение удаётся обойти.
Кроме того, атака позволяет подменять результаты проверки. Виртуальная машина может получить «правильный» отчёт, даже если запущена изменённая или вредоносная среда. Фактически пользователь думает, что работает в безопасном окружении, хотя контроль уже у атакующего. Проблема возникает из-за двух факторов. Во-первых, система не проверяет, что настройки маршрутизации окончательно заблокированы. Во-вторых, некоторые запросы к памяти обрабатываются не так, как задумано, и могут идти по «неправильным» правилам.
Уязвимость уже раскрыли разработчику. AMD подтвердила проблему и планирует устранить её под идентификатором CVE-2025-54510.
Атака требует серьёзного уровня доступа – например, контроля над гипервизором или прошивкой. Тем не менее для облачных сервисов такой сценарий вполне реалистичен. А значит, даже современные механизмы конфиденциальных вычислений пока нельзя считать полностью защищёнными.