ведінки. Перехід на крок 2.
Таким чином, запис профілю нормальної поведінки оформляється для кожного набору HTTP-параметрів. Іншими словами, записів в профілі нормальної поведінки для даного веб-додатки буде стільки ж, скільки дочірніх вершин глибини 2 у вершини глибини 1, відповідної цьому веб-додатком.
6.4.4 Підсистема виявлення аномалій
Завданням підсистеми виявлення аномалій є аналіз траси, отриманої в режимі виявлення аномалій, на предмет аномалій у поводженні веб-додатків. Під аномаліями розуміються як аномалії з погляду методу виявлення вразливостей (Підрозділ 4.4), так і додаткові види аномалій - про них буде розказано нижче.
Підсистема активізується при запуску модуля в режимі виявлення вразливостей. Після запуску підсистема виробляє завантаження профілів нормальної поведінки веб-додатків з бази даних профілів. При цьому у внутрішньому поданні формується дерево профілів нормальної поведінки (далі дерево профілів ), практично аналогічне дереву запитів. Різниця полягає в тому, що кожна вершина глибини 2 (тобто, кожен набір HTTP-параметрів) має тільки одну дочірню вершину глибини 3 (тобто, тільки один набір операцій) - і ця вершина містить безліч всіх допустимих операцій для даного набору HTTP-параметрів. Для кожної операції в дереві профілів зберігаються додаткові параметри, використовувані методом EWMA. Після завантаження профілів нормальної поведінки підсистема переходить в режим виявлення аномалій.
Підсистема отримує на вхід черговий запис траси у внутрішньому поданні, проаналізовану і перетворену предобработчіком траси.
Виявлення аномалій здійснюється за наступним алгоритмом:
Отримання чергового запису траси.
У дереві профілів шукається вершина глибини 1 із співпадаючим URL. Якщо така вершина є - перехід на крок 3, інакше на консоль управління подаються:
попередження про виявлену аномалії;
повідомлення: Для веб-додатки, якому адресований даний запит, відсутні профілі нормального поведінки; можливе звернення за неіснуючою адресою raquo ;;
дані, що містяться в записі траси.
Перевіряється, чи є серед дочірніх вершин глибини 2 даної вершини глибини 1 вершина з набором HTTP-параметрів, що збігається з набором HTTP-параметрів, витягнуті з записи траси. Якщо така вершина є - перехід на крок 4, інакше на консоль управління подаються:
попередження про виявлену аномалії;
повідомлення Для набору HTTP-параметрів, витягнутого з даного запису траси, відсутня профіль нормальної поведінки raquo ;;
дані, що містяться в записі траси.
Але так як основним завданням є виявлення вразливостей, необхідно провести перерахунок значень операцій, оскільки, можливо, набір HTTP-параметрів з надійшла записи траси не відповідає описаним якраз через наявність значень параметрів, що не відповідають очікуваному типу або значенням, і занесеним в HTTP-запит з метою впливу на вразливість. Перерахунок статистик операцій необхідно провести для всіх вершин глибини 3, дочірніх до вершин глибини 2 із співпадаючим набором HTTP-параметрів безвідносно типів або значень. Для кожної операції оновлене значення статистики перевіряється на предмет виходу за контрольні межі. При виході значення статистики за контрольні межі на консоль управління подаються:
попередження про аномалії;
повідомлення Виявлений вихід статистики значень операції за контрольні межі для неприпустимого набору HTTP-параметрів з уточненням операції, об'єкта оточення і значення операції;
дані, що містяться в записі траси.
Для кожної операції з набору операцій над об'єктами оточення, витягнутого із запису траси, перевіряється її наявність в наборі допустимих операцій в дочірній вершині глибини 3. Для кожної операції, що не входить в безліч допустимих операцій, на консоль управління подаються:
попередження про аномалії;
повідомлення Для набору HTTP-параметрів, витягнутого з даного запису траси, виявлена ??неприпустима операція з уточненням операції та об'єкта оточення;
дані, що містяться в записі траси.
Для кожної операції, що входить в набір допустимих операцій, оновлюється значення статистики за формулою (5.2.1), параметри для якої беруться з дерева профілів (тобто, з відповідного запису профілю нормального поведінки). Оновлене значення статистики перевіряється на предмет виходу за контрольні межі. При виході значення статистики за контрольні межі на консоль управління подаються:
попере...