— Все документы — ГОСТы — ГОСТ Р 59453.2-2021 ЗАЩИТА ИНФОРМАЦИИ. ФОРМАЛЬНАЯ МОДЕЛЬ УПРАВЛЕНИЯ ДОСТУПОМ. Часть 2. РЕКОМЕНДАЦИИ ПО ВЕРИФИКАЦИИ ФОРМАЛЬНОЙ МОДЕЛИ УПРАВЛЕНИЯ ДОСТУПОМ


ГОСТ Р 59453.2-2021 ЗАЩИТА ИНФОРМАЦИИ. ФОРМАЛЬНАЯ МОДЕЛЬ УПРАВЛЕНИЯ ДОСТУПОМ. Часть 2. РЕКОМЕНДАЦИИ ПО ВЕРИФИКАЦИИ ФОРМАЛЬНОЙ МОДЕЛИ УПРАВЛЕНИЯ ДОСТУПОМ

ГОСТ Р 59453.2-2021 ЗАЩИТА ИНФОРМАЦИИ. ФОРМАЛЬНАЯ МОДЕЛЬ УПРАВЛЕНИЯ ДОСТУПОМ. Часть 2. РЕКОМЕНДАЦИИ ПО ВЕРИФИКАЦИИ ФОРМАЛЬНОЙ МОДЕЛИ УПРАВЛЕНИЯ ДОСТУПОМ

Утв. и введен в действие приказом Федерального агентства по техническому регулированию и метрологии от 22 апреля 2021 г. N 271-ст
Национальный стандарт РФ ГОСТ Р 59453.2-2021
"ЗАЩИТА ИНФОРМАЦИИ. ФОРМАЛЬНАЯ МОДЕЛЬ УПРАВЛЕНИЯ ДОСТУПОМ. Часть 2. РЕКОМЕНДАЦИИ ПО ВЕРИФИКАЦИИ ФОРМАЛЬНОЙ МОДЕЛИ УПРАВЛЕНИЯ ДОСТУПОМ"

Information protection. Formal access control model. Part 2. Recommendations on verification of formal access control model

ОКС 35.030

Дата введения - 1 июня 2021 г.
Введен впервые

Предисловие

1 Разработан Федеральной службой по техническому и экспортному контролю (ФСТЭК России), Обществом с ограниченной ответственностью "РусБИТех-Астра" (ООО "РусБИТех-Астра"), Институтом системного программирования им. В.П. Иванникова Российской академии наук (ИСП РАН)

2 Внесен Техническим комитетом по стандартизации ТК 362 "Защита информации"

3 Утвержден и введен в действие Приказом Федерального агентства по техническому регулированию и метрологии от 22 апреля 2021 г. N 271-ст

4 Введен впервые

Введение

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

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

В связи с этим настоящий стандарт устанавливает рекомендации по верификации формальных моделей управления доступом с применением инструментальных средств.

Настоящий стандарт применяется совместно с ГОСТ Р 59453.1-2021 "Защита информации. Формальная модель управления доступом. Часть 1. Общие положения".

1 Область применения

Настоящий стандарт представляет собой рекомендации по верификации с применением инструментальных средств формальных моделей управления доступом, на основе которых разрабатываются средства защиты информации, реализующие политики управления доступом.

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

2 Нормативные ссылки

В настоящем стандарте применена нормативная ссылка на следующий стандарт:

ГОСТ Р 59453.1 Защита информации. Формальная модель управления доступом. Часть 1. Общие положения

Примечание - При пользовании настоящим стандартом целесообразно проверить действие ссылочных стандартов в информационной системе общего пользования - на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет или по ежегодному информационному указателю "Национальные стандарты", который опубликован по состоянию на 1 января текущего года, и по выпускам ежемесячного информационного указателя "Национальные стандарты" за текущий год. Если заменен ссылочный стандарт, на который дана недатированная ссылка, то рекомендуется использовать действующую версию этого стандарта с учетом всех внесенных в данную версию изменений. Если заменен ссылочный стандарт, на который дана датированная ссылка, то рекомендуется использовать версию этого стандарта с указанным выше годом утверждения (принятия). Если после утверждения настоящего стандарта в ссылочный стандарт, на который дана датированная ссылка, внесено изменение, затрагивающее положение, на которое дана ссылка, то это положение рекомендуется применять без учета данного изменения. Если ссылочный стандарт отменен без замены, то положение, в котором дана ссылка на него, рекомендуется применять в части, не затрагивающей эту ссылку.

