Мандатный контроль целостности#

Примечание

Термин «мандатный»» означает обязательный, необходимый, принудительный.

Примечание

Термин «целостность»» означает состояние информации, при котором отсутствует любое ее изменение либо изменение осуществляется только преднамеренно субъектами, имеющими на него право (ГОСТ Р 50922-2006).

Мандатный контроль целостности (МКЦ) обеспечивает защиту от эксплуатации вредоносного ПО путем ограничения возможностей суперпользователя.

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

С одной стороны, наличие суперпользователя необходимо для администрирования системы (установки, удаления и настройки компонентов ПО), но с другой стороны, именно суперпользователь становится главной мишенью нарушителя, так как получение прав суперпользователя дает полный контроль над системой.

В целях ограничения возможностей суперпользователя и повышения защищенности от эксплуатации вредоносного ПО, в СЗИ PARSEC ОС СН Astra Linux Special Edition реализован мандатный контроль целостности.

Реализация МКЦ основана на метках целостности, присваиваемых субъектам (пользователям, процессам) и сущностям (файлам, каталогам).

Метка целостности включает:

  • иерархический уровень целостности, реализованный в виде числа со знаком длиной 1 байт и диапазоном значений от -128 до 127;

  • неиерархическую категорию целостности, реализованную в виде 32-битной маски, беззнаковой величины (uint32_t).

При установке ОС по умолчанию предлагается максимальная категория целостности max_ilev, равная 63 (битовая маска 00111111), и минимальная категория целостности, равная нулю. Диапазон значений допустимых категорий целостности при необходимости может быть изменен после установки ОС.

МКЦ охватывает следующие компоненты:

  • межпроцессное взаимодействие IPC;

  • стек TCP/IP (IPv4, IPv6);

  • файловые системы ext2/ext3/ext4/XFS;

  • сетевые файловые системы CIFS, OCFS2, Ceph;

  • файловые системы proc, tmpfs.

Метка целостности присваивается каждому пользователю при входе в сеанс.

Обычным, непривилегированным пользователям при входе в сеанс присваивается нулевая метка целостности (битовая маска 00000000).

Администратору, создаваемому при установке ОС, при входе в сеанс присваивается метка с максимальной категорией целостности 63 (битовая маска 00111111).

При функционировании ОС МКЦ обеспечивает целостность информации путем запрета модификации сущностей (файлов, каталогов) с ненулевой меткой целостности субъектами (пользователями, процессами) с более низкой меткой целостности, как показано на рисунке 1.

../../../_images/mkc_1.jpg

Рисунок 1 - Разграничение доступа средствами МКЦ#

Ограничение возможностей суперпользователя средствами МКЦ обеспечивается за счет того, что нарушитель, сумевший проэксплуатировать уязвимость, получит права суперпользователя с нулевой или низкой меткой целостности, которой будет недостаточно для изменения высокоцелостных компонентов, как показано на рисунке 2.

../../../_images/mkc_2.jpg

Рисунок 2 - Ограничение возможностей суперпользователя средствами МКЦ#

В целях обеспечения возможности изменения правил назначения меток целостности или изменения значений уже созданных меток целостности, в ОС СН Astra Linux Special Edition реализованы PARSEC-привилегии, которые могут быть присвоены субъектам и позволяют изменить порядок назначения меток целостности и предоставления доступа на чтение, исполнение и запись.

Совет

Подробнее об МКЦ можно узнать в Эксплуатационной документации на ОС СН Astra Linux Special Edition в Руководстве по КСЗ.