Обучение с помощью нейросетей

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

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

· даже если решения адекватны, время на тренировку при больших множествах примеров неприемлемо велико;

· нейросети не позволяют увидеть логику принятия решения;

· нейросети требуют четкой настройки топологии и параметров сети, что во многом является «искусством»;

· в проведенных исследованиях анализ базировался только на заголовках сетевых пакетов, что не позволяет обнаружить большое количество атак.

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

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

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

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

Многие положения, рассмотренные для нейросетей справедливы для генетических алгоритмов.

Выводы.

В данной главе проведен обзорный анализ существующих методов анализа безопасности ПО. На основании обзора можно сделать следующие выводы.

1. Средства статического анализа безопасности программного обеспечения, обладая своими неоспоримыми достоинствами, часто не позволяют провести адекватный анализ безопасности программного обеспечения.

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

3. Сигнатурный метод имеет следующие преимущества:

· количество и тип событий которые необходимо контролировать ограничены данными, определенными в сигнатурах;

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

4. К недостаткам сигнатурного анализа можно отнести:

· зависимость масштабируемости и производительности от размера базы данных сигнатур;

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

· обновление базы данных сигнатур требуется при обнаружении нового типа атак, период обновления базы должен быть невелик;

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

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

5. К преимуществам статистических методов относится:

· использование для обнаружения атак классических статистических методов с хорошо развитой теорией;

· множество контролируемых переменных не требует большого объема памяти при хранении;

· статистические методы могут использовать время как параметр при анализе;

· легко обнаруживаемо простое отклонение в поведении пользователей;

6. К недостаткам статистических методов относится:

· трудно сформулировать нормальное понятие нормального поведения для многих пользователей системы;

· трудно сформулировать статистические критерии нормального поведения для многих пользователей системы;

· один и тот же пользователь может вести себя различно (входить в систему в разное время, выполнять широкий спектр различных работ и т.д.);

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

· порядок событий не влияет на анализ;

7. Использование традиционных методов обучения при построении СОН не лишено недостатков.

Наши рекомендации