3 Термины и определения

В настоящем стандарте применены термины по ГОСТ Р 59453.1, а также следующие термины с соответствующими определениями:

3.1 верификация формальной модели управления доступом: Подтверждение посредством представления объективных свидетельств непротиворечивости формальной модели управления доступом и выполнения заданных в ее рамках условий безопасности.

3.2 инструментальное средство верификации: Инструментальное средство, реализующее формальные методы верификации формальных моделей.

Примечание - Инструментальное средство верификации, как правило, поддерживает и формальные методы разработки формальных моделей.

3.3 формализованное (машиночитаемое) описание: Описание формальной модели на формальном языке со строгой и однозначно определенной семантикой, позволяющее использовать инструментальные средства верификации.

3.4 формальный метод: Основанный на математике и логике метод, а также поддерживаемые им языки, для верификации или разработки формальных моделей.

4 Общие положения

4.1 Для верификации формальной модели управления доступом, описание которой соответствует критериям, установленным ГОСТ Р 59453.1, должен быть осуществлен выбор соответствующих инструментальных средств, для которых должны быть представлены свидетельства, что реализуемые ими формальные методы позволяют осуществить верификацию формальной модели. При этом выбранные инструментальные средства должны допускать полную, независимую от их разработчиков проверку корректности результатов их работы.

4.2 Для верификации с использованием инструментальных средств формальная модель должна иметь формализованное (машиночитаемое) описание на языке, поддерживаемом реализуемыми этими инструментальными средствами формальными методами. Если формальная модель имеет математическое описание, то оно должно быть переведено в формализованное (машиночитаемое) описание на этом языке. При этом должны быть представлены свидетельства согласованности математического и формализованного (машиночитаемого) описаний формальной модели.

Примечание - Для формализованного (машиночитаемого) описания формальной модели управления доступом, как правило, используются формальные методы (Alloy, ASM, В, Event-B, TLA+, VDM-SL, Z), языки которых позволяют строить абстрактные автоматные модели. Примерами инструментальных средств, реализующих эти формальные методы, являются Rodin, TLA Toolbox. Кроме моделирования на основе абстрактных автоматных моделей, для верификации формальных моделей управления доступом могут использоваться темпоральные логики, сети Петри и другие формальные методы.

4.3 Верификация формальной модели управления доступом должна быть осуществлена путем применения к ее формализованному (машиночитаемому) описанию инструментальных средств верификации.

4.4 Верификация формальной модели управления доступом является успешной, если результаты применения инструментальных средств верификации к ее формализованному (машиночитаемому) описанию позволяют сделать вывод о непротиворечивости формальной модели и о выполнении заданных в ее рамках условий безопасности.

5 Выбор инструментальных средств верификации формальной модели управления доступом

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

5.2 Критерии выбора языка формализованного (машиночитаемого) описания формальной модели управления доступом должны быть основаны на оценке его возможностей (наличие теоретико-множественных примитивов и средств описания сложных структур данных) для представления описываемых в рамках формальной модели состояний и правил перехода из состояний в состояния абстрактного автомата.

5.3 Критерии выбора инструментальных средств верификации, реализующих формальные методы, поддерживающие соответствующий сформированным согласно 5.2 критериям язык формализованного (машиночитаемого) описания формальной модели управления доступом, должны быть основаны на оценке характеристик этих инструментальных средств, включая:

- функциональные характеристики: возможность полной, независимой от разработчиков инструментальных средств верификации проверки корректности результатов их работы; возможность автоматического и интерактивного доказательства, автоматической или полуавтоматической генерации условий верификации (инвариантов), повторного использования ранее полученных доказательств выполнения условий верификации (переиспользования артефактов), создаваемых в ходе верификации; ограничения на размер абстрактного автомата; скорость верификации;

- нефункциональные характеристики: наличие реализуемой инструментальными средствами среды редактирования и верификации формализованного (машиночитаемого) описания формальной модели, анализа ошибок формальной модели; возможности по подключению и комбинированного использования библиотек (пруверов - инструментов для доказательства теорем, солверов - инструментов для решения систем уравнений); наличие успешного опыта применения разработчиками средств защиты информации, органами по сертификации и испытательными лабораториями; требования к среде эксплуатации, операционной системе, ресурсам оперативной и внешней памяти; стоимость; вид лицензии; наличие учебных материалов.

