Гипервизор — программное обеспечение, которое создаёт и запускает виртуальные машины, распределяя процессор, память и устройства физического компьютера между несколькими изолированными гостевыми ОС.
Как работает гипервизор
Гипервизор, который также называют монитором виртуальных машин (VMM), находится между оборудованием и гостевыми системами и обеспечивает их изоляцию. Различают два основных типа:
- Тип 1 (bare-metal) — работает непосредственно на оборудовании, например VMware ESXi, Microsoft Hyper-V, Xen и KVM. Это стандарт для дата-центров и облаков.
- Тип 2 (hosted) — работает как приложение в обычной операционной системе, например Oracle VirtualBox или VMware Workstation; типичен для рабочих станций и лабораторий.
Гипервизоры служат и строительным блоком защиты: безопасность на основе виртуализации в Windows использует Hyper-V, чтобы защитить учётные данные и целостность ядра даже от кода, работающего в основной ОС.
Почему гипервизор важен для безопасности
Один гипервизор может обслуживать десятки виртуальных машин, поэтому его компрометация даёт контроль над всеми ними.
- Вымогатели на ESXi — группировки LockBit, BlackCat и Akira выпустили Linux-версии своих шифровальщиков, которые шифруют файлы дисков VM прямо на хостах ESXi. В феврале 2023 года кампания ESXiArgs поразила тысячи необновлённых серверов ESXi, доступных из интернета, через старую уязвимость в OpenSLP.
- Побег из VM — выход из песочницы гостевой системы в гипервизор разрушает изоляцию, на которую опираются облачные провайдеры; такие баги входят в число самых ценных на хакерских соревнованиях вроде Pwn2Own.
- Hyperjacking — установка вредоносного гипервизора под операционную систему; идею в 2006 году продемонстрировала Йоанна Рутковская в концепции руткита Blue Pill.
Как защитить гипервизоры
- Быстро устанавливать обновления и никогда не открывать интерфейсы управления в интернет.
- Отделить администрирование гипервизоров от основного Active Directory и использовать MFA.
- Включить режимы блокировки (lockdown) и отключить неиспользуемые сервисы, такие как SSH и SLP.
- Хранить офлайн- или неизменяемые резервные копии виртуальных машин.