close

Вход

Забыли?

вход по аккаунту

?

Применение нейронных сетей для мониторинга безопасности информационных систем..pdf

код для вставкиСкачать
ФИЗИКО-МАТЕМАТИЧЕСКИЕ НАУКИ
ПРИМЕНЕНИЕ НЕЙРОННЫХ СЕТЕЙ ДЛЯ МОНИТОРИНГА
БЕЗОПАСНОСТИ ИНФОРМАЦИОННЫХ СИСТЕМ
А.С. Кочеткова, 2007
А.С. Кочеткова
Большинство существующих систем обнаружения атак (СОА), применяемых для мониторинга безопасности информационных систем (ИС), основаны на использовании правил и сигнатур, с помощью которых анализируется вектор входных данных и на основании чего делается вывод о наличии или отсутствии атаки. Для эффективного обнаружения атак базы данных (БД) сигнатур и правил
требуют постоянного обновления. Эти обновления выполняются вручную или автоматизированно через определенный промежуток
времени. При малейшем отклонении сигнатуры атаки от сигнатуры или правила, имеющегося в БД, эта атака обнаружена не будет.
Такая ситуация может возникнуть вследствие
того, что БД не может быть обновлена, так
как для данной атаки еще не существует сигнатуры. Поэтому из-за большого разнообразия атак обычные СОА не всегда способны
обеспечить идентификации атаки.
В разработанной СОА эта проблема решается за счет применения нейронных сетей.
Целевое назначение нейросети в СОА –
обнаружение атак на системном и сетевом
уровне: подбор пароля, вирусы и трояны,
сниффинг и спуфинг пакетов, сетевую разведку, DoS-атаки, несанкционированные вход
пользователя, запуск программ, работа с программами, файлами, каталогами, с администраторскими утилитами; неправильные имя
и пароль, и прочие события безопасности.
Вестник ВолГУ. Серия 9. Вып. 6. 2007
Следующие особенности нейросети позволяют использовать ее для обнаружения атак:
- нейросеть предварительно обучается для
обнаружения атак путем настройки архитектуры сети и весов синапсов;
- нейросеть способна обнаруживать атаки
по неполным и даже частично недостоверным исходным данным, то есть она
обладает ассоциативной памятью;
- на основе накопленных данных об атаках нейросеть способна производить новые данные, то есть обнаруживать новые виды атак.
Основная задача нейросети в СОА – преобразование определенного набора входных
данных к определенному набору выходных данных, то есть по исходным данным о сетевых
пакетах или системных событиях нейросеть
должна сделать заключение об атаке (решить
задачу классификации). Эффективность решения задачи зависит от выбора архитектуры нейросети и ее обучения. Выбор оптимальной архитектуры нейросети сводится к нахождению
такой сети, которая решает поставленную задачу с минимальной целевой ошибкой:
E (w) 
1 p
 ( y j  d j ),
2 j 1
(1)
где yj – значение j-го выхода нейросети;
dj – целевое значение j-го выхода;
р – число нейронов в выходном слое.
163
ФИЗИКО-МАТЕМАТИЧЕСКИЕ НАУКИ
Анализ показывает, что наиболее подходящими для этого являются следующие виды
нейронных сетей: многослойный персептрон,
сеть с радиальными базисными элементами,
вероятностная, обобщенно-регрессионная и
линейная сети.
Нейросеть обучается методом обратного
распространения. Обучение проводится так же
с минимизацией целевой ошибки (1). Алгоритм
обучения нейросети включает следующие шаги:
1. Подать на вход нейросети входной вектор и определить значения выходов нейросети.
2. Рассчитать вспомогательную переменную
(N)
 для выходного слоя нейросети по формуле
(jN )  ( yi( N )  d i ) 
dy i
,
dSi
(2)
где y i( N ) – значение i-го выхода нейрона выходного слоя;
Si – взвешенная сумма выходных сигналов;
N – число слоев,
и рассчитать изменения весов wij(n ) i-го слоя
j-го нейрона по формуле
wij( n )     (jn )  xin ,
(3)
где  – параметр, определяющий скорость
обучения;
n
xi – значение i-го входа нейрона n-го слоя.
3. Рассчитать по формулам

 dy j
(jn )   (kn 1)  w(jkn 1)  
k
 dS j