5.4 Должны быть представлены свидетельства соответствия выбранных согласно 5.3 инструментальных средств верификации критериям, сформулированным согласно 5.1.

6 Формализованное (машиночитаемое) описание формальной модели управления доступом

6.1 Для верификации формальная модель управления доступом должна иметь соответствующее ГОСТ Р 59453.1 формализованное (машиночитаемое) описание. Язык описания должен позволять выполнить требования к описанию формальной модели управления доступом и быть обеспечен инструментальными средствами для ее верификации, отвечающими критериям в соответствии с 5.3.

6.2 Если формальная модель управления доступом описана на математическом языке, то должен быть осуществлен перевод ее математического описания в формализованное (машиночитаемое) описание на языке, поддерживаемом формальными методами, реализуемыми выбранными в соответствии с 5.3 инструментальными средствами верификации.

6.3 При переводе математического описания в формализованное (машиночитаемое) описание формальной модели управления доступом должны быть последовательно описаны:

- элементы состояний абстрактного автомата в математическом описании формальной модели;

- правила перехода абстрактного автомата из состояний в состояния, при этом допустимо объединение нескольких правил в одно или разбиение некоторого правила на несколько с сохранением его свойств;

- условия выполнения политик управления доступом в состояниях абстрактного автомата и при переходах из состояний в состояния абстрактного автомата (условия безопасности), при этом могут быть добавлены недостающие для осуществления верификации условия, в целом составляющие условия верификации.

Примеры перевода элементов математического описания формальной модели управления доступом в формализованное (машиночитаемое) описание приведены в приложении А.

6.4 Если при переводе математического описания в формализованное (машиночитаемое) описание формальной модели управления доступом проводилась корректировка математического описания, то скорректированное математическое описание должно соответствовать ГОСТ Р 59453.1.

6.5 Если полученное в соответствии с 6.2 формализованное (машиночитаемое) описание формальной модели управления доступом имеет несоответствия ее математическому описанию, то должны быть представлены свидетельства согласованности и непротиворечивости этих описаний.

7 Верификация формализованного (машиночитаемого) описания формальной модели управления доступом

7.1 При верификации формальной модели управления доступом выбранные в соответствии с 5.3 инструментальные средства верификации должны быть применены к ее формализованному (машиночитаемому) описанию, полученному в соответствии с 6.1.

7.2 Верификация формализованного (машиночитаемого) описания формальной модели управления доступом с применением инструментальных средств должна состоять в выполнении следующих действий:

- должно быть осуществлено автоматическое доказательство непротиворечивости формальной модели и выполнения заданных в ее рамках условий безопасности (условий верификации) при наличии у инструментальных средств соответствующей функциональности, в противном случае должно быть выполнено интерактивное доказательство этих условий верификации;

- если доказаны все условия верификации, то она считается успешно завершенной, в противном случае должны быть идентифицированы недоказанные условия верификации и для каждого из них должны быть проанализированы причины, по которым их доказательство не было выполнено;

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

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

- если доказательство условий верификации не удалось выполнить из-за ограничений автоматического доказательства, реализуемого инструментальными средствами, то с их использованием должно быть осуществлено интерактивное доказательство этих условий верификации;

- если интерактивное доказательство не удалось выполнить из-за сложности доказываемых условий верификации, то при наличии соответствующей возможности должны быть осуществлены декомпозиция условий верификации на более простые условия верификации и автоматическое или интерактивное доказательство каждого из них в отдельности;

- если интерактивное доказательство условий верификации не удалось выполнить из-за ошибок в реализации инструментальных средств, то эти ошибки должны быть исправлены.

7.3 Если в процессе верификации выявлены дефекты описания формальной модели управления доступом, не позволяющие подтвердить ее непротиворечивость или выполнение заданных в ее рамках условий безопасности, то описание формальной модели должно быть скорректировано, при этом должно быть обеспечено соответствие описания формальной модели ГОСТ Р 59453.1, и ее верификация в соответствии с настоящим стандартом должна быть осуществлена заново.

Примечание - Формальная модель строится на основе некоторых априорных предположений, справедливость которых может быть обоснована неформально. Примером такого предположения может быть утверждение, что начальное состояние абстрактного автомата является безопасным (удовлетворяющим условиям безопасности), которое следует только из предположения об условиях функционирования средств защиты информации, реализующих политики управления доступом.

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

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

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

Приложение А
(справочное)

