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



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

ПРИМЕНЕНИЕ МЕТОДОВ DATA MINING ДЛЯ ПОСТРОЕНИЯ СИСТЕМ ОБНАРУЖЕНИЯ СЕТЕВЫХ АТАК В РАСПРЕДЕЛЁННЫХ ВЫЧИСЛИТЕЛЬНЫХ СЕТЯХ Семенов Павел Олегович

ПРИМЕНЕНИЕ МЕТОДОВ DATA MINING ДЛЯ ПОСТРОЕНИЯ СИСТЕМ ОБНАРУЖЕНИЯ СЕТЕВЫХ АТАК В РАСПРЕДЕЛЁННЫХ ВЫЧИСЛИТЕЛЬНЫХ СЕТЯХ
<
ПРИМЕНЕНИЕ МЕТОДОВ DATA MINING ДЛЯ ПОСТРОЕНИЯ СИСТЕМ ОБНАРУЖЕНИЯ СЕТЕВЫХ АТАК В РАСПРЕДЕЛЁННЫХ ВЫЧИСЛИТЕЛЬНЫХ СЕТЯХ ПРИМЕНЕНИЕ МЕТОДОВ DATA MINING ДЛЯ ПОСТРОЕНИЯ СИСТЕМ ОБНАРУЖЕНИЯ СЕТЕВЫХ АТАК В РАСПРЕДЕЛЁННЫХ ВЫЧИСЛИТЕЛЬНЫХ СЕТЯХ ПРИМЕНЕНИЕ МЕТОДОВ DATA MINING ДЛЯ ПОСТРОЕНИЯ СИСТЕМ ОБНАРУЖЕНИЯ СЕТЕВЫХ АТАК В РАСПРЕДЕЛЁННЫХ ВЫЧИСЛИТЕЛЬНЫХ СЕТЯХ ПРИМЕНЕНИЕ МЕТОДОВ DATA MINING ДЛЯ ПОСТРОЕНИЯ СИСТЕМ ОБНАРУЖЕНИЯ СЕТЕВЫХ АТАК В РАСПРЕДЕЛЁННЫХ ВЫЧИСЛИТЕЛЬНЫХ СЕТЯХ ПРИМЕНЕНИЕ МЕТОДОВ DATA MINING ДЛЯ ПОСТРОЕНИЯ СИСТЕМ ОБНАРУЖЕНИЯ СЕТЕВЫХ АТАК В РАСПРЕДЕЛЁННЫХ ВЫЧИСЛИТЕЛЬНЫХ СЕТЯХ ПРИМЕНЕНИЕ МЕТОДОВ DATA MINING ДЛЯ ПОСТРОЕНИЯ СИСТЕМ ОБНАРУЖЕНИЯ СЕТЕВЫХ АТАК В РАСПРЕДЕЛЁННЫХ ВЫЧИСЛИТЕЛЬНЫХ СЕТЯХ ПРИМЕНЕНИЕ МЕТОДОВ DATA MINING ДЛЯ ПОСТРОЕНИЯ СИСТЕМ ОБНАРУЖЕНИЯ СЕТЕВЫХ АТАК В РАСПРЕДЕЛЁННЫХ ВЫЧИСЛИТЕЛЬНЫХ СЕТЯХ ПРИМЕНЕНИЕ МЕТОДОВ DATA MINING ДЛЯ ПОСТРОЕНИЯ СИСТЕМ ОБНАРУЖЕНИЯ СЕТЕВЫХ АТАК В РАСПРЕДЕЛЁННЫХ ВЫЧИСЛИТЕЛЬНЫХ СЕТЯХ ПРИМЕНЕНИЕ МЕТОДОВ DATA MINING ДЛЯ ПОСТРОЕНИЯ СИСТЕМ ОБНАРУЖЕНИЯ СЕТЕВЫХ АТАК В РАСПРЕДЕЛЁННЫХ ВЫЧИСЛИТЕЛЬНЫХ СЕТЯХ ПРИМЕНЕНИЕ МЕТОДОВ DATA MINING ДЛЯ ПОСТРОЕНИЯ СИСТЕМ ОБНАРУЖЕНИЯ СЕТЕВЫХ АТАК В РАСПРЕДЕЛЁННЫХ ВЫЧИСЛИТЕЛЬНЫХ СЕТЯХ ПРИМЕНЕНИЕ МЕТОДОВ DATA MINING ДЛЯ ПОСТРОЕНИЯ СИСТЕМ ОБНАРУЖЕНИЯ СЕТЕВЫХ АТАК В РАСПРЕДЕЛЁННЫХ ВЫЧИСЛИТЕЛЬНЫХ СЕТЯХ ПРИМЕНЕНИЕ МЕТОДОВ DATA MINING ДЛЯ ПОСТРОЕНИЯ СИСТЕМ ОБНАРУЖЕНИЯ СЕТЕВЫХ АТАК В РАСПРЕДЕЛЁННЫХ ВЫЧИСЛИТЕЛЬНЫХ СЕТЯХ ПРИМЕНЕНИЕ МЕТОДОВ DATA MINING ДЛЯ ПОСТРОЕНИЯ СИСТЕМ ОБНАРУЖЕНИЯ СЕТЕВЫХ АТАК В РАСПРЕДЕЛЁННЫХ ВЫЧИСЛИТЕЛЬНЫХ СЕТЯХ ПРИМЕНЕНИЕ МЕТОДОВ DATA MINING ДЛЯ ПОСТРОЕНИЯ СИСТЕМ ОБНАРУЖЕНИЯ СЕТЕВЫХ АТАК В РАСПРЕДЕЛЁННЫХ ВЫЧИСЛИТЕЛЬНЫХ СЕТЯХ ПРИМЕНЕНИЕ МЕТОДОВ DATA MINING ДЛЯ ПОСТРОЕНИЯ СИСТЕМ ОБНАРУЖЕНИЯ СЕТЕВЫХ АТАК В РАСПРЕДЕЛЁННЫХ ВЫЧИСЛИТЕЛЬНЫХ СЕТЯХ
>

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

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

