6.4 Безопасность ВМ и гипервизоров ГОСТ Р 70860—2023

Для аппаратных систем операционная система имеет самый высокий уровень привилегий, поскольку она должна контролировать доступ ко всем аппаратным ресурсам. Однако в случае с хостом гипервизора последний должен контролировать весь доступ гостевых ВМ к ресурсам процессора и оперативной памяти (обеспечивая виртуализацию процессора и памяти), поэтому он должен работать на более высоком уровне привилегий, чем все ВМ. Для этого гипервизоры устанавливаются на аппаратных системах, которые помогают выполнять виртуализацию. В частности, аппаратная система имеет два состояния процессора: режим root (гипервизор) и режим non-root (гость). Все гостевые ОС работают в режиме non-root, в то время как гипервизор работает в режиме root.

Несмотря на аппаратную поддержку виртуализации, изоляция процессов среды выполнения для ВМ, обеспечиваемая гипервизором, может быть нарушена неавторизованными или скомпрометированными ВМ, получившими доступ к областям оперативной памяти, принадлежащим гипервизору или другим ВМ. Неавторизованные или скомпрометированные ВМ используют определенные уязвимости гипервизоров в отношении определенных программных структур, таких как блок управления ВМ (VMCB) и таблицы страниц виртуальной памяти, которые используются гипервизором для отслеживания состояния выполнения ВМ и отображения памяти с адресов ВМ на адреса памяти хоста соответственно. Об этих уязвимостях гипервизоров было известно уже давно, поэтому многие из них уже устранены или будут устранены в скором будущем. Более поздние версии гипервизоров были обновлены для более надежной работы. CSC и CSP должны убедиться в том, что все используемые гипервизоры обновлены и защищены от известных уязвимостей.

Еще одна проблема безопасности в платформе хоста гипервизора может быть связана с ПО, используемым для виртуализации устройств. В отличие от виртуализации набора команд и памяти виртуализация устройств осуществляется не непосредственно гипервизором, а с помощью вспомогательных программных модулей. Основные источники возникновения уязвимостей включают в себя:

  1. программный код, который эмулирует физические аппаратные устройства, запущенные в гипервизоре в качестве загружаемого модуля ядра, и
  2. драйверы устройств с прямым доступом к памяти (DMA), которые могут обращаться к областям памяти, принадлежащим другим ВМ или даже гипервизору.

Одними из возможных негативных последствий получения неавторизованной ВМ контроля над гипервизором являются: установка руткитов или атаки на другие ВМ на том же хосте гипервизора. Перед установкой и использованием в системе, в которой присутствуют гипервизор и ВМ, все ПО для виртуализации устройств должно быть проверено на наличие уязвимостей [из 6.4 Безопасность ВМ и гипервизоров ГОСТ Р 70860—2023]