Примеры перевода элементов математического описания формальной модели управления доступом в формализованное (машиночитаемое) описание

А.1 Введение

В настоящем приложении приведены примеры перевода элементов математического описания формальной модели управления доступом в формализованное (машиночитаемое) описание на языке, поддерживаемом формальным методом Event-B.

А.2 Пример перевода элементов состояния абстрактного автомата

Пусть даны следующие элементы состояния абстрактного автомата математического описания формальной модели управления доступом:

S - множество субъектов доступа;

О - множество объектов;

С - множество контейнеров;

Е = О U С - множество объектов доступа (сущностей), где О ∩ С = Ø;

Н Е: Е → 2 E - функция иерархии сущностей;

RA = {read a, write a} - множество видов доступа, где read a - доступ на чтение, write a - доступ на запись;

А ⸦ S х (Е U S) х RA - множество реализуемых доступов субъектов доступа к сущностям и субъектам доступа;

RR = {read r, write r, execute r, own r} - множество видов прав доступа;

Р ⸦ S х (Е U S) х RR - множество реализуемых прав доступа субъектов доступа к сущностям и субъектам доступа;

(LI, ≤) - решетка уровней целостности, где ≤ - отношение частичного порядка на множестве уровней целостности LI;

(LC, ≤) - решетка уровней конфиденциальности, где ≤ - отношение частичного порядка на множестве уровней конфиденциальности LC;

i e: E → LI - функция, задающая уровень целостности каждой сущности;

i s: S → LI - функция, задающая уровень целостности каждого субъекта доступа;

f e: E → LC - функция, задающая уровень конфиденциальности каждой сущности;

f s: S → LC - функция, задающая уровень доступа каждого субъекта доступа.

В машиночитаемом описании формальной модели на языке, поддерживаемом формальным методом Event-B, для элементов неизменяемой части состояний используются статические множества (sets), константы (constants) и аксиомы (axioms). Изменяющиеся элементы состояний приводятся в блоке переменных (variables). В блоке инвариантов (invariants) - условий и требований на переменные, которые должны быть выполнены в каждом состоянии - каждой переменной задается тип.

context С0

sets

AIIEntitiesAndSubjects // множество всех субъектов доступа и сущностей

AccessRights // множество видов доступа RR

Accesses // множество видов прав доступа RA

Integrity // уровни целостности решетки LI

Confidentiality // уровни конфиденциальности решетки L

constants

AllSubjects // множество всех возможных субъектов доступа

AIIEntities // множество всех возможных сущностей

ReadR // право доступа read r

WriteR // право доступа write r

ExecuteR // право доступа execute r

OwnR // право доступа own r

ReadA // право доступа read a

WriteA // право доступа write a

axioms

@ AIIEntitiesAndAIISubjectsTypes partition(AIIEntitiesAndSubjects,

AllSubjects, AIIEntities)

@AccessRightsTypes partition(AccessRights, {ReadR}, {WriteR}, {ExecuteR}, {OwnR})

@AccessesTypes partition(Accesses, {ReadA}, {WriteA})

machine М0 sees С0

variables

Subjects // множество субъектов доступа S

Objects // множество объектов О

Containers // множество контейнеров С

Entities // множество сущностей Е

EntityHierarchy // функция иерархии сущностей Н Е

SubjectAccessRights // множество реализуемых прав доступа субъектов

// доступа к сущностям и субъектам доступа Р

SubjectAccesses // множество реализуемых доступов субъектов

// доступа к сущностям и субъектам доступа А

Entitylnt // функция, задающая уровень целостности

// каждой сущности i e

Subjectlnt // функция, задающая уровень целостности

// каждого субъекта доступа i s

EntityCnf // функция, задающая уровень конфиденциальности

// каждой сущности f e

SubjectCnf // функция, задающая уровень конфиденциальности

// каждого субъекта доступа f s

invariants

@SubjectsType Subjects ⸦ AIISubjects

@EntitiesType Entities ⸦ AIIEntities

@ObjectsAndContainersType partition(Entities, Objects, Containers)

@EntityHierarchyType EntityHierarchy ϵ Entities image001.jpg (Entities)

@SubjectAccessRightsType SubjectAccessRights ϵ Subjects → (Subjects U Entities ↔ AccessRights)

@SubjectAccessesType SubjectAccesses ϵ Subjects → (Subjects U Entities ↔ Accesses)

@EntityIntType EntityInt ϵ Entities → image002.jpg(lntegrity)

