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



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

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

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

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

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

Большев, Александр Константинович. Алгоритмы преобразования и классификации трафика для обнаружения вторжений в компьютерные сети : диссертация ... кандидата технических наук : 05.13.11, 05.13.19 / Большев Александр Константинович; [Место защиты: С.-Петерб. гос. электротехн. ун-т (ЛЭТИ)].- Санкт-Петербург, 2011.- 155 с.: ил. РГБ ОД, 61 12-5/872

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

Введение

1 Обзор существующих методов обнаружения сетевых атак 9

1.1 Определение и способы классификации атак с позиции построения систем их обнаружения 9

1.2 Общая характеристика систем обнаружения вторжений 18

1.3 Критерии оценки HNIDS 33

1.4 Обзор существующих моделей и систем 35

1.5 Выводы по первой главе 46

2 Выделение признаков вторжений из сетевого трафика 48

2.1 Выбор извлекаемых признаков из трафика 48

2.2 Алгоритм ТЕА1 58

2.3 Постобработка векторов 73

2.4 Выводы по второй главе 76

3 Модель эвристической системы обнаружения вторжений 78

3.1 Применение классификации с обучением на одном классе к обнаружению вторжений 78

3.2 Одноклассовый нейронный классификатор 83

3.3 Описание модели сетевой системы обнаружения вторжений на базе алгоритма ТЕА1 и искусственных нейронных сетей 91

3.4 Обнаружение аномалий в поведении сложных динамических объектов 93

3.5 Выводы по третьей главе 100

4 Исследование разработанных моделей и алгоритмов 102

4.1 Испытание модели на эталонных данных KDD Сир 99 102

4.2 Исследование модели на данных DARPA IDE 112

4.3 Описание сетей, в которых проводилось испытание систем 123

4.4 Система IceIDS2 126

4.5 Система IceIDS2s 133

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

Заключение 143

Литература 147

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

Актуальность работы. Обнаружение сетевых атак является в данный момент одной из наиболее острых проблем сетевых технологий. По данным DARPA, незащищенный компьютер, подключенный к сети Интернет, будет взломан не позднее, чем через 2-3 часа. Масштабные эпидемии сетевых червей, DDoS атаки с бот-сетей размером более 10000 компьютеров, автоматизированные средства поиска уязвимостей в сетях - все это делает обеспечение безопасности локальных сетей весьма трудоемким делом. Сейчас трудно найти сеть, в которой отсутствуют такие активные средства предупреждения атак как антивирус, брандмауэр, системы предупреждения вторжений уровня хоста и так далее. К сожалению, одних активных средств отражения атак недостаточно. Поэтому, в дополнение к ним применяют пассивные средства борьбы с атаками - сетевые системы обнаружения вторжений.

Сетевые системы обнаружения вторжений (ССОВ) просматривают весь сетевой трафик (или трафик определенного участка сети) и при обнаружении каких-либо отклонений в нем сигнализируют об этом. Формальные ССОВ работают по принципу антивирусной программы - пакеты, попадающие на сенсоры, сравниваются с БД сигнатур и, в случае обнаружения совпадения, объявляется тревога. К сожалению, даже формальных ССОВ становится недостаточно для надежной защиты сети. По данным CERT, количество известных новых методов вторжения только за 2010 год превысило 25000. Это значит, что в среднем, каждый день появляется порядка 70 новых атак. Физически невозможно обновлять БД сигнатур формальных ССОВ за такие промежутки времени. Кроме того, увеличение объема сигнатур отрицательно сказывается на производительности систем. Решением этой проблемы является применение систем обнаружения вторжений на основе выявления аномальной активности или эвристических ССОВ.

На данный момент существует достаточно большое количество эвристических ССОВ, работающих на прикладном уровне OSI. В области обнаружения вторжений на сетевом/транспортном уровнях до сих пор не предложено ни одной системы, способной работать в реальном времени.

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

Для достижения поставленных целей были решены следующие задачи:

  1. классификация и анализ архитектуры современных систем обнаружения вторжений;

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

  1. разработка представления трафика в виде пространства векторов; разработка набора быстрых алгоритмов, реализующего такое преобразование;

  2. исследование и выбор численных методов сокращения размерности полученного пространства;

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

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

  5. исследование и оценка полученной модели;

  6. разработка комплекса программ реализующих модель и исследование его работоспособности в реальных сетях.

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

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

