Сетевой электронный научный журнал "СИСТЕМОТЕХНИКА", № 1, 2003 г.

ПОВЫШЕНИЕ УРОВНЯ БЕЗОПАСНОСТИ РАСПРЕДЕЛЕННЫХ ПРИЛОЖЕНИЙ ЗА СЧЕТ ИСПОЛЬЗОВАНИЯ МЕХАНИЗМОВ САМОАДАПТАЦИИ

 

Бочкарёв И.В., Зайцев А.Б.

(НПФ «Кристалл», г. Пенза; igor@crystall.tl.ru, zay@crystall.tl.ru)

 

Все современные информационные системы построены по принципу распределенных приложений. Информационные системы крупных организаций объединяют множество различных приложений, ресурсов, программно-аппаратных платформ. В тоже время нужно выделить, что все они строятся на основании одних и тех же принципов и в соответствие с одними технологиями. На сегодняшний момент существует насколько технологий организаций распределенных приложений: J2EE, CORBA, COM/DCOM, .NET. Данные технологии позволяют разбить распределенное приложение на множество компонентов с четко определенным протоколом взаимодействия.

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

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

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

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

Для рассмотрения предлагается механизм обеспечения ИБ, отличный от классических и основанный на динамическом изменении архитектуры ИВС. Данный механизм позволяет повысить уровень защищенности и доступности информации и ресурсов как для существующих систем, так и вновь разрабатываемых, и не требует пересмотра или изменения принципов их функционирования. Подобную систему можно представить как «виртуальное приложение», способное перераспределять компоненты и перемещаться между узлами сети, сохраняя при этом свою функциональность (рис.1). Каждый функциональный компонент/сервис ИВС имеет возможность автономно оценивать состояние среды, определять правила взаимодействия с другими объектами и субъектами информационного пространства, а также самостоятельно определять стратегию своего поведения и перемещения между узлами сети. Таким образом, архитектура ИВС постоянно видоизменяется, а местонахождение объекта защиты (как совокупности информационных компонентов/сервисов), становятся неизвестными и непредсказуемыми. В этом случае, получив доступ к одному из узлов сети, злоумышленник не имеет возможности определить функциональные параметры «виртуального приложения», изучая поведение одного из его компонентов. В результате у злоумышленника остается только один способ изучения принципов функционирования и компрометации ИВС – полный перебор и изучение всех возможных вариантов архитектуры, что практически нереально.

 

 

Рис. 1. Абстрактная модель распределенной самоадаптирующейся системы

 

Рассмотрим систему, противодействующую собственному изучению.

Предположим, что моменты начала атак на данную компьютерную систему образуют пуассоновский поток с параметром a – частота (интенсивность) атак [(количество атак)/(единица времени)]. Пуассоновский поток являясь частным случаем потока Пальма [2], на интервале времени h.

Исходные параметры модели:

a – частота (интенсивность) атак [(количество атак)/(единица времени)];

m – количество компонентов распределенного приложения.

n – количество станций, на которых случайно распределены компоненты приложения.

t – время изучения конфигурации.

r – время восстановление системы.

h – период времени между сменами конфигураций.

Ткр – требуемое время жизни приложения;

g – гарантия заданного времени жизни;

l – уровень восстановления (В системе без восстановления l = 0).

Приложение делится на m компонентов, которые случайно распределяются по n серверам, образуя конфигурацию, неизвестную нарушителям. Число различных конфигураций равно nm. Чтобы провести атаку, злоумышленнику требуется сначала изучить конфигурацию, затратив время t, зависящее от параметров конфигурации: m и n (t=t(m,n)). Предполагается, что злоумышленник начитает атаку только после полного изучения распределенного приложения. Проведение атаки осложняется тем, что конфигурация периодически изменяется, через время h, поэтому, в случае малого h, злоумышленник не сможет воспользоваться результатами предшествующего изучения для последующих атак.

Возможны два варианта изучения распределенного приложения злоумышленником.

Первый вариант. Время изучения больше времени, через которое происходит изменение конфигурации, т.е. t>h. В этом случае защищаемому приложению не опасны потоки атак любой интенсивности a. Однако, в целях экономии ресурсов, существует заинтересованность, чтобы реальный период смены конфигурации h был больше. Реальный период смены конфигурации h может быть увеличен настолько, насколько позволяют значения времени изучения t и частоты атак a, чтобы с заданной вероятностью P приложение продолжало функционировать в течение заданного времени Ткр. Например: P=0,99, Ткр=5 лет. Пусть распределенное приложение может корректно функционировать при определенном количестве атак l, (l=0,1,2,…) в одном интервале существования фиксированной конфигурации длины h. Если число атак не превосходит l, то к началу следующего интервала длины h атакованное приложение считается полностью восстановленным.

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

Вероятность того, что в интервале времени  реализуется не более l атак, определяется формулой распределения Пуассона:

(1)

Преобразуя формулу (1) получим неравенство:

(2)

Неравенство (2) используется для выбора значений параметров m, n и l при фиксированных a, Ткр, h, t. Для каждой пары (m, n) вычисляется время изучения tmn = t = t(m,n) по формуле где  – время изучения одной конфигурации из общего числа nm конфигураций.

Если время изучения конфигурации tmn больше времени h, то восстановления  системы не требуется, т.е. l=0.

