Дискреционная политика.



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

Пусть О - множество объектов, S - множество субъектов, SÍO. Пусть U={U1,...,Um} - множество пользователей. Определим отображение: own: 0àU.

В соответствии с этим отображением каждый объект объявляется собственностью соответствующего пользователя. Пользователь, являющийся собственником объекта, имеет все права доступа к нему, а иногда и право передавать часть или все права другим пользователям. Кроме того, собственник объекта определяет права доступа других субъектов к этому объекту, то есть политику безопасности в отношении этого объекта. Указанные права доступа записываются в виде матрицы доступа, элементы которой - суть подмножества множества R, определяющие доступы субъекта S, к объекту 0i(i = 1, 2,...,; j = 1, 2,...).

Существует несколько вариантов задания матрицы доступа.

1. Листы возможностей: Для каждого субъекта Si создается лист (файл) всех объектов, к которому имеет доступ данный объект.

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

Дискреционная политика связана с исходной моделью таким образом, что траектории процессов в вычислительной системе ограничиваются в каждом доступе. Причем вершины каждого графа разбиваются на классы и доступ в каждом классе определяется своими правилами каждым собственником. Множество неблагоприятных траекторий N для рассматриваемого класса политик определяется наличием неблагоприятных состояний, которые в свою очередь определяются запретами на некоторые дуги. Дискреционная политика, как самая распространенная, большe всего подвергалась исследованиям. Существует множество разновидностей этой политики. Однако многих проблем защиты эта политика решить не может. Одна из самых существенных слабостей этого jкласса политик - то, что они не выдерживают атак при помощи "Троянского коня". Это означает, в частности, что система защиты, реализующая дискреционную политику, плохо защищает от проникновения вирусов в систему и других средств скрытого разрушающего воздействия. Покажем на примере принцип атаки "Троянским конем" в случае дискреционной политики.

Пример 1. Пусть U1 - некоторый пользователь, а U2 - пользователь-злоумышленник, О1 - объект, содержащий ценную информацию, O2 - программа с "Троянским конем" Т, и М - матрица доступа, которая имеет вид:

Проникновение программы происходит следующим образом. Злоумышленник U2 создает программу О2 и, являясь ее собственником, дает U1 запускать ее и писать в объект О2 информацию. После этого он инициирует каким-то образом, чтобы U1 запустил эту программу (например, О2 - представляет интересную компьютерную игру, которую он предлагает U1 для развлечения). U1 запускает О2 и тем самым запускает скрытую программу Т, которая обладая правами U1 (т.к.была запущена пользователем U1), списывает в себя информацию, содержащуюся в О1. После этого хозяин U 2 объекта О2, пользуясь всеми правами, имеет возможность считать из O2 ценную информацию объекта О1.

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

Одна из важнейших проблем при использовании дискреционной политики - это проблема контроля распространения прав доступа. Чаще всего бывает,что владелец файла передает содержание файла другому пользователю и тот, тем самым, приобретает права собственника на информацию. Таким образом, права могут распространяться, и даже, если исходный владелец не хотел передавать доступ некоторому субъекту S к своей информации в О, то после нескольких шагов передача прав может состояться независимо от его воли. Возникает задача об условиях, при которых в такой системе некоторый субъект рано или поздно получит требуемый ему доступ. Эта задача иследовалась в модели "take-grant", когда форма передачи или взятия прав определяются в виде специального права доступа (вместо own). Некоторые результаты этих исследований будут приведены в главе "Математические методы анализа политики безопасности".

 

Политика MLS.

Многоуровневая политика безопасности (политикаMLS) принята всеми развитыми государствами мира. В повседневном секретном делопроизводстве госсектор России также придерживается этой политики.

Решетка ценностей SC, введенная в параграфе 1.3 является основой политики MLS. Другой основой этой политики является понятие информационного потока (см. 1.4). Для произвольных объектов X и Y пусть имеется информационный поток Х->aY, где X -источник, Y - получатель информации. Отображениес: O->SC считается заданным. Если c(Y)>c(X), то Y -более ценный объект, чем X.

Определение. Политика MLS считает информационный поток Х->Y разрешенным тогда и только тогда, когда c(Y)>c(X) в решетке SС.

Таким образом, политика MLS имеет дело с множеством информационных потоков в системе и делит их на разрешенные и неразрешенные очень простым условием. Однако эта простота касается информационных потоков, которых в системе огромное количество. Поэтому приведенное выше определение неконструктивно. Хотелось бы иметь конструктивноеопределение на языке доступов. Рассмотрим класс систем с двумя видами доступов r и w (хотя могут быть и другие доступы, но они либо не определяют информационных потоков, либо выражаются через w и r). Пусть процесс S в ходе решения своей задачипоследовательно обращается к объектам О12,...,Оn (некоторые из них могут возникнуть в ходе решения задачи). Пусть

(1)