@SubjectIntType SubjectInt ϵ Subjects → image002.jpg (lntegrity)

@EntityIntCnf EntityCnf ϵ Entities → image002.jpg (Confldentiality)

@SubjectCnfType SubjectCnf ϵ Subjects → image002.jpg (Confidentiality)

A.3 Пример перевода описания правила перехода абстрактного автомата из состояний в состояния

Заданное в математическом описании формальной модели управления доступом правило создания субъектом доступа объекта в контейнере имеет следующий вид. Параметры правила:

х - субъект доступа;

у - создаваемый объект;

z - контейнер, в котором создается объект;

yi - уровень целостности создаваемого объекта;

ус - уровень конфиденциальности создаваемого объекта.

Условия применения правила (ограничения на значения параметров правила и элементов состояния, к которому применяется правило):

х ϵ S - субъект доступа функционирует в текущем состоянии абстрактного автомата;

у image003.jpg E - объект не существует в текущем состоянии абстрактного автомата;

z ϵ С - контейнер существует в текущем состоянии абстрактного автомата;

(х, z, write a) ϵ А - субъект доступа обладает доступом на запись к контейнеру;

(х, z, execute r) ϵ Р - субъект доступа обладает правом доступа на выполнение к контейнеру;

yi ≤ min(i s(x), i e(z)) - уровень целостности создаваемого объекта не выше уровней целостности субъекта доступа и контейнера, в котором создается объект;

ус = f e(z) = f s(x) - должны быть равны уровень доступа субъекта доступа и уровни конфиденциальности создаваемого объекта и контейнера, в котором создается объект.

Результаты применения правила (ограничения на значения элементов состояния, полученного в результате применения правила):

E' = Е U {у} - объект как сущность добавляется во множество сущностей в последующем состоянии абстрактного автомата;

O' = О U {у} - объект добавляется во множество объектов;

HE' (z) = H E(z) U {у} - объект добавляется в состав контейнера;

HE' (у) = Ø - созданный объект не включает другие объекты или контейнеры;

P' = Р U {(х, у, own r)} - субъект доступа получает право доступа владения к созданному объекту;

ie' (y) = yi - для созданного объекта задается его уровень целостности;

fe' (y) = yc - Для созданного объекта задается его уровень конфиденциальности.

В машиночитаемом описании на языке, поддерживаемом формальным методом Event-B, правило может задаваться следующим событием:

event create_object

any // параметры

х у z yi ус

where // охранные условия выполнения события, соответствующие

// условиям применения правила

@grd1 х ϵ Subjects

@grd2 у ϵ AIIEntities \ Entities

@grd3 z ϵ Containers

@grd4 z image004.jpg WriteA ϵ SubjectAccesses(x)

@grd5 z image004.jpg ExecuteR ϵ SubjectAccessRights(x)

@grd6 yi ⸦ EntityInt(z) ˄ yi ⸦ SubjectInt(x)

@grd7 yc = EntityCnf(z) ˄ ус = SubjectCnf(x)

@grd8 z ϵ dom(EntityHierarchy)

then // действия по изменению значений переменных состояния

// в результате срабатывания события, соответствующие

// результатам применения правила

@act1 Entities := Entities U {у}

@act2 Objects := Objects U {y}

@act3-4 EntityHierarchy(z) := EntityHierarchy(z) U {y}

@act5 SubjectAccessRights(x) := SubjectAccessRights(x) U {y image004.jpg OwnR}

@act6 EntityInt(y) := yi

@act7 EntityCnf(y) := yc

end

A.4 Пример перевода условия безопасности

Заданные в математическом описании формальной модели управления доступом ограничения на уровни целостности сущностей в составе контейнеров определяются следующим образом: для сущностей х, у ϵ Е, если х ϵ Н Е(у), то i e(x) ≤ i e(y) (уровень целостности сущности не выше уровня целостности контейнера, в котором она содержится). В машиночитаемом описании на языке, поддерживаемом формальным методом Event-B, ограничения на уровни целостности задаются инвариантом:

invariants

@EntityHierarchy1

Ɐx, y·x ϵ Entities ˄ у ϵ Entities ˄ х ϵ dom(EntityHierarchy)

image005.jpg EntityInt(x) ⸦ EntityInt(y)


Возврат к списку

(Нет голосов)

Комментарии (0)


Чтобы оставить комментарий вам необходимо авторизоваться
Новости
Все новости