Доклады, выступления, видео и электронные публикации

Особенности применения средств защиты информации в инфраструктуре виртуализации, построенной на базе KVM

С.А. Татауров, Т.М. Каннер, к.т.н.

АО «ОКБ САПР, Москва, Россия

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

Ключевые слова: виртуализация, гипервизор, платформа KVM, виртуальные машины, libvirt, QEMU, инфраструктура виртуализации, средства защиты информации инфраструктуры виртуализации, контроль целостности.

Введение

Все чаще вместо физических устройств, таких как серверы, рабочие станции, сети, хранилища данных и др. применяются их программные представления, реализуемые с помощью технологий виртуализации. В соответствии с ГОСТ Р 56938-2016 «Защита информации при использовании технологий виртуализации. Общие положения» [1] виртуализация – это группа технологий, основанных на преобразовании формата или параметров программных или сетевых запросов к компьютерным ресурсам, с целью обеспечения независимости процессов обработки информации от программной или аппаратной платформы информационной системы.

Данную группу технологий повсеместно применяеют в инфраструктурах различных организаций, позволяя организовать более эффективное распределение вычислительных ресурсов. Применение виртуализации предоставляет возможность запуска на одном физическом сервере большого количества виртуальных машин (ВМ), которые могут использоваться как для построения сети и самой инфраструктуры, так и в качестве клиентских машин, к которым выдается доступ сотрудникам для подключения в дальнейшую инфраструктуру. Такое построение системы упрощает ее администрирование, так как используется только один физический сервер, на котором расположены виртуальные машины, а не большое число физических средств вычислительной техники. Помимо этого, снижаются затраты на обслуживание и оптимизируется энергопотребление инфраструктуры в целом.

Работу и управление виртуальными машинами обеспечивает предназначенное для этого специализированное программное обеспечение – гипервизор (Hypervisor). Гипервизор управляет виртуальными машинами, выделением и освобождением ресурсов для них; позволяет осуществлять независимое включение, выключение (часть ВМ может быть включена, а часть – выключена), а также перезагрузку любой из виртуальных машин с той или иной операционной системой. Также гипервизор обеспечивает изоляцию виртуальных машин друг от друга. Изолированная виртуальная машина – это система, которая работает в своей собственной виртуальной среде, изолированной от других виртуальных машин, функционирующих на той же физической машине [2]. При этом данные в ВМ не смешиваются, а программы одной ВМ не влияют на программы другой.

Гипервизоры делятся на два типа, в зависимости от принципа работы. Гипервизор первого типа устанавливается непосредственно на физическом оборудовании основной машины, что позволяет ему напрямую управлять ресурсами системы и обеспечивает высокую производительность виртуальных машин. Гипервизор второго типа реализуется в виде программного обеспечения, работающего как процесс в основной операционной системе, и использует ее возможности для организации виртуализации, что может приводить к дополнительным накладным расходам. Гипервизоры второго типа обычно используются в личных целях. Например, Oracle VirtualBox применяется, когда нужно на своем компьютере запустить ВМ, скачав только соответствующее программное обеспечение [3]. При этом в больших инфраструктурах организаций чаще всего используются  гипервизоры первого типа.

Существуют различные платформы виртуализации, такие как VMware[4], Microsoft Hyper-V[5] и KVM [6], каждая из которых имеет свои особенности и области применения. Однако KVM представляет собой более гибкую и масштабируемую платформу, тесно интегрированную с ядром Linux, что позволяет оптимально использовать аппаратные ресурсы физического оборудования. Также KVM является открытым и свободно распространяемым программным обеспечением. Благодаря этому данная платформа в настоящее время является достаточно востребованной при построении современных инфраструктур, и поэтому в дальнейшем в данной статье основное внимание уделяется именно ей.

В работе рассматриваются платформа виртуализации KVM, особенности управления инфраструктурой виртуализации, построенной на базе данной платформы, а также – особенности самой инфраструктуры виртуализации и применения в ней средств защиты информации.

Общие сведения о платформе виртуализации KVM

KVM (Kernel-based Virtual Machine) – это модуль ядра Linux, позволяющий операционной системе на базе GNU/Linuxработать в роли гипервизора, который способен запускать множество изолированных виртуальных машин [6]. Также данный модуль позволяет использовать аппаратные возможности процессора гипервизора напрямую, что повышает эффективность всей инфраструктуры виртуализации.