Тогда из параграфа 1.3 следует, что при выполнении условий c(S)>c(Oit), t=l,....k, соответствующие потоки информации будут идти в разрешенном политикой MLS направлении, а при c(S)<c(Ojt), t=l,.., п-k, потоки,определяемые доступом w, будут идти в разрешенном направлении. Таким образом, в результате выполнения задачи процессом S, информационные потоки, с ним связанные, удовлетворяют политике MLS. Такого качественного анализа оказывается достаточно, чтобы классифицировать почти все процессы и принять решение о соблюдении или нет политики MLS. Если где-то политика MLS нарушается, то соответствующий доступ не разрешается. Причем разрешенность цепочки (1) вовсе не означает, что субъект S не можетсоздать объект О такой, что c(S)>c(0). Однако он не может писать туда информацию. При передаче управления поток информации от процесса S или к нему прерывается (хотя в него другие процессы могут записывать или считывать информацию как в объект). При этом, если правила направления потока при r и w выполняются, то MLS соблюдается, если нет, то соответствующий процесс не получает доступ. Таким образом, мы приходим к управлению потоками через контроль доступов. В результате для определенного класса систем получим конструктивное описание политики MLS.

Определение. В системе с двумя доступами r и w политика MLS определяется следующими правилами доступа

Структура решетки очень помогает организации поддержки политики MLS. В самом деле, пусть имеется последовательная цепочка информационных потоков

Если каждый из потоков разрешен, то свойства решетки позволяют утверждать, что разрешен сквозной поток . Действительно, если информационный поток на каждом шаге разрешен, то , тогда по свойству транзитивности решетки , то есть сквозной поток разрешен.

MLS политика в современных системах защиты реализуется через мандатный контроль (или, также говорят, через мандатную политику). Мандатный контроль реализуется подсистемой защиты на самом низком аппаратно-программном уровне, что позволяет эффективно строить защищенную среду для механизма мандатного контроля. Устройство мандатного контроля, удовлетворяющее некоторым дополнительным, кроме перечисленных, требованиям, называется монитором обращений. Мандатный контроль еще называют обязательным, так как его проходит каждое обращение субъекта к объекту, если субъект и объект находятся под защитой системы безопасности. Организуется мандатный контроль следующим образом. Каждый объект О имеет метку с информацией о классе c(O). Каждый субъект также имеет метку, содержащую информацию о том, какой класс доступа c(S) он имеет. Мандатный контроль сравнивает метки и удовлетворяет запрос субъекта S к объекту О на чтение, если c(S)>c(0) и удовлетворяет запрос на запись, если c(S)<c(0). Тогда согласно изложенному выше мандатный контроль реализует политику MLS.

Политика MLS устойчива к атакам "Троянским конем". На чем строится защита от таких атак поясним на примере, являющимся продолжением примера1 из параграфа 3.2.

Пример 1. Пусть пользователи U1 и U2 находятся на разных уровнях, то есть c(U1)>c(U2). Тогда, если U1 может поместить в объект О1 ценную информацию, то он может писать туда и c(U2)<c(U1)<c(01), то есть с(U2)<с(01). Тогда любой "Троянский конь" Т, содержащийся в объекте O2, который может считать информацию в О1, должен отражать соотношение

.

Тогда c(O2)>c(U2) и пользователь U2 не имеет право прочитать в O2, что делает съем в О1 и запись в O2 бессмысленным.

Несколько слов о реализации политики безопасности MLS в рамках других структур, внесенных в информацию. Опять обратимся к примеру реляционной базы данных. Пусть структура РМ и структура решетки ценностей MLS согласованы, как это было сделано в параграфе 1.6. Пусть в системе реализован мандатный контроль, который при обращении пользователя U к базе данных на чтение позволяет извлекать и формировать "обзор" только такой информации, класс которой <c(U). Процедура генерации такого "обзора" была описана в параграфе 1.6. Аналогично, мандатный контроль и правила декомпозиции позволяют поддерживать в нужном направлении информационные потоки в процессе функционирования базы данных. В результате получаем, что при наличии мандатного контроля построенная в 1.6 реляционная многоуровневая база данных поддерживает политику MLS.

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

Пример 2. (Политика целостности Biba). Предположим, что опасности для нарушения секретности не существует, а единственная цель политики безопасности - защита от нарушений целостности информации. Пусть, по-прежнему, в информацию внесена решетка ценностей SC. В этой связи любой информационный поток X -> Y может воздействовать на целостность объекта Y и совершенно не воздействовать на целостность источника X. Если в Y более ценная информация, чем в X, то такой поток при нарушении целостности Y принесет более ощутимый ущерб, чем поток в обратном направлении от более ценного объекта Y к менее ценному X. Biba предложил в качестве политики безопасности для защиты целостности следующее.

Определение. В политике Biba информационныйпоток X -->aY разрешен тогда и только тогда, когда

Можно показать, что в широком классе систем эта политика эквивалентна следующей.

Определение. Для систем с доступами w и r политика Biba разрешает доступ в следующих случаях:

Очевидно, что для реализации этой политики также подходит мандатный контроль.

 


Дата добавления: 2016-01-05; просмотров: 19; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!