Семенов Павел Олегович. ПРИМЕНЕНИЕ МЕТОДОВ DATA MINING ДЛЯ ПОСТРОЕНИЯ СИСТЕМ ОБНАРУЖЕНИЯ СЕТЕВЫХ АТАК В РАСПРЕДЕЛЁННЫХ ВЫЧИСЛИТЕЛЬНЫХ СЕТЯХ: диссертация ... кандидата Технических наук: 05.13.19 / Семенов Павел Олегович;[Место защиты: ФГБОУ ВО Петербургский государственный университет путей сообщения Императора Александра I], 2016.- 145 с.

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

Введение

1 Теоретические основы обнаружения сетевых атак 11

1.1 Удалённые сетевые атаки 11

1.1.1 Понятие удалённой сетевой атаки 11

1.1.2 Подходы к классификации атак 12

1.1.3 Тренировочные базы данных с сетевыми атаками 13

1.1.4 Описание распространённых атак 17

1.2 Обнаружение сетевых атак 20

1.2.1 Методы обнаружения сетевых атак 20

1.2.2 Системы обнаружения вторжений 21

1.2.3 Сигнатурные системы обнаружения вторжений 24

1.2.4 Обнаружение статистических аномалий 25

1.2.5 Недостатки систем обнаружения вторжений 26

1.3 Обзор существующих исследований 28

1.3.1 Обнаружение атак с помощью скрытой марковской модели 28

1.3.2 Обнаружение атак с помощью байесовских сетей 29

1.3.3 Обнаружение атак с помощью методов кластеризации 30

1.3.4 Обнаружение атак с помощью метода опорных векторов 31

1.3.5 Обнаружение атак с помощью нейронных сетей 32

1.3.6 Обнаружение атак с помощью генетических алгоритмов 33

1.3.7 Обнаружение атак с помощью правил нечёткой логики 33

1.3.8 Выводы по анализу исследований в области обнаружения сетевых атак, основанных на методах Data Mining 34

1.4 Выводы по главе 36

2 Разработка модели системы обнаружения сетевых атак в распределённой вычислительной сети 38

2.1 Применение методов Data Mining в задаче обнаружения сетевых атак

2.1.1 Функциональные компоненты системы обнаружения сетевых атак

2.1.2 Группы методов Data Mining для проектирования системы

обнаружения сетевых атак 41

2.2 Основы выбранных методов Data Mining 44

2.2.1 Метод опорных векторов 44

2.2.2 Методы сокращения размерности 46

2.2.3 Методы кластеризации 57

2.2.4 Аппарат нечёткой логики 61

2.3 Формализация модели системы обнаружения сетевых атак 63

2.3.1 Формирование архитектуры системы обнаружения сетевых атак 63

2.3.2 Метод адаптации системы обнаружения сетевых атак под программно-аппаратную структуру распределённой вычислительной сети 69

2.4 Выводы по главе 72

3 Формирование методики применения методов Data Mining в задаче обнаружения сетевых атак 73

3.1 Методика применения метода опорных векторов 73

3.1.1 Основы применения метода главных компонент 73

3.1.2 Особенности данных рассматриваемой предметной области для применения методов опорных векторов 75

3.1.3 Разделение параметров трафика для метода опорных векторов 78

3.1.4 Выводы по применению метода опорных векторов 80

3.2 Методика применения метода главных компонент 82

3.2.1 Основы применения метода главных компонент 82

3.2.2 Обучение метода главных компонент на множестве пакетов с

атаками 84

3.2.3 Выводы по подбору параметров блока сокращения размерности 84

3.3 Примеры применения представленных методик для обнаружения конкретных атак 85

3.3.1 Пример применения метода главных компонент для формирования признакового пространства 85

3.3.2 Пример применения метода опорных векторов для классификации векторов 86

3.4 Методика применения методов кластеризации 89

3.4.1 Основы применения метода k-средних 89

3.4.2 Основы применения агломеративного иерархического метода 91

3.4.3 Построение избыточной модульной архитектуры 92

3.4.4 Выводы по применению методов кластерного анализа

3.5 Методика применения нечёткой логики 93

3.6 Выводы по главе 94

4 Проведение экспериментов по обнаружению атак 96

4.1 Описание программного прототипа СОВ 96

4.1.1 Характеристики программного прототипа 96

4.1.2 Структура модуля обнаружения 98

4.1.3 Блок извлечения базовых параметров трафика 101

4.1.4 Блок сокращения размерности 102

4.1.5 Блок классификации 105

4.1.6 Автоматическая настройка модуля обнаружения 107

4.1.7 Визуализация работы блока сокращения размерности и блока классификации 109

4.1.8 Блок кластеризации 111

4.1.9 Взаимодействие модулей обнаружения 112

4.1.10 Редактор сетевых дампов 114

4.2 Результаты экспериментов по обнаружению атак 116

4.2.1 Методика проведения экспериментального исследования 116

4.2.2 Результаты обнаружения отдельных сетевых атак 119

4.3 Выводы по главе 124

Заключение 126

Список сокращений и условных обозначений 127

Методы обнаружения сетевых атак

Блок сбора данных (сенсор, Event-box) – извлекает данные для обработки и принятия решения анализатором. В данных могут содержаться имена контролируемых параметров, их особенности и значения. Сенсор может выполнять преобразования данных для перевода в необходимый формат или для сокращения объёма передаваемых данных.

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

Блок базы данных (хранилище данных, Database-box) – содержит множества решающих правил и семантическое описание атак, а также накопительную информацию от сенсоров. Данные могут находиться в текстовых файлах, базе данных, и т.д. Блок реакции (Response-box) – информирует администратора о зафиксированной атаке, а в случае систем предотвращения вторжений формирует активную реакцию. Системы предотвращения вторжений отслеживают активность в режиме реального времени и быстро реализовывают действия по предотвращению атак. Возможные меры – блокировка потоков трафика в сети, сброс соединений, выдача сигналов оператору. Также системы предотвращения вторжений могут выполнять дефрагментацию пакетов, переупорядочивание пакетов TCP для защиты от пакетов с изменёнными номерами последовательности и подтверждения. Системы обнаружения сетевых атак собирают информацию из пакетов сетевого трафика, системных журналов и показателей функционирования системы. Традиционные системы обнаружения сетевых атак строятся на сигнатурном подходе [9, 34, 43]: при помощи набора правил или сигнатур, формируемых экспертами и помещаемых в базу решающих правил, описываются все возможные сценарии и особенности атак. У этого подхода существует множество известных недостатков. При помощи анализа сигнатур невозможно обнаружить новые виды атак, потому что база решающих правил не содержит информации о соответствующей атаке. Процесс анализа сигнатур для распределённых атак является крайне сложной задачей. Кроме того, базы решающих правил популярных систем обнаружения вторжений практически являются общедоступными, поэтому нарушитель может протестировать возможности сокрытия атаки.

