Политики и модели безопасности 


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



ЗНАЕТЕ ЛИ ВЫ?

Политики и модели безопасности



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

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

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

Политика безопасности компьютерной системы может быть выражена формальным и неформальным образом.

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

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

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

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

Данные модели могут быть классифицированы следующим образом:

модели разграничения доступа, построенные по принципу предоставления прав;

модели разграничения доступа, построенные на основе принципов теории информации Шеннона;

модели разграничения доступа, построенные на основе теории вероятностей.

 

Модели разграничения доступа, построенные по принципу предоставления прав

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

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

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

Модели дискретного доступа

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

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

Одна из первых моделей безопасности была модель АДЕПТ-50. В ней представлено четыре типа сущностей: пользователи (u), задания (j), терминалы (t) и файлы(f), причем каждая сущность описывается тройкой (L, F, М), включающим параметры безопасности:

Уровень безопасности L — скаляр — элементы из набора иерархически упорядоченных уровней безопасности.

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

Режим М — набор видов доступа, разрешенных к определенному объекту или осуществляемых объектом. Пример: ЧИТАТЬ ДАННЫЕ, ПРИСОЕДИНЯТЬ ДАННЫЕ, ИСПОЛНИТЬ ПРОГРАММУ.

Если U={u} обозначает набор всех пользователей, известных системе, a F(i) — набор всех пользователей, имеющих право использовать объект i, то для модели формулируются следующие правила:

1. Пользователь u получает доступ к системе Û uÎY.

2. Пользователь и получает доступ к терминалу t Û uÎF(t), т.е. в том и только в том случае, когда пользователь и имеет право использовать терминал t.

3. Пользователь и получает доступ к файлу j Û A(j)³A(f), C(j)ÊC(f), M(j)ÊM(f) и uÎF(f), т.е. только в случае:

привилегии выполняемого задания шире привилегий файла или равны им; пользователь является членом F(f). Трехмерный кортеж безопасности, полученный на основе прав задания, а не прав пользователя, используется в модели для управления доступом. Такой подход обеспечивает однородный контроль права на доступ над неоднородным множеством программ и данных, файлов, пользователей и терминалов. Например, наивысшим полномочием доступа к файлу для пользователя "СОВ. СЕКРЕТНО", выполняющего задание с "КОНФИДЕНЦИАЛЬНОГО" терминала будет "КОНФИДЕНЦИАЛЬНО".

Теперь рассмотрим модель, называемую пятимерным пространством безопасности Хартстона. В данной модели используется пятимерное пространство безопасности для моделирования процессов установления полномочий и организации доступа на их основании. Модель имеет пять основных наборов:

А — установленных полномочий;

U — пользователей;

Е — операций;

R — ресурсов;

S — состояний;

Область безопасности будет выглядеть как декартово произведение: A´U´E´R´S.

Доступ рассматривается как ряд запросов, осуществляемых пользователями u для осуществления операции e над ресурсами R, в то время, когда система находится в состоянии s. Например, запрос на доступ представляется четырехмерным кортежем q=(u, e, R, s), uÎU, еÎЕ, sÎS, rÎR. Величины u и s задаются системой в фиксированном виде. Таким образом, запрос на доступ — подпространство четырехмерной проекции пространства безопасности. Запросы получают право на доступ в том случае, когда они полностью заключены в соответствующие подпространства.

Процесс организации доступа можно описать алгоритмически следующим образом. Для запроса q, где q (u, e, R, s), набора U' вполне определенных групп пользователей, набора R' вполне определенных единиц ресурсов и набора Р правильных (установленных) полномочий, процесс организации доступа будет состоять из следующих процедур:

1. Вызвать все вспомогательные программы, необходимые для "предварительного принятия решений".

2. Определить из U те группы пользователей, к которым принадлежит u. Затем выбрать из Р спецификации полномочий, которым соответствуют выделенные группы пользователей. Этот набор полномочий F(u) определяет привилегию пользователя u.

3. Определить из Р набор F(e) полномочий, которые устанавливают e как основную операцию. Этот набор называется привилегией операции е.

4. Определить из Р набор F(R) (привилегию единичного ресурса R) — полномочия, которые определяют поднабор ресурсов из R', имеющего общие элементы с запрашиваемой единицей ресурса R.

Полномочия, которые являются общими для трех привилегий в процедурах 2, 3, 4 образуют D(q), так называемый домен полномочий для запроса

q: D(q)=F(u)ÇF(e)F(R)

5. Удостовериться, что запрашиваемый ресурс R полностью включается в D(q), т.е. каждый элемент из R должен содержаться в некоторой единице ресурса, которая определена в домене полномочий D(q).

6. Осуществить разбиение набора D(q) на эквивалентные классы так, чтобы два полномочия попадали в эквивалентный класс тогда и только тогда, когда они специфицируют одну единицу ресурса. Для каждого такого класса логическая операция ИЛИ (или И) выполняется с условиями доступа элементов каждого класса.

Новый набор полномочий — один на каждую единицу ресурса, указанную в D(q), есть F(u, q) — фактическая привилегия пользователя и по отношению к запросу q.

7. Вычислить ЕАС — условие фактического доступа, соответствующего запросу q, осуществляя логическое И (или ИЛИ) над условиями доступа членов F(u, q).Это И (или ИЛИ) выполняется над всеми единицами ресурсов, которые перекрывают единицу запрошенного ресурса.

8. Оценить ЕАС и принять решение о доступе: разрешить доступ к R, если R перекрывается;

- отказать в доступе в противном случае.

9. Произвести запись необходимых событий.

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

11. Выполнить все вспомогательные программы, вытекающие для каждого случая из условия 8.

12. Если решение о доступе было положительным — завершить физическую обработку.

Автор модели, Хартстон, отмечает, что приведенная последовательность шагов не всегда необходима в полном объеме. Например, в большинстве реализаций шаги 2 и 6 осуществляются во время регистрации пользователя в системе.

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

К недостаткам относится "статичность моделей. Это означает то, что модель не учитывает динамику изменений состояния ВС, не накладывает ограничений на состояния системы.

 

Модели мандатного доступа

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

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

В отличие от DAC, который позволяет передавать права от одного пользователя другому без всяких ограничений, мандатный доступ (MAC) накладывает ограничения на передачу прав доступа от одного пользователя другому. Это позволяет разрешить проблему троянских коней.

Классической моделью, лежащей в основе построения многих систем MAC и породившей остальные модели MAC, является модель Белла и Лападула.

Модель Белла и Лападула

Модель, получившая название модели Белла и Лападула (БЛМ) до сих пор оказывает огромное влияние на исследования и разработки в области компьютерной безопасности. Об этом свидетельствует огромное количество различных документов, ссылающихся в библиографии на первоначальную БЛМ. Данная модель лежит в основе построения MAC. Идеи, заложенные в БЛМ, могут быть использованы при построении различных политик безопасности.

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

Простое свойство безопасности, также известное как правило «нет чтения вверх» (NRD), гласит, что субъект с уровнем безопасности xs может читать информацию из объекта с уровнем безопасности xo, только если xs преобладает над xo. Это означает, что если в системе, удовлетворяющей правилам модели БЛМ субъект с уровнем доступа секретный попытается прочитать информацию из объекта, классифицированного как совершенно секретный, то такой доступ не будет разрешен.

Белл и Лападула сделали дополнительное наблюдение при построении своей модели: в правительстве США субъектам не позволяется размещать информацию или записывать ее в объекты, имеющие более низкий уровень безопасности. Например, когда совершенно секретный документ помещается в неклассифицированное мусорное ведро, может произойти утечка информации. Это ведет ко второму правилу БЛМ.

Свойство-*, известное как правило "нет записи вниз" (NRD), гласит, что субъект безопасности xs может писать информацию в объект с уровнем безопасности xo только если xo преобладает над xs. Это означает, что если в системе, удовлетворяющей правилам модели БЛМ субъект с уровнем доступа совершенно секретный попытается записать информацию в неклассифицированный объект, то такой доступ не будет разрешен.

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

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

Рассмотрим формализацию БЛМ. В соответствии с определениями:

S — множество субъектов;

О — множество объектов;

L — решетка уровней безопасности;

F: SÈO®L — функция, применяемая к субъектам и объектам; определяет уровни безопасности своих аргументов в данном состоянии;

V — множество состояний — множество упорядоченных пар (F, М), где М — матрица доступа субъектов системы к объектам.

Система представляется начальным состоянием v, определенным множеством запросов R и функцией переходов T: (V´R)®V, такой что система переходит из состояния в состояние после исполнения запроса. Сформулируем определения, необходимые для доказательства основной теоремы безопасности (ОТБ), доказанной для БЛМ.

Определение 1. Состояние (F, М) безопасно по чтению (RS) тогда и только тогда, когда для "sÎS и для "oÎO, чтение Î M[s, о] ® F(s)³F(o).

Определение 2. Состояние (F, М) безопасно по записи (WS, *-свойство) тогда и только тогда, когда для "sÎS и для "oÎO, запись Î M[s, о] ® F(o)³F(s)

Определение З. Состояние безопасно тогда и только тогда, когда оно безопасно по чтению и по записи.

Определение 4. Система (vo, R, Т) безопасна тогда и только тогда, когда состояние vo безопасно и любое состояние, достижимое из vo после исполнения конечной последовательности запросов из R безопасны в смысле определения 3.

Теорема 2.2. (ОТБ) Система (vo, R, Т) безопасна тогда и только тогда, когда состояние vo безопасно и Т таково, что для любого состояния v, достижимого из vo после исполнения конечной последовательности запросов из R безопасны, если T(v, c)=v*, где v=(F, М) и v*=(F*, М*), такие что для "sÎS и для "oÎO

— если чтение Î M*[s, о] и чтение Ï M[s, о], то F* (s)³F*(o);

— если чтение Î M[s, о] и F*(s)<F*(o), то чтение Î M*[s, о];

