Научная статья на тему 'O-LDS: оптимизация пространства поиска для ускорения алгоритма оценки локальной плотности (local density Score)'

O-LDS: оптимизация пространства поиска для ускорения алгоритма оценки локальной плотности (local density Score) Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
217
30
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ОБНАРУЖЕНИЕ АНОМАЛИЙ / ЗАЩИТА ОТ АТАК / K-MEANS / LOF / LDS / O-LDS / НАБОР ДАННЫХ ADFA

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Ву Вьет Тханг, Пантюхин Д.В., Назаров А.Н.

Обнаружение аномалий это одна из самых важных задач технологии интеллектуального анализа данных (DataMining) и обнаружения знаний в базах данных. Эта задача решается во многих важных прикладных областях, таких как обнаружение атак (Intrusion Detection), обнаружения мошенничества (Fraud Detection), в том числе с кредитными картами, обнаружения аномалий в медицине (Medical Anomaly Detection), обнаружение злоупотреблений и др. В настоящее время проводится много исследований по решению этой задачи, но большинство полученных решений имеет высокую вычислительную сложность, что затрудняет использование таких решений в задачах с большим количеством данных [1]. В данной работе предложен новый алгоритм O-LDS, который имеет значительно меньшую вычислительную сложность по сравнению с известными алгоритмом оценки локальной плотности (Local density score, LDS) [2] и алгоритмом фактора локального отклонения (Local Outlier Factor, LOF) [3]. Для оценки производительности алгоритма O-LDS использовался набор данных CHAMELEON [4], [5], содержащий данные сложной формы в двухмерном пространстве. Алгоритм O-LDS применяется для обнаружения аномалий в задаче обнаружения атак на информационные ресурсы с использованием реальных наборов данных ADFA [6]. Практические исследования показывают, что предложенный алгоритм не только реализует точное обнаружение аномалий, но и работает быстрее до 20 раз и более, чем алгоритмы LDS, LOF.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Ву Вьет Тханг, Пантюхин Д.В., Назаров А.Н.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «O-LDS: оптимизация пространства поиска для ускорения алгоритма оценки локальной плотности (local density Score)»

УДК 004.021

Ву Вьет Тханг1, Д. В. Пантюхин1'2, А.Н. Назаров1

1 Московский физико-технический институт (государственный университет) 2Национальный исследовательский университет «Высшая школа экономики»

O-LDS: Оптимизация пространства поиска для ускорения алгоритма оценки локальной плотности

(Local Density Score)

Обнаружение аномалий - это одна из самых важных задач технологии интеллектуального анализа данных (DataMining) и обнаружения знаний в базах данных. Эта задача решается во многих важных прикладных областях, таких как обнаружение атак (Intrusion Detection), обнаружения мошенничества (Fraud Detection), в том числе с кредитными картами, обнаружения аномалий в медицине (Medical Anomaly Detection), обнаружение злоупотреблений и др.

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

В данной работе предложен новый алгоритм O-LDS, который имеет значительно меньшую вычислительную сложность по сравнению с известными - алгоритмом оценки локальной плотности (Local density score, LDS) [2] и алгоритмом фактора локального отклонения (Local Outlier Factor, LOF) [3].

Для оценки производительности алгоритма O-LDS использовался набор данных CHAMELEON [4], [5], содержащий данные сложной формы в двухмерном пространстве. Алгоритм O-LDS применяется для обнаружения аномалий в задаче обнаружения атак на информационные ресурсы с использованием реальных наборов данных ADFA [6]. Практические исследования показывают, что предложенный алгоритм не только реализует точное обнаружение аномалий, но и работает быстрее до 20 раз и более, чем алгоритмы LDS, LOF.

Ключевые слова: обнаружение аномалий, защита от атак, K-Means, LOF, LDS, O-LDS, набор данных ADFA.

Vu Viet Thang1, D. V. Pantiukhin1'2, A.N. Nazarov1

1 Moscow Institute of Physics and Technology (State University) 2National Research University «Higher School of Economics»

O-LDS: Optimization of the search space to accelerate the anomaly detection based on Local Density Score

The anomaly detection is one of the most important problems in knowledge discovery from data. Its applications include intrusion detection, fraud detection, and the medical anomaly detection, and so on. Nowadays, there are a lot of methods that are tacked with this problem. However, most of them usually have an expensive cost of complexity. For example, LOF or LDS based method has the complexity of 0(n2). This paper proposes an efficient method for boosting the LDS based anomaly detection. The main idea of principle is dividing and conquering: partitioning the data set first and then finding the anomaly from each piece of data. The experiment conducted from artificial and real data sets shows that the run time of our method is up to 20 times faster as compared to LOF and LDS methods.

Key words: Anomaly detection, protection against attacks, K-Means, LOF, LDS, OLDS, dataset ADFA.

1. Введение

Обнаружение аномалий - это одна из важных проблем, интересующих многих исследователей в таких предметных областях, как [1]:

1) обнаружение вторжений (Intrusion Detection). Обнаружение вторжений относится к обнаружению вредоносной активности (взломов, проникновений и других форм компьютерного злоупотребления) в компьютерных системах. Вторжение отличается от нормального поведения системы, и следовательно, методы обнаружения аномалий применимы в области обнаружения вторжений. Основной проблемой при обнаружении аномалий является огромный объем данных. Методы обнаружения аномалий должны быть вычислительно эффективными. Другой проблемой является высокий уровень ложных тревог. Поскольку число данных исчисляется миллионами, даже несколько процентов ложных тревог могут сделать анализ аналитиком слишком сложным. Размеченные данные, соответствующие нормальному поведению, как правило, доступны, в то время как метки для вторжений редко доступны. Таким образом, методы обнаружения аномалий с гибридным обучением (semisupervised) и самообучением (unsupervised) являются предпочтительными;

2) обнаружение мошенничества (Fraud Detection). Обнаружение мошенничества относится к выявлению преступной деятельности, происходящей в коммерческих организациях, таких как банки, кредитные компании, страховые агентства, компаний сотового связи, фондовые рынки и т.д. Злоумышленниками могут быть фактические клиенты организации или мошенники, имитирующие клиентов. Мошенничества происходят, когда эти пользователи используют ресурсы, предоставляемые организацией несанкционированным способом. Такие организации заинтересованы в непосредственном обнаружении таких мошенничеств, чтобы предотвратить экономические потери. В 1999 г. Fawcett and Provost представили термин «мониторинг деятельности» в качестве общего подхода к обнаружению мошенничества в этих областях. Типичным подходом обнаружения аномального поведения является сохранение профиля для каждого клиента и наблюдение за профилем для выявления отклонений;

3) обнаружения аномалий в медицине (Medical Anomaly Detection). Обнаружение аномалий в областях медицины и общественного здравоохранения, как правило, работает с записями о пациентах. Данные могут иметь аномалии из-за нескольких причин, таких как ненормальное состояние пациента, ошибки измерительных приборов или ошибки записи. Некоторые методы также направлены на выявление эпидемии в определенной области. Другая форма данных, обрабатываемых с помощью методов обнаружения аномалий в этой области представляет собой данные временных рядов, такие как электрокардиограммы (ЭКГ) и электроэнцефалограмма (ЭЭГ).

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

1) аномалии встречаются довольно редко в наборе данных,

2) характеристики аномалий значительно отличаются от нормальных данных.

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

Существует несколько базовых алгоритмов для обнаружения аномалий, такие как [1, 7]: distribution-based - аномалии не подчиняются определенному распределению, например нормальному, Пуассона и др.; distance-based - аномалиями являются объекты, которые не имеют достаточно количества объектов в множестве, но и расстояние между ними меньше заданного значения; dustering-based - аномалиями являются объекты, которые не принадлежат никакому кластеру после применения алгоритма кластеризации (например, DBSCAN [4], KNN [8]); density-based - аномалиями являются объекты, локальная плотность которых меньше заданной.

Были представлены многие алгоритмы улучшения на основе метода ближайших соседей, например, метод фактора связанных аномалий (Connectivity-Based Outlier Factor, COF) [9], метод вероятности локальной аномалии (Local Outlier Probability, LOOP) [10], влияние аномалии (Influenced Outlierness, INFLO) [11] или свободный параметр локальной корреляции интеграла (Local Correlation Integral, LOCI) [12].

Общей характеристикой этих алгоритмов является вычислительная сложность порядка 0(п2). Целью данной работы является создание нового алгоритма O-LDS на основе LDS с низкой вычислительной сложностью.

Остальная часть статьи состоит из 6 разделов. Второй раздел посвящен алгоритму LDS. Третий раздел посвящен проблемам улучшения вычислительной скорости и выбору параметров для алгоритма O-LDS. Четвертый раздел посвящен алгоритму O-LDS. Пятый раздел посвящен экспериментальным исследованиям работы O-LDS на сложных наборах данных в двухмерном пространстве. Шестой раздел посвящен применению алгоритма O-LDS для обнаружения атак на информационные ресурсы и седьмой раздел посвящен заключению нашей статьи.

2. LDS — Алгоритм обнаружения аномалии на основе плотности

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

1) граф представляет собой неориентированный граф с весом и в каждой вершине имеет не более К исходящих ребер от этой вершины;

2) ребро создается между одной парой вершин, Xi и Xj, тогда и только тогда, когда Xi находится в множестве К-ближайших соседей точки Xj и наоборот.

Перед изложением алгоритма LDS дадим необходимые определения.

Определение 1. Для любой вершины Xi через NN (xi) обозначается множество К-ближайших соседей Xi, не включая Xi.

Определение 2. Длина ребра или значение веса между любой парой вершин (xi, Xj) на графе обозначается distance (xi, Xj) и определяется как количество общих точек двух множеств К-ближайших соседей NN (xi) и NN (xj):

distance(xi, Xj) = INN (xi) Q NN (xj) |. (1)

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

внимания на плотность распределения и форму исходных данных, что является ограничением других алгоритмов, например K-Means [13], FastDBSCAN [14] и др. Определение 3. Локальная плотность любой вершины х на графе обозначается как Score (х) и определяется по формуле [2]:

Score(x) =

T^geNN(u) distance(u, q)

k

(2)

Локальная плотность вершины х определена на основе уровня связанности вершины х с ее соседями. Чем больше уровень связанности, тем выше плотность региона вокруг х. Score(х) лежит в интервале [0, к — 1] и если оно имеет большое значение, то х находится в области высокой плотности, и наоборот.

В работе [2] и нескольких других исследованиях алгоритм LDS предложен только лишь для решения такой задачи, как распознавание лица, выбора лучшего кандидата с меткой для алгоритма гибридного обучения (semisupervised) и др., а применение для обнаружения аномалий совсем отсутствует. Поэтому предлагается применить алгоритм LDS к задаче обнаружения аномалий. В этом случае каждая запись в исходных данных считается вершиной на графе ^-ближайших соседей. Аномалией является точка с координатами, отстоящими далеко от остальных точек. Примеры аномалий показаны на рис. 1.

Рис. 1. Локальная плотность точек, полученная с помощью алгоритма ЬББ. Синий - нормальные точки, пурпурный - аномалии

3. Проблема улучшения вычислительной скорости и выбор параметров для алгоритма С-ЬЮ8

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

Практически показано, что 99% времени вычислений алгоритма LDS и других аналогичных алгоритмов, таких как LOF, тратится для нахождения К-ближайших соседей для всех исходных данных, поэтому вычислительная сложность определяется как 0(п2). Каким образом можно ускорить поиск ^-ближайших соседей? Предложено несколько подходов, таких как использование специальных структур Kd-tree [15] или X-tree, но они применяются ко всем исходным данным. По этой причине предлагается идея оптимизации поиска пространства ^-ближайших соседей с помощью разбиения заданного пространства на подпространства.

Очевидно, что для любой точки А, как показано на рис. 2, точки с красным цветом находятся далеко от точки А и не могут являться кандидатами в множество ^-ближайших соседей точки А, при этом только зеленые точки вокруг точки А, близкие к точке А, имеют высокую вероятность попадания во множество К-ближайших соседей точки А (пусть к — NN = 5), поэтому практически достаточно использовать регион с зелеными точками.

Рис. 2. Иллюстрация локального региона вокруг точки А, содержащего 5 соседей точки А

Согласно идее разбиения пространства происходит оптимизация алгоритма. Для разбиения пространства выбран алгоритм K-Means [13], поскольку он имеет множество достоинств, таких как простота понимания, простота программирования и низкая вычислительная сложность (0(к * п), к - количество кластеров, п - количество записей исходных данных). Алгоритм K-Means является базовым и популярным алгоритмом для большого числа приложений, поэтому не излагается в данной работе.

