Модели политик безопасности в автоматизированных системах

Анализ моделей контроля и управления доступом. Методы моделирования политик безопасности. Дискреционная модель Харрисона-Руззо-Ульмана. Мандатная модель Белла-Ла Падулы. Модели контроля и управления доступом операционными системами Linux и Windows.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 30.07.2016
Размер файла 826,5 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ

ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

«НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ

«ВЫСШАЯ ШКОЛА ЭКОНОМИКИ»

Московский институт электроники и математики

Выпускная квалификационная работа

образовательной программы бакалавриата «Прикладная информатика»

МОДЕЛИ ПОЛИТИК БЕЗОПАСНОСТИ В АВТОМАТИЗИРОВАННЫХ СИСТЕМАХ

СОДЕРЖАНИЕ

ВВЕДЕНИЕ

1. АНАЛИЗ МОДЕЛЕЙ КОНТРОЛЯ И УПРАВЛЕНИЯ ДОСТУПОМ И МЕТОДОВ МОДЕЛИРОВАНИЯ ПОЛИТИК БЕЗОПАСНОСТИ

1.1 Основные классы моделей контроля и управления доступом

1.1.1 Дискреционные модели контроля и управления доступом. Модель Харрисона-Руззо-Ульмана

1.1.2 Мандатные модели контроля и управления доступом. Модель Белла-ЛаПадулы

2. РЕАЛИЗАЦИЯ МОДЕЛЕЙ КУД В СОВРЕМЕННЫХ ИС

2.1 Модель контроля и управления доступом операционной системы Linux

2.2 Модель контроля и управления доступом операционной системы Microsoft Windows 2000

2.3 Методы моделирования политик безопасности

2.3.1 Графовые методы

2.3.2 Логические методы

2.4 Общая характеристика методов моделирования безопасности 35

2.5 Выводы к главе 2

3.ИССЛЕДОВАНИЕ ПРОЦЕССА РАЗРАБОТКИ СРЕДСТВ АВТОМАТИЗИРОВАННОГО АНАЛИЗА ВЫПОЛНЕНИЯ ПРАВИЛ ПОЛИТИК БЕЗОПАСНОСТИ

3.1 Обобщенное представление моделей контроля и управления доступом

3.2 Правила политики безопасности

3.3 Подход к проверке выполнения правил политик безопасности

3.4 Инструментарий моделирования

3.5 Концептуальные модели подсистем контроля и управления доступом

3.6 Выводы к главе 3

Заключение

Список литературы

ВВЕДЕНИЕ

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

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

На основании сформировавшихся требований потребителей разработчики ИС предлагают модели контроля и управления доступом (КУД), реализуемые в разрабатываемых продуктах. Для задания политики безопасности (ПБ) потребители вынуждены использовать решения, предлагаемые производителей (Рис.1). Отсутствие у потребителя гарантий, кроме утверждений разработчиков, что в используемой системе ПБ выполняется корректно, является одной из основных причин нарушений безопасности.

Эта проблема особенно остро стоит в ИС, к которым предъявляются повышенные требования гарантированности зашиты: в системах управления технологическими процессами, движением транспорта, проведения банковских операции, обработки секретной информации

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

Для достижения поставленной цели в работе будут решены задачи

1. Анализ моделей КУД, средств защиты современных ИС, а так же методов моделирования ПБ.

2. Исследование формы представления системных состояний, требований модели КУД и правил ПБ, предназначенной для моделирования и анализа средств защиты.

3. Исследование методы проверки выполнения правил ПБ путем анализа безопасности достижимых состояний.

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

В первой главе рассмотрены основные классы моделей КУД

Во второй главе рассмотрен реализация КУД в современных ОС, проведен анализ методов моделирования ПБ, сформулирована задача проверки выполнения правил ПБ с использованием логического подхода.

В третьей главе рассмотрен подход к проверке выполнения правил ПБ путем анализа достижимых состояний испытываемой системы. Приведена форма представления системных состояний, правил ПБ и требований модели КУД в виде логических предикатов.

