Модель распространения прав доступа Take-Grant, предложенная в 1976 г., используется для анализа систем дискреционного разграничения доступа, в первую очередь для анализа путей распространения прав доступа в таких системах. В качестве основных элементов модели используются граф доступов и правила его преобразования. Цель модели - дать ответ на вопрос о возможности получения прав доступа субъектом системы на объект в состоянии, описываемом графом доступов. В настоящее время модель Take-Grant получила продолжение как расширенная модель Take-Grant, в которой рассматриваются пути возникновения информационных потоков в системах с дискреционным разграничением доступа.
Перейдем к формальному описанию модели Take-Grant.
Обозначим:
O - множество объектов ( например, файлов или сегментов памяти )
{t, g}
Элементы множества
Состояние системы описывается его графом доступов. Переход системы из состояния в
состояние определяется операциями или правилами преобразования графа доступов.
Преобразование графа G в граф G' в результате выполнения правила op обозначим через
В классической модели Take-Grant правило преобразования графа может быть одним из четырех, перечисленных ниже.
S
O
S
O
S
O
S
OПеречисленные правила "Брать", "Давать", "Создать", "Удалить" для отличия от правил расширенной модели Take-Grant будем называть де-юре правилами .
| Правило де-юое модели take-grant | Условия | Результирующее состояние системы |
| "Брать"
|
S E E |
{ (x, y, α) } |
| "Давать"
|
S E E |
{ (y, z, α) } |
| "Создать"
|
S O |
{y} {y}если у субъекта { (x, y, β) } |
| "Удалить"
|
S O E |
Таблица 4.2
В модели Take-Grant основное внимание уделяется определению условий, при которых в системе возможно распространение прав доступа определенным способом. Мы рассмотрим условия реализации:
Санкционированное получение прав доступа
Данный способ характеризуется тем, что при передаче прав доступа не накладываются ограничения на кооперацию субъектов системы, участвующих в этом процессе.
Пусть
O
En
Определение 1. Говорят, что вершины графа доступов являются tg - связными или что они соединены tg - путем, если ( без учета направления дуг ) в графе между ними существует такой путь, что каждая дуга этого пути помечена t или g. Будем говорить, что вершины непосредственно tg - связны, если tg - путь между ними состоит из единственной дуги.
Теорема 1. Пусть
Условие 1. Существуют субъекты
E0
...
γm
Условие 2. Субъект x соединен в графе
Доказательство. Проведем доказательство теоремы для
При
Условие 1. Существует субъект s, такой, что справедливо
E0
Условие 2. Субъекты x и s соединены tg – путем в графе
Необходимость. Пусть истинен предикат "возможен доступ"
En
En-1
При
E0
Пусть
E0
Sn-1: (x, s', t)
En-1 (s', x, g )
En-1
(s', y, α)
En-1
Возможно два случая:
S0
S0
Пусть
S0
S0: (s, y, α) E0
S0: (s'', s’, t)
E0
E0
S0: (s, y, α)
E0
E0
Пусть
S0
Из перечисленных требований следует, что существует
S0: opM = create({g, f}, s’’, s’)
S0: (s, y, α)
E0
S0: (s, y, α)
E0
E0
Достаточность.Пусть выполнены условия 1 и 2. Доказательство проведем индукцией по длине tg – пути, соединяющего субъекты x и s.
Пусть
E0
Пусть
E0
Пусть
E0
Для определения истинности предиката "возможен доступ" в произвольном графе необходимо ввести ряд дополнительных понятий.
Определение 2.Островом в произвольном графе доступов
Определение 3.Мостом в графе доступов
Определение 5. Конечным пролетом моста в графе доступов
Теорема 2. Пусть
Условие 3. Существуют объекты
E0
...
γm
Условие 4. Существуют вершины – субъекты
Условие 5. Для каждой пары
li, 1 , si
li, ui
Доказательство. Проведем доказательство теоремы для
При
Условие 3. Существует
O0:
(s, y, α)
E0
Условие 4. Существует
S0
Условие 5. Существуют острова
l1
lu
Необходимость. Пусть истинен предикат “возможен доступ”
En
En-1
При
E0
При
E0
S0
S0
Если
S0
Sn-1: opn = grant (α, x1, x, y)
S0
O0 : (x2, x, g)
E0
S0
lt
l1
O0: ( s, y, α )
E0
S0 : s = s’
lt
luЗаметим, что путь, соединяющий вершины x’,
S0
Если
S0
Достаточность. Условия 3, 4, 5 конструктивны.
По условию 3 существует объект s, который обладает правами α на объект y. По п. 2 условия 4 существует s’, который, либо совпадает с s, либо по конечному пролету моста может забрать у субъекта s права α на объект y.
По теореме 1 права доступа, полученные одним субъектом, принадлежащим острову,
могут быть переданы любому другому субъекту острова. По условию 5 между островами
существуют мосты, по которым возможна передача прав доступа.
Возможность похищения прав доступа
Способ передачи прав доступа, рассмотренный в главе 3, предлагает идеальное
сотрудничество субъектов. В случае похищения прав доступа предлагается, что передача
прав доступа объекту осуществляется без содействия субъекта, изначально обладавшего
передаваемыми правами. Пусть
O
E0
En
E0
Sj
Теорема 3.Пусть
Условие 6.
E0
Условие 7. Существуют объекты
E0
...
γm
Условие 8. Является истинным предикаты "возможен доступ"
Доказательство. Аналогично доказательству теоремы 2.
В расширенной модели Take-Grant рассматриваются пути и стоимости возникновения информационных потоков в системах с дискреционным разграничением доступа.
В классической модели Take-Grant по существу рассматриваются два права доступа: t и g, а также четыре правила ( правила де-юре ) преобразования графа доступов: take, grant, create, remove. В расширенной модели дополнительно рассматриваются два права доступа: на чтение r ( read ) и на запись w ( write ), а также шесть правил ( правила де-факто ) преобразования графа доступов: post, spy, find, pass и два правила без названия.
Правила де-факто служат для поиска путей возникновения возможных информационных потоков в системе. Эти правила являются следствием уже имеющихся у объектов системы прав доступа и могут стать, причиной возникновения информационного потока от одного объекта к другому без их непосредственного взаимодействия.
В результате применения к графу доступов правил де-факто в него добавляются мнимые дуги, помечаемые r или w и изображаемые пунктиром. Вместе с дугами графа, соответствующими правам доступа r и w ( реальными дугами ), мнимые дуги указывают на направление информационных каналов в системе.
Важно отметить, что к мнимым дугам нельзя применять правила де-юре преобразования графа доступов. Информационные каналы нельзя брать или передавать другим объектам системы.
Чтобы пояснить смысл правил де-факто рассмотрим ряд примеров.
Пример 1. Пусть субъект x не имеет право r на объект z, но имеет это право на субъект y. Пусть, кроме этого, x имеет право r на y. Тогда x может, просматривая информацию в y, пытаться искать в нем информацию из z. Таким образом, в системе может возникнуть информационный канал от объекта z к субъекту x, что демонстрирует правило де-факто spy. Очевидно также, если бы y был объектом, т. е. пассивным элементом системы, то информационный канал от z к .x возникнуть не мог.
Пример 2. Пусть субъект y имеет право r на объект z и право w на объект x. Прочитанная субъектом y информация в z может быть записана в x. Следовательно, в системе может возникнуть информационный канал от объекта z к объекту z, что демонстрирует правило де-факто pass.
Проблемы взаимодействия - центральный вопрос при похищении прав доступа. Мы коснемся их только в постановочном плане.
Каждое правило де-юре требует для достижения своей цели участия одного субъекта, а для реализаций правила де-факто необходимы один или два субъекта. Например, в де-факто правилах post, spy, find обязательно взаимодействие двух субъектов. Желательно во множестве всех субъектов выделить подмножество так называемых субъектов - заговорщиков - участников процессов передачи прав или информации. В небольших системах эта задача легко решаема. Многократно просматривая граф доступов и применяя к нему все возможные правила де-юре и де-факто, можно найти замыкание графа доступов, которое будет содержать дуги, соответствующие всем информационным каналам системы. Однако, если граф доступов большой, то найти его замыкание весьма сложно.
Можно рассмотреть проблему поиска и анализа информационных каналов в ином свете. Допустим, факт нежелательной передачи прав или информации уже состоялся. Каков наиболее вероятный путь его осуществления? В классической модели Take-Grant не дается прямого ответа на этот вопрос. Мы можем говорить, что есть - возможность передачи прав или информации, но не можем определить, какой из путей при этом использовался.
Предположим, что чем больше узлов на пути между вершинами, по которому произошла передача прав доступа или возник информационный поток, тем меньше вероятность использования этого пути.
Таким образом, в расширенную модель Take-Grant можно включить понятие вероятности или стоимости пути передачи прав или информации. Путям меньшей стоимости соответствует наивысшая вероятность и их надо исследовать в первую очередь. Есть два основных подхода к определению стоимости путей.
Стоимость пути в этом случае определяется как сумма стоимостей примененных правил.
В заключение отметим, что модель Take-Grant служит для анализа систем защиты с дискреционной политикой безопасности. В модели определены условия, при которых происходит передача или похищение прав доступа. Однако на практике редко возникает необходимость в использовании указанных условий, так как при анализе большинства реальных систем защиты не возникают столь сложные по взаимосвязи объектов графы доступов. А сами правила take и grant сравнительно редко используются на практике. В тоже время наиболее часто в реальных системах субъекты используют права доступа на чтение и запись. Поэтому предложенные в расширенной модели Take-Grant подходы к поиску и анализу путей возникновения в системе информационных каналов, определению их стоимости представляются наиболее интересными и актуальными.