logo
ИнфСборник по ЗИ и ИБ

Пространство отношений доступа к объектам вс.

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

RS={rsi. |i=1..N} —множество ресурсов ВС;

DS={dsj. |j=1..М} —множество данных ВС;

PS={psk |k=1..L} —множество программ ВС.

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

U={ui (rsi) |i=1..N } —множество отношений доступа к ресурсам;

R={rj {dsj) |j=1..М } —множество отношений доступа по чтению к данным;

W={wj.(dsj) | j=1..M}—множество отношений доступа по записи к данным;

E={ek (psk) |k=1 ..L } —множество отношений доступа по исполнению к программам.

Объединение этих множеств —множествоA=URWEпредставляет собой пространство отношений доступа, или полное множество отношений доступа к объектам ВС, которое потенциально может установить программа в данной ВС.

В процессе своего выполнения программа р устанавливает некоторое конкретное подмножество отношений АpА, состоящее из объединения подмножествUpp,Wpи Еp, гдеUpU,RpR,WpW, ЕpЕ. Очевидно, что состав множества А зависит от параметров, с которыми была запущена программа, ее интерактивного взаимодействия с пользователем и состояния ВС. Обозначим через Х вектор условий запуска программы (ее аргументы, параметры ВС и т. д.). Тогда p(Х)А, —множество отношений доступа программы р к объектам ВС при запуске в условиях X.

Объединение всех множеств p(X)по всем возможным Х образует множество

p*(X)=p(X),A,

– рабочее пространство программы р.

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

Как отмечалось в предыдущем разделе, отношения, устанавливаемые программой с объектами ВС, могут быть санкционированными и несанкционированными, легитимными и нелегитимными. Легитимность и санкционированность отношений зависит от назначения программы и условий конкретного запуска.

рассмотрим смысл этих понятий для всех типов отношений. Несанкционированный доступ означает, что программа пытается совершить действия, на которые она не имеет полномочий. Эти действия не допускаются политикой безопасности ВС и должны пресекаться системой разграничения доступа ВС. Нелегитимный доступ влечет за собой ущерб безопасности и/или целостности ВС. Как уже говорилось нелегитимный доступ является обобщением несанкционированного. Это означает, что множество легитимных отношений для программы р —£pявляется подмножеством санкционированных отношений Sp ,а множество нелегитимных (-£p)включает в себя множество несанкционированных (Sp).

Для реализации методов анализа безопасности актуальным является вопрос о разрешимости этих множеств. Множество М называется разрешимым, если существует алгоритм АM, который по любому объектуa дает ответ, принадлежитамножеству М или нет. Алгоритм АMназывается разрешающим алгоритмом.Заметим, что множество Spявляется разрешимым —в качестве разрешающего алгоритма выступает политика безопасности ВС и ее реализация в виде системы разграничения доступа. Вопрос о формальной разрешимости множества £pостается открытым, поскольку не существует механизма формальной оценки безопасности и целостности ВС.

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

Нелегитимный доступ

Тип отношений

Несанкционированный доступ

Нелегитимный, но санкционированный доступ

Использование ресурсов

Попытка использования ресурсов, недоступных для программы

Санкционированное расходование ресурсов, приводящее к нарушениям целостности и безопасности ВС

Чтение данных

Попытка обращения к данным, на доступ к которым полномочия у программы отсутствуют

Санкционированное обращение к данным, в результате которого нарушается безопасность ВС

Запись данных

Попытка модификации данных, на изменение которых полномочия у программы отсутствуют

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

Выполнение программ

Попытка выполнить программу, на выполнение которой полномочия у программы отсутствуют

Санкционированное выполнение программы (порождение процесса), в результате которого нарушается безопасность и/или целостность ВС