Комбинацией алгоритмов LDS и K-Means получается гибридный алгоритм O-LDS с низкой вычислительной сложностью 0(п1'5). Экспериментально скорость работы увеличивается более чем в 10 раз по сравнению со скоростью работы LDS.

Алгоритм O-LDS использует 3 параметра: к - количество кластеров алгоритма K-Means, к — NN - количество ближайших соседней, Epsilon - порог для выбора кандидата, который является аномалией. Выбор параметра к происходит экспериментально, в исследовании [16] параметр к выбирается в интервале [л/п — е,у/п + е], зависит от конкретной области, например для базы данных CHAMELEON c 8000 записей к можно выбрать в отрезке [80, 100]. Параметр к — NN выбирается таким образом, что он не больше величины [n/к], а параметр Epsilon подбирается экспертом.

4. Алгоритм O-LDS

Основная идея заключается в том, что сначала с помощью алгоритма K-Means заданное множество X разбивается на к подмножеств (Х\,Х2,..., Х^), соответствующих к кластерам, после этого применяется алгоритм LDS на каждом подмножестве Xi (г = 1 : к) для получения множества локальных аномалий Е, и множество Е является множеством кандидатов в глобальные аномалии. Для каждой локальной аномалии на множестве Е на заданном множестве X перевычисляется величина Score по формуле (2), и получается множество величин Score, в котором используется параметр Epsilon для выбора глобальной аномалии.

Алгоритм O-LDS

Вход : множество исходных данных X = {х\, Х2,..., хп}, к - количество кластеров, к — NN - количество ближайших соседней, Epsilon - порог;

Выход : G - множество глобальных аномалий.

Шаг 1: инициализация к центров c помощью min-тах-подхода [14].

Шаг 2: реализация метода K-Means с к центрами для разбиения X на к подмножеств.

Шаг 3: применение алгоритма LDS на каждом полученном подмножестве для получения множества локальной аномалии Е.

Шаг 4: получение множества величин Score каждой локальной аномалии с помощью перевычисления всех локальных аномалий на 3-м шаге.

Шаг 5: получение множества G глобальных аномалий, которое является множеством записей, имеющих величину Score меньше Epsilon.

Вычислительная сложность алгоритма O-LDS равняется

0(n * k) + 0(к2) + 0(t * п) = 0(п1'5), где к - количество кластеров, t - количество локальных аномалий (t ^ n), п - количество записей исходных данных.

5. Экспериментальные исследования работы алгоритма O-LDS со сложным набором данных в двухмерном пространстве

Эксперименты проводились на ПЭВМ со следующими характеристиками:

1) процессор: Intel® Core™ i5-4460S CPU@2.90Ghz х64;

2) оперативная память: 4.00 GB;

3) тип системы: 64-разрядная операционная система Windows 8.

Для наглядности, алгоритмы O-LDS, LDS, LOF используются с четырьмя популярными наборами данных CHAMELEON [5] (t4.8k.dat, t5.8k.dat, t7.10k.dat и t8.8k.dat) сложной формы, разным количеством данных в двухмерном пространстве. Также используются данные предыдущей работы [14] с оценкой алгоритмов FastDBSCAN, DBSCAN. Данные представлены на рис. 3 и в табл. 1.

Таблица1

Название набора данных Размерность набора данных Количество записей

t4.8k.dat 2 8000

t8.8k.dat 2 8000

t5.8k.dat 2 8000

t7.10k.dat 2 10000

Рис. 3. Тестовые

наборы данных

Рис. 4. Визуализация результатов обнаружения аномалий с помощью алгоритмов O-LDS, LDS и LOF. Синий - нормальные точки, пурпурный - аномалии

В данной работе для оценки качества алгоритмов обнаружения аномалий используется ROC-кривая (receiver operating characteristic curves) [17]. Основой этого метода оценки является анализ графика ROC-кривой, при построении которого используется два показателя: коэффициент обнаружения (Detection Rate - DR) и коэффициент ложных положительных ошибок (False Alarm Rate - FAR) срабатываний системы. По оси абсцисс графика кривой откладываются значения коэффициента ложных положительных ошибок, по оси ординат - значения коэффициента обнаружения. Каждому результату работы алгоритма на таком графике будет соответствовать одна точка. При этом в зависимости от параметров алгоритма получается множество точек. Кроме того, важной характеристикой ROC-кривой является то, что чем больше площадь фигуры под ROC-кривой, тем эффективнее соответствующий ей алгоритм.

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

Рис. 5. Точность алгоритмов обнаружения аномалий на наборе CHAMELEON

