Электронная библиотека диссертаций и авторефератов России
dslib.net
Библиотека диссертаций
Навигация
Каталог диссертаций России
Англоязычные диссертации
Диссертации бесплатно
Предстоящие защиты
Рецензии на автореферат
Отчисления авторам
Мой кабинет
Заказы: забрать, оплатить
Мой личный счет
Мой профиль
Мой авторский профиль
Подписки на рассылки



расширенный поиск

Нейросетевая система обнаружения атак на WWW-сервер Хафизов Артем Фоелевич

Нейросетевая система обнаружения атак на WWW-сервер
<
Нейросетевая система обнаружения атак на WWW-сервер Нейросетевая система обнаружения атак на WWW-сервер Нейросетевая система обнаружения атак на WWW-сервер Нейросетевая система обнаружения атак на WWW-сервер Нейросетевая система обнаружения атак на WWW-сервер Нейросетевая система обнаружения атак на WWW-сервер Нейросетевая система обнаружения атак на WWW-сервер Нейросетевая система обнаружения атак на WWW-сервер Нейросетевая система обнаружения атак на WWW-сервер
>

Диссертация - 480 руб., доставка 10 минут, круглосуточно, без выходных и праздников

Автореферат - бесплатно, доставка 10 минут, круглосуточно, без выходных и праздников

Хафизов Артем Фоелевич. Нейросетевая система обнаружения атак на WWW-сервер : Дис. ... канд. техн. наук : 05.13.11 : Уфа, 2004 172 c. РГБ ОД, 61:04-5/2089

Содержание к диссертации

ВВЕДЕНИЕ 5

ГЛАВА 1. АНАЛИЗ СУЩЕСТВУЮЩИХ СИСТЕМ ОБНАРУЖЕНИЯ

АТАК НА ИНФОРМАЦИОННЫЕ СИСТЕМЫ 10

1.1 Классификация атак па информационные системы ...........10

  1. Информационная система .. ......... ......—...10

  2. Атака как дестабилизирующий фактор в работе

информационной системы.. ..... ... .......... 10

1.13 Противодействие атаке ...........„„„„„.„„........„...„...„„„„„„...............12

1.1.4 Система обнаружения атак (СОА)„„.„.........„„„.„„„„.„„„..............18

1Л Обзор современных СО А ... ...... .. .................... . 20

  1. Основные характеристики современных СОА......... ........ 20

  2. Сравнительный анализ характеристик современных СОА 23

1.3 Нейросетевые технологии как перспективное направление создания
СОА 24

1.3.1 Доказательство преимуществ нейросетевых технологий для

решения задачи обнаружения атаки ......... . .24

13.2 Проблемы применения нейросетевых технологий .........27

133 Недостатки существующих подходов к созданию нейросетевых
СОА 29

1.4 Выводы по первой главе. Постановка задачи исследования .33

ГЛАВА 2. ФОРМАЛИЗАЦИЯ ЗАДАЧИ СОЗДАНИЯ СОА 36

  1. Среда функционирования WWW приложения ...36

  2. Запрос пользователя в информационную систему......... ......40

23 Ответ информационной системы пользователю ......... ....... 51

  1. Анализ уязвимостей информационной системы, основанных на них атак и способов борьбы с ними„„.............„„„„„„.............„„.„„.„.„„...„..„„„.....52

  2. Формализация задачи обнаружения атак ....... ...70

  3. Анализ методов обнаружения атак......... ..... ....... ..............75

  1. Технология обнаружения атак................... ......... ..... «75

  2. Метод обнаружения атак, основанный на поиске сигнатуры

атаки.... .. .......... ......... ............... 77

2.63 Метод обнаружения атак, основанный на поиске аномалий—.80 2.6.4 Комбинированный метод обнаружения атак .................................84

  1. Подход к построению модели информационной системы................ 88

  2. Формализация безопасной модели действий пользователя.—....... „91

  3. Формализация задачи противодействия атаке . .....—........93

  1. Синтезированная структура СОА.......... .. .94

  2. Выводы по второй главе................................................................................96

ГЛАВА 3. НЕЙРОСЕТЕВАЯ РЕАЛИЗАЦИЯ МОДУЛЯ АНАЛИЗА
ВХОДНЫХ ДАННЫХ 98

  1. Модель представления знаний... . ................... 99

  2. Выбор топологии нейросети....... .... .... .......... . 103

33 Анализ подходов к формированию обучающей выборки.—.......... 113

3.4 Экспериментальные исследования зависимости характеристик
обнаружения атак от реализации нейронной сети.. . ......—............117

  1. Формирование репрезентативной выборки .......—........118

  2. Исследования процесса обучения нейронной сети .. ....122

Выводы по третьей главе............................................................»..—...............—129

ГЛАВА 4. РАЗРАБОТКА ИССЛЕДОВАТЕЛЬСКОГО ПРОТОТИПА
НЕЙРОСЕТЕВОЙ СОА 131

  1. Выбор программно —аппаратной платформы для реализации исследовательского прототипа СОА .. . .....................131

  2. Анализ возможности применения нсйросстевого эмулятора SNNS—.134 43 Анализ возможности применения WWW сервера Apache........ ......136

  1. Архитектура WWW сервера Apache .............. ... 136

  2. Взаимодействие модуля СОА с WWW сервером Apache 137

433 Взаимодействие модуля СОА с информационной системой.—141

4.4 Реализация модуля СОА для WWW сервера Apache ........ ......142

  1. Модуль Apache обработчика входных данных.......... ...............142

  2. Блок взаимодействия с нейросетевой логикой .... 143

4.43 Блок противодействия атаке ..................... .......144

4.5 Оценка характеристик разработанной нейросетевой СОА ..............145

  1. Методика тестирования ....................................................................146

  2. Анализ возможности использования современных сканеров уязвимостен для тестирования СОА .......................................................147

4.53 Анализ полученных характеристик разработанного прототипа
нейросетевой СОА в сравнении с характеристиками современных
СОА 149

4.6 Выводы по четвертой главе .... ........ ...... ...............157

ЗАКЛЮЧЕНИЕ 160

ЛИТЕРАТУРА 162

Введение к работе

Актуальность темы

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

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

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

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

Цель работы

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

Задачи исследования

В процессе работы над диссертацией решались следующие задачи:

  1. Формализация задачи обнаружения атак на информационную систему (WWW - сервер).

  2. Синтез структуры нейросетевой системы обнаружения атак.

  3. Анализ особенностей применения нейросетевых технологий для обработки поступающей в систему информации.

  4. Экспериментальные исследования и оптимизация параметров обучения гибридной нейронной сети.

  5. Разработка исследовательского прототипа нейросетевой системы обнаружения атак, сравнение его характеристик с аналогичными современными системами.

Методы исследования

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

Результаты, выносимые на защиту

  1. Подход к построению системы обнаружения атак, основанный на комплексировании существующих методов обнаружения атак.

  2. Модель безопасной работы пользователя WWW - сервера.

  3. Подход к обработке информации, основанный на применении

7 математического аппарата нейронных сетей и нечеткой логики к решению

задач распознавания пифограмм атаки и безопасной работы пользователя.

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

  2. Структура и средства программной реализации исследовательского прототипа нейросетевой системы обнаружения атак.

Научная новизна диссертационной работы заключается в следующем:

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

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

  3. На основании проведенных исследований показана возможность применения нейронной сети гибридной структуры CounterPropagation для обработки входных данных с целью достижения высокой эффективности обнаружения атак.

Практическая ценность

Практическая ценность настоящей работы заключается в следующем:

  1. Предложенный метод обнаружения атак может быть использован для построения систем обнаружения атак, превосходящим по своим характеристикам известные системы.

  2. Предложенный подход к формированию обучающей выборки нейронной сети позволяет достичь высоких характеристик системы обнаружения атак за счет обеспечения требования репрезентативности выборки.

  1. Выбранный подход, основанный на применении устойчивой к

8 атакам программно - аппаратной платформы в виде операционной системы и

WWW - сервера, позволяет упростить реализацию системы обнаружения атак.

4. Реализованный исследовательский прототип нейросетевой системы обнаружения атак позволяет прозрачно интегрировать его с любым WWW -сервером. По сравнению с распространенными системами обнаружения атак, величина ошибки обнаружения атак на WWW-сервер при этом снижается в 4 -5 раз, а ущерб от атак - с 8% до 3% от ожидаемого объема годовой прибыли.

Апробация работы

Результаты работы опубликованы в 8 печатных трудах, в том числе в 1 статье в центральной печати и 7 трудах конференций.. Основные положения, представленные в диссертационной работе, докладывались и обсуждались на следующих международных конференциях:

Международной научно - технической конференции "Проблемы техники и технологии телекоммуникаций", Уфа (2000 г.);

XXXIX Международной научной студенческой конференции "Студент и научно-технический прогресс", Новосибирск (2001 г.);

