Управление защитой в вычислительных сетях является критическим элементом, непосредственно влияющим на все службы вычислительной системы. Успех в достижении высокой информационной защиты вычислительных сетей зависит от тщательности разработки и реализации модуля управления, имеющегося в системе защиты. Как показывает практика, наилучшие результаты в создании безопасных систем достигаются в том случае, когда разработчики учитывают требования защиты уже на этапе формулирования целей разработки и самых общих принципов построения системы.
При разработке систем защиты информации вычислительных сетей точность в описании компонентов и их взаимосвязей является едва ли не решающим условием достижения успеха, поэтому для обеспечения надлежащей степени точности применяется строгий аппарат формальной математики, что составляет суть формального метода разработки.
Построение математической модели требует значительных усилий и дает хорошие результаты только при наличии времени и ресурсов. К настоящему времени разработан широкий спектр различных математических моделей защиты информации, которые могут использоваться при решении задач анализа, синтеза и управления, возникающих при создании механизмов защиты.
В данной статье предлагается комплекс моделей на базе модифицированных Е-сетей, позволяющий разрабатывать и анализировать распределенные системы защиты информации с учетом особенностей функционирования систем защиты с поддержкой требований к качеству безопасности данных, заключающихся в использовании необходимости учета стоимостных и временных характеристик.
Модули распределенных систем защиты, решающие задачи, не перекликающиеся с задачами других модулей, являются функционально-независимыми, и поэтому целесообразнее устанавливать их на отдельных устройствах или реализовывать отдельными программными комплексами. К настоящему времени разработан широкий спектр различных моделей распределенных систем защиты информации, которые могут использоваться при решении задач анализа, синтеза и управления, возникающих при разработке механизмов системы защиты.
Первым этапом разработки математической модели распределенной системы защиты является построение общей модели. За основу разработки архитектуры общей модели возьмем архитектуру базовых агентов многоагентной системы защиты информации – сложной системы, в которой функционируют два или более интеллектуальных агента. Под агентом здесь понимается самостоятельная интеллектуальная аппаратно-программная система, обладающая рядом знаний о себе и окружающем мире, поведение которой определяется этими знаниями.
Агенты распределяются по отдельным аппаратно-программным комплексам (серверам или другим сетевым устройствам) и специализируются по типам решаемых задач; они взаимодействуют друг с другом с целью обмена информацией и принятия согласованных решений.
В архитектуре распределенной системы защиты можно выделить агентов следующих типов: 1) агент разграничения доступа, который ограничивает доступ к данным в соответствии с правами отдельных пользователей путем реализации дискреционных правил разграничения доступа, задающих каждой паре «субъект–объект» раз- решенные виды сообщений (чтение, запись, выполнение и др.); 2) агент аутентификации и идентификации, ответственный за идентификацию источников данных и подтверждение их подлинности; 3) агент фильтрации и преобразования потоков сообщений, обеспечивающий анализ поступающих данных по каким-либо критериям; 4) агент регистрации событий, обеспечивающий сбор данных от отдельных МЭ, их объединение и генерацию отчетов; 5) метаагенты, ответственные за координацию работы системы безопасности, а также централизованное управление различными политиками безопасности из единого места.
Структура взаимодействия агентов показана на рисунке 1. В этом случае агенты взаимодействуют в синхронном режиме обмена сообщениями, так как такие агенты, как агент фильтрации, аутентификации и идентификации, диспетчера доступа, прекращают работу до получения ответа от метаагента, который, в свою очередь, выдает ответ на сообщения в соответствии с модулем БДЗ.
На следующем этапе выполняется переход от общей модели к формальной. В качестве математического аппарата моделирования распределенных систем защиты используем аппарат с мощными моделирующими возможностями, которыми является одно из расширений сетей Петри – Е-сети. Такая модель позволяет реализовать множе- ство параллельных информационных процессов. Математическая модель на базе Е-сетей – это графическая модель в сочетании с логическими правилами изменения состояния (разрешающие позиции) Е-сетей, позволяющими воспроизвести динамику функционирования информационной системы, представляет собой математическую модель имитационного типа.
Структурно Е-сеть – это граф, состоящий из двух типов вершин: позиций и переходов, соединенных друг с другом ориентированными дугами, причем каждая дуга может связывать лишь позицию с переходом или, наоборот, переход с позицией.
Выполним переход от общей модели системы защиты к модели, реализованной на Е-сетях. Для этого необходимо определить исходные данные для построения модели на базе модифицированных Е-сетей.
При формальном описании генерации множества пакетов данных (см. рис. 2) на базе модифицированных Е-сетей будет использоваться список М[pi(10)] параметров начальной маркировки позиции следующего вида: М[pi(7)]=М(pi(1)) / М(pi(2)) / М(pi(3)) / М(pi(4)) / М(pi(5)) / М(pi(6)) / М(pi(7)) / М (pi(8)) / М(pi(9)) / М(pi(10)), где М(pi(1)) – IP-адрес отправителя; М(pi(2)) – номер порта отправителя; М(pi(3)) – IP-адрес получателя; М(pi(4)) – номер порта получателя; М(pi(5)) – тип (приоритет) данных; М(pi(6)) – значение TTL-поля; М(pi(7)) – наличие или отсутствие ошибки в кадре; М(pi(8)) – разрешение доступа данного субъекта к данному объекту; М(pi(9)) – уровень стоимости данных; М(pi(10)) – уровень секретности данных.
Тогда генерация поступающих пакетов будет выглядеть так, как изображено на рисунке 2.
Примечания к рисунку 2:
1) Q1 – блок генерации кадров с заданными параметрами;
2) позиции: р1¢, р2¢, …, рn¢ – кадр в соответствующей очереди (порт компонента МЭ); р1 – пакет, выбранный из очереди;
3) переходы: d1=(XE²(r1, r2, Q1, р1¢–рn¢), t1, –) – генерация кадров и передача их в порт МЭ; d2=(YE²(r2, р1¢–рn¢, p1), t2, M(r2):=n/(M(p¢)=1) – получение кадра с порта и его разбивка на пакеты;
4) решающие позиции: r1 – генерация кадра по каким-то законам с определенными параметрами из соответствующих таблиц; r2 – выбор кадра из очереди (порта МЭ);
5) множество процедур решающих позиций:
y1(r1)=r1: (p1¢=1¢®M(r1):=1¢
p3n¢=n¢®M(r1):=n¢);
y2(r2)=r2: (T®M(r2):=0).
Агент аутентификации и идентификации может быть представлен так, как изображено на рисунке 3.
Примечания к рисунку 3:
1) позиции: р1 – пакет выбран из очереди и передан для проверки доступа к данной сети (подсети); р2 – пароль и (или) имя пользователя введены неверно; р3 – пароль и имя пользователя введены верно; р4 – сумма попыток ввода пароля и имени <3; р5 – сумма попыток ввода пароля и имени =3; р6 – выдано сообщение о неверном вводе пароля и (или) имени; р7 – соответствующая запись в журнале учета выполнена;
2) переходы: d3=(XE²(r3, p1, p2, p3), t3, –) – установление соединения, проверка пароля и имени пользователя для доступа к внутренней сети (подсети); d4=(XE²(r4, p2, p4, р5), 0, –) – подсчет попыток ввода пароля и имени; d5=(T(p4, p6), 0, –) – вывод сообщения о неверном вводе пароля и имени; d6=(T(p1, p6), 0, –) – передача пакета для повторной аутентификации и идентификации; d7=(T(p5, p7), t4, –) – создание соответствующей записи в журнале учета и регистрации;
3) решающие позиции: r3 – проверка пароля и имени пользователя; r4 – подсчет попыток ввода пароля;
4) множество процедур решающих позиций:
y3(r3)=r3: (p2=1®M(r3):=1;
p3=2®M(r3):=2);
y4(r4)=r4: (p4=1®M(r4):=1;
p5=2®M(r4):=2).
Агент фильтрации и преобразования потоков сообщений может быть промоделирован так, как представлено на рисунке 4.
Примечание к рисунку 4:
1) р7 – соответствующая запись в журнале учета выполнена; р17 – данному субъекту разрешен доступ к данному объекту; р18 – нет IP-адреса отправителя в маршрутной таблице; р19 – есть IP-адрес отправителя в маршрутной таблице; р20 – нет номера порта отправителя в маршрутной таблице; р21 – есть номер порта отправителя в маршрутной таблице; р22 – нет IP-адреса получателя в маршрутной таблице; р23 – есть IP-адрес получателя в маршрутной таблице; р24 – нет номера порта получателя в маршрутной таблице; р25 – есть номер порта получателя в маршрутной таблице; р26 – тип информации не разрешен для передачи; р27 – тип данных разрешен для передачи; р28 – недопустимая стоимость данных; p29 – допустимая стоимость данных; p30 – недопустимый уровень секретности данных; p31 – допустимый уровень данных; р32 – есть ошибка в пакете; р33 – нет ошибки в пакете; р34 – TTL-поле обнулено; р35 – TTL-поле не обнулено;
2) переходы: d7=(T(p7, p18, p20, p22, p24, p26, p28, p30, p32, p34), t4, –) – создание соответствующей записи в журнале учета и регистрации; d13=(XE²(r10, p17, р18, p19), t5, –) – проверка пакета на наличие IP-адреса отправителя в маршрутной таблице; d14= (XE²(r11, p19, р20, p21), t6, –) – проверка пакета на наличие номера порта отправителя в маршрутной таблице; d15=(XE²(r12, p21, р22, p23), t7, –) – проверка пакета на наличие IP-адреса получателя в маршрутной таблице; d16=(XE²(r13, p23, р24, p25), t8, –) – проверка пакета на наличие номера порта получателя в маршрутной таблице; d17=(XE²(r14, p25, р26, p27), t10, –) – проверка разрешения передачи данных того или иного типа; d18 = (XE²(r15, p27, р28, p29), t11, -) – проверка уровня стоимости передаваемых данных; d19=(XE²(r16, p29, р30, p31), t12, –) – проверка уровня секретности передаваемых данных; d20=(XE²(r17, p31, р32, p33), t13, –) – проверка пакета на наличие ошибки; d21=(T(p32, p35), t14, –) – генерация пакета-сообщения о наличии ошибки; d22=(XE²(r18, p33, р34, p35), t15, –) – проверка пакета на обнуление TTL-поля; d23=(T(p34, p35), 0, –) – генерация пакета сообщения: TTL-поле обнулено.
При определении функций и задач каждого агента видно, что функции агента фильтрации и агента разграничения доступа частично пересекаются, поэтому целесообразнее будет объединить их в единый блок. Такая модель очень сложна как для реализации, так и для проверки. Поэтому для упрощения введем новый макропереход – N-переход (рис. 5).
Макропереход срабатывает, если m(x, ye+1, …, ye+n, …, ye+y, …, ye+q, n, y)=(1, 0, …, 0, …, 0, …, 0, n, y). Отличительной особенностью данного перехода является то, что метка из места x в зависимости от функции срабатывания перехода (Z) может перейти или в место ye+n, или в место ye+n и ye+y; Z – функции срабатывания перехода, Z=r1Èr2È…Èrn, где rn=ny. При наличии условий срабатывания макроперехода N (m(x)=1 и управляющие сигналы из внешней среды равны единице) в месте rn выполняется срабатывание перехода по функции Z, которая переводит его из неопределенного состояния S в определенное 0 или 1.
В нашем случае пакет по результатам проверки или передается дальше (если все значения r – истина, то есть функция срабатывания Z=r5È Èr6Èr7Èr8Èr9Èr10Èr11Èr12Èr13Èr14), или уничтожается (если хотя бы одно из значений r – ложь). Тогда модель блока фильтрации реализуем так, как изображено на рисунке 6.
Модель, реализованная на основе модифицированных Е-сетей, дает возможность анализа на наличие желательных или нежелательных частных критериев, таких как минимальные затраты времени на переходы и на обслуживание пакета.
Анализ времени можно проводить при определенных условиях:
– при разработке модели системы защиты, построенной при помощи модифицированных Е-сетей, должно выполняться следующее: " biÎD {Ф(dj)ÇH(di)=Æ}, где Ф(dj) – прямая функция инцидентности; H(di) – обратная функция инцидентности, то есть переход не может иметь позицию bi одновременно в качестве входной и выходной.
– временная задержка метки в позиции постоянна и не зависит от текущего времени, то есть " bi {n(bi, tk)–tk=zi=const}, где i=; n=½B½; k={0, 1, 2, …}.
Для решения задачи определения временных характеристик модели можно использовать минимизацию функции двух переменных z=f(x, y), где х – затраты времени на переходы, y – на обслуживание пакета.
На x и y наложено ограничение, задаваемое уравнением g(x, y)=0.
Предложенная формализация распределенной системы защиты на базе Е-сетей дает возможность упростить построение модели, предназначенной для проверки свойств распределенной системы защиты информации. Применение такой модели позволяет оценить работоспособность существующей или проектируемой системы защиты информации и избежать необоснованных затрат на безопасность вычислительных систем.
В качестве имитационного языка реализации может быть выбран один из наиболее распространенных языков моделирования (входящий в состав ПО ЭВМ серии ЕС) – язык GPSS.
Литература
1. Зима В.М., Молдовян А.А., Молдовян Н.А. Безопасность глобальных сетевых технологий. СПб: БХВ-Петербург, 2003. 368 с.
2. Зегжда Д.П., Ивашко А.М. Основы безопасности информационных систем. М.: Горячая линия–Телеком, 2000.
3. Городецкий В.И. Многоагентные системы: современное состояние исследований и перспективы // Новости искусственного интеллекта. 1996. № 1. С. 1–8.
4. Давыдова Е.Н., Суконщиков А.А. Формальная модель защиты от НСД на базе сетей Петри // Информатизация процессов формирования открытых систем на основе СУБД, САПР, АСНИ и искусственного интеллекта: матер. 2-й Междунар. науч.-технич. конф. Вологда: ВоГТУ, 2003. С. 126–130.