Модель Кларка-Вилсона

В 1987 году Дэвид Кларк и Дэвид Уилсон представили модель цело­стности, которая существенно отличалась от уровне-ориентированных моделей безопасности БЛМ и Биба. Созданию этой модели, которая из­вестна как модель Кларка-Вилсона (МКВ), способствовал анализ методов управления целостностью бумажных ресурсов в неавтоматизированном офисе коммерческими организациями. Получившаяся модель целостности представляет собой руководство для разработчиков и проектировщиков компьютерных систем по обеспечению целостности определенных вычис­лительных ресурсов.

Модель МКВ выражается в терминах набора правил функциониро­вания и обслуживания компьютерного окружения или приложения. Эти правила вырабатываются для обеспечения уровня защиты целостности для некоторого заданного подмножества данных в этом окружении или


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

Представим модель МКВ с помощью строгого описания основных компонентов, включенных в модель. Модель Кларка-Вилсона выражается в терминах конечного множества. За D (для данных) обозначим все набо­ры данных в определенной компьютерной системе.

Чтобы различать данные, обладающие и не обладающие целостно­стью, создатели модели разделили D на два непересекающиеся подмноже­ства, которые называются ограниченные элементы данных (CDI) и неог­раниченные элементы данных (UDI). Это можно изобразить следующими определениями:

D = CDIuUDI; CDInUDI = 0.

Первое определение показывает, что D является объединением CDI и UDI, а второе определение показывает, что нет элементов, принадлежа­щих и CDI, и UDI. Набор D разделен таким образом, потому что мы хотим показать, как может меняться целостность данных. Другими словами, данные, не имеющие целостности и находящиеся поэтому в UDI, могут быть некоторым образом модернизированы, так чтобы иметь целостность и находиться соответственно в CDI.

Субъекты включены в модель как множество компонентов, которые могут инициировать так называемые процедуры преобразования. Проце­дура преобразования определяется как любая ненулевая последователь­ность элементарных действий. Элементарное действие, в свою очередь, определяется как переход состояния, который может вызвать изменение некоторых элементов данных. Например, субъекты могут устранять эле­менты данных, изменять информацию в элементах данных, копировать их и т.д. Каждая из этих операций называется процедурой преобразования, поскольку действительный способ, которым каждая из них выполняется, включает в себя последовательность элементарных действий (например, копирование А в В обычно состоит из таких операций, как чтение А, соз­дание В, запись в В).

6.6.1. Правила модели МКВ

Используя вышеуказанные понятия, мы можем теперь рассмотреть основные правила, составляющие МКВ. В МКВ девять правил. Предпола­гается, что правила приняты все вместе, так что любое правило может ссылаться на любое другое правило без каких-либо ограничений.


Правило 1. В системе должны иметься процедуры утверждения це­лостности, утверждающие целостность любого CDI.

Простейшим примером такой процедуры утверждения является про­верка контрольной суммы. При использовании этого подхода вычисляется контрольная сумма некоей хранимой информации, и копии этой инфор­мации сравниваются с оригиналом путем проверки соответствующих кон­трольных сумм. Различия в контрольных суммах сигнализируют о внесе­нии изменений.

Правило 2. Применение любой процедуры преобразования к любому CDI должно сохранять целостность этого CDI.

Это правило можно рассматривать как свойство скрытия применения процедуры преобразования над CDI, то есть любое применение процедуры преобразования над CDI не приведет к нарушению целостности CDI.

Правило 3. Только процедура преобразования может вносить изме­нения в CDI.

Данное правило модели МКВ не позволяет субъектам с низкой цело­стностью, то есть не использующим процедуру преобразования, изменять объекты с высокой целостностью, то есть CDI. В этом плане модель Клар-ка-Вилсона подобна мандатной модели целостности Биба.

Правило 4. Субъекты могут инициировать только определенные процедуры преобразования над определенными CDI.

Это правило предполагает, что система должна определять и под­держивать некоторые отношения между субъектами процедуры преобра­зования и CDI, так называемые МКВ-тройки. Каждая такая тройка опре­деляет возможность данного субъекта применить данную процедуру пре­образования к данному CDI. Например, если (s, t, d) является элементом отношения, то субъекту s разрешается применить процедуру преобразова­ния t к CDI d. Если же эта тройка не является элементом отношения, то такой тип применения процедуры преобразования будет запрещен. Это правило гарантирует, что всегда можно определить, кто может изменить CDI и как это изменение может произойти.

Правило 5. МКВ-тройки должны проводить некоторую соответст­вующую политику разделения обязанностей субъектов.

Это правило предусматривает, что компьютерная система определя­ет такую политику, чтобы не позволять субъектам изменять CDI без соот­ветствующего вовлечения других субъектов. Это предотвращает субъек­тов от возможности наносить ущерб целостности CDI. Некоторые систе­мы управления конфигурацией предоставляют уровень разделения обя­занностей. Например, в некоторых системах разработчики ПО должны представить свои модули на просмотр менеджеру по разработке ПО перед тем, как они смогут включить их в конфигурацию. Этот подход защищает целостность конфигурации ПО.


Правило 6. Некоторые специальные процедуры преобразования мо­гут превращать UDI в CDI.

Правило 7. Каждое применение процедуры преобразования должно регистрироваться в специальном CDI, в который может производиться только добавление информации, достаточной для восстановления картины о процессе работы этого CDI.

Это правило требует ведения специального регистрационного жур­нала, который хранится в определенном CDI.

Правило 8. Система должна распознавать субъекты, пытающиеся инициировать процедуру преобразования.

Это правило определяет механизмы предотвращения атак, при кото­рых один субъект пытается выдать себя за другого.

Правило 9. Система должна разрешать производить изменения в списках авторизации только специальным субъектам (например, офице­рам безопасности).

Можно сказать, что указанные выше девять правил определяют, как может быть проверена целостность, как и кем могут изменяться CDI и как UDI могут быть превращены в CDI.

Основным преимуществом модели МКВ является то, что она осно­вана на проверенных временем методах обращения с бумажными ресур­сами. Поэтому модель МКВ не следует рассматривать как академическое исследование, а скорее как комплекс существующих методов. Модель МКВ также предоставляет исследователям методы работы с целостно­стью, отличные от традиционных уровне-ориентированных подходов, та­ких как модели БЛМ и Биба.

Основным недостатком модели является то, что процедуру утвер­ждения целостности и методы предотвращения CDI от искажения целост­ности нелегко реализовать в реальных компьютерных системах.

Все недостатки данной модели вытекают из-за ее неформализован­ное™. Ее можно применять при проектировании систем для специфика­ции пользовательских приложений и использовать на соответствующем уровне иерархии рассмотрения защищенной вычислительной системы.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  




Подборка статей по вашей теме: