- •Иногда знание общих законов способно
- •Введение
- •Глава 1
- •1.1. Основные понятия и определения
- •1.3. Структуризация методов обеспечения информационной безопасности
- •1.4. Основные методы реализации угроз информационной безопасности
- •1.5. Основные принципы обеспечения
- •Список литературы к главе 1
- •Глава 2
- •2.1. Построение систем защиты от угрозы нарушения конфиденциальности информации. Организационно-режимные меры защиты носителей информации в ас.
- •Парольные системы для защиты от несанкционированного доступа к информации
- •Общие подходы к построению парольных систем
- •Передача пароля по сети
- •Криптографические методы защиты
- •Утечки информации по техническим каналам:
- •Требования к скзи.
- •Способы и особенности реализации криптографических подсистем
- •Криптографическая защита транспортного уровня ас
- •Особенности сертификации и стандартизации криптографических средств.
- •Защита от угрозы нарушения конфиденциальности на уровне содержания информации.
- •2.2. Построение систем защиты от угрозы нарушения целостности информации
- •Целостность данных в ас
- •Модель контроля целостности Кларка-Вилсона
- •Защита памяти
- •Барьерные адреса
- •Динамические области памяти
- •Адресные регистры
- •Страницы и сегменты памяти
- •Цифровая подпись
- •Защита от угрозы нарушения целостности информации на уровне содержания
- •2.3. Построение систем защиты от угрозы отказа доступа к информации
- •Защита от сбоев программно-аппаратной среды
- •Обеспечение отказоустойчивости по ас
- •Предотвращение неисправностей в по ас.
- •2.4. Построение систем защиты от угрозы раскрытия параметров информационной системы
- •2.5. Методология построения защищенных ас
- •Иерархический метод разработки по ас
- •Исследование корректности реализации и верификация ас
- •Теория безопасных систем (тсв)
- •Глава 3 политика безопасности
- •3.1. Понятие политики безопасности
- •3.2. Понятия доступа и монитора безопасности
- •3.3. Основные типы политики безопасности
- •3.4. Разработка и реализация политики безопасности
- •3.5. Домены безопасности
- •Глава 4
- •4.1. Модель матрицы доступов hru
- •4.2. Модель распространения прав доступа take-grant
- •Санкционированное получение прав доступа.
- •Возможность похищения прав доступа
- •Расширенная модель Take-Grant
- •4.3. Модель системы безопасности белла-лападула Основные положения модели
- •Пример некорректного определения безопасности в модели бл
- •Подход Read-Write (rw)
- •Подход Transaction (т)
- •Проблемы использования модели бл
- •Модель Low-Water-Mark
- •4.4. Модель безопасности информационных потоков
- •Пример автоматной модели системы защиты gm
- •Глава 5 основные критерии защищенности ас. Классификация систем защиты ас.
- •5.1. Руководящие документы государственной технической комиссии россии
- •Основные положения концепции защиты свт и ас от нсд к информации.
- •Показатели защищенности средств вычислительной техники от нсд.
- •5.2. Критерии оценки безопасности компьютерных систем министерства обороны сша ("оранжевая книга")
- •Общая структура требований tcsec
- •5.3. Европейские критерии безопасности информационных технологий
- •5.4. Федеральные критерии безопасности информационных технологий
- •Функциональные требования к продукту информационных технологий
- •Структура функциональных требований
- •Ранжирование функциональных требований
- •Требования к процессу разработки продукта информационных технологий
- •Требования к процессу сертификации продукта информационных технологий
- •Заключение
4.3. Модель системы безопасности белла-лападула Основные положения модели
Классическая модель Белла-Лападула (БЛ) построена для анализа систем защиты, реализующих мандатное (полномочное) разграничение доступа. Возможность ее использования в качестве формальной модели таких систем непосредственно отмечена в критерии TCSEC ("Оранжевая книга"). Модель БЛ была предложена в 1975 г. [3]. Однако ее полное описание до сих пор недоступно, поэтому мы приведем его в урезанном виде по [1] и [10].
Пусть определены конечные множества: S-множество субъектов системы (например, пользователи системы и программы); О-множество объектов системы (например, все системные файлы); R={read, write, append, execute} - множество видов доступа субъектов из S к объектам из О, где read - доступ на чтение, write-на запись, append-на запись в конец объекта, execute - на выполнение.
Обозначим:
B = {bSОR}-множество возможных множеств текущих доступов в системе;
М-матрица разрешенных доступов, где МsoR-разрешенный доступ субъекта s к объекту о;
L -множество уровней секретности, например L={U,C,S,TS}, где
U<C<S<TS;
(fs,fo,fc)F=Lsx Lox Ls - тройка функций (fs,fo,fc), определяющих:
fs: SL- уровень допуска субъекта;
fo: OL-уровень секретности объекта;
fc: SL-текущий уровень допуска субъекта, при этомsSfc(s)≤ fs(s);
H-текущий уровень иерархии объектов (далее не рассматривается);
V=B x M x F x H- множество состояний системы;
Q- множество запросов системе;
D - множество решений по запросам, например {yes, no, error};
WQ x D x V xV - множество действий системы, где четверка (q,d,v2,v1,)W означает, что система по запросу q с ответом d перешла из состояния v1 в состояние v2,
N0- множество значений времени (N0 =0,1,2,...);
X - множество функций х: N0Q, задающих все возможные последовательности запросов к системе;
У-множество функций у: N0D, задающих все возможные последовательности ответов системы по запросам;
Z -множество функций z: N0V, задающих все возможные последова- тельности состояний системы.
Определение 1. (Q,D,W,z0)X x V xZ называется системой, если выполняется (x,y,z)(Q,D,W,z0) тогда и только тогда, когда (xt,yt,zt+1,zt) W для каждого, tN0 где z0-начальное состояние системы. При этом каждый набор (x,y,z)(Q,D,W,z0)называется реализацией системы, a (xt,yt,zt+1,zt) W - действием системы tN0.
Безопасность системы определяется с помощью трех свойств:
1) ss-свойства простой безопасности (simple security);
2) *- свойства "звезда";
3)ds - свойства дискретной безопасности (discretionary security). Определение 2. Доступ (s,o,r)SOR обладает ss-свойством относительно f=(fs,fo,fc)F. если выполняется одно из условий:
• r{execute, append};
• r{read, write} и fs(s)fo(o).
Определение З. Состояние системы (b,M,f,h)V обладает ss-свойством, если каждый элемент (s,o,r)b обладает ss-свойством относительно f.
Определение 4. Доступ (s,o,r)SOR удовлетворяет *-свойству относительно f=(fs,fo,fc)F, если выполняется одно из условий:
• r=execute;
• r=append и fo(o)=fc(s);
• r=read и fc (s)= fo(o);
• r=write и fc (s)= fo(o).
Определение 5. Состояние системы (b,M,f,h)V обладает *-свойством, если каждый элемент (s, о, г)Ь обладает *-свойством относительно f.
Определение 6. Состояние системы (b,M,f,h)V обладает *-свойством, относительно подмножества S'S, если каждый элемент (s,o,r)b, где sS'обладает *-свойством относительно f. При этом S\S' называются множеством доверенных субъектов, т. е. субъектов, имеющих право нарушать политику безопасности.
Определение 7. Состояние системы (b,M,f,h) V обладает ds-свойством, если для каждого элемента (s,o,r) b выполняется rMso.
Определение 8. Состояние системы (b,M,f,h) называется безопасным, если обладает *-свойством относительно S', ss-свойством и ds-свойством.
Определение 9. Реализация системы (x,y,z)(Q,D,W,zo) обладает ss-свойством (*-свойством, d-свойством), если в последовательности (z0,z1,...) каждое состояние обладает ss-свойством (*-свойством, ds-свойством).
Определение 10. Система (Q,D,W,zo) обладает ss-свойством (*-свойством, ds-свойством), если каждая ее реализация обладает ss-свойством (*-свойством, ds-свойством).
Определение 11. Система (Q,D,W,zo) называется безопасной, если она обладает ss-свойством, *-свойством, ds-свойством одновременно.
Прокомментируем введенные выше свойства безопасности системы. Во-первых, из обладания доступом *-свойством относительно f следует обладание этим доступом ss-свойством относительно f. Во-вторых, из обладания системой ss-свойством следует, что в модели БЛ выполняется запрет на чтение вверх, принятый в мандатной (полномочной) политике безопасности. Кроме того, ss-свойство не допускает модификацию с использованием доступа write, если fs(s) <fo(o). Таким образом, функция fs(s) определяет для субъекта s верхний уровень секретности объектов, к которым он потенциально может получить доступ read или write.
В-третьих, поясним *-свойство. Если субъект s может понизить свой текущий доступ до fc(s) = fo(о), то он может получить доступ write к объекту о, но не доступ read к объекту о', с уровнем fo(о')>fc(s). Хотя при этом, возможно, выполняется fs(s)= fo(о') и в каких-то других состояниях системы субъект s может получить доступ read к объекту о'. Таким образом, *-свойство исключает появление в системе канала утечки информации сверху вниз (пример на рис. 4.10) и соответствует требованиям мандатной (полномочной) политики безопасности.
Проверка безопасности системы по определению в большинстве случаев не может быть реализована на практике в связи тем, что при этом требуется проверка безопасности всех реализаций системы, а их бесконечно много. Следовательно, необходимо определить и обосновать иные условия безопасности системы, которые можно проверять на практике. В классической модели БЛ эти условия определяются для множества действий системы W.
Теорема А1. Система (Q, D, W, zo) обладает ss-свойством для любого начального состояния zo, обладающего ss-свойством, тогда и только тогда, когда (q,d,(b*, М*,f*,h*), (b, M,f, h)) W удовлетворяет условиям:
Условие 1. (s,o,r) b*\b обладает ss-свойством относительно f*.
Условие 2. Если (s,o,r)b и не обладает ss-свойством относительно f*, то (s,o, г) b*.
Доказательство.
Достаточность. Пусть выполнены условия 1 и 2 и пусть (x,y,z) (Q,D, W,zo) - произвольная реализация системы. Тогда (хt,yt,(bt+1, Mt+1, ft+1,ht+1)(bt, Mt, ft, ht)) W, где zt+1 = (bt+1, Mt+1, ft+1, ht+1), zt = (bt, Mt, ft, ht) для tN0.
Для любого (s,o,r) bt+1 выполняется или (s,o,r) bt+1\bt, или (s,o,r)bt. Из условия 1 следует, что состояние системы zt+1 пополнилось доступами, которые обладают ss-свойством относительно f*. Из условия 2 следует, что доступы из bt, которые не обладают ss-свойством относительно f* не входят в bt+1. Следовательно (s,o,r) bt+1 обладают ss-свойством относительно f* и по определению состояние zt+1 обладает ss-свойством для tNo. Так как по условию и состояние zo обладает ss-свойством, то выбранная нами произвольная реализация (x,y,z) также обладает ss-свойством. Достаточность доказана.
Необходимость. Пусть система (Q,D,W,zo) обладает ss-свойством. Будем считать, что в множество W входят только те действия системы, которые используются в ее реализациях. Тогда (q,d,(b*,M*,f*,h*),(b,M,f,h))W (x,y,z) (Q,D,W,zo) и tN0: (q,d,(b*,M*,f*,h*),(b,M,f,h))= (хt,yt,zt+1,zt). Так как реализация системы (x,y,z) обладает ss-свойством, то и состояние zt+1 = =(b*,M*,f*,h*) обладает ss-свойством по определению. Следовательно, условия 1 и 2 очевидно выполняются. Необходимость доказана.
Теорема А2. Система (Q,D,W,zo) обладает *-свойством относительно S'S для любого начального состояния zo, обладающего *-свойством относительно S', тогда и только тогда, когда (q,d,(b*,M*,f*,h*),(b,M,f,h))W удовлетворяет условиям:
Условие 1. sS', (s,o,r) b*\b обладает *-свойством относительно f*.
Условие 2. sS', если (s,o,r) b и не обладает *-свойством относительно f*, то (s,o.r) b*.
Доказательство. Аналогично доказательству теоремы А1.
Теорема A3. Система (Q,D,W,zo) обладает ds-свойством для любого начального состояния zo, обладающего ds-свойством, тогда и только тогда, когда (q,d,(b*,M*,f*,h*),(b,M,f,h))W удовлетворяет условиям:
Условие 1. (s,o,r)b*\b, выполняется rmso.
Условие 2. Если (s,o,r)b и rmso, то (s,o,r) b*.
Доказательство. Аналогично доказательству теоремы А1.
Теорема BST (Basic Security Theorem). Система (Q,D,W,zo) безопасна тогда и только тогда, когда zo безопасное состояние и множество действий системы W удовлетворяет условиям теорем А1, А2, A3.
Доказательство. Теорема BST следует из теорем А1, А2, A3.
Описанная выше классическая модель БЛ предлагает общий подход к построению систем, реализующих мандатную (полномочную) политику безопасности. В модели БЛ определяется, какими свойствами должны обладать состояния и действия системы, чтобы она была безопасной согласно определению 11. В то же время в модели не указывается конкретно, что должна делать система по запросам на доступ субъектов к объектам при переходе из состояния в состояние, как конкретно должны при этом изменяться значения элементов модели.
Пример 1. Воспользуемся рис. 4.10. Пусть субъект s запрашивает доступ read к объекту о'. В данной ситуации система может выбрать один из двух возможных путей:
1) запретить субъекту s запрашиваемый им доступ read на объект о';
2) закрыть доступ write субъекта s к объекту о; повысить текущий уровень секретности fc(s) до High, разрешить субъекту s запрашиваемый им доступ read к объекту о'.
Каждый из описанных путей соответствует требованиям безопасности модели БЛ.
В реальных системах возможны более сложные ситуации, чем ситуация, описанная в примере 1. Кроме того, возможно использование в системе каких-то других видов доступа субъектов к объектам, которые потребуют доопределения свойств безопасности, что не всегда легко сделать. В связи с этим большое значение имеет корректное определение свойств безопасности.
Ниже по [10] приводится пример некорректного определения безопасности в модели БЛ, где вместо *-свойства используется абсурдное с точки зрения здравого смысла -свойство. Однако при этом не возникает никаких противоречий в логике доказательства теорем, определяющих условия безопасности системы.