Модель Белла — ЛаПадулы
Модель Белла — ЛаПадулы — это формальная модель управления доступом, основанная на мандатной политике безопасности, предназначенная для защиты конфиденциальной информации в компьютерных системах. Модель была разработана в 1973 году Дэвидом Беллом и Леонардом ЛаПадулой для Министерства обороны США и стала одной из первых и наиболее влиятельных формальных моделей безопасности, заложившей основы для построения защищённых систем, обрабатывающих данные с различными уровнями секретности.
История создания
В начале 1970-х годов, на фоне активного развития компьютерных сетей и систем обработки данных в военных и государственных структурах США, остро встала проблема защиты конфиденциальной информации. Существовавшие на тот момент дискреционные модели управления доступом (например, матрица доступа) не обеспечивали достаточного контроля над потоками информации и не могли гарантировать, что пользователь с более низким уровнем допуска не получит доступ к данным более высокого уровня секретности.
В 1973 году сотрудники компании MITRE Corporation Дэвид Белл и Леонард ЛаПадула опубликовали технический отчёт «Secure Computer Systems: Mathematical Foundations», в котором впервые была представлена математическая модель, описывающая мандатное управление доступом. Модель была разработана в рамках проекта по созданию защищённой операционной системы для ВВС США. Впоследствии она была доработана и формализована, а в 1975 году вышла расширенная версия отчёта, ставшая классической работой в области компьютерной безопасности.
Основные понятия и определения
Модель Белла — ЛаПадулы оперирует несколькими ключевыми понятиями, которые формализуют мандатную политику безопасности.
Субъекты и объекты
В модели выделяются два основных типа сущностей:
- Субъекты — активные сущности, инициирующие доступ к информации. Обычно это пользователи, процессы или программы, действующие от имени пользователей.
- Объекты — пассивные сущности, содержащие информацию. К ним относятся файлы, записи в базах данных, сегменты памяти, устройства и другие ресурсы.
Уровни секретности и классификация
Каждому субъекту и объекту присваивается метка безопасности, состоящая из двух компонентов:
- Уровень секретности (или уровень допуска) — иерархический компонент, определяющий степень конфиденциальности. Обычно используется шкала: «несекретно», «секретно», «совершенно секретно» и т.д. Чем выше уровень, тем более чувствительны данные.
- Категория (или набор категорий) — неиерархический компонент, представляющий собой множество атрибутов (например, «ядерные исследования», «военная разведка», «финансовый отдел»), которые дополнительно ограничивают доступ.
Совокупность уровня секретности и набора категорий образует класс безопасности. Для субъекта этот класс называется уровнем допуска, для объекта — грифом секретности. Классы безопасности частично упорядочены: класс A доминирует над классом B, если уровень секретности A не ниже уровня B, а набор категорий A включает набор категорий B.
Правила управления доступом
Модель Белла — ЛаПадулы определяет два фундаментальных правила, которые регулируют все операции чтения и записи информации между субъектами и объектами.
Правило простой безопасности (Simple Security Property)
Субъект может читать объект только в том случае, если его уровень допуска доминирует над грифом секретности объекта. Иными словами, пользователь с более высоким уровнем допуска может читать данные с более низким или равным уровнем секретности, но не наоборот. Это правило предотвращает утечку информации «сверху вниз» — от более секретных данных к менее секретным.
Правило «звёздочка» (Star Property, или *-property)
Субъект может записывать информацию в объект только в том случае, если гриф секретности объекта доминирует над уровнем допуска субъекта. То есть пользователь может записывать данные только в объекты с уровнем секретности, равным или более высоким, чем его собственный. Это правило предотвращает случайную или намеренную запись секретных данных в объекты с более низким грифом, что могло бы привести к разглашению конфиденциальной информации.
Дополнительно существует правило сильной «звёздочки» (Strong *-property), которое требует, чтобы при записи гриф объекта был строго равен уровню субъекта. Однако на практике чаще используется ослабленный вариант, допускающий запись в объекты с более высоким грифом.
Комбинация правил
Совместное применение этих двух правил гарантирует, что информация может перемещаться только «вверх» или оставаться на том же уровне, но никогда не перемещается «вниз» по иерархии секретности. Это свойство называется безопасным потоком информации. Субъект может читать данные с более низких уровней и записывать результат на свой уровень или выше, но не может понизить гриф обработанной информации.
Формальное описание
Математически модель Белла — ЛаПадулы представляется как система, состоящая из множества субъектов \(S\), множества объектов \(O\), множества прав доступа \(A\) (обычно включающего чтение \(r\) и запись \(w\)), и функции классификации \(f\), которая каждому субъекту и объекту ставит в соответствие класс безопасности. Состояние системы считается безопасным, если для любой пары (субъект, объект) выполняются правила простой безопасности и «звёздочка».
Безопасность системы доказывается с помощью индуктивных рассуждений: если начальное состояние безопасно, и каждое последующее преобразование (операция доступа) выполняется в соответствии с правилами, то система остаётся в безопасном состоянии. Это свойство называется сохранением безопасности (security preservation).
Применение и реализация
Модель Белла — ЛаПадулы стала основой для разработки многих защищённых операционных систем и систем управления базами данных, особенно в военной и государственной сферах. На её основе были построены такие системы, как:
- Multics — одна из первых многопользовательских операционных систем, реализовавшая мандатное управление доступом.
- SE Linux (Security-Enhanced Linux) — модуль безопасности для ядра Linux, реализующий мандатное управление доступом, частично основанное на принципах модели Белла — ЛаПадулы.
- Windows Mandatory Integrity Control — механизм, встроенный в операционные системы Microsoft Windows, начиная с Vista, который использует аналогичные принципы для контроля целостности.
Кроме того, модель легла в основу стандартов безопасности, таких как «Оранжевая книга» (Trusted Computer System Evaluation Criteria, TCSEC) Министерства обороны США, где системы классифицировались по уровням безопасности от D до A1. Системы класса B и выше обязательно должны были поддерживать мандатное управление доступом по модели Белла — ЛаПадулы.
Критика и ограничения
Несмотря на свою фундаментальную роль, модель Белла — ЛаПадулы имеет ряд существенных ограничений, которые были выявлены в ходе её практического применения.
- Ориентация только на конфиденциальность. Модель не учитывает другие аспекты безопасности, такие как целостность данных и доступность. Она не предотвращает несанкционированное уничтожение или модификацию информации, а также не защищает от атак типа «отказ в обслуживании».
- Узкий спектр операций. Модель рассматривает только операции чтения и записи, игнорируя другие виды доступа (например, выполнение, удаление, создание). Это делает её неприменимой для систем, где требуются более сложные операции.
- Проблема троянских коней. Модель не защищает от вредоносного кода, который, будучи запущенным от имени субъекта с высоким уровнем допуска, может записать секретные данные на более высокий уровень. Хотя правило «звёздочка» предотвращает утечку вниз, оно не блокирует запись вверх, что может быть использовано для скрытого канала.
- Сложность администрирования. Поддержание актуальных меток безопасности для большого количества субъектов и объектов требует значительных административных усилий. Ошибки в классификации могут привести к уязвимостям.
- Неприменимость к динамическим средам. Модель предполагает статическое присвоение уровней секретности, что затрудняет её использование в системах с временными или контекстно-зависимыми политиками доступа.
В ответ на эти ограничения были разработаны другие модели, такие как модель Биба (ориентированная на целостность), модель Кларка — Уилсона (для коммерческих систем) и модель Chinese Wall (для предотвращения конфликта интересов). Тем не менее, модель Белла — ЛаПадулы остаётся классической основой для понимания мандатного управления доступом и изучается в курсах компьютерной безопасности во всём мире.
Интересные факты
- Название модели часто сокращается до «модель BLP» (Bell-LaPadula).
- Первоначальная публикация 1973 года была техническим отчётом, который не получил широкой известности до выхода расширенной версии в 1975 году.
- Модель была разработана для защиты информации в системах с многоуровневой безопасностью (MLS), где одновременно обрабатываются данные разных уровней секретности.
- В 1970-х годах модель подверглась критике со стороны некоторых экспертов, которые утверждали, что она слишком сложна для практической реализации. Однако последующие успешные внедрения (например, в Multics) опровергли эти сомнения.
Источники
- Bell, D. E., & LaPadula, L. J. (1973). Secure Computer Systems: Mathematical Foundations. MITRE Corporation.
- Bell, D. E., & LaPadula, L. J. (1975). Secure Computer Systems: Unified Exposition and Multics Interpretation. MITRE Corporation.
- Gasser, M. (1988). Building a Secure Computer System. Van Nostrand Reinhold.
- Bishop, M. (2003). Computer Security: Art and Science. Addison-Wesley.
- Trusted Computer System Evaluation Criteria (TCSEC), Department of Defense, 1985.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →