Модель Грэхэма-Деннинга

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

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





История

Концепцию дискреционного разграничения доступа впервые предложил Батлер В. Лэпмсон[1]. Развивая эту теорию, Скотт Грэхэм и Питер Деннинг формализовали введенные Лэмпсоном принципы и построили одну из первых фундаментальных моделей разграничения доступа[2]. В основу модели легло понятие, что каждый процесс имеет уникальный идентификационный номер, который прикрепляется системой к каждой попытке доступа процесса к объекту системы. Модель Грэхэма-Деннинга сформировала основу для последующих систем безопасности, например, широко распространённой модели HRU (Harrison-Ruzzo-Ullman).

Описание модели

Компоненты модели

Основу модели составляют следующие компоненты[3]:

  • Множество объектов O - сущностей, доступ к которым должен контролироваться. Примерами объектов в контексте ОС являются страницы оперативной памяти, программы, устройства внешней памяти компьютера, инструкции и файлы.
  • Набор субъектов S, чей доступ к объектам должен контролироваться. Под субъектом обычно имеют в виду пару (процесс, домен), в которой процесс представляет собой активную выполняющуюся программу, а домен - окружение, в котором выполняется процесс. Примерами доменов в системе IBM System/370 являются состояния процессора, супервизора или прикладной программы.

Так как субъекты системы должны быть защищены, они в свою очередь также рассматриваются как объекты. Для каждого объекта определен субъект-«владелец», а для каждого субъекта – субъект-«контролер», которые имеют особые права к данному объекту или субъекту соответственно[4].

  • С каждым типом объекта ассоциируется специальный управляющий процесс - монитор обращений, через который проходят все попытки доступа к объектам. Примерами мониторов являются, например, системные файлы, оборудование для выполнения инструкций и адресации памяти.
  • Набор правил доступа R, определяющих возможный вид доступа субъекта по отношению к объекту. В модели Грэхэма-Деннинга определяются следующие восемь правил доступа, задающих действия и операции, которые субъект может выполнить над объектом[5].
    • Создание объекта, создание субъекта, удаление объекта и удаление субъекта позволяют субъекту создать новый объект/субъект в системе или, соответственно, удалить существующий.
    • Чтение прав доступа позволяет субъекту определить текущие права доступа субъекта к объекту.
    • Назначение прав доступа позволяет владельцу объекта назначить любое право доступа к объекту для другого субъекта.
    • Удаление прав доступа позволяет субъекту удалить право другого субъекта по отношению к объекту (субъект, удаляющий права, является или владельцем объекта, или контролером субъекта, права которого удаляются).
    • Передача прав доступа позволяет субъекту передать одно из его прав к объекту другому субъекту. Разделяют передаваемые или непередаваемые права. Если субъект получает передаваемое право, он может потом передать это право (как передаваемое или нет) другому субъекту. Если субъект получает непередаваемое право, он может использовать это право, но не может передать это право другому субъекту.
  • Правила обычно задаются матрицей контроля доступа А, в которой строки соответствуют субъектам, столбцы – объектам (включая субъекты), а элементы таблицы (так называемые атрибуты доступа) A[S,O] содержат список разрешенных привилегий субъекта s по отношению к объекту o.

Операции для работы с матрицей доступа

В таблице приведены операции для работы с матрицей доступа и соответствующие пред- и постусловия[6]. Субъект, выполняющий каждую из команд, обозначен x. r* – право доступа, которое может быть впоследствии передано другому субъекту. Соответственно, право r (без символа ‘*’) считается непередаваемым.

Комманда Предусловие Результат
Создать объект o - В матрицу A добавлен столбец o; назначен владелец объекта в атрибуте A[x, o]
Создать субъект s - В A добавлена строка s; в A[x,s] назначен контролер субъекта
Удалить объект o Владелец в A[x,o] Удален столбец o
Удалить субъект s Контролер в A[x,s] Удалена строка s
Прочитать права доступа s к o Контролер в A[x,s] или владелец в A[x,o] Скопировать атрибут A[s,o] субъекту x
Удалить прав доступа r субъекта s к объекту o Контролер в A[x,s] или владелец в A[x,o] Удалить право r из A[s,o]
Назначить право доступа r к o для s Владелец в A[x,o] Добавить r в A[s,o]
Передать право доступа r или r* к o для s В A[x,o] есть право r* Добавить r или r* соответственно в A[s,o]

