Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Теоретические основы защиты информации. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
08.09.2026
Размер:
2 Мб
Скачать
☆
8.2. Модель Белла и Лападула
Идеи, лежащие в основе модели Белла и Лападула, берут про­исхождение из «бумажного мира». Белл и Лападула перенесли мо­дель безопасности, принятую при работе с документами, в мир компьютерных систем. Основным наблюдением, сделанным Бел­лом и Лападулой, является то, что в правительстве США все субъ­екты и объекты ассоциируются с уровнями секретности, варьиру­ющимися от низких уровней (неклассифицированных) до высоких (совершенно секретных). Кроме того, они обнаружили, что для предотвращения утечки информации к неуполномоченным субъек­там этим субъектам с низкими уровнями секретности не позволя­ется читать информацию из объектов с высокими уровнями сек­ретности. Это ведет к первому правилу модели Белла и Лападула.
Простое свойство безопасности, также известное как правило «нет чтения вверх» (No Read Up, NRU), гласит, что субъект с уровнем секретности xs может читать информацию из объекта с уровнем секретности хо, только если xs преобладает над хо. Это означает, что если в системе, удовлетворяющей правилам модели Белла и Лападула, субъект с уровнем доступа «Секретный» попы­тается прочитать информацию из объекта, классифицированного как «Совершенно секретный», то такой доступ будет запрещен.
Белл и Лападула сделали дополнительное наблюдение при по­строении своей модели: в правительстве США субъектам не поз­воляется размещать информацию или записывать ее в объекты, имеющие более низкий уровень секретности. Например, когда «Совершенно секретный» документ помещается в «Неклассифи­цированное» мусорное ведро, может произойти утечка информа­ции. Это ведет ко второму правилу модели Белла и Лападула.
Свойство *, известное как правило «нет записи вниз» (No Write Down, NWD), гласит, что субъект с уровнем секретности xs может писать информацию в объект с уровнем секретности хо, только если хо преобладает над xs. Это означает, что если в систе- ме, удовлетворяющей правилам модели Белла и Лападула, субъект с уровнем доступа «Совершенно секретно» попытается записать информацию в «Неклассифицированный» объект, то такой доступ не будет разрешен. Введение свойства * разрешает проблему тро-
111
янских коней, так как запись информации на более низкий уровень
Sh Oh
SiOi
write
read
write
read
write
read
read
write
Высокий
уровень
секретности
Низкий
уровень
секретности
секретности, типичная для троянских коней, запрещена.
Правила запрета по записи и чтению отвечают интуитивным представлениям о том, как предотвратить утечку информации к неуполномоченным источникам.
На рис. 8.1 показаны потоки информации в модели Белла и Лападула.
Рассмотрим формализацию модели Белла и Лападула.
S – множество субъектов;
О – множество объектов, включающее в себя множество субъ­ектов;
L – решетка уровней секретности с линейным отношением ча­стичного порядка (преобладания уровня секретности) ≥;
Рис. 8.1. Диаграмма потоков данных для модели Белла и Лападула
F: S О → L – функция, применяемая к субъектам и объек­там; данная функция определяет уровни секретности своих аргу­ментов в данном состоянии;
V – множество состояний – множество упорядоченных пар (F, М), где М – матрица доступа субъектов системы к объектам.
Для удобства обозначения введем также линейное отношение строгого порядка < на решетке L, где x, у L, таких, что
х≥у & х ≠ у у < х.
112
Система представляется начальным состоянием ν0, определен­ным множеством запросов к системе R и функцией переходов Т: (V х R) → V, такой, что система переходит из состояния в состоя­ние после исполнения запроса. Сформулируем определения, необ­ходимые для доказательства основной теоремы безопасности, для модели Белла и Лападула.
Определение 8.1. Состояние (F, М) безопасно по чтению (NRU) тогда и только тогда, когда для s S и для o О, read 
M[s, о] F(s) ≥ F(o).
Определение 8.2. Состояние (F, М) безопасно по записи (NWD, *-свойство) тогда и только тогда, когда для s S и для o О, write M[s, о] F(o) ≥ F(s).
Определение 8.3. Состояние безопасно тогда и только тогда, когда оно безопасно по чтению и записи.
Теорема 8.1 (основная теорема безопасности). Система (v0, R, Т) безопасна тогда и только тогда, когда состояние v0 безопасно и Т таково, что для любого состояния v, достижимого из v0 после ис­полнения конечной последовательности запросов из R, T(v,c) – v*, где v = (F, М) и v* = (F*, М*), переходы системы (Т) из состояния в состояние подчиняются следующим ограничениям для s  S и для o  О:
– если read M*[s, о] и read M[s, о], то F*(s) ≥ F*(o);
– если read M[s, о] и F*(s) < F*(o), mo read M*[s, o];
– если write M*[s, о] и write M[s, о], mo F*(o) ≥ F*(s);
– если write M[s, о] и F*(o) < F*(s), mo write M*[s, о].
Доказательство.
1. Необходимость. Предположим, система безопасна. Состоя-
ние v0 безопасно по определению. Если имеется некоторое состоя­ние v, достижимое из состояния v0 после исполнения конечной по­следовательности запросов из R, таких, что Т(v, с) = v*, хотя v* не удовлетворяет одному из двух первых ограничений для Т, то v* будет достижимым состоянием, но противоречащим ограничению безопасности по чтению. Если v* не удовлетворяет одному из двух последних ограничений для Т, то v* будет достижимым состояни­ем, но противоречащим ограничению безопасности по записи. В любом случае система небезопасна.
113
2. Достаточность. Предположим, что система небезопасна.
В этом случае либо v0 должно быть небезопасно, либо должно быть небезопасно состояние v, достижимое из состояния v0 после исполнения конечной последовательности запросов из R. Если v0 небезопасно – все доказано. Если v0 безопасно, допустим, что v0* – первое в последовательности запросов небезопасное состояние. Это означает, что имеется безопасное состояние v, такое, что T(v, с) = v*, где v* – небезопасно. Но это противоречит четырем ограничениям безопасности на Т.
По поводу основной теоремы безопасности для модели Белла и Лападулы можно заметить следующее. Она может быть доказана для любого определения «безопасного» состояния, в том числе и интуитивно небезопасного.
Основная теорема безопасности для модели Белла и Лападулы относится к проблеме индексации состояний системы, а не к про­блеме безопасности. На самом деле определение безопасности в модели должно отражать реальную безопасность. Кроме этого, моделируемая система должна поддерживать эту безопасность.
Основная теорема безопасности не относится к первому тре­бованию, а также не облегчает решение второй проблемы. Перехо­ды в основной теореме безопасности говорят о том, что любой не­корректный доступ будет удален из матрицы доступа и ни одного некорректного доступа не будет в нее введено. Но данное утвер­ждение является тривиальным.
В качестве примера реализации мандатного контроля досту­пом можно привести операционную систему Trusted Xenix 3.0. Мандатный контроль управления доступом в Trusted Xenix 3.0 опирается на иерархические уровни и неиерархические категории. Решение о доступе принимается на основании модели Белла и Ла­падула. Данные об уровне безопасности и категории объекта хра­нятся в описателе объекта. В системе поддерживается 255 уровней секретности и 64 категории.
8.3. Критика модели Белла и Лападула
Несмотря на все достоинства, оказалось, что при использова­нии модели Белла и Лападула в контексте практического проекти­рования и разработки реальных компьютерных систем возникает
114
ряд технических вопросов, что является логическим следствием достоинства модели Белла и Лападула – ее простоты. Проблемы появляются при рассмотрении вопросов построения политик без­опасности для конкретных типов систем, т. е. на менее абстракт­ном уровне. Здесь системный компонент модели усложняется, что может привести к неадекватности модели Белла и Лападула в ее классической форме. Как следствие в мире компьютерной без­опасности ведется широкая полемика по поводу применимости модели Белла и Лападула для построения безопасных систем.
Рассмотрим ряд примеров критики модели Белла и Лападула. Некоторые из них взяты из литературы, посвященной вопросам безопасности, другие часто включаются в техническое описание и представляют собой так называемую «обязательную критику» мо­дели Белла и Лападула.
В свете недавних тенденций использования распределенных конфигураций требуется рассматривать модели безопасности не только для автономных, но и для распределенных компьютерных систем. Очевидным способом распространения модели Белла и Лападула на распределенные системы будет назначение уровней секретности различным компонентам этих систем и соблюдение гарантий выполнения правил-ограничений по чтению и записи.
Например, некоторым компонентам можно назначить уровни секретности, меняющиеся от неклассифицированного до совер­шенно секретного уровня, и на основании принципов модели Белла и Лападула синтезировать соединения между различными компо­нентами системы. Может показаться, что если конфиденциальному субъекту А будет разрешено чтение информации из неклассифици­рованного объекта В, никакая конфиденциальная информация не будет раскрыта. Но при более подробном рассмотрении реализа­ции операции удаленного чтения снизу может быть сделано не­приятное наблюдение. Операция чтения между удаленными ком­понентами приводит к протеканию потока информации от читае­мого объекта к запросившему доступ на чтение субъекту. Данный поток является безопасным, поскольку информация не разглашает­ся неавторизованному субъекту. Однако в распределенной конфи­гурации чтение инициируется запросом от одного компонента к другому. Такой запрос образует прохождение потока информации
115
в неверном направлении (запись в объект с меньшим уровнем сек-
Sh
Oi
read
write
Высокий
уровень
секретности
Низкий
уровень
секретности
ретности), как это показано на рис. 8.2. Таким образом, удаленное чтение в распределенных системах может произойти, только если ему предшествует операция записи вниз, что является нарушением правил модели Белла и Лападула.
Многие исследователи рассматривают эту проблему как наиболее убедительное свидетельство неадекватности модели Бел­ла и Лападула.
Рис. 8.2. Удаленный запрос на чтение
Однако на практике эта проблема часто является несуще­ственной; достаточно внедрения в систему дополнительных средств обработки удаленных запросов для обеспечения того, что­бы поток информации от высокоуровневого субъекта к низкоуров­невому объекту был ограничен запросом на доступ. Фактически некоторые архитектуры предлагают отдельные компоненты, вы­полняющие обработку таких запросов и потока информации в рас­пределенных системах.
какие субъекты должны подчиняться этим правилам. Например, компьютерные системы обычно имеют администратора, который управляет системой, добавляя и удаляя пользователей, восстанав­ливает функционирование после сбоев, устанавливает специальное программное обеспечение, устраняет ошибки в операционной си-
В описании правил модели Белла и Лападула не было указано,
116
стеме или приложениях и т. п. Очевидно, что процессы, действу­ющие в интересах таких администраторов, не могут управляться правилами модели Белла и Лападула или каких-либо других моде­лей, не позволяющих им выполнять функции администрирования.
Это наблюдение высвечивает еще одну техническую пробле­му, связанную с правилами модели Белла и Лападула. Можно ска­зать, что эти правила обеспечивают средства для предотвращения угрозы нарушения секретности для нормальных пользователей, но не говорят ничего по поводу той же проблемы для так называемых доверенных субъектов. Доверенные субъекты могут функциониро­вать в интересах администратора. Также они могут быть процесса­ми, обеспечивающими критические службы, такие как драйвер устройства или подсистема управления памятью. Такие процессы часто не могут выполнить свою задачу, не нарушая правил модели Белла и Лападула. Неприменимость модели Белла и Лападула для доверенных субъектов может быть выражена путем внесения по­правки в данное ранее определение операций чтения и записи мо­дели Белла и Лападула. Но хотя это и делает определение более точным, оно нисколько не облегчает задачу для разработчика, же­лающего построить безопасный драйвер или утилиту поддержки работы администратора.
Одним из решений, рассматриваемых в литературе по без­опасности, было предложение представлять и использовать для потока информации модель, требующую того, чтобы никакая вы­сокоуровневая информация никогда не протекала на более низкий уровень.
Джон Мак Лин разработал концептуальное описание системы, названной Система Z. Данное описание показывает, что система, удовлетворяющая правилам модели Белла и Лападула, может иметь ряд проблем с секретностью. Система Z выражается в тер­минах набора субъектов и объектов, с каждым из которых связан уровень секретности. Совокупность уровней секретности для каж­дого субъекта и объекта в некоторый момент времени описывает состояние системы. Система Z удовлетворяет модели Белла и Ла­падула, если во всех состояниях системы комбинации уровней субъектов и объектов таковы, что в этом состоянии никакой субъ­ект не может осуществить запись вниз или чтение сверху.
117
Предположив, что система Z удовлетворяет условиям модели Белла и Лападула, можно быть уверенным, что любая угроза сек­ретности будет обнаружена. Однако Мак Лин указал на техниче­скую деталь, которая не очевидна в таких системах. Если в некото­ром состоянии секретный субъект захотел прочитать совершенно секретный объект, то до тех пор, пока система удовлетворяет мо­дели Белла и Лападула, осуществить это будет невозможно, но ни­что в модели Белла и Лападула не предотвращает систему от «де­классификации» объекта от совершенно секретного до секретного (по желанию совершенно секретного пользователя).
В качестве иллюстрации можно привести следующий пример. Допустим, субъект с высокой степенью доверия А читает инфор­мацию из объекта, уровень классификации которого также равен А. Далее данный субъект понижает свою степень доверия до уровня В (А> В). После этого он может записать информацию в файл с клас­сификацией В. Нарушения правил модели Белла и Лападула фор­мально не произошло, но безопасность системы нарушена.
Фактически Мак Лин описал конфигурацию, в которой все субъекты могут читать и записывать любой объект путем назначе­ния соответствующих уровней секретности объекта перед выпол­нением запросов на доступ. В такой системе, которая, очевидно, не обеспечивает секретность информации, все состояния могут быть рассмотрены как удовлетворяющие требованиям модели Белла и Лападула.
Все описанное выше является справедливым для модели Белла и Лападула в ее классической формулировке. Но в оригинальной модели, представленной авторами, было введено требование силь­ного и слабого спокойствия. Данные требования снимают пробле­му Z-системы. Рассмотрим их.
Правило сильного спокойствия гласит, что уровни секретно­сти субъектов и объектов никогда не меняются в ходе системной операции. Реализовав это правило в конкретной системе, можно сделать заключение, что описанные выше проблемы никогда не возникнут. Очевидным недостатком такой реализации в системе является потеря гибкости при выполнении операций.
Правило слабого спокойствия гласит, что уровни секретности субъектов и объектов никогда не меняются в ходе системной опе-
118
рации таким образом, чтобы нарушить заданную политику без­опасности. Это правило может потребовать, чтобы субъекты и объекты воздерживались от действий в период времени, когда ме­няются их уровни секретности. Например, может потребоваться, чтобы уровень секретности объекта никогда не менялся в то время, когда к нему обращается некоторый субъект. Однако если опера­ция чередуется с изменением уровня безопасности, не вызывающе­го нарушения безопасности (например, субъект повышает свой уровень с секретного до совершенно секретного в ходе выполне­ния операции чтения некласифицированного объекта), то правило слабого спокойствия будет по-прежнему соблюдено.
Фактически система Z описывает алгебру моделей, самой строгой из которых (основание) является модель Белла и Лападула с сильным спокойствием (ни один субъект модели не может изме­нить свою классификацию), а самой слабой (вершина) — модель Белла и Лападула в классической формулировке без ограничений для субъектов и объектов на изменение классификации.
Контрольные вопросы
1. Что понимается под уровнем секретности компьютерной
системы?
2. Приведите пример классификации уровней секретности?
3. Каким атрибутом может быть определен уровень секретно-
сти субъекта?
4. Что означает свойство безопасности No Read Up?
5. Поясните сущность правила правило «нет записи вниз».
6. Изобразите и поясните диаграмму потоков данных для мо-
дели Белла и Лападула.
7. Какие технические вопросы возникают при использовании
модели Белла и Лападула при проектировании и разработке реаль­ных компьютерных систем?
8. Какие характеристики субъектов и объектов, используются
в моделях мандатного доступа?
9. В чем заключаются основные идеи, лежащие в основе моде-
ли Белла и Лападула?
119
9. МОДЕЛИ КОНТРОЛЯ ЦЕЛОСТНОСТИ
9.1. Модель Биба
В основе модели Белла и Лападула лежат уровни секретности. При создании мандатной модели целостности вводится аналогич­ное понятие – уровни и категории целостности, образующие ре­шетку. Так же как и в модели Белла и Лападула, в модели Биба уровни и категории целостности ассоциируются с субъектами и объектами системы.
Рассмотрим правила модели Биба, которую часто называют инверсией модели Белла и Лападула.
При рассмотрении модели Белла и Лападула было показано, что важность или чувствительность субъектов и объектов повыша­ется с ростом в иерархии уровней секретности. В данной модели запись на верхний уровень не нарушает безопасности системы. При рассмотрении мандатной модели контроля целостности запись наверх может представлять угрозу в том случае, если субъект с низким уровнем целостности искажает или уничтожает данные в объекте, лежащем на более высоком уровне целостности. Поэто­му, исходя из задач целостности, можно потребовать, чтобы такая запись была запрещена.
Следуя подобным аргументам, можно рассматривать чтение снизу как поток информации, идущий из объекта нижнего уровня и нарушающий целостность субъекта высокого уровня. Мы будем ссылаться на эти правила как «нет чтения снизу» (No Read Down, NRD) и «нет записи наверх» (No Write Up, NWU), и определим их в терминах субъектов, объектов и уровней целостности, причем на множестве последних может быть введено отношение преоблада­ния как отношение частичного порядка.
Правило NRD мандатной модели целостности Биба определя­ется как запрет субъектам на чтение информации из объекта с бо­лее низким уровнем целостности. NRD является полной противо­положностью правила NRU модели Белла и Лападула, за исключе- нием того, что здесь используются уровни целостности, а не сек­ретности, как в модели Белла и Лападула. Правило NWU мандат­ной модели целостности Биба определяется как запрет субъектам на запись информации в объект с более высоким уровнем целост-
120
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]