Третьей международной конференции «Компьютерная наука и информационные технологии» (CSIT2001), Уфа (2001 г.);

Международной молодежной научно - технической конференции "Интеллектуальные системы управления и обработки информации", Уфа (2001 г.);

VIII Всероссийской конференции "Нейрокомпьютеры и их применение -2002" с международным участием, Москва (2002 г.);

Пятой международной научно-практической конференции "Информационная безопасность", Таганрог (2003 г.);

Пятой международной конференции «Компьютерная наука и информационные технологии» (CSIT2003), Уфа (2003 г.).

Основные результаты диссертационной работы внедрены в ОАО "Урало-Сибирский Банк" в виде методик обнаружения атак на основе нейронных сетей, проектирования и разработки системы обнаружения атак на

9 WWW - сервер, а также программного обеспечения исследовательского

прототипа нейросетевой системы обнаружения атак на WWW - сервер.

Результаты работы внедрены в учебный процесс на базе Уфимского

государственного авиационного технического университета и используются

при проведении лабороторной работы "Моделирование работы нейронных

сетей" по дисциплине "Системы искусственного интеллекта" для студентов

специальности 220100, а также при чтении разделов дисциплины "Системы

искусственного интеллекта" и "Применение искусственного интеллекта в

системах защиты информации" для студентов специальностей 220100 и 220600.

Структура работы

Диссертация состоит из введения, четырех глав, заключения и списка литературы. Работа содержит 172 страницы машинописного текста, включая 32 рисунка и 27 таблиц. Список литературы содержит 131 наименование.

10 ПЛАВА 1. АНАЛИЗ СУЩЕСТВУЮЩИХ СИСТЕМ

ОБНАРУЖЕНИЯ АТАК НА ИНФОРМАЦИОННЫЕ СИСТЕМЫ

1.1 Классификация атак на информационные системы

Обнаружение атак - это искусство обнаружения несоответствующего, неправильного или аномального поведения.

1.1.1 Информационная система

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

Воплощением результатов развития информатики в двадцатом веке стали средства автоматизированной обработки информации. Под информационной системой [29] будем понимать организационно упорядоченную совокупность документов (массивов документов) и информационных технологий, в том числе с использованием средств вычислительной техники и связи, реализующих информационные процессы.

Под информационными процессами понимаются процессы сбора, обработки, накопления, хранения, поиска и распространения информации.

Из определения следует, что любая информационная система обладает следующими свойствами:

она содержит в себе и обрабатывает некоторый массив информации;

она содержит в себе некоторую логику, позволяющую выполнять требуемые действия с информацией;

она реализована с использованием средств вычислительной техники.

1.1.2 Атака как дестабилизирующий фактор в работе
информационной системы

Известно, что одним из важнейших свойств информации является ее ценность [10]. Данный факт являться стимулом для злоумышленника для

совершения им противоправных действий, например, кражи либо порчи информации [55], [58].

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

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

Выделяют три основных вида угроз безопасности информационной системы [23], [38]:

угроза раскрытия конфиденциальной информации;

угроза нарушения целостности, которая заключается в несанкционированном изменении либо удалении данных;

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

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

Атака на информационную систему - это действие, предпринимаемое злоумышленником, которое заключается в поиске и использовании той или иной уязвимости.

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

12 предлагается расширить до формулировки:

Атака на информационную систему - это действие, преднамеренно либо случайно осуществляемое в информационной системе лицом, которое заключается в поиске либо использовании той или иной уязвимости.

Как правило, преднамеренные атаки осуществляются посредством специализированных программно — аппаратных средств.

Под субъектом атаки будем понимать атакующую сторону, а под объектом атаки - атакуемую сторону, которые могут быть представлены в виде программного продукта, отдельно стоящего компьютера, сетевого сегмента либо всей информационной системы в целом.

Важным фактором, который необходимо учитывать в процессе создания СОА, является то, что очень трудно (а зачастую, практически невозможно) формализовать, что такое атака в каждом конкретном случае [115].

Любая неточность, допущенная в процессе формализации атак, может привести к тому, что часть атак может быть пераспознана, а на некоторые безопасные действия система обнаружения атак может дать ложное срабатывание. Это означает, что система обнаружения атак может быть спроектирована и применима только под каждый конкретный случай. Универсальность системы автоматически подразумевает низкую эффективность борьбы с атаками.

1.13 Противодействие атаке