Методы исследования. Теоретическая часть работы выполнена на основе методов математической статистики и функционального анализа, методологии извлечения знаний и искусственного интеллекта. В экспериментальной части работы применяются численные методы, алгоритмы и методы извлечения знаний. Для выполнения экспериментальной части созданы программные комплексы IceIDS2 и IceIDS2s.

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

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

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

  3. разработана модель системы обнаружения вторжений на основе быстрого алгоритма преобразования трафика, одноклассового классификатора на базе искусственных нейронных сетей (ИНС) и методов сжатия пространства данных;

  1. разработана методика определения аномалий на основе метода главных компонент (МГК) и ИНС, позволяющая обнаруживать нехарактерные явления в динамических системах, методика может применяться и вне области обнаружения вторжений в сеть;

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

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

Набор алгоритмов быстрого преобразования трафика в множество векторов.

Методика выявления аномалий в динамических системах.

Программные комплексы обнаружения вторжений IceIDS2 и IceIDS2s.

Результаты работы внедрены в СПбГЭТУ «ЛЭТИ» на кафедре «МО ЭВМ», в сетях компаний ООО «Торговый дом «Китай» и 000 «Некки».

На защиту выносятся следующие основные результаты и положения:

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

  2. набор алгоритмов преобразования трафика в множество векторов;

  3. модель эвристической системы обнаружения вторжений на основе разработанных алгоритмов;

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

Апробация работы. Основные результаты, полученные в ходе работы над диссертацией представлены на:

Научно-технических конференциях профессорско-преподавательского состава СПбГЭТУ, Санкт-Петербург, 2009 и 2011 гг.

XV Международной конференции «Современное образование: содержание, технологии, качество.», СПбГЭТУ «ЛЭТИ» 2009 г.

Всероссийской Конференции «ИНФОС-2009», Вологодский Государственный Технический Университет, 2009 г.

Конференции «Технологии Microsoft в теории и практике программирования», Санкт-Петербург, 2010 г.

Публикации. Основные теоретические и практические результаты диссертации опубликованы в 10 статьях и докладах, среди которых 4 публикации в ведущих рецензируемых изданиях, рекомендованных в действующем перечне ВАК. Доклады доложены и получили одобрение на 5 международных, всероссийских и межвузовских научно-практических конференциях, перечисленных в конце автореферата. Система IceIDS2 зарегистрирована в качестве программного средства (свидетельство о регистрации ПС IceIDS2 №2009614325).

Структура и объем диссертации. Диссертация состоит из введения, 4 глав, заключения и библиографии. Общий объем диссертации 155 страниц, из них 146 страниц текста, включая 43 рисунка. Библиография включает 88 наименований на 9 страницах.

Общая характеристика систем обнаружения вторжений

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

Формальные NIDS работают на 2-7 уровнях модели OSI [20].

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

Резюмируя вышесказанное, кратко сформулируем основные достоинства формальных NIDS: 1. короткое время развертывания системы; 2. легкость в задании новых правил для системы; 3. малые требования к вычислительным ресурсам (процессорное время, ОП и дисковые накопители) при малом размере базы сигнатур [21]; 4. эффективность работы не зависит от типа сети и количества узлов в ней (количество узлов влияет только на скорость работы формальной NIDS, но никак не на количество обнаруживаемых вторжений).

С другой стороны NIDS, основывающаяся только на анализе сигнатур, имеет определенные слабости. Являясь первоначально очень быстрой, со временем она будет замедляться, поскольку возрастает число проверяемых сигнатур. Это существенная проблема, поскольку число проверяемых сигнатур может расти очень быстро. Фактически, каждая новая атака или действие, придуманное атакующим, увеличивает список проверяемых сигнатур. Не помогут даже эффективные методы работы с данными и пакетами: огромное количество слегка измененных атак могут проскользнуть через такую систему. Но необходимо отметить, что согласно статистике 80% атак происходит по давно известным сценариям [22]. Наличие в системе обнаружения сигнатур известных атак даёт высокий процент обнаружения вторжений. Кроме того, хотелось бы следить не только за явными вторжениями, но и за такими событиями как, например активность Malware (шпионских программ, встроенных в какие-либо неблагонадежные коммерческие программные пакеты), отслеживать активность сетевых устройств, обнаруживать странное поведение протоколов вследствии неисправности сетевого оборудования.

