Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 11 лет назад пользователемseminar.s2s.msu.ru
1 АНАЛИЗ БЕЗОПАСНОСТИ УПРАВЛЕНИЯ ДОСТУПОМ И ИНФОРМАЦИОННЫМИ ПОТОКАМИ В КОМПЬЮТЕРНЫХ СИСТЕМАХ к.т.н., доцент Девянин П.Н. ИКСИ, г. Москва
2 2 Основные формальные модели управления доступом и информационными потоками Формальные модели Модели дискреционного управления доступом Модели мандатного управления доступом Модели безопасности информационных потоков Модели ролевого управления доступом Субъектно-ориентированная модель изолированной программной среды Модель ХРУ Модель ТМД Модель Take-Grant Базовая модель ролевого управления доступом Автоматная модель Программная модель Вероятностная модель Классическая модель Белла-ЛаПадулы Модель СВС Модель безопасности переходов Модель целостности Биба Модель ролевого администрирования Модели тематического управления доступом
3 3 Основные существенные особенности функционирования современных КС Возможность реализации в КС доверенных и недоверенных субъектов с различными условиями функционирования; Возможность реализации в КС доверенных и недоверенных субъектов с различными условиями функционирования; Различие в условиях реализации в КС информационных потоков по памяти и по времени; Различие в условиях реализации в КС информационных потоков по памяти и по времени; Наличие в современных КС иерархической структуры сущностей и возможность ее использования при реализации информационных потоков по времени; Наличие в современных КС иерархической структуры сущностей и возможность ее использования при реализации информационных потоков по времени; Возможность кооперации или, наоборот, противодействия субъектов друг другу при передаче прав доступа и реализации информационных потоков. Возможность кооперации или, наоборот, противодействия субъектов друг другу при передаче прав доступа и реализации информационных потоков. Возможность изменения функциональности субъекта при реализации информационного потока по памяти на функционально ассоциированные с ним сущности. Возможность изменения функциональности субъекта при реализации информационного потока по памяти на функционально ассоциированные с ним сущности.
4 4 Критический анализ основных формальных моделей
5 5 Предположение 1. Предположение 1. Все действия в КС, в том числе выполнение операций над сущностями, порождение информационных потоков, изменение параметров и настроек системы защиты КС, порождение новых субъектов, могут быть инициированы только субъектами КС с использованием доступов к сущностям КС. Предположение 2. Предположение 2. Все информационные потоки в КС порождены доступами субъектов к сущностям. Иные информационные потоки, например по побочному электромагнитному излучению, не рассматриваются. Предположение 3. Предположение 3. В начальном состоянии КС отсутствуют доступы субъектов к объектам и информационные потоки. Предположение 4. Предположение 4. При любых запросе субъекта на доступ к сущности или доступе субъекта к сущности реализуется информационный поток по времени. Предположение 5. Предположение 5. При реализации информационного потока по памяти от объекта-источника к объекту-приемнику в том же направлении реализуется информационный поток по времени. Основные предположения
6 6 Базовая ДП-модель. Иерархия сущностей E = O C множество сущностей, где O множество объектов, C множество контейнеров; S E множество субъектов; R r = {read r, write r, append r, execute r, own r } множество видов прав доступа; R a = {read a, write a, append a } множество видов доступа; R f = {write m, write t } множество видов информационных потоков; R raf = R r R a R f множество видов прав доступа, видов доступа и видов информационных потоков. Определение. Определение. Определим H: E 2 E функцию иерархии сущностей, сопоставляющую каждой сущности c E множество сущностей H(c) E и удовлетворяющую условиям: Условие 1. Условие 1. Если сущность e H(c), то e < c и не существует сущности- контейнера d C, такой, что e < d, d < c. Условие 2. Условие 2. Для любых сущностей e 1, e 2 E, e 1 e 2, по определению выполняются равенство H(e 1 ) H(e 2 ) = и условия: если o O, то выполняется равенство H(o) = ; если e 1 < e 2, то или e 1, e 2 E \ S, или e 1, e 2 S; если e E \ S, то H(e) E \ S; если s S, то H(s) S.
7 7 Определение. Пусть определены множества S, E, R S E R r, A S E R a, F E E R f и функция иерархии сущностей H. Определим G = (S, E, R A F, H) конечный помеченный ориентированный граф без петель, где элементы множеств S, E являются вершинами графа, элементы множества R A F ребрами графа. Назовем G = (S, E, R A F, H) графом доступов. (G*, OP) система, при этом: каждое состояние системы представляется графом доступов; G* множество всех возможных состояний; OP множество правил преобразования состояний; G op G переход системы (G*, OP) из состояния G в состояние G Определение системы а) б) в)г) r a write m write t Рис. 1. Обозначения ребер графа доступов
8 8 Правила преобразования состояний В базовой ДП-модели определены 16 монотонных и немонотонных правил преобразования состояний: take_right( r, x, y, z), grant_right( r, x, y, z), remove_right( r, x, y, z), own_take( r, x, y), own_remove( r, x, y), create_entity(x, y, z), create_subject(x, y, z), delete_entity(x, y, z), rename_entity(x, y, z), access_read(x, y), access_write(x, y), access_append(x, y), flow(x, y, y, z), find(x, y, z), post(x, y, z), pass(x, y, z) G z G z write r write r write t write t x y x y rename_entity(x, y, z) … write t write t … r r s y s y Рис. 2. Реализация информационных потоков по времени при применении правила rename_entity(x, y, z), где r R r
9 9 Примеры правил преобразования состояний базовой ДП-модели
10 10 Условия передачи прав доступа или реализации информационных потоков Определение. Определение. Пусть G 0 = (S 0, E 0, R 0 A 0 F 0, H 0 ) состояние системы (G*, OP) и субъект x S 0, сущность y E 0, где x y, и пусть R r некоторое право доступа. Определим предикат can_share(, x, y, G 0 ), который будет истинным тогда, и только тогда, когда существуют состояния G 1, …, G N = (S N, E N, R N A N F N, H N ) и правила преобразования состояний op 1, …, op N такие, что G 0 op1 G 1 op2 … opN G N и (x, y, ) R N, где N 0. Определение. Определение. Пусть G 0 = (S 0, E 0, R 0 A 0 F 0, H 0 ) состояние системы (G*, OP) и сущности x, y E 0, где x y. Определим предикат can_write_memory(x, y, G 0 ), который будет истинным тогда, и только тогда, когда существуют состояния G 1, …, G N = (S N, E N, R N A N F N, H N ) и правила преобразования состояний op 1, …, op N такие, что G 0 op1 G 1 op2 … opN G N и (x, y, write m ) F N, где N 0. Определение. Определение. Пусть G 0 = (S 0, E 0, R 0 A 0 F 0, H 0 ) состояние системы (G*, OP) и сущности x, y E 0, где x y. Определим предикат can_write_time(x, y, G 0 ), который будет истинным тогда, и только тогда, когда существуют состояния G 1, …, G N = (S N, E N, R N A N F N, H N ) и правила преобразования состояний op 1, …, op N такие, что G 0 op1 G 1 op2 … opN G N и (x, y, f ) F N, где f {write m, write t } и N 0.
11 11 Условия реализации информационного потока по времени Теорема. Теорема. Пусть G 0 = (S 0, E 0, R 0 A 0 F 0, H 0 ) состояние системы (G*, OP) и сущности x, y E 0, x y. Предикат can_write_time(x, y, G 0 ) истинен тогда, и только тогда, когда существует последовательность сущностей e 1, …, e m E 0, где e 1 = x, e m = y и m 2, таких, что выполняется одно из условий: Условие 1. Условие 1. m = 2 и (x, y, f ) F 0, где f {write m, write t }. Условие 2. Условие 2. Для каждого i = 1,..., m – 1 выполняется одно из условий: e i S 0 и (e i, e i + 1, write t ) F 0 ; e i S 0 и истинен предикат can_write_memory(e i, e i + 1, G 0 ); e i S 0 и существует сущность e i + 1 E 0, такая, что e i + 1 e i + 1 и истинен предикат can_share( r, e i, e i + 1, G 0 ), r R r ; e i + 1 S 0 и истинен предикат can_share(read r, e i + 1, e i, G 0 ); e i, e i + 1 S 0 и существуют сущности e i, e i + 1 E 0 : или e i e i + 1, или e i + 1 e i, и истинны предикаты can_share( r, e i, e i, G 0 ) и can_share( r, e i + 1, e i + 1, G 0 ), r, r R r.
12 12 Фрагменты доказательства теоремы Пример задачи на преобразование графа доступов расширенной модели Take-Grant G G o read read create(), write grant(), post() x grant y write Рис. 3. Реализация информационного потока на запись
13 13 Фрагменты доказательства теоремы Докажем достаточность выполнения условия теоремы для истинности предиката can_write_time(x, y, G 0 ). … Пусть выполняется условие 2 теоремы, тогда существует последовательность сущностей e 1, …, e m E 0, где e 1 = x, e m = y и m 2. Выполним доказательство индукцией по длине m последовательности сущностей. Пусть m = 2. Возможны пять случаев. … Рассмотрим четвертый случай: x S 0 и существует сущность y E 0, такая, что y y и истинен предикат can_share( r, x, y, G 0 ), где r R r. Так как истинен предикат can_share( r, x, y, G 0 ), то существуют состояния G 1, …, G N = (S N, E N, R N A N F N, H N ) и правила преобразования состояний op 1, …, op N такие, что G 0 op1 G 1 op2 … opN G N и (x, y, r ) R N, где N 0. Если r {write r, append r, read r }, то пусть op N + 1 = access_ (x, y) и G N op(N + 1) G N + 1, где G N + 1 = (S N + 1, E N + 1, R N + 1 A N + 1 F N + 1, H N + 1 ). Тогда (x, y, write t ) F N + 1 и предикат can_write_time(x, y, G 0 ) истинен. Если r = own r, то пусть op N + 1 = own_take(write r, x, y), op N + 2 = access_write(x, y) и G N op(N + 1) G N + 1 op(N + 2) G N + 2, где G N + 2 = (S N + 2, E N + 2, R N + 2 A N + 2 F N + 2, H N + 2 ). Тогда (x, y, write t ) F N + 2 и предикат can_write_time(x, y, G 0 ) истинен. Если r = execute r, то пусть op N + 1 = create_subject(x, y, z) и G N op(N + 1) G N + 1, где G N + 1 = (S N + 1, E N + 1, R N + 1 A N + 1 F N + 1, H N + 1 ) и z S N. Тогда (x, y, write t ) F N+1 и предикат can_write_time(x, y, G 0 ) истинен.
14 14 Фрагменты доказательства теоремы Докажем необходимость выполнения условия теоремы для истинности предиката can_write_time(x, y, G 0 ). Пусть истинен предикат can_write_time(x, y, G 0 ), при этом по определению существуют состояния G 1, …, G N = (S N, E N, R N A N F N, H N ) и правила преобразования состояний op 1, …, op N такие, что G 0 op1 G 1 op2 … opN G N и (x, y, f ) F N, где f {write m, write t } и N 0. Среди всех таких последовательностей выберем ту, у которой длина N является минимальной. В этом случае (x, y, f ) F N – 1. Проведем доказательство индукцией по длине N последовательности преобразований. Пусть N = 1, тогда (x, y, f ) F 0 и существует правило преобразования состояний op 1, такое, что G 0 op1 G 1 и (x, y, f ) F 1. Из определения правил преобразования состояний следует, что возможны девять случаев: x, y S 0, (x, y, own r ) R 0 ; x, y S 0, (y, x, own r ) R 0 ; x S 0, y E 0 и существует сущность y E 0, такая, что y y и (x, y, r ) R 0, при этом r {read r, write r, append r }; x, y S 0 и существуют сущности x, y E 0, такие, что или x y, или y x и {(x, x, r ), {(y, y, r )} R 0, где r, r R r ; y S 0, x E 0, (y, x, read r ) R 0 ; x S 0, y E 0, (x, y, r ) R 0, где r {write r, append r }; x S 0, y E 0 и существует сущность e E 0, такая, что {(x, e, ), (e, y, )} R 0 F 0, где, {write r, append r, write m, write t }; x, y S 0 и существуют сущность e E 0, такая, что {(x, e, ), (y, e, read r )} R 0 F 0, где {write r, append r, write m, write t }; x, y E 0 и существует субъект e S 0, такой, что {(e, x, read r ), (e, y, )} R 0 F 0, где {write r, append r, write m, write t }.
15 15 ДП-модель без кооперации доверенных и недоверенных субъектов Определение. Определение. Назовем траекторию функционирования системы (G*, OP) траекторией без кооперации доверенных и недоверенных субъектов для передачи прав доступа, если при ее реализации используются монотонные правила преобразования состояний, и доверенные субъекты: не дают недоверенным субъектам права доступа к сущностям; не берут у недоверенных субъектов права доступа к сущностям. Определение. Определение. Назовем траекторию функционирования системы (G*, OP) траекторией без кооперации доверенных и недоверенных субъектов для передачи прав доступа и реализации информационных потоков, если она является траекторий без кооперации доверенных и недоверенных субъектов для передачи прав доступа и при ее реализации используются правила преобразования состояний: take_right( r, x, y, z), grant_right( r, x, y, z), own_take( r, x, y, z) с условиями и результатами применения определенными в рамках базовой ДП-модели; create_entity(x, y, z), create_subject(x, y, z), rename_entity(x, y, z), access_read(x, y), access_write(x, y), access_append(x, y), flow(x, y, y, z), find(x, y, z), post(x, y, z), pass(x, y, z) с условиями и результатами применения определенными в рамках ДП-модели без кооперации доверенных и недоверенных субъектов.
16 16 Правила преобразования состояний Предположение. Предположение. Доверенные субъекты системы (G*, OP) не участвуют в реализации информационных потоков по времени.
17 17 ДП-модель с блокирующими доступами доверенных субъектов а) read r б) read r y c y c write t …write t … a b d s a … … b s read r read r x a x a Рис. 4. Примеры, когда невозможна реализация информационного потока по времени с использованием отношения иерархии сущностей
18 18 ДП-модель с блокирующими доступами доверенных субъектов Предположение. Предположение. Блокирующие доступы доверенных субъектов к сущностям системы (G*, OP) препятствуют реализации информационных потоков по времени с использованием данных сущностей и иерархии сущностей, в которую входит данная сущность, за исключением случая, когда сущность является субъектом и участвует в реализации данного информационного потока по времени. Определение. Определение. Иерархией сущностей с учетом блокирующих доступов доверенных субъектов называется заданное на множестве сущностей E отношение частичного порядка « B », удовлетворяющее условиям: для двух сущностей e 1, e 2 E если выполняется неравенство e 1 B e 2, то выполняется неравенство e 1 e 2 ; если сущность e 1 E B, то выполняется равенство {e E: e B e 1 или e 1 B e} = {e 1 } (каждая сущность из E B сравнима только сама с собой); если для сущности e 1 E существует сущность e 2 E B, такая, что выполняется условие e 2 e 1, то выполняется равенство {e E: e B e 1 или e 1 B e} = {e 1 }; если для сущности e E существуют сущности e 1, e 2 E, такие, что e B e 2, e B e 1, то или e 1 B e 2, или e 2 B e 1. В случае, когда для двух сущностей e 1, e 2 E выполняются условия e 1, e 2 E \ E B, e 1 B e 2 и e 1 e 2, будем использовать обозначение: e 1 < B e 2. Определение. Определение. Определим H B : E 2 E функцию иерархии сущностей с учетом блокирующих доступов доверенных субъектов, сопоставляющую каждой сущности c E множество сущностей H B (c) H(c), удовлетворяющих условию H B (c) = {e H(c): e < B c}.
19 19 Теорема. Теорема. Пусть G 0 = (S 0, E 0, R 0 A 0 F 0, H B0 ) состояние системы (G*, OP) и сущности x, y E 0, x y. Пусть также в G 0 отсутствуют информационные потоки по времени, исходящие из доверенных субъектов: F 0 {(s, e, write t ): s L S S 0, e E 0 } =. Предикат can_write_time_block(x, y, G 0, L S ) истинен тогда, и только тогда, когда выполняется одно из условий: Условие 1. Условие 1. В состоянии G 0 реализован информационный поток (x, y, f ) F 0, где f {write m, write t }. Условие 2. Условие 2. Существует последовательность сущностей e 1, …, e m E 0, где e 1 = x, e m = y и m 2, таких, что для каждого i = 1,..., m – 1 выполняется одно из условий: e i N S S 0 и или (e i, e i + 1, f ) F 0, где f {write m, write t }, или истинен предикат can_share( r, e i, e i + 1, G 0, L S ), где r {write r, append r }; e i N S S 0, e i + 1 E 0 \ E B и существует сущность e i + 1 E 0 \ E B, такая, что e i + 1 B e i + 1, и истинен предикат can_share( r, e i, e i + 1, G 0, L S ), где r R r ; e i + 1 N S S 0 и истинен предикат can_share(read r, e i + 1, e i, G 0, L S ); e i, e i + 1 N S S 0 и существуют сущности e i, e i + 1 E 0 \ E B, такие, что или e i B e i + 1, или e i + 1 B e i, и истинны предикаты can_share( r, e i, e i, G 0, L S ) и can_share( r, e i + 1, e i + 1, G 0, L S ), где r, r R r ; e i, e i + 1 N S S 0 и или истинен предикат can_share(own r, e i, e i + 1, G 0, L S ), или истинен предикат can_share(own r, e i + 1, e i, G 0, L S ). Условия реализации информационного потока по времени
20 20 Метод предотвращения запрещенных информационных потоков по времени Метод 1. Метод 1. Условие применения метода. Пусть определена система (G*, OP, G 0 ) с начальным состоянием G 0 = (S 0, E 0, R 0 A 0 F 0, H 0 ) и определены множества доверенных субъектов L S, недоверенных субъектов N S и запрещенных информационных потоков N f. Шаг 1. Шаг 1. Создать в системе доверенный субъект u L S S 0, который будет реализовывать блокирующие доступы. Шаг 2. Шаг 2. Для каждого запрещенного информационного потока по времени (x, y, write t ), где x и y недоверенные субъекты, использовать алгоритм проверки истинности предиката can_write_time_block(x, y, G 0, L S ). Если предикат can_write_time_block(x, y, G 0, L S ) является истинным, рассмотреть все пути (пролеты моста) в G 0, с использованием которых возможна реализация информационного потока. Если для всех запрещенных информационных потоков из N f по времени предикат can_write_time_block(x, y, G 0, L S ) является ложным, то закончить применение метода. Шаг 3. Шаг 3. Для каждого пути, определенного на шаге 2, определить его вид. Возможны два вида путей. Если путь первого вида, то с его использованием реализуется информационный поток по памяти. Если путь второго вида, то с его использованием может быть реализован только информационный поток по времени. Шаг 4. Шаг 4. Если пролет моста первого вида, то удалить любое ребро пути (удалить у недоверенного субъекта право доступа к сущности). Перейти на шаг 2. Шаг 5. Шаг 5. Если путь второго вида реализовать блокирующий доступ доверенного субъекта u к любой сущности, не являющейся субъектом и принадлежащей пути. Перейти на шаг 2. Теорема. Теорема. Пусть G 0 = (S 0, E 0, R 0 A 0 F 0, H 0 ) начальное состояние системы (G*, OP, G 0 ). Пусть определены множества доверенных субъектов L S, недоверенных субъектов N S и запрещенных информационных потоков N f. Тогда в результате применения в системе метода 1 для каждого информационного потока (x, y, write t ) N f, где x и y недоверенные субъекты, предикат can_write_time_block(x, y, G 0, L S ) является ложным.
21 21 ДП-модель с функционально ассоциированными с субъектами сущностями G 0 G 1 own r write m control(x, y, z) x z y x z y Рис. 5. Пример применения правила control(x, y, z) Рис. 6. Связь условий и результатов применения правил преобразования состояний Права доступа Информационные потоки по памяти Информационные потоки по времени Доступы
22 22 ДП-модель с функционально ассоциированными с субъектами сущностями G 0 own r own r write m own r own r write m xs 1 e 1 s 2 s 3 s 4 e 2 y Рис. 7. Рис. 7. Пример состояния, в котором возможно получение недоверенным субъектом x права доступа владения к доверенному субъекту y Определение. Определение. Доверенного субъекта y назовем функционально корректным, если во множество функционально ассоциированным с ним сущностей [y] не входят недоверенные субъекты. Определение. Определение. Доверенного субъекта y назовем корректным относительно сущности e, не являющейся доверенным субъектом, если субъект y не реализует информационный поток по памяти от сущности e к сущности e, функционально ассоциированной с некоторым доверенным субъектом y. При этом по определению каждый доверенный субъект корректен относительно другого доверенного субъекта.
23 23 ДП-модель для политики безопасного администрирования Определение. Определение. В политике безопасного администрирования рассматриваются две угрозы безопасности КС. Угроза 1. Угроза 1. Наличие у пользователя возможности разместить ресурсы на компьютере (запустить процесс или разместить на компьютере файлы) несет угрозу получения им всех прав доступа и привилегий на данном компьютере. Угроза 2. Угроза 2. Обращение пользователя к компьютеру (с целью получить данные файлов локально или по сетевым коммуникационным каналам) несет угрозу захвата его прав доступа и привилегий пользователем, разместившим свои ресурсы на этом компьютере. Предположение. Предположение. Будем считать, что нарушитель имеет два уровня возможностей: если нарушитель может разместить на компьютере свой ресурс, то он имеет возможность управления функциями КС (нарушитель третьего уровня); если нарушитель может только удаленно обращаться к компьютеру, то он имеет возможность ведения диалога с КС (нарушитель первого уровня). Определение. Определение. Будем говорить, что в КС реализована политика безопасного администрирования тогда, и только тогда, когда в КС выполняется следующее условие: получение нарушителем полного контроля (всех привилегий и прав доступа к сущностям, размещенным на компьютере) над компьютером КС не должно приводить к захвату нарушителем полного контроля над другими компьютерами КС посредством реализации нарушителем угроз 1 и 2.
24 24 ДП-модель для политики абсолютного разделения административных и пользовательских полномочий Определение. Определение. Для системы (G*, OP) рассматриваются два возможных начальных состояния системы и два вида траекторий: G 0 начальное состояние для пользовательских траекторий функционирования системы P(G 0 ), на которых недоверенные пользователи выполняют свои функции в системе; GA 0 начальное состояние для административных траекторий функционирования системы P(GA 0 ), предназначенных только для администрирования системы. Предположение. Предположение. На всех траекториях системы из множеств P(G 0 ) и P(GA 0 ) определены доверенные пользователи, обладающие правом доступа владения к каждой сущности, размещенной на компьютере. Кроме того, на траекториях системы из множества P(G 0 ): определен доверенный пользователь kernel c S пользователь-«ядро ОС», при этом всегда выполняется условие (kernel c, own r ) RC(c); всегда найдется недоверенный пользователь, активизировавший процесс от своего имени на компьютере c. Предположение. Предположение. Доверенный пользователь kernel c реализован функционально корректным и корректным относительно всех сущностей ECE(c) компьютера c. На траекториях P(GA 0 ) активизируют процессы только доверенные пользователи, которые являются корректными относительно всех сущностей ECE(c) компьютера c. Если в системе (G*, OP) существует доверенный пользователь s 1 S \ {kernel c }, который в состоянии G = (S, E, R A F, H) системы активизировал процесс от своего имени на компьютере c EC, то выполняются условия (s 1, c, write r ) R, ECE(c) [s 1 ]. При этом, если недоверенный пользователь s 2 S в состоянии G системы активизировал процесс от своего имени на компьютере c, то выполняется условие s 2 [s 1 ].
25 25 Методы предотвращения возможности получения права доступа владения Метод предотвращения возможности получения права доступа владения недоверенным субъектом к доверенному субъекту с использованием реализации информационного потока по памяти к сущности, функционально ассоциированной с доверенным субъектом; Метод реализации политики безопасного администрирования (для распределенных КС); Метод реализации политики абсолютного разделения административных и пользовательских полномочий (для рабочих станций пользователей).
26 26 Мандатная ДП-модель. Виды запрещенных информационных потоков Определение. Определение. Определим как запрещенные в КС с мандатным управлением доступом следующие четыре вида информационных потоков (запрещенные информационные потоки из множества N f ). 1.Информационные потоки по памяти и по времени между сущностями одного уровня конфиденциальности (определяются в соответствии с априорно заданной политикой управления доступом и информационными потоками). 2.Информационные потоки по памяти от сущностей с большим уровнем конфиденциальности к сущностям с меньшим уровнем конфиденциальности информации. 3.Информационные потоки по времени от сущностей с большим уровнем конфиденциальности к сущностям с меньшим уровнем конфиденциальности информации. 4.Информационные потоки по памяти от субъектов с низким уровнем доступа к субъектам с высоким уровнем доступа или к сущностям, функционально ассоциированным с субъектами с высоким уровнем доступа.
27 27 Мандатная ДП-модель. Основные определения (L, ) решетка линейно упорядоченных уровней доступа и конфиденциальности; ES E \ S множество сущностей, которые могут быть применены для создания новых субъектов. Определим функции: f s : S L функция, определяющая уровень доступа каждого субъекта системы (G*, OP); f e : E \ S L функция, определяющая уровень конфиденциальности каждой сущности системы, не являющейся субъектом, при этом, если для двух сущностей e 1, e 2 E выполняется неравенство e 1 e 2 (сущность e 1 содержится в контейнере e 2 ), то по определению выполняется условие f e (e 1 ) f e (e 2 ); CCR: E \ S {true, false} функция, определяющая способ доступа к сущностям, не являющимся субъектами, внутри контейнеров. Определение. Определение. В состоянии G = (S, E, R A F, H, (f s, f e ), CCR) системы (G*, OP) доступ (s, e, ) A, где субъект s S, сущность e E \ S, вид доступа R a, обладает ss-свойством, если выполняются условия: f s (s) f e (e); для каждой сущности-контейнера e E \ S, такой, что e < e и CCR(e) = true, выполняется неравенство f s (s) f e (e). Определение. Определение. В состоянии G = (S, E, R A F, H, (f s, f e ), CCR) системы (G*, OP) доступы (s, e 1, read a ), (s, e 2, ) A, где субъект s S, сущности e 1, e 2 E \ S, вид доступа {write a, append a }, обладают *-свойством, если выполняется условие f e (e 1 ) f e (e 2 ).
28 28 Мандатная ДП-модель. Правила преобразования состояний
29 29 Условия несанкционированного повышения уровня доступа субъекта Теорема. Теорема. Пусть уровень доступа l L и G 0 = (S 0, E 0, R 0 A 0 F 0, H 0, (f s0, f e0 ), CCR 0 ) состояние системы (G*, OP), которое безопасно в смысле Белла-ЛаПадула и в котором существует недоверенный субъект x N S S 0, и A 0 = F 0 =. Предикат can_increase_level(x, G 0 ) является истинным тогда, и только тогда, когда для l = f s0 (x) существует субъект y S 0 \ N S (l), такой, что f s0 (y) l и выполняется одно из условий: Условие 1. Условие 1. Субъект y функционально некорректен относительно субъекта x. Условие 2. Условие 2. Существует субъект y S 0 такой, что f s0 (y) l, и субъект y некорректен относительно сущности x и субъекта y. Условие 3. Условие 3. Существует сущность e E 0 такая, что e [y], f e0 (e) l, и для каждой сущности-контейнера e E 0 такой, что e < e и CCR 0 (e) = true, выполняется неравенство f e0 (e) l. Условие 4. Условие 4. Существуют сущность e E 0 и субъект y S 0 такие, что f e0 (e) l, f s0 (y) l, и для каждой сущности-контейнера e E 0 такой, что e < e и CCR 0 (e) = true, выполняется неравенство f e0 (e) l, и субъект y некорректен относительно сущности e и субъекта y.
30 30 Информационные потоки по времени x read a s x write t f e0 (x) write t read a z x write t B write a z y s y write a write m write t f e0 (y) y Рис. 8. Пример доступов и информационных потоков в системе с мандатным управлением доступом
31 31 Мандатные ДП-модели с блокирующими доступами доверенных субъектов Мандатная ДП-модель с блокирующими доступами доверенных субъектов; отождествлением порожденных субъектов ДП-модель с отождествлением порожденных субъектов (в системе существует только один недоверенный субъект, от имени которого порождены все другие недоверенные субъекты, и доступы всех недоверенных субъектов рассматриваются как доступы одного субъекта); для политики строгого мандатного управления доступом ДП-модель для политики строгого мандатного управления доступом (в системе могут существовать несколько недоверенных субъектов, каждый из которых реализует доступы к сущностям только одного уровня конфиденциальности).
32 32 Метод предотвращения возможности реализации запрещенных информационных потоков по времени Метод. Метод. Условие применения метода. Пусть определена система (G*, OP, G 0 ) с начальным состоянием G 0 = (S 0, E 0, R 0 A 0 F 0, H B0, (f s0, f e0 ), CCR 0 ) и A 0 = A B, F 0 =. Шаг 1. Шаг 1. Выделить в системе (G*, OP, G 0 ) компьютеры EC1, функциональность которых ограничена. Шаг 2. Шаг 2. Для компьютеров из EC1 обеспечить доверенность всех активизируемых на них субъектов. Реализовать систему управления доступом системы таким образом, чтобы обеспечивалась безопасность в смысле Белла-ЛаПадула доступов доверенных субъектов. Шаг 3. Шаг 3. Выделить компьютеры EC2, на каждом из которых должна быть обеспечена возможность активизации субъектов от имени только одного недоверенного субъекта-пользователя. Шаг 4. Шаг 4. Если это необходимо для реализации используемой в моделируемой реальной КС технологии обработки информации, то для каждого недоверенного субъекта-пользователя компьютера из EC2, во множество доступных ему сущностей включить сущности, размещенные на компьютерах из EC1. При этом реализовать иерархию подчиненности сущностей системы, обеспечивающую невозможность доступов недоверенных субъектов к сущностям в одной иерархии. Шаг 5. Шаг 5. Реализовать систему управления доступом системы (G*, OP, G0) таким образом, чтобы обеспечивалась безопасность доступов доверенных субъектов компьютеров из EC2 в смысле Белла-ЛаПадула, доступов недоверенных субъектов, активизированных от имени субъектов-пользователей компьютеров из EC2, в смысле Белла-ЛаПадула с отождествлением порожденных субъектов. Шаг 6. Шаг 6. Выделить компьютеры EC3, на каждом из которых должна быть обеспечена возможность активизации субъектов несколькими недоверенными субъектами-пользователями. При этом реализовать иерархию подчиненности компьютеров системы, удовлетворяющую условию: для любых c 1 EC2, c 2 EC3 не выполняется одно из сравнений: c 1 < c 2 или c 2 < c 1. Шаг 7. Шаг 7. Если это необходимо для реализации используемой в моделируемой реальной КС технологии обработки информации, то для каждого недоверенного субъекта-пользователя user N S, активизирующего субъектов на компьютерах из EC3, во множество сущностей EU(user) включить сущности, размещенные на компьютерах из EC1. При этом реализовать иерархию подчиненности сущностей системы, обеспечивающую невозможность доступов недоверенных субъектов к сущностям в одной иерархии. Шаг 8. Шаг 8. Реализовать систему управления доступом системы (G*, OP, G 0 ) таким образом, чтобы обеспечивалась безопасность доступов доверенных субъектов компьютеров из EC3 в смысле Белла-ЛаПадула, недоверенных субъектов-пользователей компьютеров из EC3 в смысле строгого мандатного управления доступом. Шаг 9. Шаг 9. Реализовать всех доверенных субъектов системы (G*, OP, G 0 ) таким образом, чтобы на всех траекториях функционирования системы доверенные субъекты не создавали недоверенных субъектов.
33 33 Семейство ДП-моделей Базовая ДП-модель КС с дискреционным управлением доступом Случай кооперации всех субъектов Передача прав доступа Информационные потоки по памяти Информационные потоки по времени ДП-модель без кооперации доверенных и недоверенных субъектов Передача прав доступа Информационные потоки по памяти Информационные потоки по времени ДП-модель с блокирующими доступами доверенных субъектов Информационные потоки по времени ДП-модель с функционально ассоциированными с субъектами сущностями Информационные потоки по памяти Корректные субъекты ДП-модель для политики безопасного администрирования ДП-модель для политики абсолютного разделения административных и пользовательских полномочий МандатнаяДП-модель Безопасность в смысле Белла- ЛаПадула Повышение субъектом уровня доступа Мандатная ДП-модель с отождествлением порожденных субъектов Мандатная ДП-модель для политики строгого мандатного управления доступом Мандатная ДП-модель с блокирующими доступами доверенных субъектов
34 34 Сравнительный анализ возможностей применения моделей безопасности в современных КС
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.