Основной целью создания системы защиты информации является
обеспечение информационной безопасности информационной системы [2], [6],
[30]. Оно не может состоять только из пассивной стороны, то есть
обнаружения попыток несанкционированного доступа. Важна именно
активная сторона защиты — выполнение комплекса мер, направленных на
снижение последствий от действия атаки.
,

Под противодействием будем понимать реакцию системы защиты информации, которая может включать в себя следующие действия [42]:

- сигнализацию о несанкционированном доступе (НСД);

блокировку (отключение терминала, группы терминалов, элементов вычислительной сети и т.д.);

отказ в запросе.

Противодействие атаке может осуществляться как автоматически, так и с участием оператора.

Противодействие атаке преследует следующие цели обеспечения безопасности информационной системы:

снизить время бесконтрольных действий злоумышленника в информационной системе;

дезинформировать злоумышленника;

деорганизовать его действия по осуществлению атак на информационную систему;

снизить нецелевую нагрузку на информационную систему;

воздействовать на ресурсы злоумышленника.

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

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

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

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

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

контратаки).

Задача борьбы с атакой подразумевает не только ее эффективное обнаружение, но и принятие правильного решения, которое позволит исключить негативные последствия атаки [40].

Математическая модель, описывающая целенаправленное поведение лица, принимающего решение по управлению защитой информации, может быть определена кортежем параметров [20]:

{A,Q,K,(<r), гєД}, (1.1)

где А — множество альтернатив выбора механизмов защиты, которые применимы в конкретной ситуации информационного противоборства; Q - множество признаков, по которым оценивается качество данных альтернатив;

К — множество агрегированных признаков или коалиций, к <= Q; операция (-; г) - задает отношение упорядоченности на множестве А.

Рис. 1.1. Взаимосвязь этапов противодействия атаке.

-МножествЫ^Т^-5s*,: основой любой задачи принятия решения. При этом, если положить, что K = {i:ieQ}, то задача сводится к задаче принятия группового решения [20]; если упорядочения представлены в форме целевых функций, то возникает проблема векторной оптимизации [20], и т.д.

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

15 атаки. Существует большое количество исследований по данной тематике ([72],

[109], [66]).

До того момента, когда станет возможным автоматическое принятия

решения, необходимо проделать значительную работу. SANS Institute [73]

предлагает выделить 6 этапов противодействия атаке (рисунок 1.1):

Подготовка. Данный этап включает в себя разработку политики безопасности организации, которая предусматривает направления развития информационных систем предприятия; интеграция информационных систем с системами защиты информации, настройку правил разграничения доступа в информационной системе, процедуру установки исправлений известных «дыр» и т.д.;

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

Блокирование. Цель данного этапа — как можно быстрее локализовать действия злоумышленника и заблокировать распространение результата негативных воздействий атаки на другие системы;

Устранение. На этом этапе устраняется сам источник проблемы (т.е. выполняется исправление ошибок в информационной системе, установка «патчей» и т.д.);

Восстановление. Результатом осуществляемых здесь действий является полное восстановление системы после атаки;

Обратная связь. На данном этапе подробно описывается и изучается зафиксированная атака с тем, чтобы в случае ее повтора своевременно предпринять ответные меры.

Как видно из вышеперечисленного, ее весь комплекс мер по противодействию атаке может быть выполнен в автоматическом режиме. Однако, и идентификация, и блокирование атаки могут быть реализованы в СОА[11].

Рассмотрим подробнее возможность реализации этапа идентификации атаки.

Отметим, что для однозначной идентификации факта атаки необходимо и достаточно выполнение следующих действий [36]:

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

  2. идентифицировать атрибуты компьютера, а также прикладных сессий, соответствующих текущей атаке (т.е. определить IP адрес компьютера, с которого пришел запрос, уникальные сессионные переменные Cookie типа ASPSESSIONIDxxx, Apache, имя пользователя в домене NT и т.д.)

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

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

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

Пункт 3 подразумевает наличие в информационной системе подсистемы

17 аудита и журналирования всех операций, производимых каждым из

пользователей в системе. Аналогично пункту 2, данный пункт реализуем.

Наиболее сложен в реализации пункт 4, т.к. он требует детальной формализации термина "атака на информационную систему"* но и он, с учетом приемлемых характеристик системы обнаружения атак (ошибок первого и второго рода), также вполне реализуем программно.

Блокирование атаки может осуществляться посредством:

  1. изменения правил фильтрации на межсетевом экране;

  2. блокирования учетной записи злоумышленника;

  3. блокирования учетной записи пользователя — объекта атаки;

  4. информирования оператора о наличии атаки с выдачей перечня необходимых организационных мер противодействия атаке;

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

Пункты 1 — 3 легко реализуемы программно, так как в процессе обнаружения атаки (см. выше) будут уже получены все необходимые для выполнения данных пунктов сведения.

Так как реакция на каждую из атак неизменна, то реализация пункта 4 требует наличия базы данных вида «атака — информационное сообщение об атаке».

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

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

нескольких повторяющихся вводов неправильного пароля учетную запись

необходимо заблокировать.

С другой стороны, блокирование учетной записи пользователя — объекта атаки может привести к тому, что обычному пользователю будет отказано в доступе. Если кто-то будет перебирать все учетные записи пользователей, зарегистрированных в системе, то все учетные записи будут заблокированы и никто не сможет работать в системе [82].

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

1.1.4 Система обнаружения атак (СОА)

Следствием изложенных выше требований к обнаружению атаки, а также выбору адекватной реакции на атаку является то, что в состав информационной системы должен входить компонент, осуществляющий вышеперечисленные функции. Так как современный подход к созданию программного обеспечения основан на разделении всех выполняемых действий системы (функционала системы) по отдельным модулям, то появляется понятие специализированного модуля (или системы), обнаруживающего атаку [96].

Консорциум ICSA [59], в который входят ведущие разработчики программного обеспечения в области защиты информации, такие как ISS, TripWire, Centrax, Network Associates, BindView и другие, дает следующее определение: системы обнаружения атак - это системы, осуществляющие сбор информации с множества системных и сетевых источников, анализирующие полученную информацию на предмет признаков вторжения (атак, осуществляемых извне организации) и злоупотребления (атак, осуществляемых внутри организации).

19 Следовательно, важнейшей характеристикой системы обнаружения

атак является качество обнаружения атак, т.е. вероятности необнаружения

атаки и вероятности ложного обнаружения атаки.

Важным моментом в данном определении является то, что СОА

самостоятельно получают всю необходимую информацию. Это означает,

что комплекс информационной системы должен предусматривать

ключевые информационные точки, содержащие данные, необходимые и

достаточные для обнаружения атак и принятия адекватной реакции. К

сожалению, при проектировании большинства существующих

информационных систем данный аспект зачастую совсем не затрагивается.

Поэтому важным моментом при создании СОА является то, как она будет

интегрирована с уже существующей информационной системой. Лидер в

области интеллектуальных систем защиты информации — компания ISS

выделяет два принципиально разных подхода к интеграции СОА [108]:

  1. СОА, осуществляющие контроль входных данных на уровне хоста (т.е. компьютера, являющегося частью информационной системы);

  2. СОА, осуществляющие контроль входных данных на уровне сегмента сети.

СОА первого типа анализируют данные, поступившие в компьютер, после предварительной обработки их операционной системой либо прикладным программным обеспечением (например, в качестве входных данных для СОА могут выступать записи в журнале событий о успехе/отказе в доступе пользователей, анализ входных данных, поступивших на установленное TCP-соединение и т.д.). Важно одно - до того, как СОА первого типа приступит к анализу информации, часть ее программного обеспечения (назовем его ПО предварительной обработки) уже обработает поступившие данные. Следовательно, если атака будет произведена на ПО предварительной обработки, то СОА первого типа будет неспособна своевременно обнаружить попытку несанкционированного доступа.

Исходя из принципа интегрирования СОА с информационной системой,

20 объем информации, которая должна быть обработана СОА, сопоставим с

объемом информации, поступающей в информационную систему на обработку,

следовательно, сложность СОЛ (т.е. ее возможность обрабатывать входные

данные с требуемым результатом) долясна быть как минимум того же

порядка, что и сложность самой информационной системы.

1.2 Обзор современных СОА

1.2.1 Основные характеристики современных СОА

Все современные СОА можно условно разделить на две категории — автономные и клиент — серверные системы. Первые выполняют сбор информации, ее анализ на одном компьютере (так называемые СОА уровня хоста). Системы второй категории строятся по иному принципу. В наиболее критичных точках корпоративной сети устанавливаются агенты системы обнаружения атак (модули слежения, сенсоры), которые отвечают за выявление атак. Все управление осуществляется с центральной консоли, на которую также передаются информационные сообщения об атаке. Данный вид СОА носит название системы обнаружения атак уровня сети. Достоинства и недостатки СОА на уровне хоста и на уровне сети приведены в таблицах 1.1 и 1.2 соответственно.

Достоинства и недостатки СОА на уровне хоста Таблица 1.1

Таблица 1.1 (продолжение)

Достоинства и недостатки СОА на уровне сети Таблица 1.2

Таблица 1.2 (продолжение)

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

Способность обнаруживать атаки зависит прежде всего от того, данные какого уровня сложности будут анализироваться СОА. Обычно уровню сложности обрабатываемых данных сопоставляют уровень модели OSI. Чем выше уровень OSI, тем сложнее обрабатывать данные, и тем сложнее обнаруживать атаки.

Способность обнаружения атак зависит от подхода к обработке информации, поступающей в информационную систему. Различают три возможных подхода — обнаружение атак, основанное на поиске ее сигнатуры; обнаружение атак, основанное на поиске отклонений от безопасных входных данных; и комбинированный подход, объединяющий в себе два предыдущих.

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

Так как возможности современных вычислительных систем ограничены, а объем информации, обрабатываемой информационными системами все время

23 увеличивается, то значительную роль при построении СОА играют требования

к производительности программно-аппаратного обеспечения и

максимальный объем анализируемых с достаточной производительностью

данных за некоторый промежуток времени.

Важными характеристиками СОА являются стоимость ее установки и

стоимость сопровождения.

1.2.2 Сравнительный анализ характеристик современных СОА

В настоящее время существует большое число СОА, использующих разные метолы обнаружения атак [67], [87]. Каждая СОА обладает своими уникальными характеристиками, связанными как с качеством обнаружения атак, так и требованиями к программно — аппаратному обеспечению. Результаты сравнительного анализа характеристик современных наиболее известных СОА представлены в таблице 1.3. Значения указанных характеристик получены из их документации.

Сравнительная характеристика современных СОА Таблица 1.3

24 13 Нейросетевые технологии как перспективное направление

создания СОА

1-3.1 Доказательство преимуществ пейросетевых технологий для решения задачи обнаружения атаки

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

аппроксимации и интерполяции;

распознавания и классификации образов;

сжатия данных;

прогнозирования;

идентификации;

управления;

ассоциативная обработка информации.

В каждом из названных приложений нейронная сеть так или иначе играет роль универсального аппроксиматора функции от нескольких переменных [61], [88], реализуя нелинейную функцию:

> = /<*), (1-2)

где х - это входной вектор;

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

Утверждение о том, что нейронные сети — наилучший аппроксиматор нелинейных функций, можно объяснить следующим образом [39]. В классической теории аппроксимации, составляющей основу вычислительной математики для однопроцессорных и многопроцессорных ЭВМ с архитектурой

25 фон-Неймана, аппроксимируемая функция представляется в следующем виде:

/(*) = 2>,!М*). (1-3)

Набор функций у,(х), как правило, выбирается априори, исходя из интересов

автора, конкретного метода аппроксимации и некоторых свойств данных функций, доказываемых и используемых в процессе аппроксимации.

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

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

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

Постановки значительного количества задач моделирования, идентификации и обработки сигналов могут быть сведены именно к аппроксимациоиному представлению [25].

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

26 При решении задач прогнозирования роль нейронной сети состоит в

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

Обладая информацией о значениях переменной х в моменты, предшествующие

моменту прогнозирования к, т.е. используя данные x(k), x(k-l), х(к-2),..., x(k-N),

сеть вырабатывает решение о том, каким будет наиболее вероятное значение

последовательности х*(к+1) в последующий момент к+1. Для адаптации

весовых коэффициентов сети используется фактическая погрешность

прогнозирования f = х(к + \)-х*(к + \) и значения этой погрешности в

предшествующие моменты времени.

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

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

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

27 Благодаря этой способности при большом количестве межнейронных связей

достигается значительное ускорение процесса обработки информации. Во

многих ситуациях становится возможной обработка сигналов в реальном

масштабе времени.

Большое количество межнейронных соединений приводит к тому, что сеть становится нечувствительной к ошибкам, возникающих в отдельных соединениях. Функции поврежденных соединений принимают на себя другие элементы; в результате, в деятельности сети не наблюдаются заметные нарушения. Это свойство используется, в частности, при поиске оптимальной архитектуры нейронной сети путем разрыва отдельных связей. Алгоритм такого поиска, названный «Optimal Brain Damage» [102], является прекрасной иллюстрацией этого свойства нейронной сети.

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

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

13.2 Проблемы применения нейросетевых технологий

Искусственная нейронная сеть состоит из совокупности элементов, которые взаимосвязаны друг с другом и трансформируют набор входных

