logo
ТОКБ

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

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

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

В соответствии с этим отображением каждый объект объявляется собственностью соответствующего пользователя. Пользователь, являющийся собственником объекта, имеет все права доступа к нему, а иногда и право передавать часть или все права другим пользователям. Кроме того, собственник объекта определяет права доступа других субъектов к этому объекту, то есть политику безопасности в отношении этого объекта. Указанные права доступа записываются в виде матрицы доступа, элементы которой - суть подмножества множества 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. После этого хозяин U2 объекта О2, пользуясь всеми правами, имеет возможность считать из O2 ценную информацию объекта О1.

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

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