Spectre был лишь началом кошмара. VMScape ломает основу всех облачных сервисов – изоляцию

Исследователи из Цюрихского университета ETH представили атаку VMScape, которая по своей природе напоминает Spectre и угрожает инфраструктуре виртуализации. Она позволяет вредоносной виртуальной машине считывать криптографические ключи из процесса гипервизора QEMU, работающего без модификаций на современных процессорах AMD и Intel.

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

Уязвимость получила идентификатор CVE-2025-40300 и затрагивает все поколения AMD Zen от первой до пятой, а также процессоры Intel поколения Coffee Lake. Более новые архитектуры Raptor Cove и Gracemont от этой проблемы не страдают. В отчёте говорится, что уязвимость связана с неполной изоляцией блоков предсказания переходов (Branch Prediction Units). Из-за этого пользователь гостевой системы может влиять на прогноз ветвлений в процессе гипервизора через разделяемые структуры, такие как Branch Target Buffer, Indirect Branch Predictor и Branch History Buffer.

Техника атаки основана на методе Spectre-BTI (Branch Target Injection). Исследователи продемонстрировали возможность обмануть ветвление в QEMU и заставить его спекулятивно выполнить специальный гаджет, который выведет секретные данные в общий буфер, доступный для чтения через сторонний канал FLUSH+RELOAD.

Чтобы продлить окно спекулятивного выполнения, атакующая виртуальная машина создаёт наборы для вытеснения кэша последнего уровня на процессорах AMD Zen 4, а для обхода ASLR используется поиск коллизий ветвлений и подбор виртуального адреса буфера перезагрузки. В результате исследователи добились скорости утечки 32 байта в секунду с точностью 98,7%. Это позволяет извлечь, например, 4 КБ ключа шифрования диска всего за 128 секунд, а с учётом обхода ASLR – примерно за 13 минут.

Работа подчёркивает, что последствия для облачных сервисов могут быть серьёзными: виртуализация лежит в основе многопользовательских сред, и возможность чтения памяти гипервизора одной гостевой машиной угрожает конфиденциальности остальных клиентов. При этом сама атака требует глубоких технических знаний, устойчивой работы и времени, поэтому риски для массовых пользователей невелики.

Сообщение об уязвимости было направлено в AMD и Intel 7 июня 2025 года. AMD выпустила бюллетень безопасности , а разработчики ядра Linux добавили защитный механизм: при переходе с гостя на хост теперь выполняется барьер IBPB (Indirect Branch Prediction Barrier), очищающий блоки предсказания переходов. По словам исследователей, это решение почти не влияет на производительность при обычных нагрузках.

Public Release.