Модель Белла — Лападулы

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Диаграмма информационных потоков

Модель Белла — Лападулы  — модель контроля и управления доступом, основанная на мандатной модели управления доступом. В модели анализируются условия, при которых невозможно создание информационных потоков от субъектов с более высоким уровнем доступа к субъектам с более низким уровнем доступа.

История[править | править вики-текст]

Классическая модель Белла — Лападулы была описана в 1975 году сотрудниками компании MITRE Corporation Дэвидом Беллом и Леонардом Лападулой, к созданию модели их подтолкнула система безопасности для работы с секретными документами Правительства США[1][2][3]. Суть системы заключалась в следующем: каждому субъекту (лицу, работающему с документами) и объекту (документам) присваивается метка конфиденциальности, начиная от самой высокой («особой важности»), заканчивая самой низкой («несекретный» или «общедоступный»). Причем субъект, которому разрешён доступ только к объектам с более низкой меткой конфиденциальности, не может получить доступ к объекту с более высокой меткой конфиденциальности. Также субъекту запрещается запись информации в объекты с более низким уровнем безопасности.

Особенности[править | править вики-текст]

Модель Белла — Лападулы является моделью разграничения доступа к защищаемой информации. Она описывается конечным автоматом с допустимым набором состояний, в которых может находиться информационная система. Все элементы, входящие в состав информационной системы, разделены на две категории — субъекты и объекты. Каждому субъекту присваивается свой уровень доступа, соответствующий степени конфиденциальности. Аналогично, объекту присваивается уровень секретности. Понятие защищённой системы определяется следующим образом: каждое состояние системы должно соответствовать политике безопасности, установленной для данной информационной системы. Переход между состояниями описывается функциями перехода. Система находится в безопасном состоянии в том случае, если у каждого субъекта имеется доступ только к тем объектам, к которым разрешен доступ на основе текущей политики безопасности. Для определения, имеет ли субъект права на получение определенного вида доступа к объекту, уровень секретности субъекта сравнивается с уровнем секретности объекта, и на основе этого сравнения решается вопрос, предоставить или нет запрашиваемый доступ. Наборы уровень доступа/уровень секретности описываются с помощью матрицы доступа.
Основными правилами, обеспечивающими разграничение доступа, являются следующие:

Простое свойство безопасности (The Simple Security)[править | править вики-текст]

Субъект с уровнем секретности x_s может читать информацию из объекта с уровнем секретности x_o тогда и только тогда, когда x_s преобладает над x_o. Это правило также известно под названием «нет чтения верхнего» (NRU). Например, если субъект, имеющий доступ только к несекретным данным, попытается прочесть объект с уровнем секретности совершенно секретно, то ему будет отказано в этом.

Свойство * (The *-property)[править | править вики-текст]

Субъект с уровнем секретности xs может писать информацию в объект с уровнем безопасности xо только если xо преобладает над x_s. Это правило также известно под названием «нет записи вниз» (NWD). Например, если субъект, имеющий уровень доступа совершенно секретно, попытается записать в объект с уровнем секретности секретно, то ему будет отказано в этом.

Дискреционное свойство безопасности (The Discretionary Security Property)[править | править вики-текст]

Заключается в том, что права дискреционного доступа субъекта к объекту определяются на основе матрицы доступа.

Формальное описание модели[править | править вики-текст]

Обозначения[править | править вики-текст]

  •  S\   — множество субъектов;
  •  O\  — множество объектов,  S \subset O ;
  •  R=\{r ,\ w\}  — множество прав доступа,  r\  — доступ на чтение,  w\  — доступ на запись;
  •  L=\{U, SU, S, TS\}\  — множество уровней секретности,  U\  — Unclassified,  SU\  — Sensitive but unclassified,  S\  — Secret,  TS\  — Top secret;
  •  \Lambda  = (L,\le,\bullet,\otimes) — решётка уровней секретности, где:
    •  \le — оператор, определяющий частичное нестрогое отношение порядка для уровней секретности;
    •  \bullet — оператор наименьшей верхней границы;
    •  \otimes — оператор наибольшей нижней границы.
  •  V\  — множество состояний системы, представляемое в виде набора упорядоченных пар  (F, M)\ , где:
    •  F : S \cup  O \rightarrow L  — функция уровней секретности, ставящая в соответствие каждому объекту и субъекту в системе определённый уровень секретности;
    •  M\   — матрица текущих прав доступа.


