Сегодня мы поговорим о защите от несанкционированного доступа к различным компонентам инфраструктуры VMware vSphere с помощью vGate R2. Мы уже писали о том, как с помощью vGate R2 можно автоматически настроить vSphere в соответствии с политиками ИБ, а также обсуждали экономический эффект, а теперь углубимся в защиту от НСД.
Прежде всего, в продукте есть разделение ресурсов на следующие категории, для которых можно управлять доступом с точки зрения конфиденциальности:
защищаемый ESX-сервер;
хранилище ВМ;
виртуальная машина;
физический сетевой адаптер;
виртуальная сеть (Virtual Network)
Отдельной сущностью у нас идет администратор VMware vSphere (то есть тот, кто через vSphere Client управляет виртуальной инфраструктурой). Его учетной записи назначается определенная метка конфиденциальности (т.е., по-сути, это его уровень допуска к информации в виртуальной инфраструктуре). А при выполнении ряда стандартных операций с объектами виртуальной инфраструктуры осуществляется сравнение меток конфиденциальности ресурсов и учетных записей администраторов.
Метка конфиденциальности - это принадлежность ресурса или пользователя к какой-либо категории (то есть, например, отдел или класс информации, например, секретно). Есть три типа меток конфиденциальности, которые "накладываются" на ресурсы и учетные записи пользователей:
Иерархическая метка - это метка, которая содержит уровень конфиденциальности. Уровень конфиденциальности - это сущность, которая строго иерархически (Неконфиденциально->Для Служебного пользования->Секретно->Совершенно Секретно) определяет возможность доступа пользователей к ресурсам и ресурсов друг к другу. То есть, пользователь с уровнем ДСП не сможет работать с секретными и совсекретными ресурсами, а секретные виртуальные машины не могут находиться на неконфиденциальных хранилищах. Наоборот же, например, на уровень ниже пользователь или ресурс сможет работать с ресурсами, но только если для него установлено соответствующее разрешение (например для хоста - "Может исполнять машины с меньшим уровнем"). Как становится понятным, этот вариант защиты от НСД больше всего востребован госструктурами (гостайна) или организациями, обрабатывающими персональные данные (ФЗ 152, кстати, вот вам новости о нем).
Неиерархическая метка - это метка, которая содержит категорию конфиденциальности. В вашей инфраструктуре может быть сколько угодно категорий, при это все они будут находиться на одном уровне иерархии. Поэтому механизм прост - если у ресурса есть такая метка (категория) - то пользователь из этой категории может его использовать. Понятное дело, что на одном ресурсе может быть несколько меток - это значит, что несколько категорий пользователей используют его совместо (например, финансисты и бухгалтерия). Здесь становится видно, что данная модель защиты от НСД вполне подходит коммерческим компаниям. По умолчанию, у вас есть пять категорий, обозначенных цветом ("Синий", "Зеленый", "Желтый" и т. д.), его можно просто менять.
Составная метка - это метка, которая содержит одновременно один уровень конфиденциальности и одну или несколько категорий конфиденциальности. Например, они могут пригодиться для работы с совсекретными данными (уровень), но с которыми работают разные отделы (категория). Тут все понятно.
Чтобы назначить метку, в интерфейсе vGate R2 выбираем объект виртуальной инфраструктуры (например, виртуальная машина) и нажимаем "Назначить метку":
Далее мы выбираем тип метки, назначаем уровень или категорию:
Если выберем и уровень, и категорию - метка получится составная. Кстати, по умолчанию, все ресурсы находятся на уровне "неконфиденциально" - учитывайте это, когда будете работать с конфиденциальной информацией.
Есть и дополнительные параметры:
Их назначение очевидно из описания. Актуальны они только для уровней конфиденциальности, чтобы дать возможность настроить взаимодействие ресурсов при работе на уровне ниже назначенной метки.
Матрица сочетаний меток
Иногда имеет смысл настроить составные метки (уровень + категория), но нужно запретить определенные их комбинации (например, нельзя делать метку "совсекретно+отдел новичков"). Для этого есть настраиваемая матрица сочетаний. По умолчанию, можно делать любые комбинации:
Теперь, давайте посмотрим на примеры для обоих типов меток в vGate R2.
Уровни конфиденциальности
Как мы уже писали, их всего 4, их можно переименовывать, но их количество и иерархия не доступны для изменения.
Допустим мы задали вот такую конфигурацию уровней:
В данном случае у на есть 3 "домена безопасности" - это секретно, ДСП и неконфиденциально, и 3 пользователя, каждый из которых может работать только со своим типом ресурсов, которые могут быть расположены даже на одном хост-сервере VMware ESX / ESXi. Соответственно ресурсы между собой взаимодействуют тоже в рамках своего уровня (или ниже, если задано в доп. настройках).
Как мы видим, первый хост работает с нетвоком ДСП (куда воткнуты такие же ВМ), для которого есть такой же ДСП аплинк на виртуальном коммутаторе хост-сервера, и, в то же время, там есть и неконфиденциальный домен со своими адаптерами, нетвоками, хранилищами и машинами.
Категории конфиденциальности
Назначив категории конфиденциальности ресурсам и пользователям мы увидим следующую картину:
Здесь мы также видим домены безопасности, созданные для администраторов VMware vSphere, которые отвечают за объекты виртуальной инфраструктуры различных отделов. При этом мы видим, что одна виртуальная машина может администрироваться двумя администраторами (отдел продаж и отдел разработки), а также на одном из хранилищ могут находиться машины бухгалтерии и отдела продаж (они же используют совместно первый сервер ESX).
Взаимосвязь политик безопасности и меток конфиденциальности
Как вы знаете, vGate R2 нужен не только для того, чтобы защищать информацию в виртуальной инфраструктуре от несанкционированного доступа, но и чтобы автоматически настраивать объекты vSphere в соответствии с политиками безопасности. Об этом написано в нашей статье "Шаблоны и политики безопасности в продукте vGate 2 от Кода Безопасности".
Поскольку метки безопасности, накладываемые на ресурсы, создают домены безопасности, в рамках каждого из них мы можем определить свои собственные политики. Наборы политик создаются из уже готовых шаблонов, таких как, например, VMware Security Hardening или PCI DSS.
Таким образом, для каждого уровня или категории мы настраиваем политики безопасности:
Кстати, когда вы настроите политики для уровня или категории, их можно будет скопировать:
Порядок назначения уровней и категорий конфиденциальности:
Уровни конфиденциальности нужно задавать так:
Задайте уровень конфиденциальности для каждой учетной записи администратора vSphere.
Задайте уровень конфиденциальности каждому из защищаемых ESX-серверов. Если там будут машины с разным уровнем, то отметьте поле "Может исполнять машины с меньшим уровнем" (в этом случае назначаем максимальный из будущих там уровней).
Задайте уровень конфиденциальности каждому
адаптеру (pNIC) ESX-сервера (при этом уровень не может быть выше, чем в целом для сервера). Если там будут несколько нетвоков (VLAN) разных уровней, то отметьте "Возможен трафик для VLAN разных
уровней" (однако, это не лучшая практика).
Задайте уровень конфиденциальности нетвокам (VLAN) с учетом уровня машин, которые к ним будут подключены.
Задайте уровень конфиденциальности каждому из хранилищ ВМ в соответствии с уровнем. Если там будут машины разных уровней, то отметьте поле "Может хранить машины меньшего уровня" (в этом случае назначаем максимальный из будущих там уровней)
Теперь, если у вас еще нет виртуальных машин, то новые ВМ получат метки конфиденциальности автоматически при их создании (в соответствии с уровнем хранилища).
Если машины у вас уже есть, то задайте уровень конфиденциальности для них (не выше уровня хоста и уровня хранилища). Учитывайте, что если виртуальная машина будет менять хост-сервер или хранилище за счет vMotion или Storage vMotion, то нужно, чтобы там соответствие по уровням также было соблюдено.
Категориии конфиденциальности нужно задавать так:
Задайте категории конфиденциальности для каждой учетной записи администратора vSphere (их может быть несколько).
Задайте категории конфиденциальности каждому из защищаемых ESX-серверов (их может быть несколько).
Задайте категории конфиденциальности каждому
адаптеру (pNIC) ESX-сервера (хотя бы одна категория должна быть на хосте).
Задайте категории конфиденциальности нетвокам (VLAN) с учетом категорий машин, которые к ним будут подключены. При этом должна быть хотя бы одна общая категория с pNIC, куда этот нетвок подключен.
Задайте категории конфиденциальности каждому из хранилищ ВМ в соответствии с уровнем. При этом эти категории должны учитывать категории хостов, которые используют эти хранилища.
Задайте категории виртуальным машинам.
Само собой, в процессе работы администратор ИБ должен контролировать уровни и категории для ресурсов и учетных записей, своевременно назначая их.
Как проверяются условия выполнения операций для уровней и категорий
Это один из важный моментов при использовании vGate - понимание логики работы при выполнении различных операций. Ниже приведен список того, что у вас получается, когда вы пытаетесь произвести те или иные операции в рамках домена безопасности, определенного уровнями или категориями:
На этом пока все. Напоминаю, что скачать пробную версию vGate R2 на 30 или 60 дней вы можете по этой ссылке. А оставить ваши предложения, пожелания и вопросы можно вот в этой форме.