Перечисленные проблемы подхода поиска сигнатур заставляют специалистов искать альтернативные пути для организации защиты от сетевых атак. Одним из популярных направлений исследований является применение различных методов Data Mining (интеллектуального анализа данных) в системах обнаружения сетевых атак [34]. В основе данных методов лежит предположение, что вся легитимная активность в системе может быть представлена в виде математической модели. Применяемые для обнаружения сетевых атак методы Data Mining преследуют одну из следующих целей: - обнаружение нарушений; - обнаружение аномалий. Первые моделируют атаки и применяют средства классификации, вторые моделируют нормальное поведение и выполняют поиск исключений. При использовании методов Data Mining для выявления сетевых атак можно выделить следующие проблемы [4, 19, 34]: - данные, анализируемые системами обнаружения, имеют высокую размерность и объём; - требование обработки данных в режиме реального времени; -большое количество шумов и выбросов в обрабатываемых данных, вызывающих неадекватную реакцию методов интеллектуального анализа данных.

Классические системы обнаружения вторжений основаны на понятии сигнатура. Сигнатура - это множество условий, при удовлетворении которых наступает событие, определяемое как атака или вторжение [4]. Изначально, под сигнатурой понималась характерная строка (последовательность байт), присущая только данной атаке.

Сигнатурные системы обнаружения имеют ряд достоинств [62]: - быстрота работы, так как полный анализ пакета - трудоёмкая задача; - простота создания и настройки правил; - поддержка компьютерного сообщества в быстром производстве сигнатур для выявления новых опасностей; - сложные атаки используют ряд предварительных действий, которые легко распознать при помощи сигнатур. С другой стороны СОВ, основывающиеся только на анализе сигнатур, имеют определённые недостатки: - со временем скорость работы системы замедляется, поскольку возрастает число проверяемых сигнатур. Каждая вновь придуманная атака или средство дополняет длинный перечень проверяемых сигнатур; - такие СОВ позволяют выявлять только уже известные атаки, и непригодны для выявления только что появившихся атак; - возможны ложные срабатывания при не уникальности сигнатуры [4]; - возможны пропуски атаки при незначительной модификации; - обязательность обновления базы данных для получения сигнатур новых атак. Согласно статистике около 80% новых атак основывается на давно известных сценариях [4, 16, 62]. Наличие в системе обнаружения перечня сигнатур известных атак позволяет обнаружить большинство вторжений с высокой вероятностью.

Функциональные компоненты системы обнаружения сетевых атак

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

Для задач определения необходимого и достаточного множества параметров трафика для обнаружения конкретной атаки, а также для очистки тренировочных данных от шумов и выбросов выбран метод главных компонент [38, 44]. Результатом его работы, является построение матрицы весов для вычисления новых параметров. Для этого метода имеет значение выбор анализируемой матрицы: матрица корреляции, ковариации или матрица суммы квадратов и смешанных произведений.

Методы кластеризации – это множество алгоритмов, целью которых является разделение множества объектов на группы таким образом, чтобы схожие объекты попали в одну группу, а различные группы содержали объекты с разнородными характеристиками. Качество кластеризации характеризуется высоким сходством объектов внутри каждой группы и высокими различиями между группами [12, 48]. Ключевыми требованиями к исходным данным для выполнения процедуры кластеризации являются – однородность и полнота данных. Однородность требует, чтобы все кластеризуемые записи описывались сходным набором характеристик [13]. Кластерный анализ применяется для решения следующих задач [35]: -разбиение объектов на группы с целью оптимизации дальнейших вычислений и анализа; - сокращение объёма данных путём анализа лишь отдельных представителей кластера вместо обработки всех данных; - выделение нетипичных объектов, которых невозможно отнести к известным категориям (классам). Количественной мерой близости объектов является расстояние между парой объектов в пространстве. Эта величина, как правило, находится в диапазоне [-1; 1] или нормализуется в интервал [0; 1]. Сходство между парой объектов (Oit Oj) обозначается S0.i0 и может быть измерено несколькими способами в зависимости от используемой метрики расстояний [63]. Нормированная мера различия пары объектов (Ои Oj) вычисляется следующим образом: d0b0j = l-S0b0y Из множества методов кластеризации можно выделить две наиболее распространённые категории: иерархические и итерационные методы.

