СПОСОБ ИМИТАЦИИ ПРОЦЕССА ФУНКЦИОНИРОВАНИЯ АВТОМАТИЗИРОВАННЫХ СИСТЕМ
METHOD FOR SIMULATION OF THE PROCESS OF FUNCTIONING OF AUTOMATED SYSTEMS

Область техники, к которой относится изобретение
Заявленное изобретение относится к области вычислительной техники и может быть использовано для оценки защищенности автоматизированных систем (АС), являющихся элементами систем связи и автоматизации, от деструктивных информационных воздействий.
Уровень техники
а) Описание аналогов
Известен способ защиты информационно-вычислительной сети от несанкционированных воздействий по патенту РФ №2635256 «Способ защиты информационно-вычислительной сети от несанкционированных воздействий», (класс G06F 12/14, заявл. 04.05.2016, опубл. 09.11.2011 бюл. №31). В известном способе осуществляют точечное выявление и блокирование элементов сети с нарушением функциональных возможностей без остановки штатной работы информационно-вычислительной сети за счет формирования и периодической отправки сетевых пакетов, имитирующих несанкционированное воздействие, и анализа реакции целевых узлов сети на получение данных пакетов.
Недостатками данного способа являются:
ограниченность достоверности результатов оценки ограничением имитируемых деструктивных информационных воздействий классом воздействий, реализуемыми путем генерации только одного сетевого пакета;
возможность снижения уровня оперативности процесса оценки в связи с высоким риском нанесения ущерба процессу функционирования проверяемой сети и необходимостью выделения дополнительного времени на его восстановление.
Известен способ комбинированного контроля состояния процесса функционирования автоматизированных систем по патенту РФ №2758974 «Способ комбинированного контроля состояния процесса функционирования автоматизированных систем» (класс G06F 21/10, заявл. 10.03.2021, опубл. 03.11.2021 бюл. №31). В известном способе осуществляют контроль состояния функционирования автоматизированной системы за счет сочетания активного и пассивного типов проверки. Осуществляют формирование эталонного образа параметров системы и периодическое считывание реальных значений данных параметров путем пассивной проверки. В случае несовпадения реального значения с эталонным на основании сведений о параметре формируется и последовательно применяется набор эксплоитов, имитирующих вредоносное воздействие нарушителя информационной безопасности.
Недостатками данного способа являются:
применение методов активного контроля, имитирующего деструктивные информационные воздействия, к реальной функционирующей системе, увеличивающее вероятность вывода из строя компонентов системы, приводящего к снижению оперативности процесса оценки защищенности;
основание процедуры оценки состояния функционирования системы на значениях параметров узлов автоматизированной системы, без учета изменения информационного потока и взаимодействия пользователей системы, увеличивающее вероятность снижения достоверности результатов оценки системы в целом.
б) Описание ближайшего аналога (прототипа)
Наиболее близким по своей технической сущности к заявленному является способ анализа файла на вредоносность в виртуальной машине по патенту РФ №2665911 «Система и способ анализа файла на вредоносность в виртуальной машине», (класс G06F 21/56, заявл. 08.02.2017, опубл. 08.08.2018 бюл. №22). Способ-прототип включает следующую последовательность действий: воссоздают виртуальную среду безопасного осуществления деструктивного информационного воздействия, имитируют деструктивное информационное путем запуска в виртуальной машине исследуемого исполняемого файла, анализируют вредоносное воздействие, для чего перехватывают событие, которое возникает в процессе исполнения потока процесса, созданного при открытии файла и приостанавливают исполнение потока; считывают контекст процессора, на котором исполняется поток; сохраняют перехваченное событие и контекст в журнал и сравнивают данные, сохраненные в журнале, с шаблонами, и на основании результатов анализа принимают по меньшей мере одно из решений: решение о признании файла вредоносным, решение об остановке исполнения файла, решение об изменении контекста процессора и решение об ожидании следующего события.
По сравнению с аналогами, способ-прототип может быть использован при оценке защищенности АС путем имитации деструктивного информационного воздействия за счет переноса источника (вредоносного программного обеспечения) в виртуальную среду, обеспечивающего высокий уровень оперативности процесса оценки и повышенный уровень достоверности ее результатов за счет имитации функционирования воздействия на уровне изолированного компонента системы.
Недостатком прототипа является отсутствие возможности имитации взаимодействия пользователей системы и процессов функционирования системы в целом, а также имитации распределенного деструктивного информационного воздействия на исследуемую систему в виде структуры взаимосвязанных компонентов, не позволяющей обеспечить требуемый уровень достоверности результатов оценки при повышении ее оперативности.
Раскрытие изобретения (его сущность)
а) технический результат, на достижение которого направлено изобретение
Целью заявленного технического решения является разработка способа имитации процесса функционирования АС, обеспечивающего повышение оперативности процесса оценки защищенности АС с осуществлением имитации деструктивных информационных воздействий на проверяемую систему и обеспечение требуемого уровня достоверности результатов оценки защищенности.
б) совокупность существенных признаков
Поставленная цель достигается тем, что воссоздают в виртуальной среде отдельные средства вычислительной техники, имитируют локальное деструктивное информационное воздействие на виртуальную среду, анализируют вредоносное воздействие путем сравнения данных о воздействии
mod
c
i
a
0
c
i
a
mod
0
f
0
s
s
на компоненты среды с шаблонами, и принимают решение по результатам анализа. Дополнительно реализованы процессы формирования виртуальной структуры автоматизированной системы, имитации функционирования системы и распределенных деструктивных информационных воздействий, заключающиеся в том, что задают общее время моделирования T, интенсивность потока запросов λ и их общее число m, временной интервал подсчета значений показателей Δ, коэффициенты конфиденциальности k, целостности k и доступности k, множество из n пользователей U, множество из k автоматизированных рабочих мест Н, набор сценариев вредоносного воздействия Ω и множество g типов взаимодействия L, формируют множество из m временных меток Ξ, пустую очередь запросов Q, пустое множество флагов F и набор значений показателей защищенности Z, состоящий из m нулей, фиксируют время начала моделирования t, присваивают ноль начальным значениям счетчиков отправленных сообщений m', перехваченных сообщений m, модифицированных сообщений m и недоступных сообщений m, счетчику меток v присваивают значение 1, задают время окончании моделирования Т=T+t, время фиксации значений показателей T=t+Δ, выбирают тип операции х≠{0, 1}, где 0 - генерация запроса, 1 - обработка запроса, в случае выбора х=0 выбирают тип запроса у∈{0, 1, 2}, где 0 - запрос на отправку сообщения, 1 - запрос на получение сообщения, 2 - запрос на осуществление вредоносного воздействия, в случае выбора у=0 выбирают отправителя u∈U, тип взаимодействия τ∈{1, .., g}, для которого у отправителя существует соответствующая учетная запись (u[k+τ]≠0), индекс автоматизированного рабочего места отправителя
j
s
r
r
v
f
c
i
a
c
i
a
c
i
a
f
f
j
r
f
j
s
s
f
j
r
r
r
f
i
a
f
c
j∈{0, 1, …, k}, поддерживающий взаимодействие типа τ(h[τ]≠0), и для которого у отправителя есть учетная запись (u[j]≠0), выбирают получателя u∈U, поддерживающего взаимодействие типа τ (u[k+τ]≠0), генерируют случайную последовательность бит f, имитирующую информационное сообщение, формируют флаг ϕ=<τ, s, r,f>, помещают его в множество флагов F, формируют запрос q=<y, j, ϕ>, ожидают наступления очередной временной метки t, помещают запрос q в очередь запросов Q, добавляют единицу к счетчику меток v, проверяют достижение времени подсчета показателей (t≥T), если время достигнуто - вычисляют значения показателей конфиденциальности z, целостности z, доступности z и защищенности z, присваивают значению v-го элемента набора показателей Z вектор <z, z, z>, обнуляют счетчики m', m, m, m, добавляют к времени подсчета показателей T временной интервал Δ, проверяют достижение времени окончания моделирования Т, если Т достигнуто - строят график зависимости показателей от времени, если не достигнуто - переходят к выбору типа операции х, в случае, если (t<T) переходят к проверке достижения времени окончания моделирования, если тип запроса у - запрос на получение сообщения либо на осуществление вредоносного воздействия (у≠0), из множества флагов F получают очередной флаг ϕ, при этом если запрос является запросом на отправку данных - флаг ϕ удаляют из множества F (F=F\ϕ), из флага ϕ извлекают тип взаимодействия τ, индекс получателя r и последовательность бит f, выбирают индекс автоматизированного рабочего места получателя, поддерживающего тип взаимодействия τ (h[τ]≠0), для которого у получателя существует учетная запись (u[j]≠0) и переходят к формированию запроса q, в случае, если выбрана операция по обработке запроса (х≠0) - проверяют очередь Q на наличие запросов, если очередь пуста - переходят к проверке достижения времени подсчета показателей T, если в очереди есть запросы - запрос q извлекают из очереди Q, из запроса извлекают его тип у, индекс автоматизированного рабочего места j и флаг ϕ, из флага ϕ извлекают тип взаимодействия τ, индекс отправителя s, индекс получателя r и последовательность бит f, проверяют является ли запрос q запросом на отправку, если (у=0) - осуществляют удаленное подключение к j-му автоматизированному рабочему месту h с помощью учетной записи отправителя u[j], запускают клиентское программное обеспечение типа τ с помощью учетной записи u[k+τ], формируют сообщение типа τ с последовательностью бит f, передают сообщение на сервер, прибавляют к счетчику отправленных сообщений единицу и переходят к проверке достижения времени подсчета показателей T, если (у≠0) - выполняется проверка, является ли запрос q запросом на получение сообщения, если (у=1) - осуществляют удаленное подключение к j-му автоматизированному рабочему месту h с помощью учетной записи получателя u[j], запускают клиентское программное обеспечение типа τ с помощью учетной записи u[k+τ], осуществляют попытку получения от сервера сообщения для получателя u, если сообщение получено и извлеченная из него последовательность f' совпадает с последовательностью из запроса f - переходят к проверке достижения времени подсчета показателей T, если последовательности не совпадают - предварительно увеличивают на 1 счетчик модифицированных сообщений m, а если сообщение не получено - предварительно увеличивают на 1 счетчик недоступных сообщений m, если запрос q является запросом на осуществление вредоносного воздействия (у≠1) - осуществляют подключение к узлу атакующего, выбирают из множества Ω сценарий вредоносного воздействия ω, если сценарий направлен на нарушение доступности (ω∈А) - осуществляют попытку вывода из строя сервера типа τ за счет реализации сценария ω, если сценарий направлен на нарушение целостности или конфиденциальности - осуществляют попытку доступа к последовательности f на сервере типа τ, если доступ не получен переходят к проверке достижения времени подсчета показателей T, если доступ получен, а сценарий направлен на нарушение конфиденциальности, к счетчику перехваченных сообщений m прибавляют единицу, а если сценарий направлен на нарушение целостности - предварительно модифицируют последовательность f на сервере типа τ.
Сопоставительный анализ заявляемого решения с прототипом показывает, что предлагаемый способ отличается от известного:
воссозданием виртуальной среды для взаимосвязанной совокупности средств вычислительной техники, входящей в состав автоматизированной системы;
имитацией взаимодействия пользователей системы на основе поведения системы массового обслуживания, и вредоносного воздействия на генерируемую при этом информацию с точки зрения нарушения свойств ее безопасности;
возможностью осуществления оценки защищенности на основе динамических показателей, отражающих изменения состояние процесса функционирования системы при вредоносных воздействиях.
в) причинно-следственная связь между признаками и техническим результатом
Благодаря новой совокупности существенных признаков в заявленном способе обеспечивается повышение оперативности процесса оценки защищенности АС с осуществлением имитации деструктивных информационных воздействий за счет сокращения временных затрат на приостановку функционирования проверяемой системы и восстановление компонентов системы, поврежденных в ходе имитации деструктивных воздействий при требуемом уровне достоверности результатов оценки. Требуемый уровень достоверности результатов оценки обеспечивается за счет имитации деструктивных информационных воздействий на компоненты оцениваемой системы. Сокращение временных затрат осуществляется за счет воссоздания виртуальной среды, дублирующей структуру и процессы функционирования проверяемой системы, позволяющей осуществлять имитацию деструктивных вредоносных воздействий, не влияющую на реальную систему.
Проведенный анализ уровня техники позволил установить, что аналоги, характеризующиеся совокупностью признаков, тождественных всем признакам заявленного технического решения, отсутствуют, что указывает на соответствие заявленного способа условию патентоспособности «новизна».
Результаты поиска известных решений в данной и смежных областях техники с целью выявления признаков, совпадающих с отличительными от прототипа признаками заявленного объекта, показали, что они не следуют явным образом из уровня техники. Из уровня техники также не выявлена известность отличительных существенных признаков, обусловливающих тот же технический результат, который достигнут в заявляемом способе. Следовательно, заявленное изобретение соответствует условию патентоспособности «изобретательский уровень».
Краткое описание чертежей
Заявленный способ поясняется чертежами, на которых показаны:
фиг. 1 - принципиальная схема способа оценки защищенности с использованием виртуальной среды;
фиг. 2 - блок-схема последовательности действий, реализующей способ имитации процесса функционирования автоматизированных систем;
фиг. 3 - примеры инкапсуляции полезной нагрузки в сообщения различных типов.
Осуществление изобретения
Реализация заявленного способа объясняется следующим образом. Предлагается при проведении мероприятий по оценке защищенности системы с осуществлением имитации деструктивных информационных воздействий действовать согласно принципиальной схеме, отображенной на фиг. 1.
В данной схеме путем сбора и анализа данных об автоматизированная системе (блок «Автоматизированная система» на фиг. 1) осуществляется формирование виртуальной структуры системы (блок «Формирование виртуальной структуры АС» на фиг. 1) за счет создания и настройки виртуальных машин, повторяющих конфигурацию реальных технических средств, входящих в состав проверяемой системы (блок «Виртуализация отдельных СВТ» на фиг. 1), имитация функционирования системы, представленной как взаимодействие пользователей системы (блок «Имитация функционирования АС»), и имитация как локальных (блок «Имитация локальных деструктивных информационных воздействий на фиг. 1), так и распределенных деструктивных воздействий (блок «Имитация распределенных деструктивных информационных воздействий на фиг. 1) на виртуальную среду (блок «Виртуальная среда» на фиг. 1) и последующий анализ состояния виртуальной среды и процессов информационного обмена в ней (блок «Анализ состояния виртуальной среды» на фиг. 1), на основе результатов которого специалист (блок «Специалист» на фиг. 1) оценивает защищенность системы.
Формирование виртуальной среды, повторяющей структуру и конфигурацию проверяемой системы, предполагает следующие шаги:
1. Технический анализ ее компонентов с помощью сканеров сети (например, Nmap [Электронный ресурс]. - Режим доступа. - URL: http://www.nmap.org), средств сбора информации о программных и аппаратных компонентах сетевых узлов и соответствующих им уязвимостях. Подобным функционалом обладает, к примеру, XSpider (см. функциональные возможности, например, на официальном сайте компании Positive Technologies [Электронный ресурс]. - Режим доступа. - URL: http://www.ptsecurity.ru).
2. Анализ организационно-распорядительной документации на систему (паспортов объектов, методических рекомендаций, контрольных примеров настройки и т.д.).
3. Сбор конфигураций исследуемых узлов сети, осуществляемый как вручную, путем копирования соответствующих конфигурационных файлов, так и с использованием специализированного программного обеспечения, такого как Rsync для Unix-подобных систем (см. описание и способ использования на официальном справочном ресурсе Linux [Электронный ресурс]. - Режим доступа. - URL: https://linux.die.net/man/1/rsync) либо встроенной консоли управления Windows ММС (см. описание на официальном сайте Microsoft [Электронный ресурс]. - Режим доступа. - URL: https://docs.microsoft.com/en-us//microsoft-management-console), позволяющей, в том числе, осуществлять импорт и экспорт конфигураций и реестра.
4. Создание виртуальных машин (изолированных контейнеров со специфическим набором компонентов имитируемой операционной системы, микропрограммного и аппаратного обеспечения, обеспечивающим работу отдельных программ и операционных систем) на основе дистрибутивов операционных систем и программного обеспечения при помощи программ-гипервизоров, таких как VirtualBox компании Oracle, VMWare Workstation, разработанная одноименной компанией либо средств моделирования
с возможностью виртуализации, таких как EVE-NG (см. описание функциональных возможностей на официальном сайте EVE-NG [Электронный ресурс]. - Режим доступа. - URL: https://www.eve-ng.net/).
5. Настройка созданных виртуальных машин (их сетевых адаптеров и пр.), а также перенос ранее собранных конфигурационных файлов компонентов реальной системы на виртуальные машины.
6. Дополнительная настройка виртуальных машин для удаленного подключения (конфигурация SSH-сервера, добавление ключа аутентификации модуля обработки запросов).
7. Запуск созданных и настроенных виртуальных машин в составе стенда.
Имитация взаимодействия пользователей и деструктивного воздействия в предлагаемом способе основывается на математическом аппарате непрерывно-стохастической модели одноканальной системы массового обслуживания с очередью и сводится к обмену информационными сообщениями между пользователями и актам деструктивного воздействия со стороны злоумышленника, в совокупности формирующим простейший поток соответствующих запросов на отправку и получение сообщений, а также деструктивное воздействие. Подробное описание данной модели и вывод соответствующих формул расчета вероятности обработки того или иного запроса представлены в статье «Моделирование процессов функционирования автоматизированных систем при проведении мероприятий по оценке защищенности» [Электронный ресурс]. - Режим доступа. - URL: https://moitvivt.ru/ru/joumal/article?id=1001. Выбор данной модели целесообразен, поскольку вышеописанные процессы обладают свойствами простейшего потока: запросы поступают независимо друг от друга, т.е. поток является потоком без последействий (осуществление вредоносного воздействия в данном случае рассматривается как одиночные атаки с использованием конкретной уязвимости конкретного узла, однако возможно использование более сложных моделей для имитации деструктивного воздействия), количество сгенерированных запросов зависит только от величины временного интервала, т.е. поток - стационарный, а сами запросы генерируются последовательно, т.е. поток - ординарный, а стационарный ординарный поток без последействий является простейшим, для которого верно следующее утверждение: вероятность того, что на временном отрезке длины Т произойдет ровно k событий из простейшего потока с интенсивностью λ, подчиняется Пуассоновскому закону распределения, т.е.:
, k=0, 1, …
Технически имитация процесса функционирования системы сводится к генерации и обработке запросов в соответствии с правилами функционирования систем массового обслуживания, которой предшествует формирование следующих параметров:
mod
1. общее время моделирования T;
2. временной интервал подсчета значений показателей Δ;
3. интенсивность потока запросов на обмен данными и осуществление деструктивного информационного воздействия λ;
4. общее количество запросов, генерируемых в процессе моделирования m;
c
i
a
5. коэффициенты конфиденциальности k, целостности k и доступности k обрабатываемой в реальной системе данных;
6. набор типов моделируемого взаимодействия L;
7. набор идентификационных данных типовых моделируемых пользователей U;
8. набор сведений о компонентах системы, предназначенных для взаимодействия с пользователями (автоматизированных рабочих мест, АРМ) H;
9. набор Р IP-адресов АРМ, к которым будет осуществляться удаленный доступ в процессе моделирования;
10. набор сценариев воздействия Ω, состоящий из наборов сценариев, направленных на нарушение конфиденциальности С, целостности I и доступности А обрабатываемой информации.
mod
Общее время моделирования T позволяет задать временной интервал, в течение которого будет осуществляться моделирование процесса функционирования системы и вредоносного воздействия на нее.
mod
mod
Временной интервал Δ предназначен для вычисления показателей системы за установленный период. В качестве временного интервала моделирования целесообразно выбирать такое Δ<T, при котором будет сгенерировано достаточное количество запросов для проведения подсчетов. Выбор интервала основан на статистических данных, описывающих реальное состояние системы и, как и значение времени моделирования T, осуществляется специалистами при проведении мероприятий по оценке защищенности.
Интенсивность λ потока запросов, исчисляемая в количестве запросов в единицу времени, и общее количество запросов т позволяет придать процессу генерации запросов неравномерный, стохастический характер. Данные значения должны коррелировать с задаваемыми временными параметрами.
c
i
a
Для визуализации результатов по окончании моделирования составляются графики изменения показателей защищенности системы, для более точной конфигурации которых специалистом задаются коэффициент конфиденциальности k, целостности k и доступности k, принимающие значения в диапазоне [0, …, 1]. В случае, если нарушение одного из данных свойств безопасности несет менее существенные негативные последствия, чем остальные, значение соответствующего коэффициента задается ниже остальных. Таким образом осуществляется конфигурация параметров выходного графика состояния защищенности системы, позволяющая должностному лицу, осуществляющему оценку защищенности, самостоятельно сформировать критерии оценки и их зависимости от нарушения тех или иных свойств безопасности.
Набор типов взаимодействия L представляется в виде:
1
g
L=[l, …, l]
где:
g∈N - общее число типов моделируемого взаимодействия;
m
l, τ∈{1, …, g} - τ-й тип взаимодействия. Задается специалистом в зависимости от конфигураций реальной системы. К примеру, в случае, если необходимо осуществить моделирование почтового обмена, взаимодействия с WEB-сервером и файлового обмена, g=3, L=[SMTP, WEB, FTP].
Набор аутентификационных данных пользователей представляет собой набор вида:
1
2
g
U=[u, u, …, u]
где:
n∈N - общее количество моделируемых пользователей;
i
u, i∈{1, …, n} - аутентификационные данные ранее созданного типового пользователя, представленные в виде
где:
k - общее количество АРМ моделируемой системы;
, j∈[1, …, k] - пара вида <логин, пароль>, позволяющая осуществить удаленное подключение i-го пользователя к j-му узлу сети. Каждая из представленных пар содержит либо соответствующие аутентификационные данные в случае, если пользователь имеет доступ к ресурсу (узлу), либо пустое значение в случае, если пользователь соответственного доступа не имеет.
, j∈[k+1, …, k+g] - пара вида <логин, пароль>, позволяющая осуществить аутентификацию i-го пользователя для взаимодействия (j-k)-го типа.
Множество компонентов системы Н представлено в виде:
l
2
k
Н={h, h, …, h]
где:
j
h, j∈{1, k} - данные о j-м узле моделируемой сети, в свою очередь организованные следующим образом:
j
1
g
h=[x, … x]
где:
i
x, i∈[1, …, g] - двоичный вектор, принимающий значение 1, если с помощью j-го АРМ возможно взаимодействие i-го типа и 0 в противном случае.
Набор IP-адресов представляет собой набор следующего вида:
1
k
Р=[p, …, p]
i
где p, i∈{1, …, k} - сетевой IPv4 (IPv6) адрес j-го АРМ, моделируемого в составе системы.
Множество сценариев компьютерных атак представлено в следующем виде:
1
2
o
Ω={ω, ω, …, ω}
где:
о - общее число сценариев атак, реализованных и используемых при моделировании проверяемой автоматизированной системы.
i
ω, i∈{1, о} - i-й сценарий компьютерной атаки, представляющий собой формализованный скрипт, принимающий на вход адрес атакуемого узла и, при необходимости, прочие параметры. Предполагается выполнение данных сценариев на отдельной виртуальной машине под управлением предварительно сформированной операционной системы с предустановленным набором специализированного программного обеспечения для проведения тестирования на проникновение. В общем случае сценарий, в зависимости от типа воздействия, либо осуществляет попытку DoS-атаки на соответствующий узел (ω∈А), либо производит хищение (ω∈С) или модификацию данных (ω∈I) конкретного пользователя. Формирование данного набора и его классификация технически реализуема как путем анализа существующих баз данных угроз и уязвимостей, так и при выявлении уязвимостей используемого в реальной системе программного и аппаратного обеспечения и формирования наборов эксплоитов, соответствующих конкретным уязвимостям. В общем случае множество сценариев состоит из множеств сценариев нарушения конфиденциальности С, целостности I и доступности А, а любой сценарий ω принадлежит только одному из этих подмножеств, то есть
V=C ∪ I ∪ A, C ∩ I ∩ A=∅
Имитация процесса функционирования реальной системы осуществляется за счет взаимодействия блоков генерации и обработки запросов. Блок генерации запросов осуществляет выбор типа запроса, его инициализацию и помещение в соответствующую очередь. Блок обработки, соответственно, извлекает запросы из очереди и, в зависимости от типа запроса, осуществляют либо отправку данных, либо их получение, либо вредоносное воздействие.
Блок-схема последовательности действий, реализующей заявленный способ имитации функционирования автоматизированных систем, представлена на фиг. 2.
mod
mod
c
i
a
При первичном запуске задают общее время моделирования T, интенсивность потока запросов λ, временной интервал подсчета коэффициентов Δ<T, общее количество запросов m и коэффициенты k, k, k, а также множество пользователей U, множество АРМ Н, набор типов взаимодействия L и набор сценариев атак Ω, описанные выше (бл. 1 на фиг. 2).
mod
1
m
Затем формируют: набор из m временных меток в диапазоне от 0 до T, подчиняющихся Пуассоновскому закону распределения Ξ=[t, …, t], набор значений показателей Z, состоящий из m пустых элементов, очередь запросов Q=∅, множество флагов F=∅ (бл. 2 на фиг. 2). В моменты времени, соответствующие меткам из Ξ, при имитации будет осуществляться генерация запроса. Генерация временных меток практически реализуема, к примеру, использованием функции «poisson» python-модуля «random».
0
c
i
a
0
mod
f
0
На следующем этапе фиксируется время начала процедуры имитации t (бл. 3 на фиг. 2), инициализируются счетчики запросов m', m, m, m=0, счетчик временных меток v=1, время окончании моделирования Т=t+T, а также время фиксации значений параметров T=t+Δ (бл. 4 на фиг. 2).
Далее случайным образом выбирается тип последующей операции за счет генерации дискретной случайной величины х, принимающей значения 0 или 1 (бл. 5 на фиг. 2).
В случае, если х=0 (бл. 6 на фиг. 2), осуществляется генерация запроса и помещение его в очередь Q. Для этого случайным образом выбирается тип запроса путем генерации дискретной случайной величины у, принимающей значения из набора {0, 1, 2} (бл. 7 на фиг. 2).
s
s
j
j
s
s
r
r
В случае, если у=0 (бл. 8 на фиг. 2), осуществляется инициализация запроса на передачу данных. Для этого случайным образом выбирается отправитель u∈U за счет генерации случайной величины s∈[0, …, n], где n - общее число пользователей системы (бл. 9 на фиг. 2), далее выбирается тип взаимодействия τ∈[1, …, g] (бл. 10 на фиг. 2) из числа доступных пользователю, то есть взаимодействия, для которого у пользователя существует учетная запись u[k+τ]≠0 (бл. 11 на фиг. 2). Далее выбирается АРМ h∈Н (бл. 12 на фиг. 2), поддерживающий взаимодействие типа τ, т.е. h[τ]≠0 (бл. 13 на фиг. 2) такой, что пользователь u имеет к нему доступ, т.е. u[j]≠0 (бл. 14 на фиг. 2), и получатель u∈U (бл. 15 на фиг. 2) такой, что u[k+τ]≠0 (бл. 16 на фиг. 2).
v
После выбора АРМ, получателя и отправителя осуществляется генерация последовательности f (бл. 17 на фиг. 2), состоящей из 8 случайно генерируемых бит, позволяющих однозначно идентифицировать флаг и определить его модификацию. Генерация бит технически реализуема использованием python-модуля random. Сгенерированная последовательность f, тип взаимодействия τ, индекс отправителя s и получателя r помещаются во флаг ϕ=<τ, s, r, f> (бл. 18 на фиг. 2). Затем флаг ϕ добавляется во множество флагов F (бл. 19 на фиг. 2), формируется запрос q=<y, j, ϕ> (бл. 20 на фиг. 2) и при достижении очередной временной метки t+t (бл. 21 на фиг. 2), запрос помещается очередь Q (бл. 22 на фиг. 2), после чего счетчик временных меток v сдвигается на единицу (бл. 23 на фиг. 2).
f
f
i
c
a
Дальнейшим этапом выступает проверка достижения времени фиксации параметров T (бл. 24 на фиг. 2). В случае, если достигнуто время T, вычисляются показатели целостности z, конфиденциальности z и доступности z, а также общий показатель защищенности z согласно формулам (бл. 25 на фиг. 2):
c
i
a
c
i
a
f
f
Подсчитанные значения показателей помещаются в -й элемент набора Z (Z[v]=<z, z, z, z>) (бл. 26 на фиг. 2), счетчики m', m, m, m сбрасываются (бл. 27 на фиг. 2), параметру T задается значение T+Δ (бл. 28 на фиг. 2) и осуществляется проверка времени окончания моделирования Т (бл. 29 на фиг. 2). Если время окончания не достигнуто, выполняется переход к этапу выбора типа операции х (бл. 5 на фиг. 2).
В случае достижения времени окончания моделирования Т на основании набора Z строится график зависимости показателей конфиденциальности, целостности, доступности и защищенности от времени (бл. 30 на фиг. 2), после чего работа соответствующего блока завершается. Построение графика технически реализуемо путем использования функции «plot» python-модуля «matplotlib».
j
r
r
j
Если у≠0, из множества флагов F извлекается очередной флаг ϕ (бл. 31 на фиг. 2), при этом, если генерируется запрос на получение данных (у=1) (бл. 32 на фиг. 2), флаг удаляется из множества (бл. 33 на фиг. 2), т.е. F=F/ϕ. Далее из флага ϕ извлекается индекс получателя r, тип взаимодействия τ, а также последовательность бит f (бл. 34 на фиг. 2). Выбирается АРМ получателя h∈Н (бл. 35 на фиг. 2) такой, что пользователь u имеет к нему доступ, то есть u[j]≠0 (бл. 36 на фиг. 2), и АРМ поддерживает взаимодействие типа τ, то есть h[τ]≠0 (бл. 37 на фиг. 2). Выбор осуществляется путем генерации случайной величины j∈{0, …, k}, удовлетворяющей вышеописанным условиям. После выбора необходимых значений у, j, ϕ осуществляется переход на этап формирования запроса
и помещения его в очередь (бл. 20 на фиг. 2).
f
В случае, если х≠0, начинает функционирование модуль обработки запросов. Данный модуль проверяет наличие запросов q в очереди Q (бл. 38 на фиг. 2). Если очередь пуста - ход алгоритма переходит на этап проверки достижения времени фиксации значений параметров T (бл. 24 на фиг. 2).
j
s
s
s
r
f
В случае, если очередь не пуста, из нее извлекается очередной запрос q (бл. 39 на фиг. 2), из которого, в свою очередь, извлекаются тип запроса у, индекс АРМ пользователя j и флаг ϕ (бл. 40 на фиг. 2). Из флага ϕ, в свою очередь, излекаются индексы типа взаимодействия τ, индексы отправителя s и получателя r, последовательность бит f (бл. 41 на фиг. 2), после чего определяется тип запроса (бл. 42 на фиг. 2). В случае, если запрос q - запрос на отправку данных (у=0), выполняется удаленное подключение к узлу h с помощью учетных данных u[j] (бл. 43 на фиг. 2). IP-адрес j-го АРМ при этом считывается из набора IP-адресов Р, определенных на этапе подготовки. На j-м АРМ запускается соответствующее L[τ]-му типу взаимодействия клиентское программное обеспечение с использованием соответствующих учетных данных u[k+τ] (бл. 44 на фиг. 2). Путем использования интерфейса взаимодействия клиентского ПО осуществляется формирование соответствующего сообщения типа L[τ] от u к u, в тело которого инкапсулируется последовательность бит f (бл. 45 на фиг. 2). Примеры инкапсуляции полезной нагрузки в сообщения при почтовом взаимодействии и при использовании HTTP-GET запросов к WEB-серверу представлены на фиг. 3, согласно которой из множества L выбирается тип взаимодействия, в соответствующие заголовки отправителя и получателя сообщения помещаются аутентификационные данные пользователей из множества U, а сгенерированная последовательность бит f помещается в тело сообщения. Сформированное сообщение передается на сервер соответствующего типа (бл. 46 на фиг. 2), счетчик отправленных сообщений m' увеличивается на 1 (бл. 47 на фиг. 2), после чего осуществляется переход на этап проверки достижения времени фиксации параметров T (бл. 24 на фиг. 2).
j
r
r
r
f
i
a
f
В случае, если запрос q - запрос на получение данных (у=1) (бл. 48 на фиг. 2), выполняется удаленное подключение к узлу h с помощью учетных данных u[j] (бл. 49 на фиг. 2). На j-м АРМ запускается соответствующее L[τ]-му типу взаимодействия клиентское программное обеспечение с использованием соответствующих учетных данных u[k+τ] (бл. 50 на фиг. 2), после чего осуществляется попытка получения сообщения для u (бл. 51 на фиг. 2). В случае, если сообщение получено (бл. 52 на фиг. 2), из него извлекается последовательность f' (бл. 53 на фиг. 2), которая сравнивается с f (бл. 54 на фиг. 2) и осуществляется переход на этап проверки достижения времени фиксации значений параметров T (бл. 24 на фиг. 2), в случае несовпадения f и f' при этом счетчик запросов с нарушенной целостностью m увеличивается на 1 (бл. 55 на фиг. 2). В случае, если сообщение получить не удалось, счетчик запросов с нарушенной доступностью m увеличивается на 1 (бл. 56 на фиг. 2), после чего также осуществляется переход на этап проверки достижения времени фиксации значений параметров T (бл. 24 на фиг. 2).
В случае, если выбран запрос на осуществление компьютерной атаки (у≠1) (бл. 48 на фиг. 2), выполняется подключение к узлу атакующего (бл. 57 на фиг. 2), выбор сценария атаки ω∈V из соответствующего множества сценариев атак (бл. 58 на фиг. 2). В случае, если выбрана атака, направленная на нарушение доступности (ω∈А) (бл. 59 на фиг. 2), осуществляется попытка ее реализации с целью вывода сервера L[τ]-го типа из строя (бл. 60 на фиг. 2). Если выбрана атака, направленная на нарушение целостности или доступности (ω∉А), осуществляется попытка получить доступ
c
c
c
f
к последовательности f находящейся на сервере [τ]-го типа путем реализации атаки ω (бл. 61 на фиг. 2). Если доступ получен (бл. 62 на фиг. 2) и атака направлена на нарушение целостности (бл. 63 на фиг. 2) - осуществляется модификация последовательности f на сервере (бл. 65 на фиг. 2), в противном случае счетчик запросов, завершившихся нарушением конфиденциальности, увеличивается на 1 (m=m+1) (бл. 64 на фиг. 2). В случае, если доступ не получен, а также после этапов вывода из строя сервера, увеличения m или модификации флага осуществляется переход на этап проверки достижения времени фиксации значений параметров T (бл. 24 на фиг. 2).
Вышеописанный этап осуществления деструктивного информационного воздействия технически реализуем как в ручном, так и автоматическом режиме. Для этого специалист (либо программный модуль) на основе входных параметров, таких как IP-адреса атакуемых сетевых узлов, соответствующие учетные записи конфигурирует и запускает эксплоиты - программные модули, эксплуатирующие известные уязвимости программного и аппаратного обеспечения с целью предоставления злоумышленнику доступа к уязвимым ресурсам либо вывода их из строя. В случае, если эксплоит направлен на вывод сетевых узлов из строя (DoS-атака), этап осуществления атаки считается выполненным либо в случае прекращения (нарушения) функционирования атакуемого сетевого узла. Если эксплоит направлен на предоставление доступа и результатом его выполнения является доступ к консоли атакуемого узла - специалист осуществляет попытку получения доступа к ранее определенной последовательности бит. В роли оснастки для выполнения эксплоитов может выступать программная среда Metasploit, содержащая постоянно пополняемый набор эксплоитов для известных уязвимостей и обладающая возможностью создания собственных эксплоитов (см. дополнительные сведения и документацию на официальном сайте Metasploit [Электронный ресурс]. - Режим доступа. - URL: https://www.metasploit.com). В качестве примера осуществления DoS-атаки может выступать запуск в среде Metaploit эксплоита «synflood», реализующий SYN-Flood атаку путем множественной генерации TCP SYN пакетов, занимающего все ресурсы сервера. Примером атаки, направленной на захват последовательности бит на сервере может выступать сочетание использования эксплоита «ms17_010_eternalblue» для эксплуатации уязвимости SMB-протокола «Eternal Blue» (см. дополнительные сведения об эксплоите на официальном сайте компании Rapid 7 [Электронный ресурс]. - Режим доступа. - URL: http://www.rapid7.com/db/modules/exploit/windows/smb/ms_17_010_eternalblue), и поиск необходимых последовательностей среди содержимого стандартных директорий хранилища пользовательских ресурсов.
По окончании моделирования специалист на основе полученных графиков и последовательности реализованных атак выявляет слабые места реальной автоматизированной системы и вносит рекомендации по повышению общей степени защищенности информации при ее обработке в проверяемой системе.