Система защиты информации (далее - СЗИ) ОССН Смоленск оперирует тремя мандатными атрибутами:
- Уровень конфиденциальности;
- Категории доступа;
- Уровень целостности.
Что есть что в этом списке, в чем сходство, и в чем различие?
«Конфиденциальность», «категории доступа», «целостность» — в чем различия?
Первые два атрибута (уровень конфиденциальности и категории доступа) отвечают за то , чтобы информация не попадала к тому, кто не уполномочен её получать.
Конфиденциальность
Классический пример уровней конфиденциальности - это степени повышающейся секретности документов "Не секретно" - "ДСП" - "Секретно" - "Совершенно секретно",
и соответствующие им уровни доступа к этим документам, назначенные персоналу.
Очевидно, что в такой системе персоналу с уровнем доступа, например, "ДСП", разрешено читать только материалы уровней "ДСП" и "Не секретно",
и запрещено читать материалы с более высокими уровнями конфиденциальности ("Секретно" и "Совершенно секретно").
Не столь очевидно, но персоналу с уровнем конфиденциальности, например "Секретно",
запрещено (преднамеренно или случайно) передавать персоналу с более низким уровнем "ДСП" материалы уровня "Секретно"
(теоретические подробности можно найти в многочисленных описаниях модели безопасности Белла-ЛаПадулы).
Категории доступа
Для более точного управления доступом, в дополнение к разделению по уровням конфиденциальности,
СЗИ предоставляет возможность разделить материалы по категориям доступа.
Простой пример категорий доступа имеется в Руководстве по СЗИ ОССН Смоленск 1.6, п. 4.8.10.7: использование двух категорий "Танки" и "Самолёты".
При этом, персонал, работающий с "Танками", и имеющий соответствующую категорию доступа, не сможет ни получать сведения о "Самолётах", ни передавать сведения о "Танках" тем, кто работает с "Самолётами",
но, в то же время, условному "Руководителю" могут быть предоставлены одновременно обе категории доступа, чтобы "Руководитель" мог получать полный объём информации.
Итак, с помощью параметров уровень конфиденциальности и категории доступа СЗИ обеспечивает защиту от несанкционированной передачи информации:
- Невозможность прочитать информацию, к которой не предоставлен доступ:
- "нижним" уровням запрещено читать информацию с "верхних" уровней;
- всем запрещено читать информацию, на которую нет разрешенной категории доступа;
- Невозможность передать информацию тому, кому не предоставлен доступ:
- "верхним" уровням запрещено записывать свою информацию на "нижние" уровни;
- всем запрещено передавать информацию тем, у кого нет соответствующей категории доступа.
Правила, по которым СЗИ определяет возможность доступа к данным, описаны ниже.
Целостность
Атрибут уровень целостности отвечает за то, чтобы информацию не могли изменять те, кому не положено её изменять.
И, в первую очередь, атрибут уровень целостности отвечает за безопасность самой информационной системы.
Пример для пояснения:
Модель контроля целостности с 2007 г. реализуется в механизме MIC (Mandatory Integrity Control) всех ОС семейства Microsoft Windows,
где показала свою эффективность при противодействии компьютерным вирусам и атакам, направленным на несанкционированное повышение привилегий.
(теоретические подробности модели контроля целостности можно найти в описаниях модели безопасности Биба).
В общем, требование защиты целостности выглядит так:
- Процесс или пользователь, работающий на некотором уровне целостности, может записывать (изменять) только объекты своего, или более низкого уровня (запись "вверх" запрещена).
В СЗИ ОССН Смоленск начиная с версии 1.5 была реализована двухуровневая модель целостности,
далее, начиная с ОССН Смоленск версии 1.6, модель целостности расширена до многоуровневой.
Правила, по которым СЗИ определяет возможность доступа к данным при работе с контролем целостности, также описаны ниже.
Сущности мандатного доступа
Система мандатного доступа работает со следующими сущностями:
Субъекты мандатного доступа (пользователь, процесс) - сущности, выполняющие операции;
Объекты мандатного доступа (файл, каталог и т.д.) - сущности, с которыми выполняются операции.
и определяет условия, при которых субъектам разрешено выполнять операции с объектами (создавать, получать доступ к содержимому, изменять).
Каждая сущность обладает определёнными мандатными атрибутами (или не обладает никакими, что приравнивается к нулевым мандатным атрибутам).
Мандатные атрибуты сущности объединяются в мандатную (классификационную) метку (см. далее) сущности.
Решение о возможности или невозможности выполнения операций доступа автоматически принимается СЗИ на основании сравнения мандатных меток объекта и субъекта.
Мандатная метка, классификационная метка
Мандатная метка состоит из следующих атрибутов мандатного доступа:
Классификационная метка, которая, в свою очередь, состоит из атрибутов:
Уровень конфиденциальности сущности;
Категории доступа сущности.
Уровень целостности сущности.
Кроме того, мандатная метка может иметь специальные флаги ccnr/ccnri (см. "Термины и сокращения")
Атрибуты мандатного доступа
Уровень конфиденциальности - единичное (скалярное) числовое значение (иногда называется "уровень секретности" или просто "уровень").
Каждой мандатной (классификационной) метке в каждый момент времени может быть назначен один и только один уровень конфиденциальности.
Числовые значения уровня конфиденциальности сущности:Все сравнимы между собой;
Могут находится в диапазоне 0 до 255, включая границы;
Технически реализованы как 8-ми битная беззнаковая величина (uint8_t);
В пользовательских интерфейсах представляются десятичным значением или наименованием единичного уровня конфиденциальности;
Теоретически, множество возможных значений уровня конфиденциальности сущности представляет собой линейное упорядоченное множество относительно операции сравнения.
Категории доступа - маска, состоящая из набора единичных значений категорий доступа (так же применяются название просто "категория") .
В ОССН реализовано использование до 64-х единичных категорий доступа, таким образом, каждой мандатной (классификационной) метке
в каждый момент времени могут быть назначены одновременно до 64-х категорий доступа. Единичные категории доступа несравнимы между собой.
Числовые значения категории доступа сущности:Частично сравнимы между собой;
Определяются как суммы значений назначенных единичных категорий доступа;
Могут принимать значения от 0 до 0xFFFF FFFF FFFF FFFF, включая границы;
Технически реализованы как 64-x битная маска, беззнаковая величина (unsigned long long);
В пользовательских интерфейсах представляются шестнадцатеричным значением или списком наименований единичных категорий доступа;
Теоретически, множество возможных значений категорий доступа сущности представляет собой полное частично упорядоченное множество относительно операции сравнения.
Уровень целостности - маска, состоящая из набора единичных значений уровней целостности (так же применяется название "категория целостности", или просто "целостность").
В ОССН по умолчанию определены 6 ненулевых и несравнимых между собой единичных значений уровня целостности
(при настройке ОССН количество единичных значений может быть увеличено до 8):№ п/п
Значение
Битовая маска
Комментарий
000
0000 0000
Нулевой уровень. "Низкий", или "Low"
1
001
0000 0001
Уровень задействован как "Сетевые сервисы"
2
002
0000 0010
Уровень задействован как "Виртуализация"
3
004
0000 0100
Уровень задействован как "Специальное ПО"
4
008
0000 1000
Уровень задействован как "Графический сервер"
5
016
0001 0000
Свободен, может быть использован для СУБД
6
032
0010 0000
Свободен, может быть использован для сетевых сервисов
7
064
0100 0000
Зарезервирован, и может быть использован при поднятии max_ilev
8
128
1000 0000
Зарезервирован, и может быть использован при поднятии max_ilev
Дополнительно зарезервировано специальное наименование уровня целостности "Высокий" ("High").
Уровень "Высокий" не является единичным уровнем, а представляет собой максимальную сумму единичных уровней, определённых в системе
(имеет значение 63 при использовании 6-ти уровней, или значение 255 при использовании 8-ми уровней целостности).
Таким образом, каждой мандатной метке в каждый момент времени могут быть назначены одновременно до 6-ти (8-ми) единичных уровней целостности.
Числовые значения уровня целостности сущности:Частично сравнимы между собой;
Определяются как суммы значений назначенных единичных уровней целостности;
Могут принимать значения от 0 до 63 (255), включая границы;
Технически реализованы как 8-ми битная маска, беззнаковая величина (uint8_t);
В пользовательских интерфейсах представляются десятичным значением или наименованием единичного уровня целостности;
Теоретически, множество возможных значений уровня целостности сущности представляет собой полное частично упорядоченное множество относительно операции сравнения.
Далее в тексте под терминами "уровень целостности" и "категория доступа" будут пониматься значения соответствующих атрибутов, |
Сравнение мандатных атрибутов
Операции сравнения уровней конфиденциальности, уровней целостности и категорий доступа определяются следующим образом:
Уровень конфиденциальности cL0 больше или равен уровню конфиденциальности cL1 (cL0 >= cL1),
если численное значение cL0 больше или равно численному значению cL1;Категории доступа C0 больше или равны категориям доступа C1 ( C0 >= C1),
если все биты набора C1 являются подмножеством набора бит C0 или наборы совпадают.
В терминах побитовых операций:(C0 & C1) == C1;
Уровень целостности iL0 больше или равен уровню целостности iL1 (iL0 >= iL1),
если все биты набора iL1 являются подмножеством набора бит iL0 или наборы совпадают.
В терминах побитовых операций:(iL0 & iL1) == iL1.
Разрешения на доступ
Пусть мандатная метка субъекта содержит следующие атрибуты:
Классификационная метка:
Уровень конфиденциальности cLсуб;
Категории доступа Cсуб;
- Уровень целостности iLсуб.
а мандатная метка объекта содержит атрибуты:
Классификационная метка:
Уровень конфиденциальности cLоб;
Категория доступа Cоб;
Уровень целостности iLоб.
Тогда:
Операция записи разрешена, если
cL
суб
=cL
об
, C
суб
=C
об
и iL
суб
>=iL
об
, то есть:
уровни конфиденциальности и категории доступа субъекта и объекта совпадают,
а уровень целостности субъекта не ниже уровня целостности объекта
(теоретически - значение iLсуб принадлежит верхнему множеству iLоб);- Операции чтения и исполнения разрешены, если
cL
суб
>=cL
об
, C
суб
>=C
об
, и не зависят от уровней целостности
, то есть:
уровень конфиденциальности субъекта не ниже уровня конфиденциальности объекта,
а единичные категории доступа объекта входят в единичные категории доступа субъекта
(теоретически - значения сLсуб и Cсуб принадлежат верхним множествам cLоб и Cоб соответственно) ;
Правила наследования
В отношении атрибутов доступа действуют следующие правила наследования:
Если субъект создаёт объект, который может выступать в роли субъекта (например, процесс создаёт процесс),
то созданный объект полностью наследует мандатную метку родителя,
т.е. наследует и классификационную метку (уровень конфиденциальности и категории доступа),
и уровень целостности ;- Если субъект создаёт объект, который не может быть субъектом (например, процесс создаёт файл),
то созданный объект наследует только классификационную метку родителя,
т.е. наследует только уровень конфиденциальности и категории доступа,
и, независимо от уровня целостности родителя, всегда получает нулевой уровень целостности; Изменить классификационную метку объекта (т.е. изменить уровень конфиденциальности и/или категории доступа)
может только субъект c привилегией PARSEC_CAP_CHMAC;
- Изменить уровень целостности объекта
может только субъект с максимальным ("Высоким") уровнем целостности,
и с наличием привилегии PARSEC_CAP_CHMAC.