Из всего вышеперечисленного можно выделить следующие недостатки формальных NIDS [23]: 1. при увеличении числа сигнатур возрастает время работы системы; 2. неспособность обнаруживать те атаки, описания которых не содержатся в базе сигнатур; 3. невозможность слежения за аномальными событиями в сети (активность Malware, странное поведение протоколов вследствии неисправности сетевого оборудования и пр.) если их описания не содержатся в базе сигнатур; 4. невозможность адаптирования под конкретную сеть (кроме способов увеличения/уменьшения базы сигнатур). Примеры формальных NIDS: Cisco IPS, Snort, BlacklCE Defenfer и другие. Эвристические NIDS

В противоположность формальным, эвристические NIDS на начальном этапе работы вообще не имеют никаких правил позволяющих обнаруживать вторжения. Для эвристической NIDS характерен некий этап обучения, в течение которого она строит некие закономерности о попадающем на ее интерфейсы трафике. Закономерности сохраняются в некой базе знаний (БЗ или т.н. эталонной БЗ). Затем, каждый попадающий на интерфейсы пакет сравнивается с полученными закономерностями, и если он не соответствует им, то объявляется тревога. Работа эвристических NIDS делится на три этапа: этап сбора информации, этап обучения по собранной информации (этап тренировки) и основной этап работы(этап тестирования) [24]. Существует множество способов классификации эвристических NIDS (HNIDS), рассмотрим некоторые из них.

По типу закономерностей в БЗ выделяют две категории [25]: HNIDS, основанные на излечении топологии из трафика (или т.н. топологические HNIDS) и HNIDS, основанные на построении общих закономерностей трафика в сети (или т.н. статистические HNIDS). Первые, в качестве данных для обучения используют правила, которые относятся непосредственно к хостам сети; то есть, например для хоста А выделяются следующие закономерности: А может получать данные на порт 80, и отправлять с любого порта; для хоста В эти закономерности не обязательно верны-. Достоинством такого подхода является очень высокий процент обнаружения аномальностей, недостатком -огромные размеры БЗ, высокий процент ложных срабатываний (FP) и малая скорость работы в сетях с большим количеством хостов. HNIDS, основанные на построении общих закономерностей, используют немного другую методику - они пытаются построить правила, которые характеризуют трафик в сети в общем случае; примером одного из таких правил может служить: "разрешена сессия TCP в которой содержится не более 10% SYN-пакетов". Достоинствами данного подхода являются: высокая скорость работы на этапе тестирования, малый объем БЗ, низкий процент ложных срабатываний. Единственным недостатком является большое количество пропуска аномальностей (FN), зачастую достигающее до 50%.

Обзор существующих моделей и систем

Очень часто при атаках используются различные методики изменения полей «фрагментирование»(флаг fragmented) и «тип сервиса» (tos. type of service) пакета IP (см. рис 2.2). Кроме того, при различных атаках вида «man-inhe-middle» зачастую происходит изменение параметра TTL (время жизни) пакета. Поэтому, для обнаружения таких атак, необходимо включить в вектор элементы: fragmented(6yneBbm), (дискретный, 0-255), Ш(дискретный, 0-255), ttl_change (менялся ли ttl в течении сессии, булев).

Флаг DF (Do-Not Fragment) в протоколе IP отвечает за запрет фрагментации. В случае, если пакет с флагом DF попадает на маршрутизатор и для дальнейшей передачи необходима фрагментация, то такой пакет будет уни чтожен [51]. Кроме того, этот флаг очень хорошо характеризует отправителя пакета и часто используется в различных атаках. Поэтому, в вектор включа ются два элемента ip dfl и ip_df2 (оба булевского типа), которые указывают на установку флага DF=1 в отправляемых пакетах первой или второй стороной сессии.

Помимо флага DF, свойства сторон сессии определяет закон изменения идентификаторов IP-пакетов (IPID, поле в заголовке IP-пакета, содержащее значение, назначаемое отправителем пакета и предназначенное для определения корректной последовательности фрагментов при сборке дейтаграммы; для фрагментированного пакета все фрагменты имеют одинаковый идентификатор). В общем случае выделяют 5 различных законов изменения IPID [52]: 1. простой инкрементальный - IPID увеличивается на единицу для каждого нового пакета, отправляемого системой; 2. раздельный инкрементальный(используется редко) - IPID увеличивается на единицу, но используется два счетчика: первый для IP, ICMP. UDP и контрольных сегментов TCP, второй для сегментов данных TCP; 3. инкрементальный внутри соединения - каждое TCP-соединение имеет собственный счетчик на основе которого формируются IPID пакетов этого соединения; 4. нулевой - IPID всегда устанавливается в 0; 5. случайный - значение IPID для каждого пакета генерируется случайным образом.