28 данных к набору желаемых выходных данных. Результат преобразования

определяется характеристиками элементов и весами соответствующих

взаимосвязей между ними. Путем видоизменения соединений между узлами

сети можно адаптироваться к желательным выходным результатам [33].

Проблемы создания нейросетевой системы обнаружения атак

Классификация атак

Формализация

задачи

обнаружения атаки

Адаптация входных данных

Выбор топологии нейронной сети

Оценка

эффективности

обнаружения атак

Обработка выходного значения

Поиск оптимальных алгоритмов обучения

Формирование

обучающего

множества

Формирование

контрольного

множества

Поиск оптимальных параметров обучения

Рис. 1.2. Проблемы создания нейросетевой системы обнаружения атак

Есть две основные причины, почему нейросети не применялись ранее в
задачах обнаружения атак. Первая причина связана с требованиями к обучению
нейросети. Поскольку способность искусственной нейросети

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

29 Однако, основное неудобство применения нейросетей для решения задачи

обнаружения атак - это природа «черного ящика» нейросети, которая является

следствием отсутствия точной математической зависимости процессов

обучения нейросети и распознавания данных на основе обученной информации.

Нейросеть может принять решение об отнесении события к классу атак, но при

этом не объясняется, почему такое решение было принято.

Обобщенная классификация проблем, с которыми сталкивается

разработчик нейросетевой СОА, показан на рисунке 1.2. Из нее видно, что по

сравнению с классическими СОА, для создания нейросетевой СОА требуется

решить гораздо большее число проблем. Необходимо отметить, что данные

проблемы характерны любой задаче применения нейросетевых технологий для

обработки информации.

133 Недостатки существующих подходов к созданию нейросетевых СОА

Несмотря на указанные трудности, возникающие при создании нейросетевой системы обнаружения атак, можно отметить ряд исследовательских проектов, посвященных проектированию и реализации нейросетевых СОА.

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

Существует большое число работ в направлении создания нейросетевой системы обнаружения атак. Рассмотрим подходы, которые были применены авторами данных работ [77], [62].

В Техасском Институте была разработана нейросетевая система обнаружения атак NNID [45], основанная на анализе набора вызываемых пользователем программ (команд) операционной системы NetBSD. Отклонение от типового порядка вызова программ пользователем считалось злонамеренным действием, т.е. атакой на операционную систему. При реализации был

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

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

  2. Фаза обучения: нейросеть обучалась распознавать пользователя по каждому из векторов распределения команд

  3. Фаза проверки: Вектор данных, соответствующей текущей работе пользователя, подавался в нейронную сеть. Если нейронная сеть распознавала в векторе его работы другого пользователя, то считалось, что текущий пользователь выполняет не свою безопасную работу, т.е. пытается взломать информационную систему.

Как видно из механизма работы данной нейросетевой СОА, ей присуще большое число недостатков:

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

Во-вторых, проблема защиты от исполнения опасных команд в настоящее время не актуальна: число уязвимостей в подсистеме управления правами доступа к файлам согласно статистике [118] очень небольшое, а современные операционные системы имеют механизмы, позволяющие блокировать действия пользователя даже в случае успешного запуска опасной программы.

Таким образом, данная система1 не имеет коммерческой ценности, и работы по ее развитию были прекращены.

В Южно-Восточном университете Новы (штат Флорида, США) под

31 руководством Д. Кеннеди проводились исследования по обнаружению

аномальной сетевой активности в компьютерных сетях [34]. В качестве

анализируемых данных использовалась 9 параметров IP пакета:

тип протокола IP;

IP адрес отправителя;

порт отправителя;

IP адрес получателя;

порт получателя;

тип ICMP пакета;

код ICMP пакета;

длина данных в сетевом пакете;

часть данных сетевого пакета.

Двоичные значения IP пакета преобразовались в текстовый вид вида: 0,2314,80,1573638018,-1580478590,1,1,401,3758,0 0,1611,6101,801886082,-926167166,1,1,0,2633,1 Обучение нейронной сети структуры Персептрон производилось на основе данных, собранных за некоторый промежуток времени реальной работы пользователей в компьютерной сети. Тестирование производилось путем сканирования некоторого ресурса сканерами уязвимостеи ISS Internet Scanner, SATAN и SYNFlood scanner. Неиросеть в при наличии атаки в некоторый момент времени выдавала выходе Y значительный всплеск (рисунок 1.3):

Y

Рис. 1.3. Пример выходных значений нейроссти

32 Данный подход также имеет большое число недостатков.