Таблица2

Набор t4.8k.dat

DR FAR Параметры Время выполнения (в секундах)

O-LDS 0.94 0.07 k=80, k-NN=35, Epsilon=18 20

LDS 0.942 0.09 k-NN=50, Epsilon=15 500

LOF 0.95 0.1 MinPts=30, Epsilon= 1.3 530

Набор t8.8k.dat

DR FAR Параметры Время выполнения (в секундах)

O-LDS 0.96 0.06 k=85, k-NN=35, Epsilon=19 21

LDS 0.97 0.07 k-NN=55, Epsilon=18.5 550

LOF 0.97 0.06 MinPts=35, Epsilon=1.25 480

Набор t5.8k.dat

DR FAR Параметры Время выполнения (в секундах)

O-LDS 0.95 0.08 k=78, k-NN=40, Epsilon=23 22

LDS 0.95 0.1 k-NN=50, Epsilon=22 600

LOF 0.94 0.06 MinPts=40, Epsilon=1.15 580

Набор t7.10k.dat

DR FAR Параметры Время выполнения (в секундах)

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

O-LDS 0.95 0.06 k=100, k-NN=30, Epsilon=22 25

LDS 0.93 0.08 k-NN=60, Epsilon=19 700

LOF 0.95 0.08 MinPts=50, Epsilon=1.35 780

Detection Rate - соотношение между числом правильно обнаруженных аномалий и общим количеством аномалий.

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

данных нормального класса.

При тестировании алгоритмов O-LDS, LDS и LOF на наборе данных CHAMELEON были получены следующие результаты (рис. 4, Б).

Из табл. 2 и рис. 4, Б видно, что представленный алгоритм O-LDS позволяет существенно, до 10-30 раз, ускорить обнаружение аномалий при сохранении точности.

б. Применение алгоритма O-LDS для обнаружения атак на информационные ресурсы

Представляется возможным применить предложенный алгоритм O-LDS для обнаружения компьютерных атак на наборе актуальных данных, который является более сложным и многомерным, чем набор данных KDD'Cup 99. Этот набор данных - ADFA - был впервые представлен в 2013 г. исследователями G. Creech и J. Hu из «Cyber Security at the Canberra Campus of the University of New South Wales» [6]. ADFA состоит из ADFA-LD (Linux) и ADFA-WD (Windows).

