натури атак, створені для однієї програми, практично непридатними для іншого [3].
Методи виявлення аномалій використовують визначений наперед профіль нормальної поведінки системи і аналізують поточний поведінку системи на предмет відхилення від профілю. Методи даної групи добре справляються з виявленням нових або невідомих атак. Ця особливість робить їх кращими для реалізації в СОА та інших засобах забезпечення безпеки для веб-додатків [1, 7].
Було запропоновано ряд рішень для забезпечення безпеки веб-додатків, що використовують методи виявлення аномалій. Серед них можна виділити наступні перспективні напрями.
Логічне рішення про включення підсистеми виявлення аномалій в сам веб-сервер добре тим, що дозволяє аналізувати запит на різних стадіях його обробки. Мінусом є істотне зниження продуктивності веб-сервера, що неприйнятно для серверів з високим навантаженням. Крім того, не кожен веб-сервер дозволяє включати додаткові модулі [2].
Виявлення аномалій може бути використано при обробці параметрів, що надходять у веб-додаток. Наприклад, деяка характеристика (статистичний розподіл символів, довжина рядка тощо) у значеннях параметрів, що витягають із журналів аудиту веб-сервера, обробляється математичною моделлю і виявлене відхилення перевіряється щодо деякого порогового значення [2]. Рішення такого роду призначені для виявлення аномалій в вступників даних, так як логічно припустити, що зловмисник буде відсилати веб-додатком нестандартні дані. Але при цьому аналізуються надходять параметри, але не поведінка самого веб-додатки.
Іншим підходом є виявлення аномалій у зверненнях веб-додатків до об'єктів оточення (операційна система, СУБД і т.п.). Наприклад, для веб-додатки будуються профілі, що містять типову синтаксичну структуру запитів до БД, і наступні запити перевіряються на відповідність профілям [3]. Рішення такого роду хороші тим, що в певному сенсі вони аналізують поведінку самого додатка. Але такі методи фокусуються на взаємодії додатка з конкретними видами об'єктів оточення (наприклад, СУБД) і не враховують взаємодію з іншими об'єктами, а уразливість в веб-додатку, зазвичай обращающемуся до одного ресурсу, може призвести до несанкціонованого доступу саме до інших ресурсів. Наприклад, якщо деякий модуль веб-додатки в процесі роботи виробляє тільки системні виклики операційної системи для роботи з файлами, але при цьому містить уразливість, що дозволяє зловмисникові запускати довільний код, то результатом може стати модифікація таблиці бази даних, яка містить паролі користувачів, з метою отримання доступу - тобто звернення до іншого ресурсу і псування інформації. Комплексне рішення, анализирующее звернення веб-додатки до різних об'єктів оточення є досить складним технічним завданням, оскільки постає питання про отримання необхідної для аналізу інформації про звернення, що, наприклад, може зажадати модифікацію програмних компонент об'єктів [3].
У рамках курсової роботи за 4-й курс був запропонований метод виявлення вразливостей веб-додатків на основі контролю поведінки. Метод припускає використання профілів нормальної поведінки для окремих компонент веб-додатки. Профіль визначає, до яких операцій якого об'єкта оточення допустимо звернення компоненти при даному наборі параметрів, отриманих із запиту.
Метод був реалізований у вигляді модуля до СОА Моніторинг-РВС raquo ;. Як було відзначено, аналіз звернень до різних об'єктів оточення є складним технічним завданням, а для успішної реалізації СОА повинна надавати необхідний інструментарій. Розвинена інфраструктура СОА Моніторинг-РВС дозволяє вирішувати поставлену задачу [9].
Розроблений модуль використовував заздалегідь певні профілі нормальної поведінки. Передбачалося, що логіка поведінки веб-додатки апріорі відома, і можна визначити профілі вручну. Але в реальності поведінку веб-додатки відомо тільки його розробнику, а вивчення вихідних кодів (якщо вони взагалі доступні) стороннім фахівцем, який може задатися метою побудови профілю, являє собою трудомістку задачу. Тому доцільним видається додавання в розроблений модуль функції автоматичного побудови профілю нормальної поведінки.
Для цього необхідно розглянути існуючі методи автоматичної побудови профілів нормальної поведінки, визначити критерії порівняння методів і вибрати оптимальний для подальшої реалізації. Модуль здійснює виявлення вразливостей шляхом виявлення звернень до тих ресурсів, які не вказані в профілі нормальної поведінки, у відповідь на HTTP-запити. Однак аномалії в поведінці можуть бути пов'язані і з характером звернення до дозволеної профілем ресурсу, наприклад, вразливість може дозволити зловмиснику вибрати не один рядок з БД, а все. В основі методу автоматичної побудови профілю нормального поведінки лежить деяка математична модель, ...