Иерархические методы кластеризации строятся на последовательном разделении множества объектов на вложенные группы [63, 103]. Структура кластеров представляется в виде дерева, которое расщепляет набор данных рекурсивно на более мелкие подмножества. Каждый узел дерева, за исключением листьев, является объединением своих подкластеров, а корень дерева является кластером, содержащим все объекты. Иногда лист дерева называют одноэлементным кластером.

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

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

Иерархические методы кластеризации используют различные критерии для определения кластеров, которые должны быть объединены или разделены, при этом используются различные метрики расстояния между подмножествами [72]: - оценка расстояния между двумя наиболее похожими элементами двух кластеров. Данная метрика хорошо справляется с неэллиптическими формами, но очень чувствительна к шумам и выбросам; - оценка расстояния между двумя наиболее отдалёнными элементами двух кластеров. Данная метрика менее чувствительна к шумам и выбросам, но имеет проблемы с выпуклыми формами и может неадекватно разделять большие кластеры; - одновременная оценка расстояния между наиболее и наименее схожими элементами. Данная метрика является компромиссом между двумя предыдущими. За последние годы были разработаны несколько алгоритмов иерархической кластеризации, эффективных для различных видов данных: кластеризация с использованием представителей (Clustering Using Representatives, CURE) [61], хамелеон [74] и сбалансированное итерационное сокращение и иерархическая кластеризация (balanced iterative reducing and clustering using hierarchies, BIRCH) [112].

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

Из множества проанализированных методов сокращения размерности (подраздел 2.2.2) для подзадачи формирования оптимизированного пространства параметров сетевого трафика выбран метод главных компонент и разработана методика его применения [38, 44].

Для определения достаточного числа параметров в новом пространстве и фильтрации малозначимых параметров трафика вычисляются два пороговых значения: - минимальное значение «важности» нового параметра для его участия в дальнейшей работе (); - минимальное значение коэффициента в матрице преобразования базовых параметров (). Новые (латентные) параметры вычисляются по следующей формуле: 5fexn = UTXpxn, где X - р-мерные вектора исходной выборки, {/- ортогональная матрица p p, состоящая из собственных векторов. Из k параметров рассматриваются только те, для которых соответствующее собственное значение анализируемой матрицы превышает порог: S = {si\iE[l;k], Ш П; За счёт порогового значения отбрасываются базовые параметры xj, для которых выполняется следующее условие: X = {Xj\j Є [l;n], Vi Є [l;p] \utj\ б}. Подбор параметров блока сокращения размерности является более сложной процедурой, потому что для каждого варианта настроек необходимо проведение полной процедуры подбора наилучших параметров блока классификации. В исследованиях по применению метода главных компонент принято рассматривать следующие матрицы: - матрица корреляции; - матрица ковариации; - матрица суммы квадратов и смешанных произведений.

Проведённое экспериментальное исследование показало следующие закономерности по выбору анализируемой матрицы: - при рассмотрении многоразрядных параметров для большинства атак наилучший результат достигнут при рассмотрении матрицы суммы квадратов и смешанных произведений; - при разделении параметров трафика на восьмиразрядные фрагменты для ряда атак наилучшие результаты были достигнуты при использовании матриц корреляции и вариационно-ковариационной матрицы; - для большинства атак лучшие результаты формирования классификатора были получены при использовании около половины новых параметров - при использовании всех новых параметров результаты практически совпадают с обучением метода опорных векторов без выполнения процедуры сокращения размерности; - при отбрасывании нескольких наименее значимых новых параметров наблюдается значительное улучшение классификации пакетов; - при отбрасывании 75% новых параметров наблюдается резкое увеличение числа опорных векторов, но при этом качество классификации практически не изменяется; - при выборе одного или двух новых параметров процент распознавания будет очень малым, а число опорных векторов превысит 1000. Из приведённых экспериментов была получена зависимость оптимальных настроек метода опорных векторов от числа новых параметров на выходе блока сокращения размерности: - с уменьшением числа новых параметров увеличивается оптимальное значение параметра / = /og y, зависимость / от числа новых параметров является линейной; - интервал для параметра /, в котором возможно обучение метода главных компонент, также перемещается в сторону увеличения обеих границ.

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

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

Стоит отметить, что такой подход сильно зависит от обучающего множества, что может приводить к проблеме переобучения и значительному числу ложных срабатываний. Данный подход оказался эффективен для множества атак (не более 5 новых параметров и менее 20 опорных векторов для 100% распознавания), но совершенно не применим для других, что делает этот подход лишь дополнительным средством при формировании модуля обнаружения в ручном режиме.

Визуализация работы блока сокращения размерности и блока классификации

После обучения на предоставленных входных данных создаётся список новых параметров с указанием «важности» и их представлением через исходные параметры. В разных методах сокращения размерности под «важностью» понимаются разные объекты, в частности, в методе главных компонент «важность» - это собственные значения выбранной для анализа матрицы. Новые параметры являются линейной комбинацией базовых параметров, и для их вычисления строится матрица из коэффициентов линейного представления. На рисунке 19 показан результат работы блока сокращения размерности при анализе атаки snmpget из дампа трафика 99-41 DARPA. В строках указаны новые параметры: номер, собственное значение выбранной матрицы и набор коэффициентов линейного представления через базовые параметры сетевого трафика.

Важной особенностью метода главных компонент является необходимость масштабирования входных данных [59, 68]. В системе реализовано три способа масштабирования данных после извлечения базовых параметров: - поиск максимального и минимального значений для каждого базового параметра и перевод этого значения в интервал [-1;+1] по формуле у = 2(х-min)/(max-min) - 7, где х - базовый параметр, у - отмасштабированный параметр; - за максимальное значение принимается наибольшее возможное значение базового параметра (например, для времени жизни ГР-пакета максимальное значение будет 28 = 256) и все базовые параметры делятся на свой максимум; - поиск максимального и минимального значения среди всех базовых параметров и перевод всех базовых параметров по формуле у = 2(x-min)/(max-min) - 1.

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

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

В блоке классификации выполняется обучение, тестирование работы и подбор наилучших параметров метода опорных векторов.

Перед обучением системы также производится масштабирование данных, т.к. метод опорных векторов не менее чувствителен к масштабу данных, чем метод главных компонент. В программном комплексе для реализации работы метода опорных векторов используется библиотека HbSVM [82]. В этой библиотеке используются четыре наиболее распространённых ядра: - линейное (и X v); - полиномиальное (у X и X v + coef0)de9ree; - радиально-базисное ехр(-у х(и- v)2); - сигмоидальное tanh(y XuXv + coef0).

Перед обучением метода опорных векторов пользователем задаются: - ядро метода опорных векторов (линейное, полиномиальное, радиальное базисное или сигмоидальное); - параметры ядра (gamma, coef 0 и degree); - параметр С (управление допуском ошибки и положением гиперплоскости). После обучения программа выводит информацию о количестве опорных векторов (для множества атак и для множества нормальных пакетов) и формирует SVM-модель, которая в дальнейшем позволяет классифицировать вектора.

После тестирования подсчитывается количество правильно обнаруженных атак (TP), число ложных срабатываний (FP), правильно классифицированных нормальных пакетов (TN), пропущенных атак (FN) и процент правильно классифицированных векторов.

Блок автоматического подбора характеристик на основании результатов работы предыдущих блоков цепочки вырабатывает решения об изменении внутренних параметров блоков, алгоритмов и свойств. В таблице 12 перечислены все настраиваемые параметры основных блоков системы. Таблица 12 — Настраиваемые параметры блоков прототипа Извлечение базовых параметров Сокращение размерности Обучение SVM Список базовых параметров Анализируемая матрица Ядро SVM Разрядность параметров Обучающее множество Параметр C Формула масштабирования Пороговый параметр Параметр ядра Пороговый параметр Параметр ядра degree Формула масштабирования Параметр ядра coef0

Целью данного блока является достижение наибольшего процента правильно классифицированных пакетов и наибольшего быстродействия системы. Процесс подбора параметров состоит из трёх вложенных циклов (стрелки 1-3 на схеме на рисунке 21).

Подбор параметров SVM основывается на построении «сетки поиска» для радиального базисного ядра по параметрам Сиу. Для ручного поиска наилучших параметров SVM в программном прототипе предусмотрено шесть параметров для задания границ (log2C и log2j) и величины шага для построения сетки поиска. В автоматическом режиме блок автоматической настройки находит лучшие значения в узлах сетки с шагом A(log2C) = 2 и A(log2 у) = 2. Блок производит построение «сетки поиска» с шагом A(log2C) = 2 4 и A(log2 у) = 2 4 и находит наилучшее значение в узлах этой сетки.

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