В заключении приведены результаты и выводы, полученные в ходе выполнения работы.

моделирование политика безопасность

1. АНАЛИЗ МОДЕЛЕЙ КОНТРОЛЯ И УПРАВЛЕНИЯ ДОСТУПОМ И МЕТОДОВ МОДЕЛИРОВАНИЯ ПОЛИТИК БЕЗОПАСНОСТИ

На основании потребительских требований, сформировавшихся на рынке информационных технологий, разработчики ИС предлагают готовые решения по обеспечению безопасности. Классической дискреционной моделью КУД стала модель Харрисона-Руззо-Ульмана, реализующая произвольный контроль доступа и управление распространением прав, основанный на заданном множестве разрешенных отношений доступа. Мандатные модели КУД были разработаны с целью обеспечения в системе нормативного контроля, построенного на основе множества правил предоставления доступа. Из мандатных моделей наибольшую известность получила модель Белла -ЛаПадулы.

Указанные модели послужили формальной основой для развития теории информационной безопасности и разработки множества новых моделей КУД, на базе которых созданы механизмы зашиты современных ИС. На практике широкое применение нашли реализации дискреционного КУД в таких известных ОС как Windows 2000 и Linux. В работе рассмотрены реализации подсистем безопасности в ОС Windows 2000 и Linux. В настоящее время наблюдается развитие моделей КУД по пути комбинирования принципов различных классических моделей безопасности. Решением проблемы проверки выполнения правил ПБ является создание концептуальной модели системы в контексте модели КУД и правил ПБ и дальнейшая ее обработка с целью выявления нарушений безопасности и противоречий. Автоматизация процесса проверки выполнения правил ПБ требует рассмотрения существующих способов моделирования ПБ и определения метода, который позволил бы реализовать средства проверки. Так приведены методы моделирования ПБ, в результате чего выделены аналитические (AM), графовые (ГМ), объектные (ОМ) и логические (ЛМ) методы.

1.1 Основные классы моделей контроля и управления доступом

1.1.1 Дискреционные модели контроля и управления доступом. Модель Харрисона-Руззо-Ульмана

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

Харрисон, Руззо и Ульман создали специальную модель для проведения исследований дискреционного управления доступом. Эта модель безопасности стала классической дискреционной моделью, реализующей произвольное управление доступом и контроль распространения прав доступа.

В терминах модели Харрисона-Руззо-Ульмана ИС представляется в виде совокупности:

* активных сущностей -- субъектов (множество S), которые осуществляют доступ к информации,

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

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

Поведение системы моделируется с помощью понятий состояния и переходов между состояниями.

Каждое состояние определяет отношения доступа, которые существуют между сущностями системы в виде множества субъектов, объектов и матрицы прав. Пространство состояний системы определено декартовым произведением множеств субъектов, объектов и прав: SxOxR. Состояние Q в этом пространстве определяется кортежем, образованным множеством субъектов R, множеством объектов О и матрицей прав доступа М, описывающей текущие права доступа субъектов к объектам: Q = (S, О, М). Строки матрицы М соответствуют субъектам, а столбцы -- объектам. Поскольку множество объектов включает в себя множество субъектов, матрица имеет вид прямоугольника Ячейка M[s,o] матрицы М содержит набор прав доступа субъекта s к объекту о, принадлежащих множеству прав R.

Поведение системы во времени моделируется переходами между различными состояниями. Переход осуществляется путем внесения изменений в матрицу М с помощью команд:

где а -- имя команды; Xj -- параметр команды, являющийся идентификатором субъектов и объектов; si и оi -- индексы субъектов и объектов в диапазоне от 1 до к; opi -- элементарная операция.

Элементарные операции, составляющие команду, выполняются только в том случае, если истинны все условия присутствия укачанных прав доступа в ячейках матрицы М. В модели Харрисона-Руззо-Ульмана допустимы элементарные операции:

