Мандатный контроль целостности#
Примечание
Термин «мандатный»» означает обязательный, необходимый, принудительный.
Примечание
Термин «целостность»» означает состояние информации, при котором отсутствует любое ее изменение либо изменение осуществляется только преднамеренно субъектами, имеющими на него право (ГОСТ Р 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.
Ограничение возможностей суперпользователя средствами МКЦ обеспечивается за счет того, что нарушитель, сумевший проэксплуатировать уязвимость, получит права суперпользователя с нулевой или низкой меткой целостности, которой будет недостаточно для изменения высокоцелостных компонентов, как показано на рисунке 2.
В целях обеспечения возможности изменения правил назначения меток целостности или изменения значений уже созданных меток целостности, в ОС СН Astra Linux Special Edition реализованы PARSEC-привилегии, которые могут быть присвоены субъектам и позволяют изменить порядок назначения меток целостности и предоставления доступа на чтение, исполнение и запись.
Совет
Подробнее об МКЦ можно узнать в Эксплуатационной документации на ОС СН Astra Linux Special Edition в Руководстве по КСЗ.