Если время изучения конфигурации tmn меньше времени h, и, при подстановке значений a, Ткр, h, tmn в неравенство (2) при tmn£ h, оно удовлетворяется уже при l=0, то восстановления также не требуется. Если же неравенство (2) при l=0 не выполняется, то значение l увеличивается до тех пор, пока неравенство (2) не выполнится при некотором l = lmn. Значение lmn есть максимальное число атак за время h, в результате которых система должна восстановиться при использовании конфигураций с параметрами m и n. Значения параметров m и n являются допустимыми, если требуемое значение lmn не превосходит реальных возможностей по восстановлению данной системы. Таким образом, определяется множество допустимых значений параметров m и n, в котором далее можно выбирать оптимальную пару (m ,n), например, с минимальным значением n или m.

Неравенство (2) может также использоваться для вычисления максимального допустимого значения h – периода смены конфигурации или для вычисления максимального значения Ткр – времени жизни приложения, или для определения максимальной интенсивности потока атак a, которая может выдерживаться системой защиты. Во всех случаях фиксируются (задаются) остальные параметры, в том числе и гарантия P.

Далее рассмотрим вариант реализации системы, выполняющей противодействие атакам злоумышленника.

Предполагается, что критичное приложение находится в одной из конфигураций, неизвестной злоумышленнику. Каждая атака начинается после изучения в течение времени t действующей конфигурации. Считается, что непосредственная реализация атаки занимает пренебрежимо малое время в сравнении с временем изучения конфигурации. После реализации атаки, ресурс системы уменьшается на v единиц объема ресурсов и система начинает процесс восстановления, который длится в течение времени r. По окончании восстановления ресурс объемом v возвращается в систему. В процессе восстановления в каждый момент времени суммарный отнимаемый ресурс не должен превышать заданного Vкр от общего объема ресурса. Иначе критичное приложение считается нефункционирующим (рис.2).

 

 

Рис. 2. График потребления ресурса на восстановление (черные точки – моменты нанесения атак; светлые точки – моменты восстановления)

 

Обозначим время жизни критичного приложения через Т. Это время складывается из случайного числа k циклов длины h нормального функционирования, т.е. .

Целью моделирования является получение статистической выборки (Т1,Т2,…,ТN) случайной величины Т, которая позволит оценить вероятность Р{T³Tкр}, где Ткр – необходимое время жизни критичного приложения, обеспечиваемое с заданной вероятностью P, например P=0,99. Система при заданных параметрах обеспечивает требуемый уровень информационной безопасности, если число значений выборки, меньших Ткр, деленное на N, не превосходит P.

При моделировании параметры a, h, Tкр, Vкр фиксируются, а значения t,r,v либо также фиксируются, как и предыдущие, либо задаются значениями случайных величин с известными законами распределениями, зависящими или не зависящими от типа атаки и/или от числа восстановлений.

Далее приводятся результаты исследования.

 

Таблица 1. Значения требуемого уровня восстановления l

 

m/n

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

1

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

2

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

3

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

4

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

5

6

6

6

6

6

6

6

6

6

6

6

6

6

5

5

5

4

3

1

0

6

6

6

6

6

6

6

6

6

6

5

4

0

0

0

0

0

0

0

0

0

7

6

6

6

6

6

6

5

3

0

0

0

0

0

0

0

0

0

0

0

0

8

6

6

6

6

6

4

0

0

0

0

0

0

0

0

0

0

0

0

0

0

9

6

6

6

6

3

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

10

6

6

6

5

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

 

В табл. 1 при заданных значениях m – количество компонентов распределенного приложения m=1¸10 и n – количество станций, на которых случайно распределено, по m компонентам, приложение n=1¸20, приводятся значения lmn – требуемого уровня восстановления для следующих значений исходных параметров: a=1(атак/мес), Ткр=5лет=60мес, h=1 мес, P=0,99. В области «нулей» (ниже ломаной) не требуется восстановления, поскольку уровень гарантии 0,99 уже обеспечивается только за счет сложности используемых конфигураций (m,n).

В табл. 2 приведены значения Ткр (время жизни системы) при некоторых значениях t, r (время изучения конфигурации и время восстановление системы соответственно) и фиксированных значениях: критичный объем Vкр=3, частота (интенсивность) атак a=4(атак в месяц), период времени между сменами конфигураций h=1 мес.

 

Таблица 2. Экспериментальные оценки времени жизни системы в зависимости
от времени изучения конфигурации и времени восстановление системы

 

t\r

1

4

7

10

13

16

19

23

27

1

60

60

60

60

48

17

15

8

3

9

60

60

60

60

29

25

18

8

7

17

60

60

60

60

53

22

15

8

9

25

60

60

60

60

60

19

12

10

6

33

60

60

60

60

56

22

21

16

7

41

60

60

60

60

48

28

18

9

6

49

60

60

60

60

40

33

14

14

6

 

Из данной таблицы следует, что время жизни приложения Ткр зависит от времени изучения t и времени восстановления r. Для увеличения времени жизни приложения требуется уменьшение периода смены конфигурации. Но даже при периоде смены конфигурации 1 месяц приложение с вероятностью P=0,99 будет функционировать время Ткр равное 60 месяцев за счет использования механизма противодействия атакам.

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

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

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

 

Список литературы

1.          И.Д. Медведовский, П.В. Семьянов, Д.Г. Леонов. Атака на Internet. – Издательство ДМК, 1999. http://www.bugtraq.ru/library/books/attack/

2.          Е.С. Вентцель. Теория вероятностей. – М.: Наука, 1964 г.

Сетевой электронный научный журнал "СИСТЕМОТЕХНИКА", № 1, 2003 г.