enter г into M[s,o] (добавление субъекту s права г для объекта о)

delete г from M[s,o] (удаление у субъекта s права г для

объекта о)

create subject s (создание нового субъекта s)

create object о (создание нового объекта о)

destroy subject s (удаление существующего субъекта s)

destroy object о (удаление существующегo объекта о)

Применение любой элементарной операции ор в системе, находящейся в состоянии Q - (S, О, М) влечет за собой переход в другое состояние Q' = (S', О', М') которое отличается от предыдущего состояния Q по крайней мере одним компонентом,

Выполнение базовых, операций приводит к следующим изменениям в состоянии системы:

Операция enter вводит право г и существующую ячейку матрицы доступа М. Содержимое каждой ячейки рассматривается как множество, т.е. если это право уже имеется, то ячейка не изменяется. Операция enter называется монотонной, поскольку она только добавляет права в матрицу доступа, но ничего не удаляет. Действие операции delete противоположно действию операции enter -- она удаляет право из ячейки матрицы доступа, если оно там присутствует. Поскольку содержимое каждой ячейки рассматривается как множество, delete не делает ничего, если удаляемое право отсутствует в указанной ячейке. Поскольку delete удаляет информацию из матрицы доступа, она называется немонотонной операцией. Операции create subject и destroy subject представляют собой аналогичную пару монотонной нe немонотонной операции

Для каждой операции существует предусловие ее выполнения; для изменения ячейки матрицы доступа с помощью операций enter или delete необходимо, чтобы эта ячейка существовала, т.е. чтобы существовали соответствующие субъект и объект. Предусловием операций создания create subject/object является отсутствие создаваемой сущности, а операций удаления destroy subject/object -- наличие сущности. Если предусловие любой операции не выполнено, то ее выполнение безрезультатно.

В соответствии с моделью Харрисона-Руззо-Ульмана формальное описание системы ?(Q,R,C) состоит из элементов:

* конечные исходные наборы субъект ов и объектов О0

* конечный набор прав доступа

* неходкая матрица доступа М0, содержащая права доступа субъектов к объектам;

* конечный набор командкаждая из которых состоит из условий выполнения и интерпретации в терминах элементарных операций.

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

Поскольку для обеспечения безопасности необходимо наложить запрет на некоторые отношения доступа, для заданного начального состояния системы должна существовать возможность определения множества состояний, в которые она сможет из него попасть. Это позволит задавать такие начальные условия (интерпретацию команд С, множества объектов Оо, субъектов S0 матрицу доступа М0), при которых система никогда не сможет попасть в состояния, нежелательные с точки зрения безопасности. Следовательно, для построения системы с предсказуемым поведением необходимо для заданных начальных условии получить ответ на вопрос: сможет ли некоторый субъект s когда-либо приобрести право доступа г для некоторого объекта о. Поэтому критерий безопасности в модели Харрисона- Руззо-Улъмана формулируется следующим образом:

для заданной системы начальное состояние Q0 = (S0, О0, M0) является безопасным относительно права г, если не существует применимой к Q0 последовательности команд, в результате которой право г будет занесено в ячейку матрицы М, в которой оно отсутствовало в состоянии Q0.

Смысл данного критерия состоит в том, что для безопасной конфигурации системы субъект никогда не получит право доступа г к объекту, если он не имел его изначально. Может показаться, что невозможность получения права г повлечет отказ от использования команд, в которых присутствует операция enter г into M[s,o], однако, это не так. Удаление субъекта или объекта приводит к уничтожению всех прав в соответствующей строке иди в столбце матрицы, но не влечет уничтожение самой строки или столбца и сокращение размеров матрицы. Следовательно, если в какой-то ячейке в начальном состоянии существовало право г, и после удаления субъекта или объекта, к которым относилось это право, ячейка будет очищена, но впоследствии в результате создания субъекта или объекта в эту же ячейку с помощью команды enter снова будет занесено право г, то это не будет означать нарушения безопасности.

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

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