В данной работе используется набор ADFA-LD, который применен вместо эталонных наборов данных (KDD'cup 99 [1В], DARPA 199В [19], UMN [20] и др.) для хостовых систем обнаружения вторжений (HIDS [21]), наборов, которые потеряли свою актуальность для современных компьютерных систем. ADFA-LD состоит из тысяч «следов» (traces) системных вызовов, собранных с современного локального сервера Linux, подвергнутого шестью типами современных кибератак, таких как Hydra-FTP, Hydra-SSH, Adduser, Java-Meterpreter, Meterpreter и Webshell [22].

Сервер, на котором собиралась ADFA-LD, предоставлял широкий набор услуг, в том числе совместное использование файлов, базы данных, удаленный доступ и услугу вебсервера. На нем была установлена операционная система Ubuntu 11.04 (Linux ядра 2.6.3В). Сервисы FTP, SSH и MySQL14.14 работают на их портах по умолчанию. Для работы веб-служб установлены Apache 2.2.17 и PHP Б.З.Б. Кроме того, установлен TikiWiki В.1 как совместно используемый сетевой инструмент. В течение заданного периода системные вызовы, порожденные каждым процессом, собирались с этого тестового сервера, записывались в базу ADFA-LD, одновременно в базу записывался индекс системного вызова (вместо его названия).

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

Для взаимодействия с системными ресурсами приложения используют системные вызовы, которые дают возможность операционной системе обеспечить безопасный доступ к ним. Системные вызовы передают управление ядру операционной системы, которое определяет, предоставлять ли приложению запрашиваемые системные ресурсы. Если запрашиваемые системные ресурсы доступны, то ядро выполняет запрошенное действие, затем возвращает управление приложению [23]. Системный вызов может влиять на безопасность системы, так как может дать возможность хакерам атаковать защищаемую систему. По этой причине собираются все системные вызовы, а затем полученная информация анализируется и извлекается ряд признаков, определяющих, какое было поведение защищаемой системы: нормальное или ненормальное (аномалия). Таким образом собирался набор данных ADFA-LD.

В табл. 3 приведены количество и типы атак и их метки из набора данных ADFA-LD.

Т а б л и ц а 1

Набор данных ADFA-LD

Тип данных Training Validation HydraFTP Hydra- SSH Adduser Java-Met-erpreter Meterp-reter Webshell

Количество 833 4373 162 148 91 125 75 118

Метка normal normal attack attack attack attack attack attack

Согласно исследованию [24] в наборе данных ЛБЕЛ-ЬБ имеется матрица признаков атаки, каждая строка матрицы представляет вектор признаков (для ЛБЕЛ-ЬБ 325 признаков), соответствующий каждому процессу. В данной работе для снижения размерности признакового пространства с 325 до 14 используется нейросетевая структура Л^оепсоёег [25], показанная на рис. 6.

Рис. 6. Нейросетевая структура Аutoencoder для снижения размерности признакового пространства

Для тестирования алгоритмов O-LDS, LDS и LOF созданы 4 базы данных, случайно выбраные из ADFA-LD, как в табл. 4.

Таблица4

ADFA-1 ADFA-2 ADFA-3 ADFA-4

Количество записей нормального поведения 1000 2000 3000 4000

Количество атак 20 40 60 100

Известно [26], [27], что аномалии встречаются редко в наборе данных, обычное соотношение количества аномалий и нормального поведения приблизительно от 0.5% до 4% в зависимости от конкретной области. Результаты применения трех алгоритмов O-LDS, LDS и LOF показаны на рис. 7, 8.

Из представленных результатов видно, что алгоритм O-LDS можно успешно применять для решения задачи обнаружения компьютерных атак. Достигнутая средняя точность обнаружения составила 95% при сокращении времени обработки в 20 раз по сравнению с LDS и LOF.

7. Заключение

Представлен новый способ ускорения алгоритма обнаружения аномалий O-LDS, основанный на применении алгоритма LDS и K-Means. Такой метод позволяет существенно, до

10-20 раз, ускорить обнаружение аномалий при сохранении точности, достигаемой оригинальными алгоритмами LDS и LOF. Полученные результаты подтверждены интенсивными экспериментальными исследованиями на ряде тестовых множеств.

Рис. 7. Сравнение точности трех алгоритмов

Рис. 8. Сравнение времени выполнения трех алгоритмов в зависимости от размера набора данных (для лучших по точности результатов)

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

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

тельных ошибок, поэтому для снижения их количества в дальнейших работах метод O-LDS будет исследован в следующих направлениях:

1) разработка подхода к повышению точности O-LDS за счет использования нейронной сети с учителем (многослойный персептрон, сверточная нейронная сеть и др.);

2) распараллеливание метода на современные параллельные аппаратные средства, такие как суперЭВМ с графическими процессорами (GPU), ПЛИС и др.;

3) исследование алгоритма O-LDS на различных базах данных, таких как KDD'cup 99, DARPA2000, NSL-KDD 2009, ISCX2012 и др. с целью оценки возможностей алгоритма O-LDS в области информационной безопасности;

4) исследование влияния параметров метода на скорость и точность работы. Литература

1. Chandola V., Banerjee A., Kumar V. Anomaly detection: A survey // ACM Comput. Surv.

2009. V. 41, N 3. P. 1-58.

2. Duy-Dinh Le, Shin'ichi Satoh. Unsupervised Face Annotation by Mining the Web // ICDM. 2008. P. 383-392.

3. Breunig M.M., Kriegel H.-P., Ng R.T., Sander J. LOF: identifying density-based local outliers // Proceedings of the ACM SIGMOD International Conference on Management of Data. 2000.

4. Ester M., Kriegel H.-P., Sander J., Xu X. A Density-Based Algorithm for Discovering Clusters in Large Spatial Databases with Noise // Proceedings of 2nd International Conference on Knowledge Discovery and Data Mining (KDD). 1996.

5. Karypis G., Han E.-H., Kumar V. Chameleon: Hierarchical Clustering Using Dynamic Modeling // IEEE Computer. 1999. V. 32, N 8. P. 68-75. (1999).

6. Creech G., Hu J. A Semantic Approach to Host-Based Intrusion Detection Systems Using Contiguous and Discontiguous System Call Patterns // IEEE Transactions on Computers. 2014. V. 63. P. 807-819.