KVM содержит ряд модулей, непосредственно работающих с аппаратными расширениями процессора Intel VT-x и AMD-Vkvm, kvm_intel и kvm_amd. Данные модули отвечают за аппаратную поддержку виртуализации в процессорах, не затрагивая эмуляцию, что обеспечивает оптимальное распределение ресурсов между виртуальными машинами. Поддержка технологий аппаратной виртуализации позволяет оптимизировать виртуализацию на аппаратном уровне, что повышает стабильность работы системы, в том числе и при ее высокой загрузке.

В большинстве случаев совместно с KVM используется QEMU-эмулятор, позволяющий гостевой системе, запущенной на виртуальной машине, выполняться непосредственно на процессоре основной с почти той же скоростью, то есть – с производительностью, сопоставимой с работой на физическом оборудовании. Благодаря аппаратному ускорению, реализуемому через KVM, QEMU обеспечивает высокую производительность и обеспечивает очень реалистичную виртуализацию поведения виртуальных устройств.

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

Управление инфраструктурой виртуализации, построенной на базе KVM

Обеспечение безопасности инфраструктур виртуализации на базе KVM может осуществляться путем применения предназначенного для этого специализированного средства защиты инфраструктур виртуализации. В этом случае должна быть обеспечена интеграция в систему управления гипервизором, например, через библиотеку управления libvirt. Libvirt – это библиотека с открытым исходным кодом, которая предоставляет программный интерфейс приложения (Application Programming Interface, сокращенно API) и набор инструментов для управления виртуализацией через командную строку (Command Line Interface, сокращенно CLI) [7]. Данный модуль позволяет централизованно контролировать запуск виртуальных машин и отслеживать состояние их программных компонентов. Реализация контроля целостности конфигураций и содержимого виртуальных машин, выполненная до их запуска, обеспечивает возможность выявления изменений, способных повлиять на безопасность инфраструктуры.

Альтернативой libvirt для управления виртуализацией является oVirt – платформа с расширенными возможностями, использующая KVM и libvirt, но предоставляющая более удобные инструменты администрирования и автоматизации. В отличие от libvirt, который предоставляет API и CLI для работы с гипервизором, oVirt предлагает полноценный веб-интерфейс, централизованное управление виртуальными машинами, гибкое управление ресурсами и поддержку кластеризации, представляющей собой распределение нагрузки при наличии двух и более гипервизоров.

Несмотря на наличие альтернативных решений, таких как oVirt, библиотека libvirt остается более востребованным средством управления виртуализацией. Она обеспечивает гибкость в интеграции с различными системами, позволяет централизованно контролировать работу виртуальных машин и предоставляет удобный программный интерфейс для автоматизированного управления. Использование библиотеки libvirt упрощает реализацию механизмов защиты виртуальной инфраструктуры, включая контроль целостности конфигураций, поэтому в дальнейшем будет рассмотрена именно она.

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

Для защиты информации инфраструктуры виртуализации на базе KVM может применяться специализированное программное обеспечение «Аккорд-KVM» [8]. Оно контролирует запуск виртуальных машин посредством настройки разрешений на их включение, а также осуществляет проверку целостности файлов и оборудования ВМ, сохраняя эталонное состояние в базе данных и регистрируя ключевые события в журнале событий безопасности. Такая функциональность позволяет оперативно обнаруживать любые отклонения от нормального состояния и, соответственно, принимать меры по предотвращению угроз, что делает «Аккорд-KVM» важным элементом комплексной защиты информации [9].

Особенности инфраструктуры виртуализации, построенной на базе KVM

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

Первая особенность заключается в том, что и KVM, и libvirt – продукты с открытым исходным кодом. Возможность детального изучения каждой строки позволяет специалистам выявлять уязвимости в исходном коде, проводить аудит и оперативно реагировать на потенциальные угрозы. Однако этот же фактор предоставляет злоумышленникам возможность анализировать исходный код для поиска эксплойтов (Exploit), что увеличивает требования к защите информации в таких инфраструктурах.

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

Также сама операционная система, установленная на гипервизоре, может содержать уязвимости и требовать дополнительных мер защиты информации. Данная проблема может быть решена, например, применением специализированной операционной системы, в которой реализовано усиленное разграничение доступа пользователей. К таким ОС относится, например, Astra Linux Special Edition [10].

Особенности применения средств защиты в инфраструктуре виртуализации, построенной на базе KVM

