Подсистема построения профиля нормального поведения - Автоматическое построение профилей нормального поведения веб-приложений
Задачей подсистемы построения профиля нормального поведения является анализ трассы, полученной в режиме обучения, и построение на ее основе профилей нормального поведения для веб-приложений, данные о запросах к которым содержатся в записях трассы.
Подсистема активизируется при запуске модуля в режиме построения профиля нормального поведения.
Подсистема получает на вход очередную запись трассы во внутреннем представлении, проанализированную и преобразованную предобработчиком трассы.
На основании поступающих записей трассы строится дерево запросов, в котором семантически вершины глубины 1 соответствуют веб-приложениям, вершины глубины 2 - наборам HTTP-параметров, а вершины глубины 3 - наборам операций. Как было отмечено выше, веб-приложения различаются по URL-адресу.
На рисунке 6.4.1 показано добавление данных записи трассы в дерево запросов.
Рисунок 6.4.1 Добавление данных записи трассы в дерево запросов
Дерево строится по следующему алгоритму:
- 1. Если на входе есть очередная запись трассы - переход на шаг 2, иначе останов. 2. Из записи извлекается URL-адрес, которому адресован запрос. 3. Проверяется, есть ли уже в дереве вершина глубины 1 с таким же URL-адресом. Если такой вершины нет (рисунок 6.4.2), то: 3.1. заводится вершина глубины 1 с данным URL; 3.2. созданной вершине глубины 1 добавляется дочерняя вершина глубины 2 с набором HTTP-параметров, извлеченным из записи трассы; 3.3. созданной вершине глубины 2 с набором HTTP-параметров добавляется дочерняя вершина с набором операций, извлеченным из записи трассы; 3.4. переход на шаг 1.
Иначе:
- 3.5 проверяется, есть ли среди дочерних вершин глубины 2 данной вершины глубины 1 вершина с набором HTTP-параметров, совпадающим с набором HTTP-параметров, извлеченным из записи трассы. Если такая вершина глубины 2 есть (рисунок 6.4.4), то: 3.5.1 найденной вершине глубины 2 добавляется дочерняя вершина глубины 3 с набором операций, извлеченным из записи трассы; 3.5.2 переход на шаг 1 алгоритма.
Иначе (рисунок 6.4.3):
- 3.5.3 создается вершина глубины 2 с набором HTTP-параметров, извлеченным из записи трассы; 3.5.4 созданной вершине глубины 2 добавляется дочерняя вершина глубины 3 с набором операций, извлеченным из записи трассы; 3.5.5 переход на шаг 1 алгоритма.
Построение дерева завершается в тот момент, когда обработана последняя запись трассы.
Рисунок 6.4.2 иллюстрирует ситуацию добавления данных записи трассы в дерево запросов в случае, когда нет соответствующей вершины глубины 1. Рисунок 6.4.3 иллюстрирует ситуацию добавления данных записи трассы в дерево запросов в случае, когда есть соответствующая вершина глубины 1, но нет соответствующей вершины глубины 2. Рисунок 6.4.4 иллюстрирует ситуацию добавления данных записи трассы в дерево запросов в случае, когда есть соответствующая вершина глубины 1 и есть соответствующая вершина глубины 2.
Рисунок 6.4.2 Добавление данных записи трассы в дерево запросов в случае, когда нет вершины глубины 1 с аналогичным URL
Рисунок 6.4.3 Добавление данных записи трассы в дерево запросов в случае, когда есть вершины глубины 1 с аналогичным URL, но нет вершины глубины 2 с совпадающим набором HTTP-параметров
Рисунок 6.4.4 Добавление данных записи трассы в дерево запросов в случае, когда есть вершина глубины 1 с аналогичным URL и есть вершина глубины 2 с совпадающим набором HTTP-параметров
Далее запускается алгоритм построения профилей нормального поведения на основе сформированного дерева. Алгоритм устроен следующим образом:
- 1. Выбирается очередная вершина глубины 1 (то есть, очередное веб-приложение). Если вершина есть - переход на шаг 2, иначе - останов. 2. Выбирается очередная дочерняя вершина глубины 2 (первая, если произошел переход с шага 1). Если вершина есть - переход на шаг 3, иначе - переход на шаг 1. 3. Выбирается очередная дочерняя вершина глубины 3. Если вершины нет - переход на шаг 4, иначе: 3.1 выбирается очередная операция из набора операций, содержащегося в данной вершине. Если операции нет - переход на шаг 3. Значение каждой операции считается очередным значением для расчета статистики по формуле (5.2.1). Для каждой операции каждого объекта окружения ведется своя статистика. 4. Обход текущей ветки ("веб-приложение - набор параметров - множество операций") завершен. Для текущего веб-приложения (текущая вершина глубины 1) и текущего набора HTTP-параметров (вершина глубины 2) определено множество допустимых операций (объединение наборов операций из всех дочерних вершин глубины 3), для каждой из которых просчитана статистика по формуле (5.2.1) метода EWMA, и определены контрольные пределы. Полученные данные оформляются в виде записи профиля нормального приложения для текущего веб-приложения и сохраняются в базу профилей нормального поведения. Переход на шаг 2.
Таким образом, запись профиля нормального поведения оформляется для каждого набора HTTP-параметров. Иными словами, записей в профиле нормального поведения для данного веб-приложения будет столько же, сколько дочерних вершин глубины 2 у вершины глубины 1, соответствующей этому веб-приложению.
Похожие статьи
-
Задачей подсистемы обнаружения аномалий является анализ трассы, полученной в режиме обнаружения аномалий, на предмет аномалий в поведении веб-приложений....
-
В данном разделе описывается разработанный модуль обнаружения уязвимостей. Сначала формулируются требования к модулю. Далее описывается структура профиля...
-
Описание метода - Автоматическое построение профилей нормального поведения веб-приложений
В основе метода лежит идея анализа связей между наборами параметров, поступающих в веб-приложение через HTTP-запросы, и операциями над объектами...
-
В данном подразделе описывается программная архитектура разработанного модуля обнаружения уязвимостей. Модуль состоит из следующих основных подсистем: -...
-
В основе метода EWMA лежит экспоненциальное сглаживание первого порядка [20, 21]: (5.2.1) Где 0<л?1 - константа сглаживания. В роли начального...
-
В данном разделе приводятся описания четырех математических методов обнаружения аномалий. Далее проводится сравнительный анализ и выбирается один метод....
-
В данном подразделе приводятся описания основных подсистем модуля обнаружения уязвимостей. Консоль управления Задачами консоли управления являются...
-
В данном разделе описывается предлагаемый метод обнаружения уязвимостей веб-приложений на основе контроля поведения веб-приложения. Применение метода Как...
-
Необходимо дополнительно рассмотреть вопрос о сравнении наборов HTTP-параметров. Параметры могут быть переданы в веб-приложение методами GET и POST [22,...
-
Исходя из контекста решаемой задачи, для сравнительного анализа рассмотренных математических моделей обнаружения аномалий можно выбрать следующие...
-
Метод цепей Маркова - Автоматическое построение профилей нормального поведения веб-приложений
Определение [26]: Маркова цепь - марковский процесс с дискретным временем, заданный в измеримом пространстве. Стохастический процесс в дискретные моменты...
-
Таким образом, с точки зрения описываемого метода, возможны два класса аномалий: - Аномалии, связанные с обнаружением недопустимых операций. - Аномалии,...
-
Результаты, Заключение - Автоматическое построение профилей нормального поведения веб-приложений
В результате данной работы: - сформулированы основные понятия; - описан предлагаемый метод обнаружения уязвимостей и обоснована идея использования...
-
Проблема работы - Автоматическое построение профилей нормального поведения веб-приложений
В настоящий момент продолжается бурный рост количества компьютерных информационных систем в мире. Все большее количество важных данных и операций в...
-
Нейросетевой метод - Автоматическое построение профилей нормального поведения веб-приложений
Нейросетевой метод обнаружения аномалий рассматривается на примере экспериментальной системы обнаружения аномалий NNID (Neural Network Intrusion...
-
Описанный метод, по сути, анализирует поведение веб-приложения на предмет совершения недопустимых относительно профиля нормального поведения операций....
-
Секция содержит информацию об операциях из набора допустимых операций над объектами окружения, определенного для набора HTTP-параметров, которому...
-
Секция мета-информации содержит набор основных и вспомогательных данных профиля нормального поведения. Основными полями являются: - WAProfile_URL -...
-
1. Провести обзор методов автоматического построения профиля нормального поведения веб-приложения. 2. Сформулировать требования к методу, провести...
-
Ниже приводится пример одной записи профиля нормального поведения. Запись определяет две допустимые операции ("SELECT" и "INSERT") к одному объекту...
-
Литература - Автоматическое построение профилей нормального поведения веб-приложений
1. Kruegel C., Giovanny V. Anomaly Detection of Web-based Attacks // In Proceedings of the 10th ACM Conference on Computer and Communication Security...
-
Для разделения действительной и мнимой частей передаточной функции умножим числитель и знаменатель передаточной функции на комплексно сопряженное число...
-
Отчет по выполненному заданию - Разработка учебной подсистемы учета кадров
В информационной среде одним из наиболее трудоемких, важных и ответственных этапов функционирования является формирование входных массивов на основании...
-
Роль ключевых предложений в построении текста В первую очередь введем несколько базовых понятий рассматриваемой предметной области: текст, сложное...
-
Понятие автоматического реферирования текста - Роль ключевых предложений в построении текста
Реферирование является одним из основных способов анализа текстовой информации. Его конечным продуктом является реферат - "краткое изложение содержания...
-
Обзор классического подхода Приведем теорему для формирования линейного закона управления с обратной связью в пространстве состояний [3]: Дан объект,...
-
Предлагаемая библиотека хранит все данные в отдельных таблицах, таким образом он не обязан использовать ту же СУБД, что и основное приложение. В качестве...
-
Целостность, Миграция - Программа расчета агрегатов по накапливающимся данным для построения отчетов
Еще одна возможная проблема -- целостность данных. Если приложение не уведомит Библиотеку об изменении данных, то ошибка останется в агрегате навсегда....
-
Удивительно, но StatMetric дает выигрыш в производительности даже на малых масштабах, в любом случае возвращая результат быстрее, нежели обычный запрос....
-
3. Построение графиков функций - Основы информатики
3.1 Построить в разных системах координат при х Є [-3.2; -1] графики следующих функций: G = , z = , y = . Решение: Для того, чтобы построить график...
-
Технологический цикл построения открытых систем - Принципы построения открытых графических систем
Технологический цикл построения открытых систем представлен следующими стадиями: На первой стадии определяются цели деятельности системы, то есть область...
-
Технология открытых систем Основные требования, предъявляемые к информационной инфраструктуре, состоят в обеспечении необходимой функциональности,...
-
Построение дерева - Деревья решений
Пусть нам задано некоторое множество T, содержащее объекты, каждый из которых характеризуется m атрибутами, причем один из них указывает на...
-
Архитектура построения баз данных - Разработка базы данных
СУБД имеют свою архитектуру. В процессе разработки и совершенствования СУБД предлагались различные архитектуры, но самой удачной оказалась трехуровневая...
-
В данном разделе выпускной квалификационной работы описывается процесс разработки программы извлечения КП текста, а также производится оценка качества ее...
-
Постановка задачи: Для заданных функций необходимо: 1. Построить электронную таблицу (одну для обеих функций) для вычисления значений функций в заданном...
-
Корпоративная интеграционная подсистема на базе IBM WebSphere Business Integration Message Broker [28] отвечает за выстраивание корпоративной...
-
Датчики выбираются согласно техническому заданию и следующим критериям: - наличие унифицированных выходных сигналов 4-20мА - доступная цена - компактные...
-
Конфигурация "Управление производственным предприятием" является современной многооконной системой. Каждое из ее окон (многие из которых -- диалоговые...
-
UML - унифицированный язык моделирования, призванный упростить построение больших информационных систем. Состоит из диаграмм, связей и сущностей....
Подсистема построения профиля нормального поведения - Автоматическое построение профилей нормального поведения веб-приложений