Серия критических уязвимостей позволяет атаковать гипервизор Xen и гостевые системы

XEN

Команда безопасности Xen Project выпустила сразу шесть предупреждений (с XSA-483 по XSA-489) о множественных уязвимостях в популярной платформе виртуализации. Эти проблемы затрагивают как сам гипервизор, так и компоненты, отвечающие за взаимодействие с гостевыми системами. Среди потенциальных последствий - повышение привилегий, отказ в обслуживании (DoS) и нарушение конфиденциальности данных. Инцидент затронул все версии Xen начиная с 4.2, а также ядра Linux начиная с версии 3.8. Особую тревогу вызывает то, что некоторые из этих уязвимостей можно эксплуатировать удалённо.

Детали уязвимостей

Платформа Xen - один из ключевых инструментов для виртуализации в корпоративной и облачной среде. Она лежит в основе многих публичных облаков и частных дата-центров. Поэтому обнаруженные проблемы напрямую угрожают стабильности и безопасности тысяч серверов по всему миру.

Самый масштабный блок уязвимостей связан с Xenstore - хранилищем данных, которое используется для обмена конфигурациями между гипервизором и гостевыми виртуальными машинами. В XSA-483 описана проблема в реализации Oxenstored (вариант Xenstore на языке OCaml). При уничтожении домена (гостевой системы) счётчики использования квот не освобождались. Со временем это приводило к тому, что новые домены не могли создать достаточное количество узлов в Xenstore и просто переставали работать. Злоумышленник мог ускорить этот процесс, намеренно исчерпав свою квоту и перезагрузив гостя. Проблеме присвоен идентификатор CVE-2026-23556.

Ещё одна угроза, описанная в XSA-484 (CVE-2026-23557), касается всех версий Xen начиная с 4.2. Любая гостевая система могла отправить команду сброса наблюдателя (XS_RESET_WATCHES) внутри транзакции, что вызывало аварийное завершение Xenstore. В результате гипервизор полностью терял возможность управлять доменами. Администратор не мог создавать, останавливать или изменять виртуальные машины до ручного вмешательства. Интересно, что проблема затрагивает только сборки Xenstore на языке C, где не определён макрос NDEBUG. Для версий на OCaml и для сборок C с определённым NDEBUG уязвимости нет.

Наиболее опасной с точки зрения потенциальных последствий можно считать уязвимость CVE-2026-23558 (XSA-486). Она связана с таблицами разрешений второго типа (grant table v2) и состоянием гонки при отображении страниц статуса. Суть в том, что если HVM (аппаратно-виртуализированная) или PVH (частично-виртуализированная) гостевая система одновременно изменяет версию таблицы и выполняет привязку страниц, то некоторые страницы могут быть освобождены, но их отображения остаются в таблицах страниц гостя. Это может привести к повышению привилегий, утечкам информации и отказу в обслуживании на уровне всего хоста. Проблема затрагивает все версии Xen начиная с 4.0. Разработчики отмечают, что уязвимость можно частично смягчить, ограничив использование второй версии таблиц разрешений через параметры командной строки.

Отдельная группа проблем относится к драйверам ядра Linux для Xen. XSA-485 (CVE-2026-31786) описывает уязвимость в файловой системе sysfs, а именно в файле /sys/hypervisor/properties/buildid. В процессе формирования этого файла использовалась функция sprintf() для записи бинарных данных из гипервизора. Поскольку полученное значение не завершается нулевым байтом, а функция пытается скопировать данные до первого нуля, возможно чтение за пределами буфера. В редких случаях это могло привести к перезаписи памяти ядра. Проблема затрагивает ядра Linux начиная с версии 4.13.

Другая уязвимость в ядре Linux - CVE-2026-31787 (XSA-487) - связана с двойным освобождением памяти в драйвере privcmd. Этот драйвер используется для привилегированных операций между гостем и гипервизором. Если пользователь с правами root частично отменяет привязку памяти через системный вызов munmap, ядро копирует приватные данные в новую область без создания нового экземпляра. Когда одна из областей закрывается, память освобождается, а вторая область всё ещё ссылается на неё. Повторное закрытие приводит к двойному освобождению и потенциальному обходу механизма безопасной загрузки. Проблема затрагивает PVH и HVM домены с ядром Linux 3.8 и новее.

Наконец, XSA-489 (включающий пять CVE: от CVE-2026-23559 до CVE-2026-42486) описывает проблемы в системе ролевого управления доступом (RBAC) в XAPI - компоненте управления для Citrix Hypervisor. Исследователь изначально заявил о 89 уязвимостях, однако команда XAPI подтвердила только пять реальных дефектов. Среди них - возможность для администратора виртуальных машин (vm-admin) читать и изменять произвольные файлы в Dom0, помечать гостевую систему как системный домен, некорректно управлять подключениями к хранилищу и получать доступ к аппаратным ресурсам через PCI-передачу. Все эти проблемы позволяют пользователю с ограниченной ролью повысить свои привилегии до полного администратора пула. Исправления уже выпущены в версиях XAPI v26.12.0 и v26.1.11.

Разработчики Xen рекомендуют как можно скорее применить соответствующие патчи. Для XSA-483, 484, 486 и 489 исправления доступны уже сейчас. Для уязвимостей в ядре Linux (XSA-485 и XSA-487) патчи требуется устанавливать на каждую гостевую систему отдельно, и делать это можно только после снятия эмбарго. В случае с XSA-486 и XSA-489 определённые меры смягчения, такие как ограничение версии таблиц разрешений или отключение некоторых ролей, можно применить немедленно, но окончательное решение - установка обновлений.

Этот массовый выпуск бюллетеней безопасности подчёркивает, насколько сложной стала экосистема виртуализации. Каждый компонент - от гипервизора до драйверов ядра и систем управления - может стать точкой входа для атаки. Администраторам Xen-инфраструктур следует в кратчайшие сроки проанализировать свои конфигурации и установить все необходимые исправления. Тем более что некоторые из уязвимостей допускают эксплуатацию без аутентификации и могут привести к полной компрометации хоста.

Ссылки

Комментарии: 0