К сожалению, для стороны, которая не являяется непосредственным участником сессии и не может активно (отправляя пакеты) взаимодейстовать с её сторонами, определение различий между типами 1, 2 и 3 является весьма трудоемкой и времязатратной задачей. Поэтому мы выделим всего три класса законов изменения IPID: инкрементальный (0), нулевой (1) и случайный(2). Именно эти значения будут вписаны в элементы ip_idmethodl (закон изменения IPID для 1-й стороны сессии) и ip_idmethod2 (закон изменения IPID для 2-й стороны сессии).

Признаком атаки или аномалии (а также признаком нормального поведения для некоторых протоколов, например SMB) может быть т.н. широковещательность пакета (то есть пакет послан на один из широковещательных/групповых IP-адресов). Широковещательность пакета в векторе определяется булевым полем broadcast.

В случае работы с протоколом ICMP в вектор отображается информация о типе (ICMP Туре) и коде (ICMP Code) пакета в виде двух дискрет-ных(0-255) полей. Для не-ICMP пакетов и сессий эти поля будут равны 0.

В вектор включено дополнительное булево поле land равное единице, порт отправителя пакета/сессии равен порту получателя. Признак land, может быть одним из свидетельств начала атаки. Этот метод часто используется хакерами для обхода брандмауэров.

Когда выше рассматривались недостатки топологических систем, было сказано, что они требуют очень больших размеров памяти для хранения всех возможных «неаномальных» сочетаний (хост_отправителя:порт_отправителя - хост_получателя:порт_получателя). В статистических HNIDS этого не требуется, тем не менее было бы наивным пытаться полностью отказаться от каких либо привязок сессии и/или пакета к топологии сети. Очевидно, что характер сессии, например, между HTTP-клиентом и HTTP-сервером может очень отличаться от сессии между NFS-клиентом и NFS-сервером [53]. Поэтому, в вектор добавлен дискретный параметр «сервис», кодирующий порт сервера. Кодирование происходит в порядке появления сервиса в трафике сети, даже если порт сервера равен 15000, но он встретился первым в трафике, он будет кодирован как 1. Так как количество сервисов ограничено, такое кодирование легко реализовать с помощью двух массивов (для TCP и UDP происходит отдельное кодирование сервиса) размером в 65535 элементов типа integer и доступом по указателю + порт сервиса к ним. Кодирование необходимо, так как в случае простой записи номера порта сервера в вектор могут возникнуть проблемы с нормированием и точностью3. Кодированный порт сервиса представлен в векторе полем service. Для IP- и ICMP- пакетов поле sevice равно 0.

Важной характеристикой сессии является количество отправленных/полученных байт. Два числовых поля src__bytes и dst_bytes хранят эти значения. В первом поле хранится количество байт отправленное с 1-й стороны (хост1:порт1), во втором - со 2-й стороны (хост2:порт2). Для не-сессий в поле src_bytes записывается размер пакета, поле dst_bytes устанавливается в 0. Кроме того, определены поля cntl и cnt2 - количество пакетов отправленных каждой из сторон сессии. Максимальное количество данных в пакете тоже может являться характеристикой атаки, и этот параметр описывается полем maxdatalen. В процессе TCP-сессий существует вероятность потери сегментов (в случае атак это может происходить намеренно, например при попытках определения версии ОС по «временным отпечаткам» [54]), поэтому в вектор включены поля tcp_rttsl и tcp_rtts2, которые описывают количество повторных передач, осуществленных первой или второй стороной соединения.

Поле вектора duration описывает длину сессии в секундах, поле count - общее количество пакетов в сессии. Оба поля являются числовыми. Для не-сессий duration = 0, count = 1.

Важную роль в атаках на транспортном уровне играют такие поля ТСР-сегмента, как: флаги4 (см. рис 2.3), размер окна и номер последовательности. В векторе флаги описываются как отдельные поля содержащие количество пакетов сессии с установленным флагом определенного типа.

Одноклассовый нейронный классификатор

Классификация - один из разделов машинного обучения, посвященный решению следующей задачи. Имеется множество объектов (ситуаций), разделённых некоторым образом на классы. Задано конечное множество объектов, для которых известно, к каким классам они относятся. Это множество называется обучающей выборкой. Классовая принадлежность остальных объектов не известна. Требуется построить алгоритм, способный классифицировать произвольный объект из исходного множества. В машинном обучении задача классификации относится к разделу обучения с учителем [66].