Действительно, в качестве анализируемых данных использовались параметры

IP пакета, т.е. анализ данных осуществлялся только на сетевом уровне модели

OSI. Однако, согласно статистике [118], атаки сетевого уровня в настоящее

время не распространены благодаря отсутствию ошибок в программном коде

из-за простоты обработки входных данных на сетевом уровне модели OSI.

Следовательно, данные исследования также не несли коммерческую ценность,

и дальнейшего развития не получили.

В университете Далхауси, Канада, проводились исследования по возможности применения самоорганизующихся карт Кохонена для анализа журналов событий информационной системы [103]. В качестве анализируемых данных использовались значения, отображенные в журнале событий Unix, содержащие идентификатор пользователя, тип соединения (Telnet, FTP, HTTP и т.д.), идентификатор терминала, идентификатор программного процесса (PID) в операционной системе, время подключения к системе, время выхода из системы, IP адрес пользователя и класс события. Для обучения нейронной сети использовалась информация о реальной работе пользователей за некоторый промежуток времени. Тестирование заключалось в периодическом просмотре журналов событий операционной системы на их соответствие обученным данным, и при наличии расхождения выдавалась информация о наличие атаки.

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

В России исследования возможности применения нейронных сетей при создании СОА находятся в начальной стадии. В работах [8], [46], [9] только

33 формулируются требования к структуре нейросетевой СОА. Работы [56]

посвящены анализу возможностей применения сети Хемминга для обработки

информации, которая специфична только для конкретной атаки.

В [7] описываются результаты исследований по применению нейронной сети аналогично системе NNID, но применительно к защите операционной системе Windows. Как уже было ранее отмечено, данный подход не может быть применен для создания коммерческой СОА.

В работах [1] использован подход, аналогичный при исследованиях, проведенных в уже упоминавшемся Южно-Восточном университете Новы.

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

1.4 Выводы по первой главе. Постановка задачи исследования

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

Появившиеся сравнительно недавно системы обнаружения атак направлены обнаружение и противодействие атакам на информационные системы. Однако, проведенный анализ характеристик наиболее развитых программных продуктов СОА показал, что они еще далеки от совершенства. Причиной этому является высокая сложность ее реализации на всех стадиях, включая:

формализацию задачи обнаружения атаки;

выбор метода решения задачи обнаружения атаки;

выбор способа интеграции СОА с защищаемой информационной системой;

выбор способов противодействия атаке;

программная реализация СОА с учетом ограничений по производительности современных программно - аппаратных систем;

дальнейшее развитие разработанной СОА.

34 Применение классических методов обнаружения атак, основанных на

проверке соответствия входных данных определенному шаблону либо

пороговому значению, не позволяют обнаруживать атаки с требуемыми

характеристиками. Поэтому, необходимо использование других методов,

способных обрабатывать информацию на качественно новом уровне.

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

Решению данной проблемы и посвящена настоящая диссертационная работа. В результате проведения исследований и анализа их результатов, предполагается создание нейросетевого прототипа СОА.

В качестве защищаемой информационной системы предполагается рассмотреть Интернет - магазин. Данный выбор является не случайным, так как:

согласно статистике [57], [89], наибольшее число атак осуществляется на информационные системы, связанные с обработкой финансовой информации, которой и является Интернет — магазин;

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

др.);

- возможно формализовать некую постоянную модель действий пользователя;

— обнаружение атак на данную информационную систему предполагает

обработку информации на всех уровнях модели OSI;

- данная задача требует проработки не только механизма обнаружения атаки,
но и механизма ей противодействия.

Таким образом, постановка задачи исследования в настоящей работе звучит следующим образом:

Необходимо провести исследования и разработать прототип нейросетевой системы обнаружения атаки на WWW - сервер с установленным на нем программным обеспечением Интернет - магазина, В процессе исследования необходимо формализовать классификацию возможных атак на информационную систему и классификацию возможных реакций на них со стороны системы защиты. Необходимо провести исследования возможностей реализации взаимосвязи «атака» — «проотиводействие атаке». Необходимо произвести исследования по поиску оптимальных параметров обучения нейронной сети, позволяющие достичь требуемых характеристик обнаружения атаки. Необходимо произвести оценку полученных характеристик исследовательского прототипа нейросетевой СОА в сравнении с характеристиками современных СОА. Необходимо оценить возможную финансовую прибыль от использования разработанной нейросетевой СОА.

>

*

Похожие диссертации на Нейросетевая система обнаружения атак на WWW-сервер