Открыть сервис

Мандатный доступ

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

История

Концепция мандатного доступа впервые была формализована в 1970-х годах в рамках модели безопасности Белла — Лападулы, разработанной для Министерства обороны США. Эта модель описывает систему, в которой субъекты и объекты имеют уровни безопасности (например, «несекретно», «секретно», «совершенно секретно»), а доступ разрешается только при соблюдении двух основных правил:

  • Простое свойство безопасности (Simple Security Property): Субъект может читать объект только в том случае, если его уровень безопасности не ниже уровня безопасности объекта (то есть субъект не может читать данные более высокого уровня секретности).
  • Свойство «звезда» (Star Property): Субъект может записывать в объект только в том случае, если его уровень безопасности не выше уровня безопасности объекта (то есть субъект не может записывать данные из секретной области в несекретную, предотвращая утечку).

В 1980-х годах концепция мандатного доступа была реализована в операционных системах, таких как Trusted Solaris (Sun Microsystems) и SELinux (Security-Enhanced Linux), разработанный Агентством национальной безопасности США. В России мандатный доступ регулируется нормативными документами Федеральной службы по техническому и экспортному контролю (ФСТЭК России), в частности, требованиями к системам защиты информации, обрабатывающим сведения, составляющие государственную тайну.

Принцип работы

Мандатный доступ реализуется через систему меток безопасности, которые присваиваются всем субъектам и объектам в системе. Метка безопасности обычно состоит из двух компонентов:

  1. Уровень секретности (иерархический): Определяет степень конфиденциальности информации (например, «несекретно», «для служебного пользования», «секретно», «совершенно секретно»). Уровни образуют иерархию, где каждый последующий уровень включает все предыдущие.
  2. Категории (неиерархические): Определяют тематические области, к которым относится информация (например, «ядерная физика», «военные технологии», «финансы»). Доступ к объекту возможен только в том случае, если субъект имеет все необходимые категории.

При попытке субъекта выполнить операцию (чтение, запись, выполнение) над объектом система сравнивает их метки безопасности. Решение принимается на основе правил, определённых политикой безопасности. В классической модели Белла — Лападулы это выглядит следующим образом:

  • Чтение: Разрешено, если уровень субъекта >= уровень объекта и категории субъекта включают категории объекта.
  • Запись: Разрешена, если уровень субъекта <= уровень объекта и категории субъекта включают категории объекта.

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

Классификация

Мандатный доступ может быть реализован в различных формах, в зависимости от конкретной модели безопасности:

  • Модель Белла — Лападулы: Классическая модель, ориентированная на конфиденциальность. Предотвращает утечку информации, но не защищает от изменения данных (целостность).
  • Модель Биба (Biba Model): Ориентирована на целостность данных. В этой модели субъект может читать объект только если его уровень целостности не выше уровня объекта, а записывать — только если его уровень целостности не ниже. Это предотвращает «заражение» данных высокого уровня целостности данными низкого уровня.
  • Модель Кларка — Уилсона (Clark-Wilson Model): Ориентирована на целостность и контроль транзакций. Использует понятия «преобразованные процедуры» (TP) и «наборы данных с ограниченным доступом» (CDI). Реализуется в системах обработки финансовых и коммерческих данных.
  • Модель ролевого доступа (RBAC) с мандатными элементами: В некоторых системах мандатный доступ комбинируется с ролевым, где метки безопасности привязываются не к отдельным пользователям, а к ролям, которые они выполняют.

Применение

Мандатный доступ используется в системах, где требуется строгая защита конфиденциальной информации:

  • Государственные и военные системы: Обработка сведений, составляющих государственную тайну. В России, например, системы, работающие с информацией уровня «секретно» и выше, обязаны реализовывать мандатный доступ в соответствии с требованиями ФСТЭК.
  • Корпоративные системы: Защита коммерческой тайны, интеллектуальной собственности, финансовых данных. Применяется в банках, страховых компаниях, крупных промышленных предприятиях.
  • Облачные вычисления: Обеспечение изоляции данных разных клиентов (мультитенантность) и предотвращение утечек между ними.
  • Операционные системы: SELinux, AppArmor (Linux), Windows Mandatory Integrity Control (MIC) — реализуют мандатный доступ на уровне ядра, ограничивая возможности процессов даже при наличии прав root или администратора.
  • Базы данных: Системы управления базами данных (СУБД) с поддержкой мандатного доступа (например, Oracle Label Security, IBM DB2 Label-Based Access Control) позволяют разграничивать доступ к строкам и столбцам таблиц на основе меток безопасности.

Примеры

  • SELinux (Security-Enhanced Linux): Реализует мандатный доступ на основе политик, которые определяют, какие процессы могут обращаться к каким файлам, сокетам, портам и другим ресурсам. Политики могут быть строгими (всегда запрещено, если не разрешено явно) или целевыми (ограничивают только определённые процессы).
  • Windows Mandatory Integrity Control (MIC): В операционных системах Windows начиная с Vista используется мандатный контроль целостности. Каждому процессу и объекту присваивается уровень целостности (низкий, средний, высокий, системный). Процесс с низким уровнем не может записывать в объект со средним уровнем, что предотвращает повреждение системных файлов вредоносным ПО.
  • Oracle Label Security: Расширение СУБД Oracle, позволяющее назначать метки безопасности строкам таблиц и пользователям. Пользователь может видеть только те строки, метки которых соответствуют его полномочиям.

Критика

Мандатный доступ имеет ряд недостатков:

  • Сложность управления: Требует тщательного проектирования иерархии уровней секретности и категорий, а также постоянного обновления меток при изменении контекста. Ошибки в настройке могут привести к блокировке легитимных операций или к утечкам.
  • Негибкость: Жёсткие правила могут мешать выполнению некоторых бизнес-процессов, требующих временного повышения или понижения уровня доступа.
  • Высокая стоимость внедрения: Требует специализированного программного обеспечения, обучения персонала и аудита.
  • Проблема «звёздочки» (Star Property): В классической модели Белла — Лападулы субъект не может записывать данные на уровень ниже своего, что может затруднять совместную работу, когда информация должна быть передана на более низкий уровень после проверки.

Интересные факты

  • Мандатный доступ является обязательным требованием для систем, обрабатывающих информацию, составляющую государственную тайну, во многих странах, включая Россию, США, Китай и страны Европейского союза.
  • В России требования к системам мандатного доступа определены в «Руководящем документе. Автоматизированные системы. Защита от несанкционированного доступа к информации. Классификация автоматизированных систем и требования по защите информации» (ФСТЭК России).
  • Концепция мандатного доступа используется не только в компьютерных системах, но и в некоторых физических системах безопасности, например, в системах контроля доступа в помещения с разными уровнями секретности.

Источники

  • Bell, D. E., & LaPadula, L. J. (1976). Secure Computer System: Unified Exposition and Multics Interpretation. MITRE Corporation.
  • ФСТЭК России. Руководящий документ. Автоматизированные системы. Защита от несанкционированного доступа к информации. Классификация автоматизированных систем и требования по защите информации.
  • Sandhu, R. S. (1993). Lattice-based access control models. IEEE Computer, 26(11), 9-19.
  • Smalley, S., Vance, C., & Salamon, W. (2001). Implementing SELinux as a Linux Security Module. NSA.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →