Научная статья на тему 'Нейросетевой подход выявления аномалий в информационной системе'

Нейросетевой подход выявления аномалий в информационной системе Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
114
28
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
АНОМАЛЬНОЕ ПОВЕДЕНИЕ / ANOMALY BEHAVIOR / НЕЙРОННАЯ СЕТЬ / NEURAL NETWORK / ТАБЛИЦА ОБУЧЕНИЯ / TABLE OF LEARNING

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Колюцкий К.Н.

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

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

Neuronet approach for detection anomalies in information system

This article offers a way for detection an unknown user in information system. The article shows an imitation program of unauthorized access and neuronet approach for detection it.

Текст научной работы на тему «Нейросетевой подход выявления аномалий в информационной системе»

УДК 004.931

НЕЙРОСЕТЕВОЙ ПОДХОД ВЫЯВЛЕНИЯ АНОМАЛИЙ В ИНФОРМАЦИОННОЙ СИСТЕМЕ

К.Н. Колюцкий,

Московский финансово-юридический университет МФЮА E-mail: kolucki.k@mail.ru

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

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

Abstract. This article offers a way for detection an unknown user in information system. The article shows an imitation program of unauthorized access and neuronet approach for detection it.

Keywords: anomaly behavior, neural network, table of learning.

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

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

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

На языке C# создана программная модель, работающая в двух режимах: режим обучения и режим экзамена (выявление аномалий). Режим обучения можно разделить на два этапа. На первом этапе режима обучения осуществляется построение профилей пользователей (формирование обучающего множества). Сама по себе это трудно формализуемая и затратная по времени задача. Профили пользователей могут формироваться на основе параметров сетевых соединений, использующих стек протоколов TCP/IP. Каждый пользователь, с точки зрения модели, это класс распознавания. Изменения в поведении пользователя от сеанса к сеансу отражаются конкретными представителями класса (объектами). Каждый объект класса это вектор, компоненты которого являются усредненными значениями параметров сетевого трафика за некоторый промежуток времени. В модели, в интересах профилей пользователей, строится таблица обучения, представленная ниже.

Класс распознавания Объект Усредненные сетевые параметры (первичные признаки)

1 1.1 H„ Hi1 H , n1

1.2 H12 Hi2 n2

1.3 H13 Hi3 H3 n3

2 2.1 H14 Hi4 H4 n4

2.2 H15 Hi5 H 5 n5

2.3 H16 Hi6 Hn6

3 3.1 H17 Hi7 Hn7

3.2 H!8 Hi8 Hn8

3.3 H!9 Hi9 Hn9

В модели таблица обучения строилась для 5 классов распознавания (5 пользователей), 7 представителей каждого класса (сеансов для каждого пользователя) и 40 значений признаков. Профиль каждого

пользователя (значения параметров в строке таблицы) формировался в диапазоне значений от нескольких десятков до нескольких тысяч при помощи генератора случайных чисел. Затем профиль «расшатывался» внутри класса для формирования сеансов пользователя. Каждая строка таблицы обучения представляет собой сеанс некоторого пользователя. Программно таблица обучения представляет собой динамический массив из 35 элементов (5 х 7), каждый из которых это вектор признаков, характеризующий некоторый сеанс одного из пользователей. Построением таблицы обучения заканчивается первый этап режима обучения.

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

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

Выход 1 класса Выход 2 класса Выход 3 класса Выход 4 класса Выход 5 класса

0,977 0,020 0,012 0,002 0,001

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

Выход 1 класса Выход 2 класса Выход 3 класса Выход 4 класса Выход 5 класса

0,002 0,027 0.039 0,009 0.003

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

Номер класса 1 2 3 4 5

Расстояние 14 13 12 11 11

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

Выход 1 класса Выход 2 класса Выход 3 класса Выход 4 класса Выход 5 класса

0,0081 0,971 0,0001 0,015 0,003

Значения расстояний от неизвестного вектора до классов таблицы обучения приведено ниже:

Номер класса 1 2 3 4 5

Расстояние 14 8 15 13 13

Если входной вектор не соответствует представлениям нейронной сети о легальном пользователе, то это отразится в небольших значениях всех компонентов выходного вектора сети. Такой вектор не будет классифицирован (будет отнесен к «мусору»), т.е. фактически будет выявлен в системе неизвестный субъект. Нейронная сеть, обученная на легальном поведении, не относит «мусор» ни к одному из классов распознавания. Нарушителю, чтобы остаться незамеченным, необходимо соответствовать всей совокупности признаков из таблицы обучения.

Архитектура сети строилась следующим образом. Размерность входного слоя сети определялась размерностью вектора признаков. Размерность скрытого слоя составляла 40% от числа элементов входного слоя. Количество элементов выходного слоя определяется числом пользователей (5). В качестве функций активности скрытого и выходного слоя использовалась сигмоидаль-ная функция вида f(net)=1/(1+e-net ), где net - комбинированный ввод.

ЛИТЕРАТУРА

1. Запечников С.В. Информационная безопасность открытых систем. - М., 2008.

2. Тарков М.С. Нейрокомпьютерные системы. - М., 2010.

3. Каллан Р. Основные концепции нейронных сетей. - М., 2001.

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