Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ТИБиМЗИ-Л7_2012.doc
Скачиваний:
65
Добавлен:
13.11.2019
Размер:
988.67 Кб
Скачать

3.2. Модель безопасности Мак-Лина (безопасная функция перехода)

Недостаток основной теоремы безопасности Белла-ЛаПадула со­стоит в

том, что ограничения, накладываемые теоремой на функцию пе­рехода, совпадают с критериями безопасности состояния, поэтому данная теорема является избыточной по отношению к определению безопасного состояния. Кроме того, из теоремы следует только то, что все состояния, достижимые из безопасного состояния при определенных ограничения, будут в некотором смысле безопасны, но при этом не гарантируется, что они будут достигнуты без потери свойства безопасности в процессе осу­ществления перехода. Так как нет никаких определенных огра­ничений на вид функции перехода, кроме указанных в условиях теоремы, и допускается, что уровни безопасности субъектов и объектов могут из­меняться, то можно представить такую гипотетическую систему (она по­лучила название Z-системы), в которой при попытке низкоуровневого субъекта прочитать информацию из высокоуровневого объекта будет происходить понижение уровня объекта до уровня субъекта и осуществ­ляться чтение. Функция перехода Z-системы удовлетворяет ограничениям основной теоремы безопасности, и все состояния такой системы также являются безопасными в смысле критерия Белла-ЛаПадулы, но вместе с тем в этой системе любой пользователь сможет прочитать любой файл, что, очевидно, несовместимо с безопасностью в обычном понимании.

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

Такую интерпретацию мандатной модели осуществил Мак-Лин, предложивший свою формулировку основной теоремы безопасности, основанную не на понятии безопасного состояния, а на понятии безопасно­го перехода.

При таком подходе функция уровня безопасности представ­ляется с помощью двух функций, определенных на множестве субъектов и объектов: Fs:SL и Fo: OL.

Функция перехода Т считается безопасной по чтению, если для лю­бого перехода T(r, v) = v*, выполняются следующие три условия:

  1. если read M[s, o] и read M [s, o] то: Fs(s) Fo(o) и F=F;

  2. если FsFs то: M = M,

Fo = Fo,

для s и o, для которых Fs(s) Fo(o), read M [s, o];

  1. если Fo Fo то: M = M,

Fs = Fs,

для s и o, для которых Fs(s) Fo(o), read M [s, o];

Функция перехода Т считается безопасной по записи, если для лю­бого перехода T(r, v) = v*, выполняются следующие три условия:

  1. если write M[s, o] и write M [s, o] то: Fo(o) Fs(s) и F=F;

  2. если Fs Fs то: M = M,

Fo = Fo,

для s и o, для которых Fs(s) Fo(o), write M [s, o];

3) если Fo Fo то: M = M,

Fs = Fs,

для s и o, для которых Fs(s) Fo(o), write M [s, o].

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

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

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

Так как безопасный переход из состояния v в состояние v* позволяет изменяться только одному элементу из v и так как этот элемент может быть изменен только способами, сохраняющими безопасность со­стояния, была доказана следующая теорема о свойствах безопасной сис­темы:

Теорема безопасности Мак-Лина:

Система безопасна в любом со­стоянии и в процессе переходов между ними, если ее начальное состояние является безопасным, а ее функция перехода удовлетворяет критерию Мак-Лина.

Обратное утверждение неверно. Система может быть безопасной по определению Белла-ЛаПадулы, но не иметь безопасной функции пере­хода, о чем свидетельствует рассмотренный пример Z-системы.

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

Уполномоченные субъекты.

Формулировка основной теоремы безопасности в интерпретации Мак-Лина позволяет расширить область ее применения по сравнению с классической теоремой Белла-ЛаПадула, однако, используемый критерий безопасности перехода не всегда соответствует требованиям контроля доступа, возникающим на практике.

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

инициировать переходы, в результате которых у сущностей системы изменяются уровни безопасности. Система с уполномоченными субъектами также описывается множествами S, О и L, смысл которых совпадает с аналогичными понятиями модели Белла-ЛаПадула, а ее состояние также описывается набором упорядоченных пар (F, M), причем функция перехода F и матрица отношений М доступа играют ту же роль. Новым элементом модели является функция управления уровнями C: SO (S) (здесь и далее (S) обозначает множество всех подмножеств S). Эта функция определяет подмножество субъектов, которым позволено изменять уровень безопасности, для заданного объекта или субъекта. Модель системы (v0,R,Ta) состоит из начального состояния vo множества запросов R и функции перехода Ta, которая переводит систему из состояния в состояние по мере выполнения запросов. Но теперь у функции перехода, которая определяет следующее состояние системы после выполнения определенным субъектом некоторого запроса, появился еще один аргумент — субъект, от которого исходит этот запрос, поскольку результат перехода зависит от того, какой субъект его инициировал: Ta:(SVR)v. Как и прежде система, находящаяся в состоянии vV, при получении запроса rR, от субъекта sS переходит из состояния v в состояние v*=Ta(s, v, r).

Функция перехода в модели с уполномоченными субъектами Та называется авторизованной функцией перехода тогда и только тогда, когда для каждого перехода Ta(s, v, r) = v*, при котором v=(F, M) и v*=(F*, M*) выполняется следующее условие:

для xSO : если F*(х) F(х), то sC(x).

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]