Формальные модели безопасности

Автор работы: Пользователь скрыл имя, 20 Ноября 2012 в 15:48, реферат

Краткое описание

Свойство, характерное как для одной, так и для другой технологии анализа безопасности ИИС, выражаются путём группирования схожих реакций системы (cигнатур) так, что для рассмотрения всех возможных реакций ИИС необходимо анализировать лишь небольшое количество входных воздействий.

Содержание работы

Введение………………...…………………………………………………………3
1. Понятие политики безопасности и её основные базовые представления….5
1.1. Компьютерная безопасность ……………………………………………….
1.1.1. Определения компьютерной безопасности…………………………
1.1.2. Контроль доступа…………………………………………………….
1.2. Модели безопасности……………………………………………………….
2. Модель компьютерной системы. Понятие доступа и монитора безопасности………………………………………………………………………..
3. Формальные модели безопасности…………………………………………….
3.1 Применение Формальных моделей безопасности…………………………
3.1.1. Базовые представления моделей безопасности……………………
3.1.2. Мандатная и дискреционная модели………………………………
3.2 Дискреционная модель Харрисона-Руззо-Ульмана……………………….
4. Модель Белла-ЛаПадулы……………………………………………………….
4.1 Мандатная модель Мак-Лина……………………………………………….
4.2 Модель уполномоченных субъектов……………………………………….
Заключение…………………………………………………………………………
Список использованной литературы……………………………………………..

Содержимое работы - 1 файл

Формальные модели безопасности конечная варсия.doc

— 270.00 Кб (Скачать файл)

2. Модель компьютерной системы. Понятие доступа и монитора безопасности

В теории компьютерной безопасности практически всегда рассматривается  модель произвольной компьютерной системы (КС) в виде конечного множества  элементов. Указанное множество можно разделить на два подмножества: множество объектов и множество субъектов. Данное разделение основано на свойстве элемента «быть активным» или «получить управление» (применяются также термины «использовать ресурсы» или «пользоваться вычислительной мощностью»). Оно исторически сложилось  на основе модели вычислительной системы, принадлежащей фон Нейману, согласно которой последовательность исполняемых инструкций (программа, соответствующая понятию "субъект") находится в единой среде с данными (соответствующими  понятию "объект").

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

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

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

Во-вторых, угрозы компонентам КС (КС рассматривается  в модели потоков или состояний) исходят от субъектов как активной компоненты, порождающей потоки и  изменяющей состояние объектов в  КС.

В-третьих, субъекты могут влиять друг на друга через  изменяемые ими объекты, связанные с другими субъектами, порождая в конечном итоге в системе субъекты (или состояния системы), которые представляют угрозу для безопасности информации или для работоспособности  самой системы.

Будем считать  разделение КС на субъекты и объекты априорным. Будем считать также, что существует априорный безошибочный критерий различения субъектов и объектов в КС (по свойству активности). Кроме того, считаем в условиях всех утверждений, что декомпозиция СС на субъекты и объекты фиксирована. [С. 338-340, 7]

Подчеркнем  отличие понятия субъекта компьютерной системы от человека-пользователя следующим  определением.

«Пользователь - лицо (физическое лицо), аутентифицируемое некоторой информацией и управляющее субъектом компьютерной системы через органы управления ЭВМ. Пользователь КС является, таким образом, внешним фактором, управляющим состоянием субъектов. В связи с этим далее будем считать пользовательское управляющее воздействие таким, что свойства субъектов, сформулированные в ниже приводимых определениях, не зависят от него (т. е. свойства субъектов не изменяемы внешним управлением). Смысл данного условия состоит в предположении того факта, что пользователь, управляющий программой, не может через органы управления изменить ее свойства (условие неверно для систем типа компиляторов, средств разработки, отладчиков и др.)». [С. 1, 18]

Будем также  полагать, что в любой дискретный момент времени множество субъектов  КС не пусто (в противном случае соответствующие  моменты времени исключаются  из рассмотрения и рассматриваются отрезки с ненулевой мощностью множества субъектов).

Аксиома 4. Субъекты в КС могут быть порождены только активной компонентой (субъектами) из объектов.

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

Определение 1. Объект Оi называется источником для субъекта Sm, если существует субъект Sj, в результате воздействия которого на объект Оi в компьютерной системе возникает субъект Sm.

Субъект Sj, порождающий  новый субъект из объекта Оi, в  свою очередь, называется активизирующим субъектом для субъекта Sm, Sm назовем порожденным объектом.

Введем обозначение: Create (Sj, Oi) →Sk - из объекта Oi порожден субъект Sk при активизирующем воздействии субъекта Sj. Create назовем операцией порождения субъектов.

Операция Create задает отображение декартова произведения множеств субъектов и объектов на объединение множества субъектов с пустым множеством. Заметим также, что в КС действует дискретное время и фактически новый субъект Sk порождается в момент времени t+1 относительно момента t, в который произошло воздействие порождающего субъекта на объект-источник.

Очевидно, что  операция порождения субъектов зависит  как от свойств активизирующего  субъекта, так и от содержания объекта-источника.