(4)
и (3) соответственно (N) и wij( N ) для остальных слоев нейросети, n = N – 1 ... 1.
4. Скорректировать все веса синапсов
нейросети по формуле:
wij( n ) (t )  wij( n ) (t  1)  wij( n ) (t ).
(5)
5. Найти ошибку по формуле (1). Если
ошибка существенна, то перейти на шаг 1.
Обучение сети вручную является длительным и трудоемким процессом, поэтому
разработанная СОА интегрирована с программой по обучению нейросети – Statistica Neural
Networks.
Обобщенная структура созданной СОА
представлена на рис. 1.
Обучение нейросети с помощью программы Statistica Neural Networks ведется на основе обучающей выборки, которая содержит для
каждого набора входных данных правильный
ответ (определенные выходные данные).
Модуль «источники данных» формирует вектор входных данных на основе работы
программы Snort и записей в журнале безопасности Windows. Входными данными для
первой нейросети, отвечающей за мониторинг
сетевых атак, является информация о сетевых
пакетах: время, IP адрес отправителя и получателя, вид протокола, время жизни, длина
заголовка, длина данных. Входными данными для второй нейросети, отвечающей за мониторинг системных событий, является информация о событиях: категория события, ID
события, дата, время, тип события.
Модуль набора статистики по сетевым
пакетам предназначен для создания обучающей
выборки, которая используется для создания
нейросети, осуществляющей анализ исходных
данных для мониторинга на сетевом уровне.
Пользовательский интерфейс
Модуль набора
статистики
по сетевым
пакетам
Модуль централизованного
мониторинга ИС
Нейросеть 1
Модуль набора
статистики
по системным
событиям
Вспомогательные модули
Нейросеть 2
Источники данных
Рис. 1. Обобщенная структура СОА
164
А.С. Кочеткова. Применение нейронных сетей для мониторинга безопасности
ФИЗИКО-МАТЕМАТИЧЕСКИЕ НАУКИ
Этот модуль выдает для анализа относительное число сетевых атак. Относительное число сетевых атак на основе протоколов TCP, UDP,
IP и ICMP за промежуток времени с 11.00 по
23.00 20.12 2006 г. приведено на рис. 2.
Так же этот модуль набирает обучающую
выборку для нейронной сети, предназначенной для мониторинга сетевых пакетов. Обученная сеть имеет семь входов, один выход и
имеют вид, представленный на рис. 3 слева.
Модуль набора статистики по системным
событиям позволяет проанализировать на графике динамику возникновения любых опасных событий, за любой промежуток времени.
График динамики возникновения опасного события с ID 529 (неправильное имя или пароль) за промежуток времени с 19.04 по 19.08
20.12 2006 г. приведен на рис. 4.
Этот модуль предназначен для обучения
второй нейросети, предназначенной для мониторинга системных событий. Нейросеть, построенная на основе обучающей выборки,
имеет пять входов и представлена на рис. 3
справа.
Модуль централизованного мониторинга ИС перехватывает сетевые пакеты в реальном времени и подает информацию о них
на вход первой нейросети. Нейросеть делает
вывод о наличие атаки на основе этой информации. Так же этот модуль в реальном
времени перехватывает системные события
и подает информацию о них на вход второй
нейросети, которая определяет степень опасности события.
Результаты работы СОА при мониторинге ИС представлены на рис. 5.
Рис. 2. Относительное число сетевых атак
Рис. 3. Нейросети, используемые в СОА
Вестник ВолГУ. Серия 9. Вып. 6. 2007
165
ФИЗИКО-МАТЕМАТИЧЕСКИЕ НАУКИ
Рис. 4. График динамики возникновения события с ID 529
Рис. 5. Результаты работы СОА
Темно-серым выделены пакеты или события, указывающие на атаку, светло-серым – неопасные пакеты и события. Колонка BAD содержит выход нейросети. Если выход превышает заданное пороговое значение,
то событие или пакет считается опасным.
166
Практика показывает, что применение
нейросетей в СОА позволяет повысить эффективность мониторинга за счет ее возможности обнаруживать атаки, сигнатура которых частично отличается от находящейся в
БД СОА.
А.С. Кочеткова. Применение нейронных сетей для мониторинга безопасности
Документ
Категория
Без категории
Просмотров
40
Размер файла
1 100 Кб
Теги
мониторинг, нейронные, информационные, безопасности, система, pdf, сетей, применению
1/--страниц
Пожаловаться на содержимое документа