7. Schubert E., Zimek A., Kriegel H.-P. Local Outlier Detection Reconsidered: a Generalized View on Locality with Applications to Spatial, Video, and Network Outlier Detection // Data Mining and Knowledge Discovery, 2014. V. 28, N 1. P. 190-237.

8. Ertoz L., Steinbach M., Kumar V. Finding Clusters of Different Sizes, Shapes, and Densities in Noisy, High Dimensional Data // SDM. 2003. P. 47-58.

9. Tang J., Chen Z., Fu A., Cheung D. Enhancing effectiveness of outlier detections for low density patterns // Adv. in KDDM. 2002. V. 2336. P. 535-548.

10. Kriegel H.-P., Kroger P., Schubert E., Zimek A. Loop: local outlier probabilities // Proc. of the 18th ACM CIKM. 2009. P. 1649-1652.

11. Jin W., Tung A., Han J., Wang W. Ranking outliers using symmetric neighborhood relationship // Advances in KDD. 2006. V. 3918. P. 577-593.

12. Papadimitriou S., Kitagawa H. [et al.] LOCI: Fast outlier detection using the local correlation integral // Int. Conf. on Data Engineering. 2003. P 315-326.

13. Jain A.K. Data clustering: 50 years beyond K-means // Pattern Recognition Letters (PRL).

2010. V. 31, N 8. P. 651-666.

14. Thang V.V., Pantiukhin D.V., Galushkin A.I. A Hybrid Clustering Algorithm: The FastDBSCAN // Proc. IEEE International Conference on Engineering and Telecommunication (EnT). 2015.

15. Kim S., Cho N.W., Kang B., Kang S.-H. Fast outlier detection for very large log data // Expert Syst. Appl. 2011. V. 38, N 8. P. 9587-9596.

16. Caiming Zhong, Mikko I. Malinen, Duoqian Miao, Pasi Franti. A fast minimum spanning tree algorithm based on K-means // Inf. Sci. Journal. 2015. N 295. P. 1-17.

17. Gu G., Fogla P., Dagon D., Lee W., Skoric B. Measuring Intrusion Detection Capability: An Information-Theoretic Approach // ASIACCS'06. March 21-24, 2006. Taipei, Taiwan.

18. https://kdd.ics.uci.edu/databases/kddcup99/task.html

19. http://www.ll.mit.edu/mission/communications/cyber/CSTcorpora/ideval/data/

20. http://www.cs.unm.edu/ immsec/systemcalls.htm

21. Stavroulakis P., Stamp M. Handbook of information and communication security. Springer, 2010.

22. Creech G., Hu J. Generation of a new IDS test dataset: Time to retire the KDD collection // IEEE Wireless Communications and Networking Conference (WCNC). P. 4487-4492.

23. IBM. Writing SVC Routines. IBM System/360. Operating System Programmer's Guide (PDF). Third Edition. P. 32-36. C28-6550-2.

24. Xie M., Hu J., Yu X., Chang E.Evaluating Host-Based Anomaly Detection Systems: Application of the Frequency-Based Algorithms to ADFA-LD // Network and System Security. Springer, 2014. P. 542-549.

25. Hinton G.E., Salakhutdinov R. Reducing the dimensionality of data with neural networks // Science. 2006. V. 313, N 5786. P. 504-507.

26. Hawkins S., He H., Williams G., Baxter R. Outlier detection using replicator neural networks // Proceedings of the 4th International Conference on Data Warehousing and Knowledge Discovery. Springer-Verlag, 2002. P. 170-180.

27. Goldstein M. FastLOF: An Expectation-Maximization based Local Outlier detection algorithm // Proceedings of the 21st International Conference on Pattern Recognition (ICPR), 2012.

References

1. Chandola V., Banerjee A., Kumar V. Anomaly detection: A survey. ACM Comput. Surv. 2009. V. 41, N 3. P. 1-58.

2. Duy-Dinh Le, Shin'ichi Satoh. Unsupervised Face Annotation by Mining the Web. ICDM. 2008. P. 383-392.

3. Breunig M.M., Kriegel H.-P., Ng R.T., Sander J. LOF: identifying density-based local outliers. Proceedings of the ACM SIGMOD International Conference on Management of Data. 2000.

4. Ester M., Kriegel H.-P., Sander J., Xu X. A Density-Based Algorithm for Discovering Clusters in Large Spatial Databases with Noise. Proceedings of 2nd International Conference on Knowledge Discovery and Data Mining (KDD). 1996.

