Pull to refresh

Формальная верификация в информационной безопасности. Как пройти сертификацию во ФСТЭК

Reading time3 min
Views7.7K

В связи с выходом приказа ФСТЭК России № 76 от 02.06.2020 «Об утверждении Требований по безопасности информации, устанавливающих уровни доверия к средствам технической защиты информации и средствам обеспечения безопасности информационных технологий» создание и доказательство безопасности формальных математических моделей средств защиты информации (СЗИ) является обязательным шагом для прохождения сертификации продуктов от 4 уровня доверия и выше.

Что это значит простым языком? Теперь, чтобы пройти сертификацию во ФСТЭК разработчикам ПО в области информационной безопасности необходимо моделировать работу своих продуктов с помощью математических или программных решений.

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

Первое и самое основное - Вам придется самим определять до какого уровня абстракции Вы будете моделировать работу своих продуктов. Фактически регулятор не дает четких объяснений того, что он "хочет" видеть в Ваших моделях, только общие рекомендации. Классические критерии безопасной системы: Изолированность, Полнота, Верифицируемость остаются не параметризованными; то есть нам до конца не известно что именно является отражением этой самой Изолированности, Полноты и Верифицируемости?

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

Допустим с полнотой модели Вы как-то разобрались, что дальше?
А дальше переходим к выбору среды моделирования. Здесь, к счастью, все более не менее определено: официальные представители регулятора рекомендуют открытую платформу для верификации и моделирования Rodin в нотации Event-B. Платформа позволяет моделировать и проверять логику работы Вашего ПО, подсвечивая "опасные" участки кода.

Здесь сложности могут возникнуть только с освоением самой среды, потому как все мануалы написаны на английском. Сама среда является довольно мощным инструментом моделирования, имеет ряд особенностей в установке, но с этим также реально разобраться (ссылку на отличное вводное методическое пособие, выпущенное в этом году студентами ИТМО, даю ниже).

Отображение интерфейса Event-B.
Отображение интерфейса Event-B.

Несмотря на то, что Rodin заслуженно стал лидером в решении задач формальной верификации, он не единственный.

Существуют также такие инструменты, как СPN Tools (теория сетей Петри), SPIN (темпоральная логика, автоматы Бюхи), Coq (теория исчисления конструкций), Isabelle (теория логики высшего порядка) и ряд иных менее профильных решений. Все они имеют свои особенности и основаны хоть и на "соседствующих", но все же различных математических теориях.

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

И несколько полезных ссылок, которые могут пригодиться:

Tags:
Hubs:
Total votes 6: ↑6 and ↓0+6
Comments4

Articles