Модель Харрисона — Руззо — Ульмана

Модель Харрисона — Руззо — Ульмана (англ. Harrison–Ruzzo–Ullman model, HRU-модель) — одна из формальных моделей управления доступом субъектов (пользователей) к объектам, реализованная с помощью матрицы доступов. Названа в честь трёх её авторов: Майкла Харрисона, Уолтера Руззо и Джеффри Ульмана[1].

Описание модели

Введение

В современном мире одной из главных ценностей является информация, поэтому важнейшей задачей становится обеспечение её безопасности. Для этой цели были разработаны различные модели управления доступом, среди которых выделяется модель Харрисона — Руззо — Ульмана. Главная особенность этой модели — использование матрицы, полностью описывающей права пользователей к объектам. Изменения в права доступа вносятся с помощью специальных команд.

Описание состояния системы

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

undefined

 — множество субъектов,

 — множество объектов,

 — множество прав доступа.

Для реализации прав в модели используется матрица доступов , где строки соответствуют субъектам, а столбцы — объектам. На пересечении строки и столбца указаны права, которыми обладает данный субъект в отношении данного объекта. Текущее состояние системы можно представить как: [2].

Переходы между состояниями системы

Для осуществления перехода из в вводятся элементарные операции. В модели определено шесть операторов :[2]

  1. Добавление права в ячейку :
  2. Удаление права из ячейки :
  3. Создание нового субъекта :
  4. Создание нового объекта :
  5. Удаление субъекта :
  6. Удаление объекта :

Условия выполнения операций и новое состояние системы приведены в таблице:[3]

Оператор Условия выполнения Новое состояние системы

Любой переход может быть осуществлён с помощью команды следующего вида:[2]

command 
    if 
       
       
       
    then
         
         
         
         
end

Пример команды

Пример команды, являющейся комбинацией элементарных операций : создание файла пользователем и получение им права на чтение :[1]

command 
      
      
end

Системы в модели Харрисона — Руззо — Ульмана

Любая система в модели характеризуется матрицей доступа , конечным числом прав , объектов , субъектов и операций . Система называется монооперационной, если каждая команда выполняет лишь одну элементарную операцию [1].

Безопасность

Критерий безопасности системы

Для заданной системы исходное состояние называется безопасным относительно права , если не существует такой последовательности команд, которая могла бы изменить начальное состояние так, чтобы право появилось в ячейке , в которой оно отсутствовало в . В противном случае происходит утечка информации[3].

Теорема 1

Существует алгоритм, позволяющий проверить на безопасность исходное состояние монооперационной системы относительно права [3].

Доказательство

Для проверки безопасности исходного состояния по праву необходимо перебрать все возможные последовательности операций и убедиться в отсутствии утечки для любого конечного состояния. Количество возможных последовательностей ограничено, если число операций и объектов конечно. Таким образом, задача разрешима перебором для монооперационных систем. Максимальное число последовательностей операций можно вычислить по формуле [3].

Теорема 2

Определение безопасности произвольной (необязательно монооперационной) системы относительно права является неразрешимой задачей.[1]

Доказательство

Этот вывод базируется на сведении задачи проверки безопасности к задаче остановки машины Тьюринга, которая доказанно неразрешима.[1]

Преимущества и недостатки

Преимущества

  1. Простота и наглядность: для модели не требуются сложные алгоритмы.
  2. Эффективное управление: возможно управление правами с точностью до операции.
  3. Строгий критерий безопасности[4].

Недостатки

  1. Отсутствует алгоритм проверки безопасности для произвольной системы.
  2. Возможна атака с помощью троянских программ, так как модель не контролирует информационные потоки между субъектами[4].

Применение

Несмотря на отсутствие алгоритма проверки для произвольных систем, модель Харрисона — Руззо — Ульмана активно используется при формальной верификации корректности систем разграничения доступа в защищённых автоматизированных системах. Современное развитие моделей управления доступом во многом связано с построением различных модификаций HRU-модели и поиском условий, при которых задача проверки безопасности становится разрешимой[1][3].

Сравнение с аналогом

Аналогом HRU-модели является модель Белла — Лападулы, которая предусматривает разделение субъектов и объектов на уровни секретности и контроль потоков данных между ними. Субъект с меньшим уровнем секретности не сможет получить доступ к более секретному объекту. Модель Белла — Лападулы обеспечивает большую защищённость (не подвержена атакам троянских программ), но HRU-модель проще и эффективнее в управлении правами, поэтому обе находят своё применение.[4]

Примечания

  1. 1 2 3 4 5 6 Цирлов В.Л. Основы информационной безопасности автоматизированных систем. — Феникс, 2008. — P. 34. — ISBN 978-5-222-13164-0.
  2. 1 2 3 Harrison M., Ruzzo W., Ullman J. (Август 1976). “Protection in Operating Systems”. Communications of the ACM [англ.]. 19 (8): 461—471. Дата обращения 2024-06-30.
  3. 1 2 3 4 5 Девянин П.Н. Модели безопасности компьютерных систем. — Академия, 2005. — P. 19. — ISBN 5-7695-2053-1.
  4. 1 2 3 Гаценко О. Ю. Защита информации. Основы организационного управления.. — Сентябрь, 2001. — P. 34. — ISBN 5-94234-015-3.

Литература

Категории