5. Karypis G., Han E.-H., Kumar V. Chameleon: Hierarchical Clustering Using Dynamic Modeling. IEEE Computer. 1999. V. 32, N 8. P. 68-75. (1999).

6. Creech G., Hu J. A Semantic Approach to Host-Based Intrusion Detection Systems Using Contiguous and Discontiguous System Call Patterns. IEEE Transactions on Computers. 2014. V. 63. P. 807-819.

7. Schubert E., Zimek A, Kriegel H.-P. Local Outlier Detection Reconsidered: a Generalized View on Locality with Applications to Spatial, Video, and Network Outlier Detection. Data Mining and Knowledge Discovery, 2014. V. 28, N 1. P. 190-237.

8. Ertoz L., Steinbach M., Kumar V. Finding Clusters of Different Sizes, Shapes, and Densities in Noisy, High Dimensional Data. SDM. 2003. P. 47-58.

9. Tang J., Chen Z., Fu A., Cheung D. Enhancing effectiveness of outlier detections for low density patterns. Adv. in KDDM. 2002. V. 2336. P. 535-548.

10. Kriegel H.-P., Kroger P., Schubert E., Zimek A. Loop: local outlier probabilities. Proc. of the 18th ACM CIKM. 2009. P. 1649-1652.

11. Jin W., Tung A., Han J., Wang W. Ranking outliers using symmetric neighborhood relationship. Advances in KDD. 2006. V. 3918. P. 577-593.

12. Papadimitriou S., Kitagawa H. [et al.] LOCI: Fast outlier detection using the local correlation integral. Int. Conf. on Data Engineering. 2003. P 315-326.

13. Jain A.K. Data clustering: 50 years beyond K-means. Pattern Recognition Letters (PRL). 2010. V. 31, N 8. P. 651-666.

14. Thang V.V., Pantiukhin D.V., Galushkin A.I. A Hybrid Clustering Algorithm: The FastDBSCAN. Proc. IEEE International Conference on Engineering and Telecommunication (EnT). 2015.

15. Kim S., Cho N.W., Kang B., Kang S.-H. Fast outlier detection for very large log data. Expert Syst. Appl. 2011. V. 38, N 8. P. 9587-9596.

16. Caiming Zhong, Mikko I. Malinen, Duoqian Miao, Pasi Franti. A fast minimum spanning tree algorithm based on K-means. Inf. Sci. Journal. 2015. N 295. P. 1-17.

17. Gu G., Fogla P., Dagon D., Lee W., Skoric B. Measuring Intrusion Detection Capability: An Information-Theoretic Approach. ASIACCS'06. March 21-24, 2006. Taipei, Taiwan.

18. https://kdd.ics.uci.edu/databases/kddcup99/task.html

19. http://www.ll.mit.edu/mission/communications/cyber/CSTcorpora/ideval/data/

20. http://www.cs.unm.edu/ immsec/systemcalls.htm

21. Stavroulakis P., Stamp M. Handbook of information and communication security. Springer, 2010.

22. Creech G., Hu J. Generation of a new IDS test dataset: Time to retire the KDD collection. IEEE Wireless Communications and Networking Conference (WCNC). P. 4487-4492.

23. IBM. Writing SVC Routines. IBM System/360. Operating System Programmer's Guide (PDF). Third Edition. P. 32-36. C28-6550-2.

24. Xie M., Hu J., Yu X., Chang E. Evaluating Host-Based Anomaly Detection Systems: Application of the Frequency-Based Algorithms to ADFA-LD. Network and System Security. Springer, 2014. P. 542-549.

25. Hinton G.E., Salakhutdinov R. Reducing the dimensionality of data with neural networks. Science. 2006. V. 313, N 5786. P. 504-507.

26. Hawkins S., He H., Williams G., Baxter R. Outlier detection using replicator neural networks. Proceedings of the 4th International Conference on Data Warehousing and Knowledge Discovery. Springer-Verlag, 2002. P. 170-180.

27. Goldstein M. FastLOF: An Expectation-Maximization based Local Outlier detection algorithm. Proceedings of the 21st International Conference on Pattern Recognition (ICPR), 2012.

Поступила в редакцию 06.07.2016

i Надоели баннеры? Вы всегда можете отключить рекламу.