230 likes | 402 Views
Разработка анализатора системы обнаружения атак, основанного на методах кластерного анализа. Студент 522 гр. Наградов Е.А. Научные руководители: д.ф.-м.н., проф. Смелянский Р.Л. Качалин А.И. Постановка задачи.
E N D
Разработка анализатора системы обнаружения атак, основанного на методах кластерного анализа Студент 522 гр. Наградов Е.А. Научные руководители: д.ф.-м.н., проф. Смелянский Р.Л. Качалин А.И.
Постановка задачи • Разработать и исследовать эффективности метода обнаружения атак на основе алгоритмов кластерного анализа, обладающего следующими свойствами: • обучение без использования примеров атак • обнаружение атак в режиме реального времени • Декомпозиция задачи • Исследовать эффективность применения различных методов кластерного анализа для решения задачи обнаружения атак • Разработать метод обнаружения атак, основанный на алгоритмах кластерного анализа • Реализовать анализатор системы обнаружения атак • Провести исследование эффективности реализованного анализатора по критериям точности и временной сложности
Модель предметной области • Наблюдаемая система • взаимодействующие ресурсы • наблюдатели, собирающие информацию об активности ресурсов (состояние ресурса) • Состояние системы – совокупность состояний ресурсов системы • Состояния системы • нормальное – состояниесистемы в процессе штатного функционирования • аномальное • Атака – воздействие на систему, которое переводит систему из нормального состояния в аномальное
Схема функционирования Наблюдаемая система анализируемые состояния этап обнаружения определение принадлежности к совокупности кластеров Cl {xi}NormS атака/не атака обучающая выборка совокупность кластеров Cl этап обучения построение модели нормального поведения системы как совокупности кластеров нормальных состояний системы Cl = {pi}, pi = ( ci, ri, ni ), i = 1..M
Исследование применимости методовкластерного анализа • Рассмотренные методы: • методы минимизации квадратичной ошибки • неинкрементальные (batch k-means, online k-means) • инкрементальные (incremental k-means, BIRCH) • иерархические методы (complete linkage, single linkage, PNN) • методы построения минимального покрывающего дерева • нечеткие методы (Fuzzy c-means, EM for GMM) • Критерии применимости: • временная сложность (обученияи обнаружения атак) • точность (обучения и обнаружения атак)
Схема функционирования обучающая выборка анализируемые состояния построение модели нормального поведения BIRCH определение количества кластеров и начального расположения кластеров шаг 1: анализ отклонений, k-NN определение принадлежности к совокупности кластеров Cl Cl1 = {pi} complete-linkage объединение кластеров шаг 2: Cl2 = {pi}, i = 1..M batch k-means повышение точности кластеризации шаг 3: Cl3 = {pi}, i = 1..M, MSE3<MSE2 модель нормального поведения Cl pi = ( ci, ri, ni )
Исследование эффективности • Тестирование на данных KDD • цели тестирования • оценка точности обнаружения атак и числа ложных срабатываний • проверка возможности обучения на обучающей выборке, содержащей шум
Тестирование при обучении на выборкебез шума
Тестирование при обучении на выборке с добавлением шума
Исследование эффективности • Тестирование в составе системы REDSecure • цели тестирования • проверка возможности обнаружения атак в режиме реального времени • оценка точности обнаружения атак в составе реальной СОА
Тестирование в составе системы REDSecure • требуемое максимальное время анализа состояния системы – 1 мс • соответствующее число кластеров модели нормального поведения – 800
Тестирование в составе системы REDSecure
Полученные результаты • Выполнено исследование эффективности применения методов кластерного анализа для решения задачи обнаружения атак • Разработан метод обнаружения атак, основанный на алгоритмах кластерного анализа • Реализован анализатор на основании разработанного метода (~11000 строк кода С++), выполнена интеграция анализатора в СОА REDSecure • Проведено исследование эффективности реализованного анализатора на данных KDD и в составе СОА REDSecure
Сравнение с другими алгоритмами обнаружения атак (KDD) разработанный анализатор Fuzzy Single-class SVM
Сравнение с другими алгоритмами обнаружения атак (KDD Э2)
Задача обнаружения атак • Задана обучающая выборка: • NS = {xi | xiNormS }, где NormSST – множество нормальных состояний системы S • Требуется построить отображениеfS: ST→{0, 1} такое, что: • fS(st)=0 если st NormS • fS(st)=1 если stST \ NormS • Ограничение режима реального времени – вычисление fS(st) должно удовлетворять директивному сроку Tmax
Этап обучения • Задана обучающая выборка • NS = {xi | xiNormS }, где NormSST – множество нормальных состояний системы S • Требуется построить множество кластеров Cl(NS) = {p1, .., pk } – модель нормального поведения • Ограничение на количество кластеров • |Cl(NS)| ≤ M
Этап обнаружения • Задано: • модель нормального поведения Cl(NS) • анализируемые вектора {xi}, xiST • Для каждого xi требуется вычислитьfS(xi) с помощью Cl(NS) • Ограничение режима реального времени • вычисление fS(xi)должно удовлетворять директивному сроку Tmax
Общая схема анализатора • Этап обучения • Входные данные • обучающая выборка NS = {xi | xiNormS}, где NormSST • Требуется • построить множество кластеров Cl(NS) = {p1, .., pk} • количество кластеров |Cl(NS)| < M • Этап обнаружения • Входные данные • модель нормального поведения Cl(NS) • анализируемые вектора {xi}, xiST • Требуется • для каждого xi вычислить fS(xi) с помощью Cl(NS) • вычисление fS(xi) должно удовлетворять директивному сроку Tmax
модификации k-NN pi={Si, S2,i, Ni}
Актуальность задачи • Сигнатурные СОА: • проблемы выделения сигнатур и обеспечения «защиты нулевого дня» • проблемы одновременного использования большого числа сигнатур • Статистические СОА: • для обучения нейросетевых СОА требуются примеры атак • СОА, основанные на иммунных методах, обладают высокой временной сложностью, не позволяющей выполнять обнаружение атак в режиме реального времени • Применение методов КА: • для обучения не требуются примеры атак • возможность обучения при наличии шума в обучающей выборке • возможность обнаружения атак в режиме реального времени