Постановка задачи, Определения и основные понятия - Автоматическое построение профилей нормального поведения веб-приложений
- 1. Провести обзор методов автоматического построения профиля нормального поведения веб-приложения. 2. Сформулировать требования к методу, провести сравнительный анализ и выбрать один метод. 3. Реализовать выбранный метод в рамках разрабатываемого модуля. 4. Провести испытания на действующих веб-приложениях.
Определения и основные понятия
В данном разделе определяются основные понятия и термины, используемые в данной работе.
Ключевыми понятиями являются веб-приложение и поведение веб-приложения.
Под веб-приложением понимается приложение, с которым пользователь взаимодействует при помощи браузера. Само приложение при этом работает в составе веб-сервера и осуществляет взаимодействие с пользователем путем получения HTTP-запросов от браузера пользователя (ввод) и генерации веб-страниц (вывод) [17].
Объект окружения - это любая внешняя по отношению к веб-приложению сущность, предоставляющая набор операций, которые могут быть осуществлены веб-приложением над данным объектом окружения. В качестве примеров объектов окружения могут быть приведены ресурсы операционной системы, почтовый сервис, СУБД.
Операция - любое действие, которое может быть осуществлено над объектом окружения веб-приложением. Например, для объекта окружения "СУБД" операциями являются операторы языка SQL, для объекта окружения "почтовый сервис" - функции отправки сообщений.
Значение операции - это отображение результатов операции во множество вещественных чисел. Семантика отображения определяется для каждой конкретной операции. Например, для операций "SELECT" или "INSERT" объекта окружения "СУБД" значением данных операций может являться количество затронутых строк в базе данных; для операций "чтение из файла" или "запись в файл" объекта окружения "ресурсы операционной системы" значением операции может являться количество прочитанных или записанных байт соответственно. Очевидно, не для каждой операции значение операции может быть иметь смысл. Например, для операции "выбор базы данных" объекта окружения "СУБД". В этом случае в качестве значения операции может быть выбрана некоторая константа.
Логическая схема веб-сервера представлена на рисунке 3.1.
Рисунок 3.1 Логическая схема веб-сервера
В схеме, изображенной на рисунке 3.1:
- - Веб-сервер - приложение, выполняющее функции веб-сервера, например, Apache HTTP Server или Microsoft Internet Information Services (IIS). - Технология поддержки веб-приложения - набор программных компонент, формирующих среду для выполнения веб-приложений, созданных при помощи данной технологии. В качестве примера можно привести такие распространенные технологии, как PHP и ASP. NET. - Веб-приложение - приложение, созданное при помощи некоторой технологии создания веб-приложений, несущее в себе логику, заложенную разработчиком. Например, для технологии поддержки веб-приложений PHP веб-приложение может представлять собой набор файлов, содержащих сценарии на языке PHP.
В общем случае, взаимодействие пользователя с веб-приложением происходит по следующей схеме [17, 22]:
- 1. В браузере пользователя происходит некоторое событие, порождающее HTTP-запрос к веб-приложению - таковым может являться переход по ссылке, нажатие на кнопку отправки данных формы на сервер, срабатывание скрипта на стороне клиента и т. п. 2. Порожденный HTTP-запрос принимается и обрабатывается веб-сервером. Определяется, какому веб-приложению адресован запрос и какие компоненты отвечают за выполнение веб-приложения. Происходит запуск необходимых компонент и передача данных HTTP-запроса. 3. В сформированной запущенными компонентами рабочей среде производится запуск веб-приложения. 4. В ходе обработки данных, полученных из HTTP-запроса, веб-приложение совершает определенные действия в рамках логики, заложенной разработчиком. Часть этих действий, возможно, представляет собой запросы на выполнение операций к объектам окружения. 5. Веб-приложение генерирует вывод, который передается компонентами технологии поддержки веб-приложения веб-серверу. Веб-сервер отправляет вывод клиенту в виде HTTP-ответа.
Основываясь на данной схеме и терминах, введенных выше, можно определить поведение веб-приложения как взаимодействие веб-приложения с объектами окружения в ответ на HTTP-запросы от браузера пользователя.
Под уязвимостью будет пониматься тот или иной недостаток в программной системе, из-за которого становится возможным нежелательное воздействие на нее злоумышленников или вирусов. В частности, уязвимость может позволить злоумышленнику заставить веб-приложение выполнить одну или несколько операций над объектами окружения, не предусмотренные логикой, заложенной разработчиком.
Похожие статьи
-
Описанный метод, по сути, анализирует поведение веб-приложения на предмет совершения недопустимых относительно профиля нормального поведения операций....
-
Исходя из контекста решаемой задачи, для сравнительного анализа рассмотренных математических моделей обнаружения аномалий можно выбрать следующие...
-
Необходимо дополнительно рассмотреть вопрос о сравнении наборов HTTP-параметров. Параметры могут быть переданы в веб-приложение методами GET и POST [22,...
-
В данном разделе описывается предлагаемый метод обнаружения уязвимостей веб-приложений на основе контроля поведения веб-приложения. Применение метода Как...
-
Таким образом, с точки зрения описываемого метода, возможны два класса аномалий: - Аномалии, связанные с обнаружением недопустимых операций. - Аномалии,...
-
Секция содержит информацию об операциях из набора допустимых операций над объектами окружения, определенного для набора HTTP-параметров, которому...
-
В данном разделе описывается разработанный модуль обнаружения уязвимостей. Сначала формулируются требования к модулю. Далее описывается структура профиля...
-
Проблема работы - Автоматическое построение профилей нормального поведения веб-приложений
В настоящий момент продолжается бурный рост количества компьютерных информационных систем в мире. Все большее количество важных данных и операций в...
-
Результаты, Заключение - Автоматическое построение профилей нормального поведения веб-приложений
В результате данной работы: - сформулированы основные понятия; - описан предлагаемый метод обнаружения уязвимостей и обоснована идея использования...
-
В данном подразделе приводятся описания основных подсистем модуля обнаружения уязвимостей. Консоль управления Задачами консоли управления являются...
-
Нейросетевой метод - Автоматическое построение профилей нормального поведения веб-приложений
Нейросетевой метод обнаружения аномалий рассматривается на примере экспериментальной системы обнаружения аномалий NNID (Neural Network Intrusion...
-
Описание метода - Автоматическое построение профилей нормального поведения веб-приложений
В основе метода лежит идея анализа связей между наборами параметров, поступающих в веб-приложение через HTTP-запросы, и операциями над объектами...
-
Секция мета-информации содержит набор основных и вспомогательных данных профиля нормального поведения. Основными полями являются: - WAProfile_URL -...
-
Задачей подсистемы обнаружения аномалий является анализ трассы, полученной в режиме обнаружения аномалий, на предмет аномалий в поведении веб-приложений....
-
В основе метода EWMA лежит экспоненциальное сглаживание первого порядка [20, 21]: (5.2.1) Где 0<л?1 - константа сглаживания. В роли начального...
-
Задачей подсистемы построения профиля нормального поведения является анализ трассы, полученной в режиме обучения, и построение на ее основе профилей...
-
В данном разделе приводятся описания четырех математических методов обнаружения аномалий. Далее проводится сравнительный анализ и выбирается один метод....
-
В данном подразделе описывается программная архитектура разработанного модуля обнаружения уязвимостей. Модуль состоит из следующих основных подсистем: -...
-
Метод цепей Маркова - Автоматическое построение профилей нормального поведения веб-приложений
Определение [26]: Маркова цепь - марковский процесс с дискретным временем, заданный в измеримом пространстве. Стохастический процесс в дискретные моменты...
-
Литература - Автоматическое построение профилей нормального поведения веб-приложений
1. Kruegel C., Giovanny V. Anomaly Detection of Web-based Attacks // In Proceedings of the 10th ACM Conference on Computer and Communication Security...
-
Ниже приводится пример одной записи профиля нормального поведения. Запись определяет две допустимые операции ("SELECT" и "INSERT") к одному объекту...
-
Определение методов реинжиниринга информационных систем Основные задачи, которые стоят перед проектировщиком, занимающимся реинжинирингом информационных...
-
Основные понятия баз данных. Цели использования баз данных - Разработка базы данных
В широком смысле слова база данных (БД) - это совокупность сведений о конкретных объектах реального мира в какой-либо предметной области. Для удобной...
-
Основные компоненты - История создания и развития автоматизированных информационных систем
Основными компонентами информационной технологии, используемой в экспертной системе, являются (рис. 3.2.2): интерфейс пользователя, база знаний,...
-
Основные компоненты и структура приложения Прежде чем приступить к установке и настройке среды программирования, построению технического задания и...
-
Основные понятия - Основы HyperText Markup Language
HTML (HyperText Markup Language) - язык разметки гипертекста - предназначен для создания Web-страниц. Под гипертекстом в этом случае понимается текст,...
-
Построение аналитической модели АОУ затруднено из-за отсутствия или недостатка априорной информации об объекте управления, а также из-за ограниченности и...
-
В качестве доступного инструментария были рассмотрены две открытые кроссплатформенные библиотеки для разработки C++ приложений WxWidgets и Boost ,...
-
Определение документооборота Для начала разберемся, что же означает термин "система электронного документооборота", что включается это понятие и в чем...
-
Построение модели сердца, Постановка задачи, Создание нового проекта - Построение модели сердца
Постановка задачи Мы рассмотрим простейшую математическую модель, описывающую процессы, похожие на биение сердца. Эта модель описана двумя...
-
Теоретические предпосылки исследования Системы поддержки принятия решений Системы поддержки принятия решений (СППР), представляют собой приложения узкого...
-
Определение и типология банков данных - Банки и базы данных. Системы управления базами данных
В основе решения практически любой задачи лежит обработка определенной информации. Система обработки информации, в том числе и автоматизированная с...
-
Понятие о массивах В ранжированных переменных невозможно использование их отдельных значений. При необходимости иметь доступ к каждому значению...
-
Концептуализации - Экспертные системы, методика построения
На данном этапе проводится содержательный анализ проблемной области, выявляются используемые понятия и их взаимосвязи, определяются методы решения задач....
-
Понятие модели нарушителя. Типы моделей - Угрозы информационным ресурсам
Угроза безопасности - потенциальное нарушение безопасности, любое обстоятельство или событие, которое может явиться причиной нанесения ущерба...
-
Основные принципы Первая и главная идея, лежащая в основе объектно-ориентированного подхода такова: программная система представляется в виде множества...
-
Основные термины теории баз данных - БД (База данных) - совокупность специальным образом организованных данных, хранимых в памяти вычислительной системы...
-
Базовые понятия информации - Компьютерные и сетевые технологии
Информация компьютер математический сеть Мы начинаем первое знакомство с величайшим достижением нашей цивилизации, стоящем в одном ряду с изобретением...
-
Архитектура построения баз данных - Разработка базы данных
СУБД имеют свою архитектуру. В процессе разработки и совершенствования СУБД предлагались различные архитектуры, но самой удачной оказалась трехуровневая...
-
"Базы данных и СУБД", Понятие банка данных, базы данных и СУБД - Базы данных и СУБД
Понятие банка данных, базы данных и СУБД Существует множество различных систем управления базами данных, именуемые в последующем "СУБД", такие как: IMS,...
Постановка задачи, Определения и основные понятия - Автоматическое построение профилей нормального поведения веб-приложений