ОБЪЕКТНО-ОРИЕНТИРОВАННЫЙ ПОДХОД
К МОДЕЛИРОВАНИЮ СИСТЕМЫ ЗАЩИТЫ ИНФОРМАЦИИ
OBJECT-ORIENTED APPROACH TO THE INFORMATION PROTECTION SYSTEM MODELING
УДК 50.37.23,004.732.056 DOI: 10.25631/PEJ.2018.2.4
СТЕЛЬМАШОНОК Елена Викторовна
заведующая кафедрой вычислительных систем и программирования Санкт-Петербургского государственного экономического университета, доктор экономических наук, профессор, [email protected]
STELMASHONOK, Elena Viktorovna
Head of the Computer Systems and Programming Department, Saint-Petersburg State University of Economics, Doctor of Economics, Professor, [email protected]
СТЕЛЬМАШОНОК Виталий Леонидович
доцент кафедры менеджмента и инноваций Санкт-Петербургского государственного экономического университета, кандидат экономических наук, доцент, [email protected]
STELMASHONOK, Vitaly Leonidovich
Associate Professor at the Management and Innovation Department, Saint-Petersburg State University of Economics, Candidate of Economic Sciences, Associate Professor, [email protected]
Аннотация.
В современных условиях особое значение приобретают вопросы обеспечения безопасности информационной инфраструктуры функционирования бизнес-процессов промышленного предприятия. Данная статья посвящена актуальной в условиях цифровой экономики проблеме использования методов компьютерного моделирования процессов и систем защиты информации. Обосновывается актуальность и целесообразность применения специального программного инструментария объектно-ориентированного моделирования. Основываясь на том положении, что построение систем обеспечения информационной безопасности является очень сложным и дорогостоящим процессом, рекомендуется использование инструментария объектно-ориентированного моделирования. Это позволяет создавать предварительную модель программной системы и значительно сокращает сроки разработки самой системы.
Ключевые слова: информационные технологии, информационная безопасность, система защиты информации, факторы защищенности, визуальное моделирование, диаграмма вариантов использования, меры защиты, средства защиты.
© Стельмашонок Е. В., Стельмашонок В. Л., 2018.
Abstract.
In modern conditions, it is essential to ensure the security of the information infrastructure of the business processes functioning of an industrial enterprise. This article is devoted to the problem of using computer simulation methods and information security systems in a digital economy. The urgency and expediency of using special software tools for object-oriented modeling is substantiated. Based on the assumption that information security systems building is a very complex and expensive process, it is recommended to use the toolkit of object-oriented modeling. This allows you to create a preliminary model of the software system and significantly reduce the development time of the system itself.
Key words: information technologies, information security, information security system, security factors, visual modeling, diagram of use cases, protection measures, means of protection.
Информационная безопасность играет важную роль в обеспечении реализации стратегических национальных приоритетов Российской Федерации.
Доктрина информационной безопасности является основой для формирования государственной политики и развития общественных отношений в области обеспечения информационной безопасности, а также для выработки мер по совершенствованию системы ее обеспечения. В ней, в частности в п. 7, указывается, что «информационные технологии приобрели глобальный трансграничный характер и стали неотъемлемой частью всех сфер деятельности: личности, общества и государства. Их эффективное применение является фактором ускорения экономического развития государства и формирования информационного общества» [1, п. 7].
В Указе Президента РФ от 9 мая 2017 г. № 203 «О Стратегии развития информационного общества в Российской Федерации на 2017-2030 годы» также уделяется особое внимание вопросам цифровизации всей экономики [2].
В рамках Программы «Цифровая экономика РФ», утвержденной распоряжением Правительства Российской Федерации от 28 июля 2017 г. № 1632-р определены цели и задачи в
рамках базовых направлений развития цифровой экономики в Российской Федерации на период до 2024 г. К одному из важнейших базовых направлений развития относится информационная безопасность [3].
В современных условиях особое значение приобретают вопросы обеспечения безопасности информационной инфраструктуры функционирования бизнес-процессов промышленного предприятия.
Концептуальная модель инфраструктуры защиты информации бизнес-процессов должна отражать принципиальные подходы к организации системы защиты на промышленном предприятии [4].
Для построения концептуальной модели выбран метод визуального моделирования с использованием нотации Universal Model Language (UML), что позволяет отобразить процесс моделирования в виде поуровнево-го спуска от наиболее общей и абстрактной концептуальной модели исходной системы к логической.
Если попытаться охарактеризовать современный уровень развития компьютерных и информационных технологий, то первое, на что следует обратить внимание, - это возрастающая сложность не только отдельных физических и программных компонентов, но
и лежащих в основе этих технологий концепций и идей.
Применение иМЬ заключается в построение диаграмм, каждая из которых уточняет и расширяет ранее построенные диаграммы. Визуальное моделирование можно представить, как некоторый процесс спуска от наиболее общей и концептуальной модели к физической программной модели. Чаще всего выделяют диаграммы [5; 6]:
• вариантов использования;
• классов;
• состояний;
• последовательности;
• деятельности;
• кооперации.
На рисунках 1-6 показаны диаграммы вариантов использования, описывающие функциональное назначение инфраструктуры защиты информации бизнес-процессов [5].
Суть построения диаграммы вариантов использования состоит в том, что проекти-
руемая система представляется в форме так называемых вариантов использования, с которыми взаимодействуют некоторые внешние сущности (акторы). При этом актором, или действующим лицом называется любой объект, субъект или система, взаимодействующая с моделируемой системой извне. В свою очередь, вариант использования служит для описания сервисов, которые система предоставляет актору, т. е. каждый вариант использования определяет некоторый набор действий, совершаемый системой при диалоге с актором. При этом ничего не говорится о том, каким образом будет реализовано взаимодействие акторов с системой и собственно выполнение вариантов использования. В самом общем случае диаграмма вариантов использования представляет собой граф специального вида, который является графической нотацией для представления конкретных вариантов использования, акторов и отношений между этими элементами.
Рисунок 1
Концептуальная модель инфраструктуры защиты информации бизнес-процессов
Представленная на рисунке 1 диаграмма вариантов использования иллюстрирует концептуальную модель инфраструктуры защиты информации бизнес-процессов.
На этой диаграмме представлены акторы:
• нарушители;
• персонал;
• бизнес-приложения;
• внешние приложения;
• администратор системы защиты информации.
Варианты использования:
• осуществление защиты информации: управление доступом; регистрация и учет; обеспечение целостности данных; шифрование данных;
• осуществление политики безопасности. Элементами проектируемой системы защиты информации при этом являются:
• подсистема управления доступом;
• подсистема регистрации и учета;
• подсистема обеспечения целостности;
• криптографическая подсистема.
На рисунках 2, 3, 4, 5 представлены диаграммы вариантов использования соответственно функций: управления доступом, ведения регистрации и учета, обеспечения целостности данных и шифрования данных.
Актором на диаграмме функции ведения регистрации и учета (рисунок 2) является администратор системы защиты информации (СЗИ), именно за ним в системе закреплена указанная функция.
Эта функция включает в себя следующие компоненты:
• учет носителей информации;
• учет объектов доступа;
• учет субъектов доступа;
• учет выдачи документов;
• учет передачи информации.
Акторами диаграммы функции обеспечения
целостности данных являются персонал и администратор системы защиты информации (рисунок 3).
Модель функции обеспечения целостности данных содержит следующие составляющие:
Рисунок 2
Диаграмма функции ведения регистрации и учета
• тестирование системы защиты информации;
• физическую охрану элементов информационной системы;
• администрирование системы защиты информации.
Взаимосвязь элементов модели функции управления доступом представлена на диаграмме (рисунок 4).
Акторами в этой модели определены:
• нарушители;
• персонал;
• бизнес-приложения;
• внешние приложения.
Функция управления доступом предполагает:
• реализацию контроля доступа к элементам информационной системы (ИС);
• идентификацию и аутентификацию;
• контроль доступа к информационным ресурсам.
На диаграмме криптографической функции (рисунок 5) предполагается как шифрование данных, так и дешифрование. Акторами данной модели являются: администратор СЗИ и криптосредства.
Модель предполагает:
• классификацию по конфиденциальности;
• шифрование конфиденциальной информации.
С точки зрения свойств самой инфраструктуры защиты информации, характера возможных угроз, основная функция данной системы должна содержать компоненты, отражающие свойства функционального назначения защиты.
С учетом вышеизложенного, следует говорить о том, что защищенность системы определяется следующими факторами защищенности:
• от несанкционированного доступа (НСД) к информации, характеризующей-
Рисунок 3
Диаграмма функции обеспечения целостности данных
Рисунок 4
Диаграмма функции управления доступом
Рисунок 5
Диаграмма криптографической функции
ся способностью препятствовать попыткам несанкционированного изменения, уничтожения, получения или использования информации;
• от перехвата (хищения) информации, характеризующейся способностью препятствовать попыткам несанкционированного получения информации при ее приеме (передаче) по каналам связи, а также посредством доступа к носителям информации;
• от случайных помех (сбоев), характеризующихся способностью восстанавливать программные модули и информационные массивы в случае их возникновения;
• от вмешательства в бизнес-процесс, характеризующегося способностью препятствовать несанкционированному информационному влиянию на ход процесса.
Указанные ситуации реализации наиболее вероятных угроз возможны в результате дей-
ствий нарушителей из числа должностных лиц, непосредственно участвующих в бизнес-процессе, нарушителей из числа посторонних лиц, внешних программных приложений, специального программного обеспечения, а также в силу случайных факторов (отказов, сбоев аппаратуры, помех в каналах связи).
На диаграмме, представленной на рисунке 6, показан состав основных свойств инфраструктуры защиты информации, а также их взаимосвязь через механизмы оценки и оптимизации. К таким свойствам относятся:
• защита от НСД;
• защита от перехвата при передаче;
• защита от случайных помех и сбоев;
• защита от информационного вмешательства в бизнес-процесс.
Следовательно, определение показателей, характеризующих указанные выше свойства, позволит оценить информационную
Рисунок 6
Взаимосвязь свойств системы защиты информации бизнес-процессов на промышленном предприятии
петербургский экономическии журнал
№ 2
2018
36
защищенность бизнес-процессов, управлять информационными рисками и проводить оптимизацию инфраструктуры защиты информации на промышленном предприятии.
Далее предлагается рассмотреть применение диаграмм вариантов использования и классов для описания функции проектирования системы шифрования данных на основе метода об укладке ранца.
Рассматривается шифрующий алгоритм на основе задачи об укладке ранца, являющийся алгоритмом асимметричной криптографии: шифрование производится с помощью открытого ключа получателя сообщения, расшифровка - с помощью закрытого (секретного) ключа получателя.
Задача укладки ранца формулируется следующим образом. Пусть дано п предметов с весами М, М, ..., Мп соответственно, тогда при заданном весе всего ранца 5 требуется определить, какие из этих предметов войдут в рюкзак. То есть требуется вычислить коэффициенты Ь., которые могут принимать значения 0 (/-й предмет не кладут в ранец) или 1 (/-й предмет кладут в ранец), и такие, что выполняется условие (1):
S = b.M. + b2M2 + ... + bM .
112 2 n n
(1)
(Ь.=1). Затем текущий вес уменьшается на вес положенного в ранец предмета, и процедура повторяется для следующего по весу предмета в последовательности. Если в результате текущий вес уменьшится до нуля, то решение найдено. Если же все предметы перебраны, а текущий вес отличен от нуля, задача не имеет решения.
Открытый ключ вычисляется по закрытому и представляет собой обычную последовательность весов т1, т2, ..., т , для которой решение задачи об укладке ранца может быть найдено лишь полным перебором (п обычно не меньше 250). Веса обычной последовательности т. получаются следующим преобразованием членов сверхвозрастающей последовательности (2):
m. = M. • p mod q,
(2)
Решение задачи укладки ранца лежит в основе процесса расшифровки сообщения, при этом полученные значения коэффициентов Ь1, Ь2, ..., Ьп определяют значения битов текущего символа открытого (расшифрованного) сообщения, п - число бит символа (или блока) сообщения, а последовательность весов Мр М2... Мп является секретным ключом. При этом последовательность М1, М2, ., Мп должна быть сверхвозрастающей, то есть в ней каждый член больше суммы всех предыдущих членов.
Алгоритм нахождения коэффициентов Ь1, Ь2, ., Ьп для сверхвозрастающих последовательностей следующий. В качестве текущего берется полный вес ранца и сравнивается с весом самого тяжелого предмета в последовательности. Если текущий вес меньше веса данного предмета, то предмет не кладут в ранец (Ь.=0). Если же текущий вес больше или равен весу этого предмета, то его в ранец кладут
где p,q - случайные целые числа, взаимно простые (не имеют общих множителей), держащиеся в секрете (являются частью секретного ключа), причем q больше суммы всех чисел сверхвозрастающей последовательности;
mod q - операция взятия остатка целочисленного деления по модулю q.
Процесс преобразования текста производится блоками (в данном случае - посимвольно).
Шифрование осуществляется следующим образом. Сообщение сначала разбивается на блоки, по размерам равные по числу бит длине n последовательности для укладки рюкзака. Блоки представляются в виде последовательности бит. Затем, считая, что единица указывает на присутствие элемента последовательности в рюкзаке, а ноль - на его отсутствие, вычисляются полные веса Sk ранцев, к = 1,2,... - по одному ранцу для каждого блока сообщения. Зашифрованный текст представляет собой последовательность вычисленных весов ранцев S1, S2, .
Для дешифрования текста законный получатель знает закрытый ключ: исходную сверх-возрастающую последовательность и значения p и q, использованные для превращения ее в нормальную последовательность. Для расшифровки получатель сначала определя-
ет рл - число, обратное р по модулю q, т. е. такое целое число р4, что (рл • р) mod q = 1.
Каждое значение шифртекста умножается на рл mod q, а затем разделяется на биты с помощью закрытого ключа (см. описанный алгоритм определения значений b1, b2, ..., bn). Полученная последовательность бит переводится в символ открытого текста.
UML предназначен для описания, визуализации и документирования объектно-ориентированных систем и бизнес-процессов с ориентацией на их последующую реализацию в виде программного обеспечения, в том числе и процессов защиты информационной инфраструктуры [7].
Использование такого языка, как UML в качестве инструментария для быстрой разработки приложений и средства визуального
программирования, позволило создавать предварительную модель программной системы, которая была бы понятна и заказчику, и группе программистов.
Процесс построения модели программной системы начинается с построения диаграммы вариантов использования, которая описывает функциональное назначение системы или, другими словами, то, что система будет делать в процессе своего функционирования. Диаграмма вариантов использования является исходным концептуальным представлением или концептуальной моделью системы в процессе ее проектирования и разработки.
Разработка диаграммы преследует цели:
• определение общих границ и формирование контекста моделируемой предметной
Программа шифрования данных
Рисунок 7
Диаграмма вариантов использования
области на начальных этапах проектирования системы;
• формулирование общих требований к функциональному поведению проектируемой системы;
• разработка исходной концептуальной модели системы для ее последующей детализации в форме физических и логических моделей;
• подготовка исходной документации для дальнейшего взаимодействия разработчиков с ее заказчиками и пользователями.
Суть данной диаграммы состоит в следующем: проектируемая система представляется в виде множества сущностей и акторов, взаимодействующих с системой с помощью так называемых вариантов использования. При этом актором называется любая сущность, взаимодействующая с системой извне. Вариант использования служит для описания сервисов, которые система предоставляет актору. Другими словами, каждый вариант использования определяет некоторый набор действий, совершаемых системой при диалоге с акторами. Между компонентами диаграммы могут быть различные отношения. Мы остановимся на двух:
• отношение ассоциации - показывает семантические особенности взаимодействия актора и варианта использования;
• отношение обобщения - вариант использования А может быть обобщен до варианта использования В.
Проанализировав нашу задачу, мы получим диаграмму вариантов использования, представленную на рисунке 7.
Как видно на рисунке, в диаграмме присутствует основной вариант использования «Зашифровать данные», который включает три других варианта использования: «сгенерировать ключ», «выдать ключ пользователю», «наложить ключ на данные». С главным вариантом использования ассоциированы два актора - «шифратор» и «данные». Отношение обобщения показывают, что существует два наследуемых актора - «программа шифрования данных» и «файлы» соответственно.
Следующим уровнем детализации является диаграмма классов.
Диаграмма классов служит для представления статической структуры модели системы в терминологии классов объектно-ориентированного программирования. Она может отражать, в частности, различные взаимосвязи между сущностями предметной области, такими как объекты и подсистемы, а также описывает их внутреннюю структуру и типы отношений. Диаграмма классов представляет собой некоторый граф, вершинами которого являются классы, связанные различными типами структурных отношений.
Класс в языке UML служит для обозначения множества объектов, которые обладают одинаковой структурой, поведением и отношением с объектами из других классов. Класс обязательно должен содержать имя, а также может содержать перечень атрибутов и операций. Между классами существуют следующие отношения: отношение зависимости, отношение ассоциации, отношение обобщения, отношение реализации.
Построение данной диаграммы имеет большое значение для программистов, поскольку на основе данной диаграммы можно сгенерировать программный код на нужном языке программирования. Удобство этих диаграмм заключается в наглядности построения системы. Программисту куда легче писать код в уже созданной иерархии классов, нежели разрабатывать ее самостоятельно. Особенно все преимущества такого подхода проявляются в проектировании сложных систем с большим количеством классов и сложной иерархией отношений между ними. К таким системам, несомненно, относятся системы информационной безопасности ввиду их повышенной сложности.
Учитывая все вышесказанное, мы можем построить для нашей системы диаграмму, представленную на рисунке 8.
Данная диаграмма говорит о наличии трех классов. В верхней области указано имя класса. В средней - перечень атрибутов, а в нижней -перечень операций. Значок «+» перед именем класса или операцией означает квантор видимости - Public. А «-» означает - Private. Пунктирная стрелочка показывает отношение зависимости. В нашем случае источником за-
Рисунок 8 Диаграмма классов
висимости выступает класс Crypt, а клиентами зависимости - классы KeyGen и DataCrypt.
После построения диаграммы классов можно сгенерировать код. Пример сгенерированного кода на языке Visual Basic: Пример кода для класса Crypt: ' Generated by Visual UML 2.6 at 14:25:15 on 14 Март 2018 г. Option Explicit Dim strFileName As String Dim objKeyGen As New KeyGen Dim objDataCrypt As New DataCrypt ' Generated by Visual UML 2.6 at 14:25:15 on 14 Март 2018 г. Public Sub GetUserInfo()
End Sub
' Generated by Visual UML 2.6 at 14:25:15 on 14 Март 2018 г. Private Sub GenerateLockedKey()
End Sub
' Generated by Visual UML 2.6 at 14:25:15 on 14 Март 2018 г. Private Sub GenerateOpendeKey()
End Sub
' Generated by Visual UML 2.6 at 14:25:15 on 14 Март 2018 г. Public Sub CryptFile()
End Sub
' Generated by Visual UML 2.6 at 14:25:15 on 14 Март 2018 г. Public Sub GenerateKey()
End Sub
' Generated by Visual UML 2.6 at 14:25:15 on 14 Март 2018 г. Public Sub OutputKey()
End Sub
петербургский экономическии журнал
№ 2
2018
40
После генерации кода программисту остается только произвести наполнение функций кодом, в результате чего получается готовый программный продукт.
Объектно-ориентированный подход к моделированию системы защиты информации с использованием такого мощного языка объектно-ориентированного моделирования, как иМЬ, является наиболее востребованным
при проектировании больших и сложных систем. Построение систем обеспечения информационной безопасности является очень сложным и дорогостоящим процессом. Без создания подробной и понятной документации создание таких сложных систем было бы невозможно, особенно учитывая то, что над ними трудятся большие коллективы разработчиков.
Список литературы
1. Доктрина информационной безопасности Российской Федерации от 5 декабря 2016 года № Пр-646.иКЬ: http://docs.cntd.ru/document/420384668 (дата обращения: 12.03.2018).
2. Указ Президента РФ от 9 мая 2017 г. № 203 «О стратегии развития информационного общества в Российской Федерации на 2017-2030 годы». URL:http://kremlin.ru/ acts/bank/41919 (дата обращения: 12.03.2018).
3. Программа «Цифровая экономика Российской Федерации». URL:http://static. government.ru/media/files/9gFM4FHj4PsB79I5v7yLVuPgu4bvR7M0.pdf (дата обращения: 12.03.2018).
4. Enikeeva L. A., Stelmashonok E. V. Stelmashonok V. L. Models of optimizing the information security industry infrastructure //Mediterranean Journal of Social Sciences, MCSER Publishing, Rome-Italy. 2015. Vol. 6. № 5. P. 353-359.
5. Иванов Д. Ю., Новиков Ф. А. Влияние UML на процесс разработки программного обеспечения // Компьютерные инструменты в образовании. 2009. № 6. С. 3-11.
6. Андрианов В. В., Зефиров С. Л., Голованов В. Б., Голдуев Н. А. Обеспечение информационной безопасности бизнеса. URL: http://www.pqm-online.com/assets/files/lib/ books/andrianov.pdf (дата обращения: 22.01.2018).
7. Стельмашонок Е. В., Тарзанов В. В., Стельмашонок В. Л. Информационные технологии моделирования и оптимизации бизнес-процессов. СПб.: Изд-во Политехн. ун-та, 2006. 220 с.