Пусть X - множество описаний объектов, Y - множество номеров (или наименований) классов. Существует неизвестная целевая зависимость - отоб ражение у : X — Y , значнения которой известны только на объектах конечной обучающей выборки Хт = {Х-ъУ\), -, (хт,ут). Требуется построить алгоритм а : X 4— Y, способный классифицировать произвольный объект ХЄХ.

Вероятностная постановка задачи. Предполагается, что множество пар «объект, класс» Хх Y, является вероятностным пространством с неизвестной вероятностной мерой Р. Имеется конечная обучающая выборка наблюдений Хт = (хі,?/і),..., (х.т,ут), сгенерированная согласно вероятностной мере Р. Требуется построить алгоритм а : X — Y, способный классифицировать произвольный объект х Є X [67].

Если множество Y состоит только из двух элементов, то имеет место би-нарная(двуклассовая) классификация. В этом случае условно считают Y = 1, — 1, и один из классов - положительным, второй - отрицательным. Рассмотрим случай бинарной классификации, когда множество Хш имеет структуру {(хі,ш), (xm52/i)}, т. е. нам известна только так называемая положительная выборка, цель остается неизменной. В этом случае имеет место одноклас-совая классификация (ОК) или классификация с обучением на основе только положительных примеров (см. рисунок 3.1).

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

Кроме того, существуют специализированные методы одноклассовой классификации. Рассмотрим применимость некоторых из них (метод одного ближайшего соседа (1-Nearest neighbour method), одноклассовый SVM (one-class SVM)) к решению нашей задачи. 1-Nearest neighbour method или метод одного ближайшего соседа. Он схож с многоклассовым методом ближайших соседей: для каждого объекта х Є X измеряется расстояние до ближайшего соседа х Є Xm. Затем измеряется расстояние от х до его ближайшего соседа в тренировочной выборке. Частное этих значение используется в качестве меры расстояния: о ( А- [х-7УДГхт(х)Ц \\NNXm(x) - NNx(NNXm(x))\\ , где NNx(x) - ближайший сосед элемента х. В общем случае, значение меры расстояния превышающее 1 говорит об аномальности вектора х [69]. Метод одного ближайшего соседа чрезвычайно прост в реализации, но имеет два существенных недостатка - обратно пропорциональная зависимость скорости работы от размера тренировочной выборки и высокая чувствительность к «шумам».

Одноклассовый SVM. Метод опорных векторов (Support Vector Machine - SVM) относится к группе граничных методов. Такие методы определяет классы при помощи границ областей. При помощи данного метода решаются задачи двухклассовой(бинарной) классификации. В основе метода лежит понятие плоскостей решений. Плоскость (plane) решения разделяет объекты с разной классовой принадлежностью [70].

Задачу можно сформулировать как поиск функции/(ж), принимающей значения меньше нуля для векторов одного класса и больше нуля для векторов другого класса. В качестве исходных данных для решения поставленной задачи, т.е. поиска классифицирующей функции f(x), задается тренировочный набор векторов пространства, для которых известна их принадлежность к одному из классов. Семейство классифицирующих функций можно описать через функцию f(x). Гиперплоскость определена вектором и значением Ь, т.е. f(x) = ax+b. Естественно, что в случае больших размерностей f(x) будет представлять из себя полином более высокого порядка.

Описание сетей, в которых проводилось испытание систем

Размер пространства векторов(М) KDD Сир 99 равен 40, поэтому количество входных и выходных нейронов ИНС будет таким же. Количество нейронов скрытого слоя определяется эмпирическим путем, так же как и параметры обучения ц И [І.

Проведено исследование, в котором использовались нейронные сети со скрытым слоем от 17 до 39 нейронов с сигмоидальной функцией активации. Число нейронов скрытого слоя больше 39 могут привести к переобучению, использование h 0.4m может привести к недостаточному обучению (т.н. «нехватка памяти»). В качестве функции расстояния была взята функция Чебышева. Рассмотрены различные значения г\ из диапазона (Ю-4, 0.95) и различные значения \х из диапазона (0.01, 0.95).

Так как время обучения ИНС на среднем компьютере может занять более 12 часов, для исследования использовался набор компьютеров, которые были объединены в кластер с помощью специального планировщика, реализованного на языке Java. Время исследования составило около четырех суток реального времени, одновременно в кластере было задействовано до 25 компьютеров различной конфигурации, и было исследовано 2478 «конфигураций». Каждая конфигурация представляет собой комбинацию из значений (количество нейронов скрытого слоя, коэффициент обучения, коэффициент инерционности). Диапазоны выбора параметров конфигураций указаны выше. Число циклов обучения составило 500 эпох. При исследовании для каждой конфигурации вычислялись следующие значения: среднеквадратическая ошибка LMS, порог thres, а также результаты испытаний на выбранных тестовых данных: CR (корректно распознанные вектора), FP (ошибочно отвергнутые положительные вектора) и FN (ошибочно принятые отрицательные вектора).

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

Зависимость порога thres от коэффициентов обучения и инерционности обучения LR(r]) И коэффициента инерционности LM(/x). Как видно из апрок-симирующей кривой для коэффициента обучения, лучших результатов (минимального порога) ИНС достигла при г) Є (0.05,0.085), с лучшим средним значением в 0.07. При увеличении г] и превышении им значения 0.1 явно видно увеличение порога, то есть «недообученность» ИНС. Кроме того, возникновение минимального порога при приближении ц к 1.00 более вероятно (это видно из второго графика). Таким образом, можно сделать вывод, что наилучшие значения порога (то есть, минимальные значения) будут достигнуты при 77 0.07,д 0.5и количестве нейронов скрытого слоя h Є (36,39). Действительно, при h = 37,77 = 0.07, = 0.75 было получено лучшее значение порога для всех тестовых точек равное 0.0018.