Оператор отношения  \le обладает следующими свойствами:

  • Рефлексивность:  \mathcal {8}~ a \in L : a \le a , данное свойство означает, что между субъектами и объектами одного уровня безопасности передача информации разрешена.
  • Антисимметричность:  \forall a_1 , a_2 \in L : ((a_1 \le a_2) \And (a_2 \le a_1)) \rightarrow a_2 = a_1 , свойство означает, что если информация может передаваться от субъектов и объектов уровня A к субъектам и объектам уровня B, так и от субъектов и объектов уровня B к субъектам и объектам уровня A, то эти уровни эквивалентны.
  • Транзитивность:  \forall a_1 , a_2 , a_3 \in L : ((a_1 \le a_2) \And (a_2 \le a_3)) \rightarrow a_1 \le a_3 , свойство означает, что если информации может передаваться от субъектов и объектов уровня A к субъектам и объектам уровня B, и от субъектов и объектов уровня B к субъектам и объектам уровня C, то она может передаваться от субъектов и объектов уровня A к субъектам и объектам уровня C.

Оператор наименьшей верхней границы  \bullet определяется следующим отношением:

 a = a_1 \bullet a_2 \Leftrightarrow  (a_1,a_2 \le a) \And (\forall a' \mathcal {2} L : (a' \le a) \rightarrow (a' \le a_1 \vee  a' \le a_2))

Оператор наибольшей нижней границы  \otimes определяется следующим отношением:

 a = a_1 \otimes a_2 \Leftrightarrow  (a \le a_1,a_2 ) \And (\forall a' \mathcal {2} L : (a' \le a_1 \And a' \le a_2)  \rightarrow (a' \le a))

Исходя из определения этих двух операторов можно показать, что для каждой пары a_1, a_2 ~ \mathcal {2} ~ L существует единственный элемент наименьшей верхней границы и единственный элемент наибольшей нижней границы.

Система  ~\Sigma=( \nu_0, R, T )  в модели Белла — Лападулы состоит из следующий элементов:

  •  \nu_0\   — начальное состояние системы;
  •  \R\   — множество прав доступа;
  •  T: V \times R \rightarrow V  — функция перехода, которая в ходе выполнения запросов переводит систему из одного состояния в другое.

Определения состояния безопасности[править | править вики-текст]

Состояние  \nu\ называется достижимым в системе  ~\Sigma=( \nu_0, R, T )  , если существует последовательность  \{(r_0, \nu_0), ... ,(r_{n-1}, \nu_{n-1}),(r_n, \nu_n)\} : T(r_i, \nu_i)=\nu_{i+1} ~ \forall i = 0,n-1 Начальное состояние  \nu_0\ является достижимым по определению.

Состояние системы  (F, M) называется безопасным по чтению (или simple-безопасным), если для каждого субъекта, осуществляющего в этом состоянии доступ по чтению к объекту, уровень безопасности субъекта доминирует над уровнем безопасности объекта:  \forall s \in S, \forall o \in O, r \in M [s,o] \rightarrow F(o) \le F(s)

Состояние системы  (F, M) называется безопасным по записи (или * — безопасным) в случае, если для каждого субъекта, осуществляющего в этом состоянии доступ по записи к объекту, уровень безопасности объекта доминирует над уровнем безопасности субъекта:  \forall s \in S, \forall o \in O, w \in M [s,o] \rightarrow F(s) \le F(o)

Состояние  (F, M) называется безопасным, если оно безопасно по чтению и по записи.

Система \Sigma=(\nu_0, R, T) называется безопасной, если её начальное состояние v0 безопасно, и все состояния, достижимые из  \nu_0\ путём применения конечной последовательности запросов из  R\ , безопасны.

Основная теорема безопасности Белла — Лападулы[править | править вики-текст]

