Курс лекций Защита Информации/Модель Харрисона-Рузза-Ульмана

Курс лекций Защита Информации/Текст с двух сторон Модель Харрисона-Руззо-Ульмана является классической дискреционной моделью, реализует произвольное управление доступом субъектов к объектам и контроль за распределение прав доступа в рамках этой модели.

Субъектно-объектный взглядПравить

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

Пространство состояний системыПравить

Эволюция системы в модели представляет собой траектории в пространстве состояний. Пространство состояний системы образуется в декартовом произведении множеств, составляющих ее субъектов, объектов и прав доступа. Текущее состояние   - множества в этом пространстве определяется тройкой, состоящей из множества субъектов  , объектов   и матрицы прав доступа  , описывающая текущие права доступа субъектов   к объектам  . Строки матрицы составляют субъекты  , а столбцы - объекты  .

Любая ячейка матрицы   содержит набор прав субъекта   к объекту  , принадлежащий множеству прав доступа  .

Поведение системы во времени моделируется переходами между различными состояниями. Переход осуществляется путем внесения изменений в матрицу   с помощью команд вида:

      
        
        
       ...
        
    
        

где:

  •   - имя команды;
  •   - параметры команд,. являющиеся идентификаторами субъектов и объектов;
  •   и   - индексы субъектов и объектов;
  •   - элементарная операция.

Элементарная операция, составляющая команду, выполняется только в том случае, если все условия, означающие присутствие указанных прав доступа в ячейках матрицы   являются истинными.

Элементарные операцииПравить

В классической модели допустимы только 6 элементарных операций:

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  

Применение любой элементарной операции в системе, находящейся в состоянии  , влечет за собой переход в другое состояние  , которое отличается от состояния   по крайней мере одним компонентом.

  •  
    
        
        
         если  
        
  •  
    
        
        
         если  
        
  •  
    
        
        
         для  
         для  
  •  
    
        
        
         для  
         для  
         для  
  •  
    
        
        
         для  
  •  
    
        
        
         для  

Поведение системы во времени моделируется с помощью последовательности состояний  , в которой каждое последующее состояние является результатом применения некоторой команды из множества   к предыдущему состоянию:

 

Каждое состояние определяется отношением доступа, которое существует между сущностями системы в виде множеств субъектов, объектов и матрицы прав. Поскольку для обеспечения безопасности необходимо наложить запрет на некоторые отношения доступа для заданного начального состояния системы, должна существовать возможность определить множество состояний, в которых она сможет из него попасть. Это позволит задавать такие начальные условия, при которых система никогда не сможет попасть в нежелательное состояние с точки зрения безопасности. Следовательно, для построения системы с предсказуемым поведением, необходимо для задания начальных условий получить ответ на вопрос: сможет ли некоторый субъект   когда-либо приобрести права доступа   для некоторого объекта  . Исходя из изложенного критерия безопасности в модели Харрисона-Руззо-Ульмана для заданной системы начальное состояние   является безопасным относительно права  , если не существует приминимая к   последовательность команд, в результате которой право   будет занесено в ячейку матрицы  , в которой оно отсутствовало в состоянии  .

Смысл данного критерия состоит в том, что для безопасной конфигурации системы субъект   никогда не получит права доступа   к объекту  , если он не имел его изначально. Запрет внесения права   в ячейку матрицы не является решением задачи, в силу того, что удаление субъекта или объекта приводит к уничтожению всех прав в соответствующей строке или столбце матрицы, но не влечет за собой уничтожение самого столбца или строки и сокращения размеров матрицы. Следовательно, если в какой-либо ячейке в начальном состоянии существовало право   и после удаления субъекта или объекта, к которому относилось это право, ячейка будет очищена, но впоследствии в результате создания субъекта или объекта появиться вновь и в эту ячейку с помощью команды   снова будет занесено право  , то это не будет означать нарушение безопасности. Доказано, что в общем случае не существует алгоритма, который может для любой системы, ее начального состояния   и общего права   решить является ли данная конфигурация безопасной. Для того, чтобы можно было доказать сформулированный критерий модель должна иметь ряд ограничений. Задача является разрешимой в одном из следующих случаев:

  1. Команда   является монооперационной, то есть состоит не более чем из одной операции.
  2. Команда   является одноусловной или монотонной, то есть содержит не более одного условия и не содержит операций   и  .
  3. Команда   не содержит операции  .

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

Кроме того, все дискреционные модели уязвимы к атакам типа троянского коня, поскольку в модели вписан контроль операций доступа субъектов к объектам, но не поток между объектами.

Основные преимущества:

  • простота;
  • наглядность;
  • возможность формального доказательства.

Недостатки:

  • очень трудно администрировать.

Курс лекций Защита Информации/Текст с двух сторон