На рисунке 4.4 отображена зависимость количества корректных распознаваний в зависимости от всех трех входных параметров ИНС. Чем ближе цвет точки к красному, тем ближе процент распознаваний к 100%. Видно, что в пределах, которые мы определили исходя из рисунков 4.2 и 4.3, находится наибольшее количество ИНС, которые корректно распознали практически

Геометрический подход [40] 0.98 0.1 Геометрический подход [40] 0.28 0.01 Кластеризация [41] 0.667 0.021 Результаты исследований приведены в таблице 4.1. Для сравнения здесь также даны результаты алгоритмов, рассмотренных в 1.4.3. Как видно из таблицы, модель показывает лучшие результаты по минимизации количества ложных срабатываний(РР) и результаты, сопоставимые с другими моделями по количеству обнаружений атак. Таким образом, можно утверждать, что разработанная модель на данных KDD Cup Data 99 показывает результаты, конкурентноспособные с результатами работы других моделей и алгоритмов, обучавшимися только на положительных или на смешанных данных. используется модуль kddcup_convert.pl, реализованный на языке Perl. Блоки РСА, ИНС и D реализованы подпрограммой для статистической системы R. На первом этапе (обучение), тренировочные данные сначала проходят нормировку (П/Н) (данные KDD не нормированы) по максимальным значениям. при этом сохраняется вектор максимумов {уmax)- Полученный набор данных Xjy подвергается сокращению размерности с использованием метода главных компонент (РСА), выбирается новая размерность пространствам М и при этом сохраняется матрица главных компонент. Далее, на основе полученного набора векторов в новом пространстве обучается ИНС. Детектор (D) получает данные со входов и выходов ИНС и формирует порог thres. На втором этапе (тестирование) данные после нормировки (при помощи вектора Хщах) и преобразования МГК v ew = x fewPT попадают на уже обученную ней-росеть. Аналогично схеме испытания из раздела 4.1.1, если расстояние между vneu и MHC(vneu;) превышает thres - то вектор отрицателен (аномалия), иначе - положителен (нормален). После определения состояния вектора, происходит сравнение с меткой (label) в тестовой выборке KDD и принимается решение о корректности распознавания, «ложной тревоге» или пропуске.

Количество нейронов входного и выходного слоя нейронной сети будет равно М . Количество главных компонент, коэффициент нейронов скрытого слоя {hi = Ц-, такой подход обусловлен тем, что из-за сокращения размерности данных невозможно определить заранее необходимое количество нейронов внутреннего слоя), параметры обучения т] и ц определяются эмпирическим путем.

В проводимом исследовании использовались сети с сигмоидальной функцией активации и коэффициентом скрытого слоя hi из диапазона (0.1,1). В данном случае мы имеем дело с преобразованными данными, и поэтому замечания про скрытый слой из раздела 4.1.1 не могут быть полностью корректными. В качестве функции расстояния была взята функция Чебыше-ва. Аналогично 4.1.1 были рассмотрены различные значения ту из диапазона (Ю-4, 0.95) и различные значения fi из диапазона (0.01,0.95). Количество значащих главных компонент выбиралось по количественному принципу и определялось параметром рс (РСА) (например, при рс = 10% бралось 10% компонент с наибольшим весом).

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