Особенности применения средств защиты информации в инфраструктуре виртуализации, построенной на базе KVM, начинаются с необходимости многоуровневой защиты. Комплекс средств защиты информации должен охватывать не только гипервизор и управляющие компоненты, такие как libvirt, но и каждую отдельную виртуальную машину. Такой подход позволяет обеспечить согласованную защиту на всех уровнях инфраструктуры, снижая риск компрометации отдельных ее элементов.

Например, используя специализированное программное обеспечение «Аккорд-KVM» можно контролировать целостность файлов внутри самой виртуальной машины. Один из файлов, /etc/hosts, служит для сопоставления доменных имен и IP адресов серверов. Если файл не контролировать, злоумышленник может внести в него изменения, перенаправляя легитимный трафик на поддельные или вредоносные ресурсы, что ведёт к риску мошенничества, перехвата данных и заражения системы вредоносным программным обеспечением.

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

Если не контролировать конфигурацию виртуальной машины, то возможно несанкционированное потребление ресурсов. Например, злоумышленник может изменить конфигурацию виртуальной машины так, что она будет потреблять все ресурсы гипервизора. Это может послужить причиной как невозможности запуска других виртуальных машин, так и может быть одной из причин выхода из строя самого гипервизора.

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

Заключение

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

Одновременно с расширением функционала инфраструктуры виртуализации возрастает значение комплексной защиты информации в ней. Инфраструктуры виртуализации, построенные на базе KVM, имеют ряд особенностей. KVM является проектом с открытым кодом, что как и упрощает разработку, так и дает возможность злоумышленникам свободно анализировать исходный код данной платформы. Также в виртуальных инфраструктурах необходимо обеспечивать защиту информации не только самого гипервизора, но и конфигурации каждой виртуальной машины и ее внутренних файлов. Помимо этого, одной из особенностей является простота доступа к конфигурационным файлам виртуальных машин, что влечет за собой необходимость применения средств защиты для контроля их неизменности. Также стоит отметить, что требуется осуществлять защиту информации операционной системы GNU\Linux, установленной на физическое оборудование.

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

Литература

  1. ГОСТ Р 56938-2016. Защита информации при использовании технологий виртуализации (утв. и введен в действие Приказом Федерального агентства по техническому регулированию и метрологии от 1 июня 2016 г. № 457-ст). – М.: Стандартинформ, 2018.
  2. What is Virtual Machine Based Isolation? // Официальный сайт компании GeeksForGeeks [Электронный ресурс]. URL: https://www.geeksforgeeks.org/what-is-virtual-machine-based-isolation/ (дата обращения: 26.02.2025).
  3. Oracle VirtualBox // Официальный сайт компании Oracle. [Электронный ресурс]. URL: https://www.virtualbox.org/ (дата обращения: 26.02.2025).
  4. VMvare vSphere | Virtualization platform // Официальный сайт VMvare [Электронный ресурс]. URL: https://www.vmware.com/products/cloud-infrastructure/vsphere (дата обращения: 26.02.2025).
  5. Обзор технологии Hyper-V | Microsoft Learn // Официальный сайт Microsoft [Электронный ресурс]. URL: https://learn.microsoft.com/ru-ru/windows-server/virtualization/hyper-v/hyper-v-overview (дата обращения: 26.02.2025).
  6. KVM Main Page // Официальный сайт KVM [Электронный ресурс]. URL: https://www.linux-kvm.org/page/Main_Page (дата обращения: 26.02.2025).
  7. libvirt: The Virtualization Api // Официальный сайт Libvirt [Электронный ресурс]. URL: https://libvirt.org/ (дата обращения: 26.02.2025).
  8. Аккорд-KVM // Официальный сайт компании ОКБ САПР [Электронный ресурс]. URL: https://www.okbsapr.ru/products/virtsys/accord-kvm/ (дата обращения 26.02.2025)
  9. Мозолина Н. В. Системы защиты виртуальных инфраструктур // Information Security/Информационная безопасность. М., 2021. № 4. С. 26-27.
  10. Astra Linux Special Edition // Официальный сайт компании ООО «РусБИТех-Астра» [Электронный ресурс]. URL: https://astralinux.ru/os/ (дата обращения: 26.02.2025).

Авторы: Татауров С. А.; Каннер(Борисова) Т. М.

Дата публикации: 04.04.2025

Библиографическая ссылка: Татауров С.А., Каннер Т.М. Особенности применения средств защиты информации в инфраструктуре виртуализации, построенной на базе KVM // Вопросы защиты информации. М., 2025. № 1(148). С. 3–7.


Scientia potestas est
Кнопка связи