— если запись Î M*[s, о] и запись Ï M[s, о], то F*(o)³F*(s);

— если запись Î M[s, о] и F*(o)<F*(s), то запись Î M*[s, о].

Доказательство:

1. Необходимость. Предположим система безопасна. Состояние Vo безопасно по определению. Если имеется некоторое состояние v, достижимое из состояния vo после исполнения конечной последовательности запросов из R, таких что T(v, c)=v*, хотя v* не удовлетворяет одному из двух первых ограничений для Т, то v* будет достижимым состоянием, но противоречащим ограничению по чтению. Если v* не удовлетворяет одному из двух последних ограничений для Т, то v* будет достижимым состоянием, но противоречащим ограничению по записи. В любом случае система небезопасна.

2. Достаточность. Предположим, что система небезопасна. В этом случае, либо vo должно быть небезопасно, либо должно быть небезопасное состояние v, достижимое из состояния vo после исполнения конечной последовательности запросов из R. Если Уд небезопасно — все доказано. Если vo безопасно, допустим что v* — первое в последовательности запросов небезопасное состояние. Это означает, что имеется такое безопасное состояние v, такое что T(v, c)=v*, где v— небезопасно. Но это противоречит четырем ограничениям на Т.

Несмотря на все достоинства, оказалось, что при использовании БЛМ в контексте практического проектирования и разработки реальных компьютерных систем возникает ряд технических вопросов. Данные вопросы являются логическим следствием достоинства БЛМ — ее простоты. Проблемы возникают при рассмотрении вопросов построения политик безопасности для конкретных типов систем, т.е. на менее абстрактном уровне рассмотрения. Как следствие, в мире компьютерной безопасности ведется широкая полемика по поводу применимости БЛМ для построения безопасных систем.

Рассмотрим ряд примеров критики БЛМ. Некоторые из них взяты из литературы, посвященной вопросам безопасности, другие часто включаются в техническое описание и представляют собой так называемую "обязательную критику" БЛМ.

Начнем данное рассмотрение с обсуждения проблемы, возникающей в распределенных системах, удовлетворяющих правилам БЛМ. В частности, покажем, что запрос на чтение вызывает протекание потоков информации в обоих направлениях между компонентами, что является нарушением правил модели. Затем рассмотрим проблему использования этой модели для обеспечения безопасности доверенных субъектов, которые выполняют наиболее критичные задачи в компьютерной системе. Завершим обсуждение примером описания компьютерной системы, известной как система Z.

 

Удаленное чтение

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

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

Многие исследователи рассматривают эту проблему как наиболее убедительное свидетельство неадекватности БЛМ. Однако, на практике эта проблема часто является несущественной; достаточно внедрения в систему дополнительных средств обработки удаленных запросов для обеспечения того, чтобы поток информации от высокоуровневого субъекта к низкоуровневому объекту был ограничен запросом на доступ. Фактически, некоторые архитектуры предлагают отдельные компоненты, выполняющие обработку таких запросов и потока информации в распределенных системах.

Доверенные субъекты

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

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

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

 

Проблема системы Z

МакЛин разработал концептуальное описание системы, названной Система Z. Данное описание показывает, что система, удовлетворяющая правилам БЛМ может иметь ряд проблем с секретностью. Система Z выражается в терминах набора субъектов и объектов, с каждым из которых связан уровень безопасности. Совокупность уровней безопасности для каждого субъекта и объекта в некоторый момент времени описывает состояние системы. Система Z удовлетворяет БЛМ, если во всех состояниях системы комбинации уровней субъектов и объектов таковы, что в этом состоянии никакой субъект не может осуществить запись вниз или чтение сверху. Это может быть легко доказано путем проверки множества состояний методом индукции (см. 1 доказательство ОТБ для БЛМ). В математической индукции базис устанавливается так, чтобы выразить соблюдение интересующего условия. Затем показывается, что все возможные изменения, основанные на этом базисе, соблюдают выполнение интересующего условия. То есть, при проведении индуктивной процедуры для доказательства безопасности состояний системы необходимо установить, что начальное состояние удовлетворяет БЛМ. Когда это сделано, нужно показать, что все переходы из любого достижимого состояния соблюдают выполнение правил БЛМ.

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

Фактически, МакЛин описал конфигурацию, в которой все субъекты могут читать и записывать любой объект путем назначения соответствующих уровней безопасности объекта перед выполнением запросов на доступ. В такой системе, которая очевидно не обеспечивает секретность информации, все состояния могут быть рассмотрены, как удовлетворяющие требованиям БЛМ.

Все описанное выше является справедливым для модели БЛМ в "ее классической формулировке", кочующей из книги в книгу и из статьи в статью. Но в оригинальной модели, представленной авторами, было введено требование сильного и слабого спокойствия. Данные требования снимают проблему Z-системы. Рассмотрим их.

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

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

 



Поделиться:


Последнее изменение этой страницы: 2017-02-21; просмотров: 412; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 52.14.33.175 (0.041 с.)