СПОСОБ ПРОГНОЗИРОВАНИЯ И ОЦЕНКИ БЕЗОПАСНОСТИ ДОСТИЖИМЫХ СОСТОЯНИЙ ЗАЩИЩЕННЫХ ИНФОРМАЦИОННЫХ СИСТЕМ
METHOD OF PREDICTING AND EVALUATING SAFETY OF ACCESSIBLE STATES OF PROTECTED INFORMATION SYSTEMS

Изобретение относится к области защиты информационных систем, а именно - к прогнозу и анализу поведения защищенных информационных систем путем представления их состояний, моделей безопасности и условий безопасности состояний с использованием предикатов, построения на их основе полного множества состояний, достижимых из текущего состояния системы по правилам модели безопасности, и определения в нем подмножеств безопасных и небезопасных достижимых состояний системы путем оценки выполнения в них заданных условий безопасности.
Защищенные информационные системы - это информационные системы, в которых реализован набор функций поддержания конфиденциальности и целостности информации, а также обеспечения ее доступности при авторизованном доступе. Фундаментальным элементом любой защищенной информационной системы, обеспечивающим реализацию перечисленных функций безопасности, является встроенный в систему механизм защиты. Однако в любой современной защищенной информационной системе по причине сложности такого механизма обеспечение корректного его использования в течение всего жизненного цикла системы становится довольно затруднительным, поскольку сопряжено с применением многокомпонентных, взаимосвязанных и эшелонированных средств контроля и управления доступом. При этом они могут допускать несанкционированный доступ за счет неиспользуемых, противоречивых, заданных по умолчанию или неизвестных администратору возможностей и настроек безопасности. Причем безопасность текущей конфигурации системы, обеспеченная в данный момент времени, не гарантирует безопасность системы в последующем, так как в процессе эксплуатации системы в ней создают или удаляют пользователей, устанавливают права доступа к информационным ресурсам, подключают новые устройства, что влияет на безопасность новых состояний системы. Вследствие этого в ходе развертывания, эксплуатации и администрирования защищенных информационных систем весьма затруднительно составить цельное представление об их поведении в контексте безопасности, гарантировать перманентное выполнение всех предъявляемых к ней требований безопасности и отсутствие таких будущих состояний системы, в которых требования безопасности нарушаются.
Известны системы и методы обеспечения безопасности информационных систем, например заявка РФ №2006137745, G06F 21/00, опубл. 2008-05-10; патент РФ №2207618, G06F 13/00, опубл. 2003-06-27; JP 2008033586, G06F 21/00; G06F 13/00; H04L 12/28; H04L 12/56, опубл. 2008-02-14. Однако ни в одном из указанных материалов не содержится описания способа прогнозирования и оценки безопасности достижимых состояний защищенных информационных систем.
Известен теоретический подход к доказательству безопасности мандатных моделей контроля и управления доступом, основанный на применении правил доступа, касающихся чтения и записи информации, на множестве состояний матрицы доступа с помощью математической индукции [LaPadula L.J., Bell D.E. Secure Computer Systems: A Mathematical Model, ESD-TR-278, vol.2, The Mitre Corp., 1973]. Но данный подход является неприменимым к реализациям защищенных информационных систем по следующим причинам. Большинство современных информационных систем используют механизмы защиты, построенные на основе не мандатных, а дискреционных моделей контроля и управления доступом. В указанном подходе не учитывают характерные для существующих защищенных информационных систем многомерность системного состояния (например, пространство "субъекты - объекты - атрибуты безопасности субъектов - атрибуты безопасности объектов - права доступа"). Ограничивающие правила контроля доступа, использованные в доказательстве безопасности мандатных моделей, не учитывают многообразие возможных видов доступа (например, виды доступа "Приостановка процесса", "Синхронизация"), условий безопасности состояний (например, ограничение на ролевой состав пользователей), параметров системы, оказывающих влияние на возможность доступа (например, влияние наследуемых прав и привилегий на множество прав доступа к файлу, создаваемому в каталоге). Кроме того, в рамках указанного подхода декларируют проверку выполнения правил доступа на множестве состояний, но не описывают процедуру построения этого множества, поскольку для доказательства безопасности мандатных моделей, проводимого в данном подходе, множество достижимых состояний принимают как исходно данное. Таким образом, необходим способ прогнозирования и оценки безопасности достижимых состояний защищенных информационных систем.
В основу изобретения положена задача создания способа прогнозирования и оценки безопасности достижимых состояний защищенных информационных систем на основе анализа системного состояния, модели безопасности и условий безопасности, в результате решения которой получают полное множество состояний, достижимых из текущего состояния системы по правилам модели безопасности, и выделяют в нем подмножества безопасных и небезопасных состояний путем оценки выполнения в них заданных условий безопасности, что позволяет получать сведения о безопасности системы не только в ее текущем состоянии, но и прогнозировать дальнейшее выполнение требований безопасности, предъявляемых к системе, заранее получать и учитывать сведения о безопасности или небезопасности будущих состояний системы, что, в свою очередь, гарантирует непрерывность обеспечения безопасности информационных систем в текущем и во всех достижимых состояниях относительно заданных условий безопасности.
Решение этой задачи обеспечивается тем, что в способе прогнозирования и оценки безопасности достижимых состояний защищенных информационных систем на основе анализа текущего состояния, модели безопасности и условий безопасности системы составляют описание защищенной информационной системы, в том числе описание состояния системы, включая в него предикаты, представляющие множества субъектов, объектов и их атрибутов безопасности, имеющихся в системе; описание модели безопасности, реализованной в системе, включая в него правила доступа, представляющие преобразование множеств субъектов, объектов и их атрибутов безопасности, указанных в описании состояния, в разрешенные моделью безопасности виды доступа субъектов к объектам, а также соответствующие правилам доступа правила изменения имеющегося описания состояния системы при выполнении разрешенных моделью безопасности видов доступа; и описание условий безопасности, включая в него предикаты, представляющие безопасные множества субъектов, объектов, их атрибутов безопасности и видов доступа субъектов к объектам;
формируют по описанию условий безопасности множества субъектов, объектов, их атрибутов безопасности и ограничений по видам доступа, служащих признаками безопасного состояния;
проверяют по описанию состояния системы наличие в нем признаков безопасного состояния в части соблюдения состава и значений субъектов, объектов, их атрибутов безопасности, заданных в условиях безопасности, и тем самым оценивают безопасность состояния системы по указанным признакам, при этом отмечая данное состояние системы как безопасное в части соблюдения состава и значений субъектов, объектов, их атрибутов безопасности, если все указанные признаки безопасного состояния в текущем состоянии присутствуют, т.е. требуемый состав субъектов, объектов, их атрибутов содержится в фактическом и требуемые и фактические значения субъектов, объектов, их атрибутов эквивалентны; и как небезопасное - в иных случаях;
формируют по описаниям состояния и модели безопасности множество видов доступа, разрешенных моделью в данном состоянии, при этом для каждой пары "субъект-объект", указанной в описании условий безопасности, выполняют преобразование указанных в описании состояния множеств субъектов, объектов, их атрибутов безопасности в множество видов доступа, разрешенных правилами доступа, составляющими модель безопасности;
проверяют по описанию заданного состояния системы наличие в нем признаков безопасного состояния в части соблюдения ограничений по видам доступа, заданных в условиях безопасности, и тем самым оценивают безопасность заданного состояния системы по указанным признакам, при этом отмечая состояние системы как безопасное в части соблюдения ограничений по видам доступа, если все указанные признаки безопасного состояния в текущем состоянии присутствуют, т.е. требуемые и фактические виды доступа эквивалентны; и как небезопасное - в иных случаях;
генерируют описания новых достижимых состояний, следующих за проверяемым состоянием по каждому виду доступа, разрешенному правилами доступа модели безопасности в проверяемом состоянии и указанному в описании условий безопасности, по правилам изменения имеющегося описания состояния системы, заданным в описании модели безопасности, для каждой тройки "субъект - объект - атрибуты безопасности", указанной в описании условий безопасности, при этом создавая копию описания проверяемого состояния, в нем удаляя старые и создавая новые предикаты описания состояния, отражающие изменения, произведенные в системе в результате разрешенного моделью безопасности вида доступа, следуя принципу: если в условиях безопасности заданы и, следовательно, в параметрах правила доступа модели безопасности участвуют существующие субъекты, объекты и их атрибуты безопасности, добавляемые, удаляемые, изменяемые в проверяемом состоянии, то новые предикаты отражают изменения с указанными субъектами, объектами, их атрибутами безопасности; если в условиях безопасности не заданы и, следовательно, в параметрах правила модели безопасности не участвуют существующие субъекты, объекты и их атрибуты безопасности, добавляемые, удаляемые, изменяемые в проверяемом состоянии, то новые предикаты отражают изменения с гипотетическими субъектами, объектами, их атрибутами безопасности, искусственно вводимыми в описание состояния;
сохраняют описания старого и каждого нового состояний;
записывают в журнал переходов, состояний и оценок безопасности информацию о связи соседних достижимых состояний, о правилах доступа, по которым выполнены переходы между этими состояниями, осуществляют оценку безопасности или небезопасности каждого состояния, отмечая для небезопасных состояний субъекты, объекты, атрибуты безопасности, виды доступа субъектов к объектам и условия безопасности, по которым состояния являются небезопасными;
повторяют вышеуказанные действия для каждого нового сгенерированного состояния.
В качестве состояния защищенной информационной системы рассматривают множества субъектов, объектов и их атрибутов безопасности, состав которых определяется типом операционной среды защищенной информационной системы. В общем случае в состояние включают пользователей и группы пользователей; элементы файловой системы (диски, каталоги, файлы, ссылки), элементы реестра (разделы, ключи, параметры, ссылки); объекты ядра (задачи, процессы, потоки, драйверы, объекты синхронизации и т.д.); ресурсы общего доступа (каталоги, принтеры); программные сервисы; COM/DCOM-объекты; объекты службы каталога; локальные и глобальные настройки системной политики безопасности; опции и настройки безопасности пользовательского и специального программного обеспечения; конфигурационные параметры сетевых служб; атрибуты безопасности субъектов и объектов (идентификаторы защиты, привилегии пользователей и групп пользователей, информация о владельцах объектов, списки прав доступа, метки доступа и целостности, иерархическое распределение субъектов, объектов, прав доступа, меток доступа и целостности).
Изобретение поясняется с помощью чертежа, на котором представлена схема последовательности осуществления способа прогнозирования и оценки безопасности достижимых состояний защищенных информационных систем.
Предлагаемый способ прогнозирования и оценки безопасности достижимых состояний защищенных информационных систем основан на описании системных состояний, моделей безопасности и условий безопасности с использованием предикатов. Теоретическую основу такого подхода составляют математическая логика и теория конечных автоматов. Применение предикатного представления позволяет составлять модельное описание произвольных защищенных информационных систем, включая реализованные в них механизмы защиты, описание условий безопасности, и затем использовать аппарат предикатного вывода для составления прогнозов поведения моделируемых систем и оценки безопасности достижимых состояний.
Возможности прогнозирования достижимых состояний и оценки их безопасности предоставляются за счет того, что в любой защищенной информационной системе можно в контексте безопасности описать три ее составляющие: системное состояние, модель безопасности и условия безопасности. Перечисление субъектов, объектов и их атрибутов безопасности формирует состояние защищенной информационной системы. Модель безопасности определяет ограничения, накладываемые на виды доступа защитным механизмом информационной системы. Условия безопасности формируют совокупность признаков, по которым возможно идентифицировать безопасные и, следовательно, небезопасные состояния системы.
0
0
Формально, в общем виде, защищенная информационная система представляет собой машину состояний Σ={S,R,s,Q}, где S - множество состояний системы; R - множество правил модели безопасности, которые регламентируют контроль доступа и изменение системного состояния и сформулированы в форме предикатов вида r(q,s,s'), определенных на множестве запросов Q и множестве состояний S, осуществляющих проверку, что переход для вида доступа q из состояния s в состояние s' разрешен моделью безопасности, и в случае успешности проверки (разрешенного доступа) переводящих систему из состояния s в состояние s'; s - начальное состояние системы; Q - множество обрабатываемых запросов на доступ.
n
0
0
n
n
i+1
i
i
i+1
0
Состояние s является достижимым тогда и только тогда, когда существует последовательность запросов на доступ и состояний <(q,s),…,(q,s)>, в которой s генерируется предикатом R(q,s,s), 0≤i≤n. Для любой системы состояние s является тривиально достижимым.
Свойство безопасности состояния системы может быть сформулировано как Λ={Σ,С}, где Σ - система; С - множество условий безопасности, сформулированных в форме предикатов вида c(s), определенных на множестве состояний S и осуществляющих проверку безопасности состояния s. Состояние s∈S является безопасным тогда и только тогда, когда для каждого условия безопасности с∈С истинен предикат c(s), т.е. ∀c∈C: с(s)= "истина".
Таким образом, система Σ является прогнозируемо безопасной по заданным условиям безопасности тогда и только тогда, когда все множество достижимых состояний системы безопасно по этим условиям, т.е. выполняются следующие критерии:
0
- условия безопасности выполняются в начальном состоянии системы: ∀c∈C: c(s)= "истина";
i+1
i
i
i
i+1
- пространство достижимых состояний системы построено в соответствии с правилами модели безопасности: ∀si, s∈S: ∀q∈Q R{q,s,s)= "истина", i≥0;
- условия безопасности выполняются во всех достижимых системных состояниях: ∀c∈C, ∀si∈S: c(s)= "истина", i>0.
В соответствии с этим при осуществлении способа выполняется проверка безопасности заданного состояния по заданным условиям безопасности, генерация множества состояний, достижимых из него по заданным правилам модели безопасности, и рекурсивная оценка безопасности достижимых состояний по заданным условиям безопасности. Выполнение таких действий гарантирует построение полного множества достижимых состояний системы, прогнозирование изменений свойства безопасности состояний системы в будущем и цельную доказательную безопасность системы согласно заданным условиям безопасности. При решении таких задач способ, описываемый в данном изобретении, базируется на применении предикатов для построения множества достижимых состояний и оценки их безопасности.
При осуществлении способа (см. чертеж) составляют описание защищенной информационной системы.
Описание защищенной информационной системы является логическим представлением системного состояния, модели безопасности, реализованной в системе, и условий безопасности, по которым проверяется безопасность всех состояний.
В описание защищенной информационной системы включают описание состояния системы, формируя предикаты, представляющие множества субъектов, объектов и их атрибутов безопасности, имеющиеся в системе. В описание состояния системы заносят предикаты, описывающие пользователей и группы пользователей; элементы файловой системы (диски, каталоги, файлы, ссылки), элементы реестра (разделы, ключи, параметры, ссылки); объекты ядра (задачи, процессы, потоки, драйверы, объекты синхронизации и т.д.); ресурсы общего доступа (каталоги, принтеры); программные сервисы; COM/DCOM-объекты; объекты службы каталога; локальные и глобальные настройки системной политики безопасности; опции и настройки безопасности пользовательского и специального программного обеспечения; конфигурационные параметры сетевых служб; атрибуты безопасности субъектов и объектов (идентификаторы защиты, привилегии пользователей и групп пользователей, информация о владельцах объектов, списки прав доступа, метки доступа и целостности, иерархическое распределение субъектов, объектов, прав доступа, меток доступа и целостности).
В описание защищенной информационной системы также включают описание модели безопасности, реализованной в системе, включая в него правила доступа, представляющие преобразование множеств субъектов, объектов и их атрибутов безопасности, указанных в описании состояния, в разрешенные моделью безопасности виды доступа субъектов к объектам, а также соответствующие правилам доступа правила изменения имеющегося описания состояния системы при выполнении разрешенных моделью безопасности видов доступа.
Каждое правило модели безопасности является продукцией, задающей условия истинности следствия (т.е. разрешенного вида доступа субъекта к объекту) при соблюдении условия или логической функции условий истинности посылок (т.е. предикатов описания состояния).
Правила модели безопасности однократно строят для конкретного типа защищенной информационной системы и затем многократно применяют для всех систем данного типа.
В описание защищенной информационной системы также включают описание условий безопасности. В условиях указывают признаки безопасного состояния, наличие которых свидетельствует о безопасности оцениваемого по ним состояния системы. Каждое условие безопасности представляет собой совокупность предикатов и заданных на них логических функций, описывающих безопасные множества субъектов, объектов, их атрибутов безопасности и видов доступа субъектов к объектам, при наличии которых в состоянии система в данном состоянии является безопасной.
Затем формируют по описанию условий безопасности множества субъектов, объектов, их атрибутов безопасности и ограничений по видам доступа, служащих признаками безопасного состояния.
Далее проверяют по описанию заданного состояния системы наличие в нем признаков безопасного состояния в части соблюдения состава и значений субъектов, объектов, их атрибутов безопасности, заданных в условиях безопасности, и тем самым оценивают безопасность заданного состояния системы по указанным признакам. При этом оценивают состояние системы как безопасное в части соблюдения состава и значений субъектов, объектов, их атрибутов безопасности, если все указанные признаки безопасного состояния в текущем состоянии присутствуют, т.е. требуемый состав субъектов, объектов, их атрибутов содержится в фактическом и требуемые и фактические значения субъектов, объектов, их атрибутов эквивалентны; и как небезопасное - в иных случаях.
Затем формируют по описаниям состояния и модели безопасности множество видов доступа, разрешенных моделью в данном состоянии, при этом для каждой пары "субъект-объект", указанной в описании условий безопасности, если они присутствуют в описании состояния, выполняют преобразование указанных в описании состояния множеств субъектов, объектов, их атрибутов безопасности в множество видов доступа, разрешенных правилами доступа, составляющими модель безопасности. Если же проверяемый субъект или объект, указанный в описании условий безопасности, отсутствует в описании состояния, то состояние системы объявляют безопасным по проверяемому условию по причине отсутствия в данном состоянии параметров проверки и переходят к проверке следующего условия безопасности.
При этом преобразование в виды доступа выполняют путем последовательного формирования множества прав доступа на основе прямых прав доступа объекта, заданных для конкретного субъекта, с учетом прав, распространяющихся по иерархиям субъектов и объектов, т.е. с учетом унаследованных, групповых и прямых разрешений и запретов; прав, соответствующих конфигурационным параметрам безопасности; прав, соответствующих значениям конфигурационных параметров безопасности; прав, назначенных на зависимые объекты в информационной системе; прав, получаемых из меток доступа и целостности.
Проверяют по описанию заданного состояния системы наличие в нем признаков безопасного состояния в части соблюдения ограничений по видам доступа, заданных в условиях безопасности, и тем самым оценивают безопасность заданного состояния системы по указанным признакам. При этом оценивают состояние системы как безопасное в части соблюдения ограничений по видам доступа, если все указанные признаки безопасного состояния в текущем состоянии присутствуют, т.е. требуемые и фактические виды доступа эквивалентны; и как небезопасное - в иных случаях.
Генерируют описания новых состояний, следующих за проверяемым состоянием по каждому виду доступа, разрешенному правилами доступа модели безопасности в проверяемом состоянии и указанному в описании условий безопасности, по правилам изменения имеющегося описания состояния системы, заданным в описании модели безопасности.
С этой целью для каждой тройки "субъект - объект - атрибуты безопасности", указанной в описании условий безопасности, создают копию описания проверяемого состояния, в нем удаляют старые и создают новые предикаты описания состояния, отражающие изменения, произведенные в системе в результате разрешенного моделью безопасности вида доступа.
При этом следуют принципу: если в условиях безопасности заданы и, следовательно, в параметрах правила доступа модели безопасности участвуют существующие субъекты, объекты и их атрибуты безопасности, добавляемые, удаляемые, изменяемые в проверяемом состоянии, то новые предикаты отражают изменения с существующими указанными субъектами, объектами, их атрибутами безопасности; если в условиях безопасности не заданы и, следовательно, в параметрах правила модели безопасности не участвуют существующие субъекты, объекты и их атрибуты безопасности, добавляемые, удаляемые, изменяемые в проверяемом состоянии, то новые предикаты отражают изменения с гипотетическими субъектами, объектами, их атрибутами безопасности, искусственно вводимыми в описание состояния.
Затем сохраняют описания старого и каждого нового состояний.
После этого записывают в журнал переходов, состояний и оценок безопасности информацию о связи соседних достижимых состояний, о правилах доступа, по которым выполнены переходы между этими состояниями, оценку безопасности или небезопасности каждого состояния, отмечая для небезопасных состояний субъекты, объекты, атрибуты безопасности, виды доступа субъектов к объектам и условия безопасности, по которым состояния являются небезопасными.
Повторяют вышеуказанные действия для каждого нового сгенерированного состояния.
Результатом применения предлагаемого способа является журнал переходов, состояний и оценок безопасности. Он содержит прогноз поведения защищенной информационной системы, представленный в виде графа переходов системы из состояния в состояние. В журнале указывают правила доступа, по которым выполнены переходы между состояниями и оценки безопасности или небезопасности для каждого достижимого состояния. Для небезопасных состояний в журнале отмечают ведущие к ним маршруты на графе переходов, а также приводят множества субъектов, объектов, атрибутов безопасности, видов доступа субъектов к объектам и условий безопасности, по которым состояния являются небезопасными.
В итоге, систему оценивают как прогнозируемо безопасную, если в каждом из построенных достижимых состояний выполнены все заданные условия безопасности.
Рассмотрим использование прогнозирования и оценки безопасности достижимых состояний, реализованных в предлагаемом способе, на примере создания объекта в информационной системе. Заданное начальное системное состояние представляют как набор действующих субъектов, объектов и их атрибутов безопасности, зафиксированный в некоторый момент времени и описанный с помощью предикатов:
В данном примере заданы предикаты описания субъектов (пользователя и группы) и объекта (каталога), включая их атрибуты безопасности. Каждый предикат содержит идентификационную информацию о субъекте или объекте, а также набор его атрибутов безопасности. Например, первый субъект - пользователь user - не обладает привилегиями и входит в группу admins. Второй предикат описывает субъект - группу admins - и список ее привилегий. Третий предикат описывает объект - каталог c:\catalog. Атрибутами объекта являются имя владельца, флаг наследования прав и собственно права доступа, заданные в виде списка прав в формате "имя_субъекта-права".
Описание модели безопасности записывается в виде правил, которые заданы на множестве логических условий доступа по каждому определенному в модели виду доступа. Эти правила связывают субъекты, объекты и их атрибуты безопасности, описанные в системном состоянии, и множество видов доступа субъектов к объектам. Например, право доступа по записи в каталог (т.е. по созданию объектов в каталоге) разрешается субъектам согласно следующему правилу, определенному на множестве предикатов, описывающих системное состояние:
В данном примере доступ вида "Запись в каталог" разрешен, если для пользователя установлен бит "Запись в каталог" в маске прав доступа объекта, или у пользователя есть привилегия резервного копирования, или право "Запись в каталог" есть у групп, в которые входит пользователь. Таким образом, выполняется замена субъектов, объектов, их атрибутов безопасности, определяющих разрешения доступа по записи, на множество эквивалентных им видов доступа субъектов к объектам (в данном примере на разрешенный вид доступа "Запись в каталог").
Наличие такой процедуры позволяет задавать в условиях безопасности ограничительные виды доступа, получать из описания состояния фактические виды доступа и сравнивать эти множества друг с другом, выявляя факт и причины их расхождения.
Проверяемые условия безопасности представляют собой предикаты описания признаков безопасного состояния, например:
Первый предикат описывает условие, заданное относительно объекта-каталога c:\catalog, второй - условие относительно файлов данного каталога.
Состояние системы оценивается как безопасное, если в данном состоянии системы наблюдаются признаки, указанные в условиях:
Условие А. Пользователь user не имеет прав в каталоге c:\catalog.
Условие Б. Пользователь user может только производить запись в файлы каталога c:\catalog.
Если хотя бы одно из этих условий не соблюдается, то это является нарушением безопасности, и состояние оценивается как небезопасное.
Первый проверяемый признак отсутствует в указанном системном состоянии, поскольку за счет членства в группе пользователь user имеет право записи в каталог, т.е. он может создать в нем любой файл или подкаталог, тем самым условие А не выполняется. Второй признак присутствует в данном состоянии, так как каталог в заданном состоянии пуст, тем самым условие Б выполняется. Однако невыполнение первого условия позволяет оценить данное состояние системы как небезопасное.
Прогнозирование поведения системы осуществляется при помощи генерации описаний новых достижимых состояний, следующих за проверяемым состоянием по каждому виду доступа, разрешенному правилами доступа модели безопасности в этом состоянии согласно правилам изменения имеющегося описания состояния системы, заданным в описании модели безопасности. Например, для приведенного правила доступа по записи в каталог (созданию объектов) соответствующее правило генерации достижимого состояния представлено следующим образом:
В приведенном правиле выполняется проверка разрешения на доступ по записи в каталог, т.е. на создание нового файла в каталоге, и затем генерация нового состояния. Данное правило определено для конкретных субъекта - пользователя user - и объекта - каталога c:\catalog. Без потери достоверности такое правило может быть расширено для общего случая проверки, когда вместо констант в предикатах указывают переменные.
После проверки возможности записи в каталог выполняется сохранение старого состояния системы, например, в файле описания состояния. Затем, поскольку создание файла дополняет начальное состояние, не изменяя его содержания и не уменьшая его состав, выполняют добавление к уже имеющимся предикатам начального состояния нового предиката:
Данный предикат моделирует вновь созданный гипотетический файл c:\catalog\test_file в каталоге, контролируемом по условиям безопасности. Поскольку конкретный существующий объект при моделировании создания файла в каталоге в правиле указать невозможно, то создают гипотетический объект. Данный гипотетический файл получает атрибуты безопасности, назначаемые по умолчанию в соответствии с моделью безопасности. В приведенном примере, как и в большинстве существующих защищенных информационных систем, файл наследует атрибуты безопасности, включая список прав доступа, от каталога, в котором он создан.
Таким образом, прогнозируемое состояние содержит предикаты (добавленный предикат выделен курсивом):
Оценка безопасности полученного достижимого состояния выполняют путем проверки выше указанных условий А и Б. Проверяемый признак отсутствует в указанном состоянии, поскольку за счет членства в группе пользователь user имеет право записи в каталог, т.е. он может создать в нем любой файл или подкаталог. Второй признак в новом состоянии теперь отсутствует, так как каталог содержит файл, который пользователь может читать, но не записывать, что нарушает условие Б.
Таким образом, если в начальном состоянии система была небезопасна по одному условию А, то в спрогнозированном состоянии она уже небезопасна по обоим условиям А и Б.
Результатами прогнозирования и оценки безопасности достижимых состояний являются:
- два состояния системы: заданное (начальное) и спрогнозированное (достижимое) в ходе моделирования создания файла в каталоге;
- информация об осуществленном переходе между состояниями, выполненном при записи в каталог: доступ к каталогу для создания в нем файла;
- оценки безопасности состояний: первое состояние небезопасно по условию А; второе - небезопасно по обоим условиям А и Б;
- информация о причинах нарушения условий безопасности состояний: в обоих состояниях условия нарушены по причине получения прав пользователем от группы, в которую он включен, и по причине наследования и установки системой прав по умолчанию от каталога к файлу.
Изобретение позволяет получать сведения о безопасности системы не только в ее текущем состоянии, но и прогнозировать дальнейшее выполнение требований безопасности, предъявляемых к системе, заранее получать и учитывать сведения о безопасности или небезопасности всех будущих состояний системы, что, в свою очередь, гарантирует непрерывность обеспечения безопасности информационных систем в текущем и во всех возможных состояниях относительно заданных условий безопасности.