Корректность модели

Требования к корректности

Модель безопасности должна решать следующие задачи[7]:

  1. отобразить состояние безопасности,
  2. дать субъектам доступ к объектам только в случаях и видах, разрешенных состоянием безопасности,
  3. и позволить субъектам защиты в определенном смысле изменять состояние безопасности.

Реализация

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

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

Вторая задача решается в предположении, что любая попытка доступа субъекта к объекту перехватывается и проверяется монитором обращений (реализация этого требования остается за разработчиками системы). Доступ субъекта s к объекту o происходит следующим образом[2]:

  1. s инициирует доступ к o в манере атрибута а
  2. система предоставляет тройку (s, a, o) монитору O
  3. Монитор O запрашивает матрицу доступа о наличии а в A[s,o]. Если атрибут есть, доступ разрешается; в противном случае он запрещается и применяются меры по устранению нарушения.

Заметим, что атрибуты доступа интерпретируются мониторами объектов во время попытки доступа. Поэтому, даже если субъект s знает идентификационный номер каждого другого субъекта, у s нет возможности изменить факт, что его номер предоставляется монитору; следовательно, монитор не может быть обманут запрашиванием неверной сущности в А[3]. Так как ни у каких субъектов нет доступа к А, на основании вышеизложенного можно построить доказательство, подтверждающее корректность системы безопасности

Доказательство корректности

Чтобы доказать корректность описанной модели безопасности, покажем, что субъект может получить доступ к объекту только будучи авторизованным[2].

Нужно показать, что:

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

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

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

Покажем последнее на примере.

Примеры

Рассмотрим передачу и создание прав доступа. Предположим субъект s1 создал объект х и дал разные типы доступа к х субъектам s2 – sn. Предположим также, что s1 хочет, чтобы у s0 ни при каких обстоятельствах не было доступа к x. Он может сделать это, не давая никаких атрибутов доступа s0, но он также должен создавать непередаваемые права всем субъектам s2-sn, которые могут нарушить доверие и дать доступ к x s0 напрямую. Другими словами, должно быть понимание между s1 и субъектами, получающими доступ к x, что s0 не должен получить, напрямую или косвенно, доступ к x. Только если такое понимание достигнуто и реквизиты доверия представлены, s1 может назначать передаваемые права доступа. Тогда, правила создания и передачи прав доступа корректны.

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

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

Заключение

Приведенная модель может использоваться как для защиты ОС, так и для защиты баз данных[9].

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

Напишите отзыв о статье "Модель Грэхэма-Деннинга"

Примечания

  1. Lampson B. W. (March 1971). «Protection». Proceeding of the 5th Princeton Symposium of Information Sciences and Systems.
  2. 1 2 3 4 Graham, Denning, Protection - PP.
  3. 1 2 Малюк, Пазизин, Погожин, Введение в ЗИ.
  4. C. Pfleeger, Security in Computing, p 244.
  5. C. Pfleeger, Security in Computing, pp 244-245.
  6. Одеров, Управление политиками контроля доступа.
  7. [www.intuit.ru/studies/courses/10/10/lecture/304?page=2#sect3 Механизмы безопасности] // Orange book.
  8. C. Pfleeger, Security in Computing.
  9. Denning D.E. (1976). «A Lattice Model of Secure Information Flow». Communication of ACM.

Литература

  • Graham G. S., Denning P. J. [www.cs.nmt.edu/~doshin/t/s10/cs589/pub/2.GD-Protection-PP.pdf Protection - Principles and Practice]. — Joint Computer Conference, 1972.
  • А. А. Малюк, С. В. Пазизин, Н. С. Погожин. Введение в защиту информации в автоматизированных системах. — 2-е издание. - Москва: Горячая линия-Телеком, 2004.
  • Р. С. Одеров. [se.math.spbu.ru/SE/diploma/2014/s/OderovRoman_Diploma.pdf Управление политиками контроля доступа на основе ролевой модели]. — 2014.
  • Charles P. Pfleeger, Shari Lawrence Pfleeger. [books.google.com/books?id=O3VB-zspJo4C&pg=PA244&lpg=PA244&dq=graham-denning+model&source=bl&ots=pP-xNmsF-E&sig=C6PPez1iyoQAxpBlzalcqiqqtWk&hl=en&sa=X&oi=book_result&resnum=6&ct=result Security in Computing]. — Prentice Hall, 2006.

Отрывок, характеризующий Модель Грэхэма-Деннинга

– Что он вам нравится?
– Да, он приятный молодой человек… Отчего вы меня это спрашиваете? – сказала княжна Марья, продолжая думать о своем утреннем разговоре с отцом.
– Оттого, что я сделал наблюдение, – молодой человек обыкновенно из Петербурга приезжает в Москву в отпуск только с целью жениться на богатой невесте.
– Вы сделали это наблюденье! – сказала княжна Марья.
– Да, – продолжал Пьер с улыбкой, – и этот молодой человек теперь себя так держит, что, где есть богатые невесты, – там и он. Я как по книге читаю в нем. Он теперь в нерешительности, кого ему атаковать: вас или mademoiselle Жюли Карагин. Il est tres assidu aupres d'elle. [Он очень к ней внимателен.]
– Он ездит к ним?
– Да, очень часто. И знаете вы новую манеру ухаживать? – с веселой улыбкой сказал Пьер, видимо находясь в том веселом духе добродушной насмешки, за который он так часто в дневнике упрекал себя.
– Нет, – сказала княжна Марья.
– Теперь чтобы понравиться московским девицам – il faut etre melancolique. Et il est tres melancolique aupres de m lle Карагин, [надо быть меланхоличным. И он очень меланхоличен с m elle Карагин,] – сказал Пьер.
– Vraiment? [Право?] – сказала княжна Марья, глядя в доброе лицо Пьера и не переставая думать о своем горе. – «Мне бы легче было, думала она, ежели бы я решилась поверить кому нибудь всё, что я чувствую. И я бы желала именно Пьеру сказать всё. Он так добр и благороден. Мне бы легче стало. Он мне подал бы совет!»
– Пошли бы вы за него замуж? – спросил Пьер.
– Ах, Боже мой, граф, есть такие минуты, что я пошла бы за всякого, – вдруг неожиданно для самой себя, со слезами в голосе, сказала княжна Марья. – Ах, как тяжело бывает любить человека близкого и чувствовать, что… ничего (продолжала она дрожащим голосом), не можешь для него сделать кроме горя, когда знаешь, что не можешь этого переменить. Тогда одно – уйти, а куда мне уйти?…
– Что вы, что с вами, княжна?
Но княжна, не договорив, заплакала.
– Я не знаю, что со мной нынче. Не слушайте меня, забудьте, что я вам сказала.
Вся веселость Пьера исчезла. Он озабоченно расспрашивал княжну, просил ее высказать всё, поверить ему свое горе; но она только повторила, что просит его забыть то, что она сказала, что она не помнит, что она сказала, и что у нее нет горя, кроме того, которое он знает – горя о том, что женитьба князя Андрея угрожает поссорить отца с сыном.
– Слышали ли вы про Ростовых? – спросила она, чтобы переменить разговор. – Мне говорили, что они скоро будут. Andre я тоже жду каждый день. Я бы желала, чтоб они увиделись здесь.
– А как он смотрит теперь на это дело? – спросил Пьер, под он разумея старого князя. Княжна Марья покачала головой.
– Но что же делать? До года остается только несколько месяцев. И это не может быть. Я бы только желала избавить брата от первых минут. Я желала бы, чтобы они скорее приехали. Я надеюсь сойтись с нею. Вы их давно знаете, – сказала княжна Марья, – скажите мне, положа руку на сердце, всю истинную правду, что это за девушка и как вы находите ее? Но всю правду; потому что, вы понимаете, Андрей так много рискует, делая это против воли отца, что я бы желала знать…
Неясный инстинкт сказал Пьеру, что в этих оговорках и повторяемых просьбах сказать всю правду, выражалось недоброжелательство княжны Марьи к своей будущей невестке, что ей хотелось, чтобы Пьер не одобрил выбора князя Андрея; но Пьер сказал то, что он скорее чувствовал, чем думал.
– Я не знаю, как отвечать на ваш вопрос, – сказал он, покраснев, сам не зная от чего. – Я решительно не знаю, что это за девушка; я никак не могу анализировать ее. Она обворожительна. А отчего, я не знаю: вот всё, что можно про нее сказать. – Княжна Марья вздохнула и выражение ее лица сказало: «Да, я этого ожидала и боялась».
– Умна она? – спросила княжна Марья. Пьер задумался.
– Я думаю нет, – сказал он, – а впрочем да. Она не удостоивает быть умной… Да нет, она обворожительна, и больше ничего. – Княжна Марья опять неодобрительно покачала головой.
– Ах, я так желаю любить ее! Вы ей это скажите, ежели увидите ее прежде меня.
– Я слышал, что они на днях будут, – сказал Пьер.
Княжна Марья сообщила Пьеру свой план о том, как она, только что приедут Ростовы, сблизится с будущей невесткой и постарается приучить к ней старого князя.


Женитьба на богатой невесте в Петербурге не удалась Борису и он с этой же целью приехал в Москву. В Москве Борис находился в нерешительности между двумя самыми богатыми невестами – Жюли и княжной Марьей. Хотя княжна Марья, несмотря на свою некрасивость, и казалась ему привлекательнее Жюли, ему почему то неловко было ухаживать за Болконской. В последнее свое свиданье с ней, в именины старого князя, на все его попытки заговорить с ней о чувствах, она отвечала ему невпопад и очевидно не слушала его.
Жюли, напротив, хотя и особенным, одной ей свойственным способом, но охотно принимала его ухаживанье.
Жюли было 27 лет. После смерти своих братьев, она стала очень богата. Она была теперь совершенно некрасива; но думала, что она не только так же хороша, но еще гораздо больше привлекательна, чем была прежде. В этом заблуждении поддерживало ее то, что во первых она стала очень богатой невестой, а во вторых то, что чем старее она становилась, тем она была безопаснее для мужчин, тем свободнее было мужчинам обращаться с нею и, не принимая на себя никаких обязательств, пользоваться ее ужинами, вечерами и оживленным обществом, собиравшимся у нее. Мужчина, который десять лет назад побоялся бы ездить каждый день в дом, где была 17 ти летняя барышня, чтобы не компрометировать ее и не связать себя, теперь ездил к ней смело каждый день и обращался с ней не как с барышней невестой, а как с знакомой, не имеющей пола.
Дом Карагиных был в эту зиму в Москве самым приятным и гостеприимным домом. Кроме званых вечеров и обедов, каждый день у Карагиных собиралось большое общество, в особенности мужчин, ужинающих в 12 м часу ночи и засиживающихся до 3 го часу. Не было бала, гулянья, театра, который бы пропускала Жюли. Туалеты ее были всегда самые модные. Но, несмотря на это, Жюли казалась разочарована во всем, говорила всякому, что она не верит ни в дружбу, ни в любовь, ни в какие радости жизни, и ожидает успокоения только там . Она усвоила себе тон девушки, понесшей великое разочарованье, девушки, как будто потерявшей любимого человека или жестоко обманутой им. Хотя ничего подобного с ней не случилось, на нее смотрели, как на такую, и сама она даже верила, что она много пострадала в жизни. Эта меланхолия, не мешавшая ей веселиться, не мешала бывавшим у нее молодым людям приятно проводить время. Каждый гость, приезжая к ним, отдавал свой долг меланхолическому настроению хозяйки и потом занимался и светскими разговорами, и танцами, и умственными играми, и турнирами буриме, которые были в моде у Карагиных. Только некоторые молодые люди, в числе которых был и Борис, более углублялись в меланхолическое настроение Жюли, и с этими молодыми людьми она имела более продолжительные и уединенные разговоры о тщете всего мирского, и им открывала свои альбомы, исписанные грустными изображениями, изречениями и стихами.
Жюли была особенно ласкова к Борису: жалела о его раннем разочаровании в жизни, предлагала ему те утешения дружбы, которые она могла предложить, сама так много пострадав в жизни, и открыла ему свой альбом. Борис нарисовал ей в альбом два дерева и написал: Arbres rustiques, vos sombres rameaux secouent sur moi les tenebres et la melancolie. [Сельские деревья, ваши темные сучья стряхивают на меня мрак и меланхолию.]
В другом месте он нарисовал гробницу и написал:
«La mort est secourable et la mort est tranquille
«Ah! contre les douleurs il n'y a pas d'autre asile».
[Смерть спасительна и смерть спокойна;
О! против страданий нет другого убежища.]
Жюли сказала, что это прелестно.
– II y a quelque chose de si ravissant dans le sourire de la melancolie, [Есть что то бесконечно обворожительное в улыбке меланхолии,] – сказала она Борису слово в слово выписанное это место из книги.
– C'est un rayon de lumiere dans l'ombre, une nuance entre la douleur et le desespoir, qui montre la consolation possible. [Это луч света в тени, оттенок между печалью и отчаянием, который указывает на возможность утешения.] – На это Борис написал ей стихи:
«Aliment de poison d'une ame trop sensible,
«Toi, sans qui le bonheur me serait impossible,
«Tendre melancolie, ah, viens me consoler,
«Viens calmer les tourments de ma sombre retraite
«Et mele une douceur secrete
«A ces pleurs, que je sens couler».
[Ядовитая пища слишком чувствительной души,
Ты, без которой счастье было бы для меня невозможно,
Нежная меланхолия, о, приди, меня утешить,
Приди, утиши муки моего мрачного уединения
И присоедини тайную сладость
К этим слезам, которых я чувствую течение.]
Жюли играла Борису нa арфе самые печальные ноктюрны. Борис читал ей вслух Бедную Лизу и не раз прерывал чтение от волнения, захватывающего его дыханье. Встречаясь в большом обществе, Жюли и Борис смотрели друг на друга как на единственных людей в мире равнодушных, понимавших один другого.
Анна Михайловна, часто ездившая к Карагиным, составляя партию матери, между тем наводила верные справки о том, что отдавалось за Жюли (отдавались оба пензенские именья и нижегородские леса). Анна Михайловна, с преданностью воле провидения и умилением, смотрела на утонченную печаль, которая связывала ее сына с богатой Жюли.
– Toujours charmante et melancolique, cette chere Julieie, [Она все так же прелестна и меланхолична, эта милая Жюли.] – говорила она дочери. – Борис говорит, что он отдыхает душой в вашем доме. Он так много понес разочарований и так чувствителен, – говорила она матери.
– Ах, мой друг, как я привязалась к Жюли последнее время, – говорила она сыну, – не могу тебе описать! Да и кто может не любить ее? Это такое неземное существо! Ах, Борис, Борис! – Она замолкала на минуту. – И как мне жалко ее maman, – продолжала она, – нынче она показывала мне отчеты и письма из Пензы (у них огромное имение) и она бедная всё сама одна: ее так обманывают!
Борис чуть заметно улыбался, слушая мать. Он кротко смеялся над ее простодушной хитростью, но выслушивал и иногда выспрашивал ее внимательно о пензенских и нижегородских имениях.
Жюли уже давно ожидала предложенья от своего меланхолического обожателя и готова была принять его; но какое то тайное чувство отвращения к ней, к ее страстному желанию выйти замуж, к ее ненатуральности, и чувство ужаса перед отречением от возможности настоящей любви еще останавливало Бориса. Срок его отпуска уже кончался. Целые дни и каждый божий день он проводил у Карагиных, и каждый день, рассуждая сам с собою, Борис говорил себе, что он завтра сделает предложение. Но в присутствии Жюли, глядя на ее красное лицо и подбородок, почти всегда осыпанный пудрой, на ее влажные глаза и на выражение лица, изъявлявшего всегдашнюю готовность из меланхолии тотчас же перейти к неестественному восторгу супружеского счастия, Борис не мог произнести решительного слова: несмотря на то, что он уже давно в воображении своем считал себя обладателем пензенских и нижегородских имений и распределял употребление с них доходов. Жюли видела нерешительность Бориса и иногда ей приходила мысль, что она противна ему; но тотчас же женское самообольщение представляло ей утешение, и она говорила себе, что он застенчив только от любви. Меланхолия ее однако начинала переходить в раздражительность, и не задолго перед отъездом Бориса, она предприняла решительный план. В то самое время как кончался срок отпуска Бориса, в Москве и, само собой разумеется, в гостиной Карагиных, появился Анатоль Курагин, и Жюли, неожиданно оставив меланхолию, стала очень весела и внимательна к Курагину.