Система  ~\Sigma=( \nu_0, R, T )  безопасна тогда и только тогда, когда выполнены следующие условия:

  1. Начальное состояние  \nu_0\ безопасно.
  2. Для любого состояния  \nu\ , достижимого из  \nu_0\ путём применения конечной последовательности запросов из  R\ , таких, что ~ T( \nu , r ) = \nu^* , \nu = (F, M) и ~ \nu^* =(F^*,  M^* ) , для   \mathcal {8} s  \mathcal {2} S,  \mathcal {8}o  \mathcal {2} O выполнены условия:
    1. Если  r \mathcal {2} M^*[s,o] и r \notin M[s,o] , то  F^*(o) \le F^*(s)
    2. Если  r \mathcal {2} M[s,o] и ~F^*(s) < F^*(o) , то  r \notin M^*[s,o]
    3. Если  w \mathcal {2} M^*[s,o] и w \notin M[s,o] , то  F^*(s) \le F^*(o)
    4. Если  w \mathcal {2} M[s,o] и ~F^*(o) < F^*(s) , то  w \notin M^*[s,o]

Недостатки[править | править вики-текст]

В силу своей простоты, классическая модель Белла — Лападулы имеет ряд серьёзных недостатков:[источник не указан 867 дней]

Деклассификация[править | править вики-текст]

Данная уязвимость заключается в следующем: классическая модель не предотвращает систему от деклассификации объекта (изменение уровня секретности объекта вплоть до «не секретно» по желанию «совершенно секретного» субъекта). Например, пусть субъект с высоким уровнем доступа А читает информацию из объекта того же уровня секретности. Далее он понижает свой уровень доступа до низкого Б, и записывает считанную ранее информацию в объект, низкого уровня секретности Б. Таким образом, хотя формально модель нарушена не была, безопасность системы нарушена. Для решения этой проблемы вводят правила:

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

Удаленное чтение[править | править вики-текст]

Данный недостаток проявляет себя в распределенных компьютерных системах. Допустим, субъект А с высоким уровнем доступа пытается прочитать информацию из объекта Б с низким уровнем секретности. Может создаться впечатление, что если субъекту А будет разрешено чтение информации из объекта Б, никакая конфиденциальная информация не будет раскрыта. Однако, при более подробном рассмотрении обнаруживается что это не так. Во время операции чтения между удаленными объектами происходит появления потока информации от читаемого объекта к запросившему доступ на чтение субъекту. Поток, который при этом появляется, является безопасным, так как информация недоступна неавторизированным субъектам. Однако в распределенной системе чтение инициируется запросом от одного объекта к другому. Такой запрос образует поток информации идущий в неверном направлении (запись в объект с более низким уровнем секретности). Таким образом, удаленное чтение в распределенных системах может произойти только если ему предшествует операция записи вниз, что является нарушением правил классической модели Белла — Лападулы.

См. также[править | править вики-текст]

Примечания[править | править вики-текст]

  1. Bell, David Elliott and LaPadula, Leonard J. (1973). «Secure Computer Systems: Mathematical Foundations» (PDF) (MITRE Corporation).
  2. Bell, David Elliott and LaPadula, Leonard J. (1976). «Secure Computer System: Unified Exposition and Multics Interpretation» (PDF) (MITRE Corporation).
  3. Bell, David Elliott (December 2005). "Looking Back at the Bell-LaPadula Model" (PDF). Proceedings of the 21st Annual Computer Security Applications Conference: 337–351. DOI:10.1109/CSAC.2005.37.  Slides — Looking Back at the Bell-LaPadula Model

Литература[править | править вики-текст]

  • Цирлов В. Л. Основы информационной безопасности автоматизированных систем. — Р.: Феникс, 2008. С. 40-44 ISBN 978-5-222-13164-0
  • Девянин П. Н. Модели безопасности компьютерных систем: Учебное пособие для студентов высших учебных заведений. — М.: Издательский центр «Академия», 2005. С. 55-66 ISBN 5-7695-2053-1
  • Грушо А. А., Тимонина Е. Е. Теоретические основы защиты информации. — М.: Издательство Агентства «Яхтсмен», 1996. С 52-55
  • А. П. Баранов, Н. П. Борисенко, П. Д. Зегжда, А. Г. Ростовцев, Корт С. С. — Математические основы информационной безопасности. — М.: Издательство Агентства «Яхтсмен», 1997. C 22-36 http://web.archive.org/web/20110611052603/http://www.ssl.stu.neva.ru/sam/Book97.pdf