Считаем, что  если Create (Sj, Oi) → NULL (конструкция NULL далее обозначает пустое множество), то порождение нового субъекта из объекта Oi при активизирующем воздействии Sj невозможно. Так, практически во всех операционных средах существует понятие исполняемого файла - объекта, могущего  быть источником для порождения субъекта. Например, для MS DOS файл edit.com является объектом-источником для порождения субъекта-программы текстового редактора, а порождающим субъектом является, как правило, командный интерпретатор shell (объект-источник - command.com).

Из архитектуры  фон Неймана следует также, что  с любым субъектом связан (или  ассоциирован) некоторый объект (объекты), отображающий его состояние, - например, для активной программы (субъекта) ассоциированным  объектом будет содержание участка  оперативной памяти с исполняемым кодом данной программы.

Определение 2. Объект Oi в момент времени t ассоциирован с субъектом Sm, если состояние объекта Oi повлияло на состояние субъекта в  следующий момент времени (т. е. субъект Sm использует информацию, содержащуюся в объекте Oi).

Введем обозначение "множество объектов {Om}t ассоциировано  с объектом Sj в момент времени t": Sj({Оm}t).

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

Субъект в общем случае реализует некоторое отображение множества ассоциированных объектов в момент времени t на множество ассоциированных объектов в момент времени t+1. В связи с этим можно выделить ассоциированные объекты, изменение которых изменяет вид отображения ассоциированных объектов (объекты, содержащие, как правило, код программы - функционально ассоциированные), и ассоциированные объекты-данные (являющиеся аргументом операции, но не изменяющие вида отображения). Далее под ассоциированными объектами понимаются функционально ассоциированные объекты, в иных случаях делаются уточнения.

Следствие (к  определению 2). В момент порождения субъекта Sm из объекта Oi он является ассоциированным  объектом для субъекта Sm.

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

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

Определение 3. Потоком информации между объектом Оm и объектом Oj называется произвольная операция над объектом Oj, реализуемая в субъекте Si и зависящая от Оm.

Заметим, что  как Oj, так и Оm могут быть ассоциированными или неассоциированными объектами, а также «пустыми» объектами (NULL).

Обозначения: Stream(Si Оm) → Oj - поток информации от объекта Оm к объекту Oj. При этом будем выделять источник (Оm) и получатель (приемник) потока (Oj).

В определении  подчеркнуто, что поток информации рассматривается не между субъектом  и объектом, а между объектами. Например, объектом и ассоциированными объектами субъекта (либо между двумя объектами), а активная роль субъекта выражается в реализации данного потока (это означает, что операция порождения потока локализована в субъекте и отображается состоянием его функционально ассоциированных объектов). Отметим, что операция Streamможет создавать новый объект или уничтожать его.

Далее будем  для краткости говорить о потоке, подразумевая введенное понятие  потока информации.

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

Из данного  определения также следует, что  поток всегда инициируется (порождается) субъектом.

Определение 4.  Доступом субъекта S; к объекту Oj будем  называть порождение потока информации между некоторым объектом (например, ассоциированным с субъектом объектами Si(Оm)) и объектом Oj.

Выделим все  множество потоков Р для фиксированной  декомпозиции КС на субъекты и объекты  во все моменты времени (все множество  потоком является объединением потоков по всем моментам дискретного времени) и произвольным образом разобьем его на два непересекающихся подмножества: N и L,P = NULL.

Обозначим:

N - подмножество  потоков, характеризующее несанкционированный  доступ;  L - подмножество потоков, характеризующих легальный доступ. Дадим некоторые пояснения к разделению множеств L и N. Понятие «безопасности» подразумевает наличие и некоторого состояния «опасности» - нежелательных состояний какой-либо системы (в данном случае КС). Будем считать парные категории типа «опасный - безопасный» априорно заданными для КС и описываемыми политикой безопасности, а результатом применения политики безопасности к КС - разделение на множество «опасных» потоков N и множество «безопасных» L. Деление на L и N может описывать как свойство целостности (потоки из N нарушают целостность КС) или свойство конфиденциальности (потоки из N нарушают конфиденциальность КС), так и любое другое произвольное свойство.

Определение 5. Правила разграничения доступа  субъектов к объектам есть формально описанные потоки, принадлежащие подмножеству L.

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

Определение 6. Объекты Oi и Oj тождественны в момент времени t, если они совпадают как слова, записанные в одном языке.

Например, при представлении  в виде байтовых последовательностей  объекты О1= (о11, o12,..., о1m) и О2=(о21, о22, ..., о2k) одинаковы, если m-k и o1i= o2i для всех i от 1 до k (oij - байты).

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

Определение 7. Субъекты Si и Sj тождественны в момент времени t, если попарно тождественны все ассоциированные с ними объекты.

Из определений 6 и 7 можно вывести некоторые  следствия.

Порожденные субъекты тождественны, если тождественны порождающие субъекты и объекты-источники.

Верность данного  следствия вытекает из тождества  функционально ассоциированных  объектов в порождающих субъектах, которые отвечают за порождение нового субъекта, а также из тождества  аргументов (ассоциированных объектов-данных), которые отвечают объектам-источникам.

Для разделения всего множества потоков в  КС на подмножества L и N необходимо существование  активной компоненты (субъекта), который:

- активизировался  бы при возникновении любого  потока;

- производил  бы фильтрацию потоков в соответствии с принадлежностью множествам L или N.

Информация о работе Формальные модели безопасности