Харрисон, Руззо и Ульман доказали, что и общем случае не существует алгоритма, который может для произвольной системы, ее начального состояния Q0 и общего права г решить, является ли данная конфигурация безопасной. Доказательство опирается на свойства машины Тьюринга, с помощью которой моделируется последовательность переходов системы из состояния в состояние Чтобы можно было доказать указанный критерий, модель должна быть дополнена рядом ограничений. Задача является разрешимой в любом из следующих случаев:

* командыявляются монооперационными, т.е. состоят не более чем из одной элементарной операции;

* командыявляются моноусловными и монотонными, т.е. содержат не более одного условия и не содержат операций destroy и delete;

* командыне содержат операций create.

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

Модель не дает гарантии безопасности системы, однако, ограничения, вводимые с целью повышения защитных свойств, приводят к снижению практического интереса: не существует полезных вариантов реализации модели Харрисона - Руззо - Ульмана, в которых проблема безопасности была бы разрешима. Но именно эта модель послужила основой для целого класса ПБ, которые применяются для управления доступом и контроля распространения прав в современных ИС.

1.1.2 Мандатные модели контроля и управления доступом. Модель Белла-ЛаПадулы

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

Модель Белла-ЛаПадуды стала классической моделью КУД. Ее основы взяты из жизни: всем участникам процесса обработки информации и документам, в которых она содержится, назначается специальная метка -- "уровень безопасности" (например, "секретно", "общедоступно" и т.д.). Все уровни упорядочиваются с помощью отношения доминирования, например, уровень "совершенно секретно" выше, чем уровень "секретно".

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

Первое правило обеспечивает защиту информации, обрабатываемой более доверенными лицами, от доступа со стороны менее доверенных.

Второе правило предотвращает утечку информации со стороны высокоуровневых участников процесса обработки информации к низкоуровневым.

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

Формально ИС в модели безопасности Белла-ЛаПадулы представляется в виде множеств субъектов S, объектов, и прав доступа read (чтение) и -write (запись). В модели Белла-ЛаПадулы рассматриваются только эти виды доступа. Использование столь жесткого подхода объясняется в модели Белла-ЛаПадулы тем, что контролируются не операции, а потоки информации, которые могут быть двух видов: от субъекта к объекту (запись) или наоборот (чтение).

Уровни безопасности субъектов и объектов задаются с помощью функции уровня безопасности, которая ставит в соответствие каждому субъекту и объекту уровень безопасности из множества уровней безопасности на котором определена решетка

Решетка уровней безопасности -- это формальная алгебра (L,<, *, , где L -- множество уровней безопасности, оператор ? определяет частичное нестрогое отношение порядка для элементов этого множества, т.е. оператор ? асимметричен, транзитивен и рефлексивен. Отношение ? на L,

• рефлексивно, если

• антисимметрично, если ;

* транзитивно, если

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

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

Функция уровня безопасности F назначает каждому субъекту и объекту некоторый уровень безопасности из L, разбивая множество сущностей системы на классы, и пределах которых их свойства с точки зрения модели безопасности являются эквивалентными. Тогда оператор ? определяет направление потоков информации, т.е.; если Р(А) ? Р(В) то информация может передаваться от элементов класса А элементам класса В.

Использование решетки для описания отношений между уровнями безопасности позволяет использовать в качестве элементов множества L не только целые числа, для которых определено отношение "меньше или равно", но и составные элементы. Например, в государственных организациях используется комбинация, состоящая из уровня безопасности, представляющего собой целое число, и набора категорий из некоторого множества. Такие атрибуты невозможно сравнивать с помощью арифметических операций, поэтому отношение доминирования ? определяется как композиция отношения "меньше или равно" для уровней и отношения включения множеств для наборов категорий. Причем, это никак не сказывается на свойствах модели, поскольку отношения меньше или равно" и "включение множеств" обладают свойствами асимметричности, транзитивности и рефлективности, и, следовательно, их композиция также будет обладать этими свойствами, образуя над множеством атрибутов безопасности решетку. Точно также можно использовать любые виды атрибутов и любое отношение частичного порядка, лишь бы их совокупность представляла собой решетку.

В мандатных моделях функция уровня безопасности F вместе с решеткой уровней определяют все допустимые отношения доступа между сущностями системы, поэтому ИС представляется с помощью множества системных состояний V как набора упорядоченных пар (F, М)., где М-- матрица доступа, отражающая текущую ситуацию с правами доступа субъектов к объектам. Содержание матрицы М аналогично содержанию матрицы доступа в модели Харрисона-Руззо-Ульмана, при этом набор прав ограничен двумя видами доступа -- чтение (read) и запись (write). Модель системысостоит из начального состояния R, множества запросов и функции переходакоторая в ходе выполнения запроса переводит систему из одного состояния в другое. Система, находящаяся в состояниипри получении запроса, переходит в следующее состояние. Состояние V достижимо в системетогда и только тогда, когда существует последовательностьтакая, что,

Для Заметим, что для любой системы v0 тривиально достижимо.

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

Белл и ЛаПадула предложили следующее определение безопасного состояния. Состояние (F, М) называется безопасным по чтению (или "просто безопасным”) тогда и только тогда, когда для каждого субъекта, осуществляющего в этом состоянии доступ чтения к объекту, уровень безопасности субъекта доминирует над уровнем безопасности объекта.

Состояние (F, М) называется безопасным по записи (или "*-безопасным") тогда и только тогда, когда для каждого субъекта, осуществляющего в этом состоянии доступ записи к объекту, уровень безопасности этого объекта доминирует над уровнем безопасности этого субъекта. Состояние безопасно тогда и только тогда, когда оно безопасно по чтению и по записи.

В соответствии с предложенным определением безопасного состояния критерий безопасности системы выглядит следующим образом:

Системабезопасна тогда и только тогда, когда ее начальное состояниебезопасно и все состояния, достижимые изпутем применения конечной последовательности запросов из R, безопасны.

Белл и ЛаПадула доказали теорему, формально доказывающую безопасность системы при соблюдении определенных условий, получившую название основной теоремы безопасности Белла-ЛаПадулы:

Система безопасна тогда и только тогда, когда (а) начальное состояниебезопасно и (б) для любого состояния V, достижимого из путем применения конечной последовательности запросов из R, таких, что для каждого выполняются следующие условия:

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

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

2. РЕАЛИЗАЦИЯ МОДЕЛЕЙ КУД В СОВРЕМЕННЫХ ИС

2.1 Модель контроля и управления доступом операционной системы Linux

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

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

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

В Linux системе с каждым файлом сопоставлены два владельца: владелец-пользователь (UID) и владелец-группа (GID). Особенностью является то, что владелец-пользователь может не быть членом владельца- группы. Это придает гибкость и организации доступа к файлам. Кроме этого с файлом связана маска прав доступа, которая определяет права доступа для трех классов пользователей файла:

• владелец файла,

• все пользователи, кроме владельца файла, принадлежащие к

связанной с файлом группе;

• все остальные пользователи, не входящие и ранее названные категории.

Для каждой категории пользователей определены три основных типа прав доступа к файлам: право па чтение (r) право на запись (w), право на исполнение (х). Если пользователь не является суперпользователем, который имеет любой доступ ко всем объектам независимо от прав доступа к ним, то при попытке действия над объектом тип запрашиваемого доступа сверяется с маской. Система хранит связанные с файлом права доступа в битовой маске, называемой кодом доступа к файлу.

Каждый каталог ОС Linux, почти как обычный файл, имеет набор прав доступа, которые влияют на доступность файлов в каталоге, но права r, w, х для каталога имеют свое предназначение.

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

• бит SUID (set UID, задать идентификатор пользователя при выполнении файла);

• бит SGID (set GID, задать идентификатор группы при выполнении файла);

• бит "sticky bit” (бит фиксации, сохранить сегмент кода). Данные биты имеют значение только, для файлов, у которых установлено право х для какой - либо категории пользователей

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

Управляющийбит

Функция защиты

Для файла

Для каталога

Set UID

На время выполнения программы изменяется значение действующего идентификатора пользователя UID, запустившего процесс, на идентификатор UID

Функция не определена

Set GID

На время выполнения программы изменяется значение GID процесса на GID владельца файла

При создании файла в каталоге его владельцем- группой становится владелец каталога

Sticky bit

Образ процесса сохраняется в памяти после завершения

выполнения

Удаление файла из каталога осуществляется только владельцем или суперпользователем

Таким образом, маска прав доступа для файла в ОС Linux выглядит следующим образом:

Изменение идентификатора используется для управления доступом к критическим данным. Конфиденциальная информация может быть защищена от публичного доступа или изменения при помощи стандартных прав доступа на чтение/запись/выполнение. Владелец файла создает программу, которая будет предоставлять ограниченный доступ к файлу. Затем для файла программы устанавливается флаг доступа SUID, что позволяет другим пользователям получать ограниченный доступ к файлу только при помощи данной программы. Очевидно, возможна компрометация SUID- программы мы для нарушения зашиты. Самое простое правило защиты SUID программы - запрет чтения такой программы.

Пример SUID-программы --passwd. Никто не может производить записи в файл паролей. Но пользователи все же имеют возможность менять свой пароль. Достигается это посредством программы passwd, так как ее владельцем является суперпользователь и для нее установлен флаг SUID

Не столь полезна установка флага SGUD, которая выполняет те же функции, но для идентификатора группы файла.

Бит фиксации sticky bit исторически использовался для исполняемых файлов и назывался флагом сохранения сегмента кода (save-text-image). В ранних версиях ОС Linux, если для файла был установлен этот бит, при его выполнении образ программы (код и данные) оставался в файле подкачки до выключения системы. Поэтому при следующем запуске программы системе не приходилось искать файл в структуре каталогов системы, а можно было быстро переместить программу из файла подкачки в память. В современных системах данный бит избыточен и определен только для каталогов.

Первоначально права доступа к файлу задаются в момент его создания при помощи вызовов create и open. С каждым процессом связано значение, называемое маской создания файла. Эта маска используется для автоматического выключения битов прав доступа при создании файлов, независимо от режима, заданного соответствующим вызовом create или open. Это полезно для защиты всех создаваемых процессом файлов, так как предотвращается случайное включение лишних прав доступа. Если в маске создания задан какой-либо бит, то при создании файла соответствующий бит маски доступа будет выключен. Дополнительные права доступа не имеют смысла для маски создания.

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

Атрибут set GID также имеет иное значение для каталога. При его установке дня каталога вновь созданные файлы этого каталога будут наследовать владельца-группу по владельцу-группе каталога. В BSD- системах такое наследование выполняется по умолчанию.

Различия доступа к файлам и к каталогам представлены в табл. 1.2.

Наличие права чтения для запуска исполняемого файла, написанного в виде скрипта командного интерпретатора, объясняется тем, что интерпретатор должен считывать команды из файла.

Изменять права доступа может владелец файла или суперпользователь. Таким образом, ОС Linux реализует дискреционную модель безопасности. Характер взаимодействия пользователей, процессов, файлов, каталогов в системе, т.е, доступ субъектов к защищаемым объектам, определяется комбинацией прав доступа.

2.2 Модель контроля и управления доступом операционной системы Microsoft Windows 2000

Защита данных в ОС Windows 2000 построена весьма эффективно и гарантируется многоуровневой схемой защиты. Концепции, лежащие в основе безопасности ОС Windows 2000, нельзя назвать революционными основные идеи достались ей в наследство от системы Windows NT 4.0.

Как известно, при разработке Windows 2000 учитывалось то, что она, как и Windows NT, должна удовлетворить уровню безопасности С2, разработанному оборонными ведомствами США. Эти требования учтены при проектировании Windows 2000, поэтому она поддерживает объектную модель защиты. Объектная модель защиты подразумевает, что любой ресурс рассматривается системой Windows 2000 как объект. Это означает, что ресурс обладает своими собственными свойствами (атрибутами), которые могут описывать его поведение с точки зрения безопасности. Кроме того, ресурс включает данные и функции манипулирования этими данными.

В терминах Windows 2000 присутствует понятие "участники безопасности", которое характеризует сущности ОС, участвующие в организации КУД, Известны два основных участника безопасности пользователи и группы пользователей. С каждым пользователем связанна учетная запись, которая позволяет ему войти в систему и которая содержит персональную информацию, Эти данные ОС использует для проверки подлинности пользователя и для его авторизации при доступе к ресурсам компьютера. Группы являются сущностями, которые могут содержать учетные записи пользователей и других групп. Объединение в группы используется для упрощения администрирования системы.

При создании пользователя или группы им присваивается уникальный идентификатор безопасности. Идентификатор безопасности (SID) - структура данных переменной длины, уникальным образом определяющая учетные записи пользователей и групп для системы безопасности ОС Windows 2000. При выполнении КУД внутренние процессы Windows обращаются к учетным записям по их идентификаторам безопасности, а не по именам.

На изолированном компьютере под управлением ОС Windows 2000 выделяют несколько типов объектов, из которых наиболее критичными с точки зрения безопасности являются элементы файловой системы и реестр.

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

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

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

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

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

Контроль и управление доступом к объектам в ОС Windows 2000 производится с помощью дескрипторов безопасности, приписанных всем объектам. Дескриптор содержит два списка контроля доступа:

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

• системный список контроля доступа, определяющий, для каких событий должен вестись аудит.

С точки зрения КУД интерес представляет дискреционный список контроля доступа, состоящий из записей контроля доступа, которые содержат разрешения для пользователя или группы.

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

• изначально владельцем объекта является его создатель;

• от текущего владельца может быть получено разрешение взять объект во владение;

• администратор имеет возможность взять любой объект во владение.

Права доступа определяют разрешенные пользователю или группе

виды доступа к объему. Права доступа могут быть разрешающими в ли запрещающими. Множество прав зависит от типа объекта.

В ОС Windows 2000 существуем два вида прав доступа;

• явно заданные, которые ассоциируются непосредственно с объектом и задаются во время его создания. Они могут быть изменены пользователем;

* унаследованные, которые получаются "в наследство" от родительского объекта и изменяются при модификации прав родительского объекта.

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

Разрешения пользователя на доступ к объектам файловой системы работают по принципу дополнения (аддитивности). Это значит, что действующие разрешения в отношении конкретного объекта образуются из всех прямых и косвенных разрешений, назначенных пользователю для данного объекта с помощью логической функции ИЛИ. Под косвенными разрешениями понимаются разрешения, которые имеют группы. Например, если пользователь имеет прямо назначенное разрешение на чтение каталога, а как члену группы ему дано разрешение на запись, то пользователь может и читать, и записывать в каталоге. Поскольку запрещающие права доступа имеют приоритет над разрешающими, достаточно прямого или косвенного запрещения, чтобы отказать пользователю в доступе к объекту независимо от имеющихся разрешающих прав. Общее правило КУД в ОС Windows 2000 таково: пользователю разрешен доступ тогда и только тогда, когда он или хотя бы одна из групп, к которым он принадлежит, имеет разрешение на данный вид доступа, и при этом ни сам пользователь, и ни одна из групп, к которым он принадлежит, не имеют запрещения на данный вид доступа. Права доступа для файлов и папок определены следующие: обзор папок / выполнение файлов, содержание папки / чтение данных, чтение атрибутов, чтение дополнительных атрибутов, создание файлов / запись данных, создание папок / дозапись данных, запись атрибутов, запись дополнительных атрибутов, удаление подпапок и файлов, удаление, чтение разрешений, смена разрешений, смена владельца. Для элементов реестра: запрос значения, задание значения, создание подраздела, перечисление подразделов, уведомление, создание связи, удаление, запись БАС, смена владельца, чтение разрешений.

Для выполнения большинства операций над объектом недостаточно иметь разрешение на соответствующий вид доступа. Например, для того, чтобы прочитать информацию из некоторого файла, необходимо иметь разрешения на чтение, чтение атрибутов, чтение расширенных атрибутов, чтение разрешении. Для разрешения некоторых операций немалую роль играют права доступа субъекта к родительской для объекта директории или разделу реестра. Владелец объекта Windows 2000 всегда имеет разрешение на чтение и изменение разрешений на доступ к нему. Каждый член группы Administrators всегда имеет разрешение на взятие по владение любого объекта.

2.3 Методы моделирования политик безопасности

2.3.1 Графовые методы

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

Анализ безопасных переходов системы производится посредством задания перехода графа в новое состояние после выполнения операций над сущностями. При этом под состоянием графа понимается совокупность вершин, дуг и ил атрибутов. Оценка выполнения правил ПБ в некотором состоянии системы проводится как сопоставление графа, соответствующего текущему состоянию, с графом, Соответствующим небезопасному состоянию (сопоставление с шаблоном).

Показательным примером графового метода является визуальный язык объектных ограничений LaSCO (Language for Security Constraints on Objects).

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

Момент состояния системы отражается в событиях параметром time.

Рассмотрим пример применения ГМ для представления ПБ в случае применения в ИС дискреционной модели КУД, Допустим, что ПБ задана в виде матрицы доступа М (табл. 1.3.), где r -- право чтения, v -- право записи, с -- право создания, са -- право модификации атрибутов, d -- право удаления сущности.

Таблица 1.3 Пример матрицы доступа М

Начальное состояние Q0 системы задается в виде графа Go = {Vo,A0}, где множество V0 -- это множество вершин графа Go, множество А0 -- множество направленных дуг в начальном состоянии. Множество вершин V0 совпадает с декартовым произведением наборов субъектов и объектов системы .SxO, в состоянии Q0. Дуги А0 отображают отношения между множествами S и О и соответствуют матрице доступа М. Начальное состояние графа Go, написанного на языке LaSCO, приведено на рис. 1.1.

Рис. 1.1 Пример представления на языке LaSCO политики безопасности системы, основанной на дискреционной модели безопасности. Сущности системы имеют два атрибута: тип (type) и имя (пате). Тип сущности определяет, является ли она активной (субъектом) или пассивной (объектом). Имя уникально для каждой сущности и позволяет однозначно ее идентифицировать в системе. Двойной символ '&&' обозначает операцию "логическое И" между параметрами, показывая необходимость выполнения обоих условий (пар "атрибут-значение") для осуществлена события. События, обозначенные дугами графа, имеют параметр "имя операции" (пате) с соответствующим значением вида доступа

Язык LaSCO позволяет вводить переменные (обозначаются символом $ перед именем переменной), что позволяет сокращать число вершин (рис.1 .2).

Рис. 1.2 Пример представления на языке LaSCO политики безопасности системы, основанной на мандатной модели безопасности

Субъекты и объекты помечены меткой "тип" однако, для представления ПБ в случае применения мандатной модели важны не их имена (атрибут пате), а уровни безопасности сущностей (атрибут sec level), В параметры событий включены названия операций (атрибут пате) и условие выполнения события (например, $S > $0), в котором задействованы переменные (рис. 1 2).

Таким образом, ГМ -- это удобный и наглядный инструментарий для моделирования ПБ.

2.3.2 Логические методы

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

...

Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.