Полная версия

Главная arrow Информатика arrow Автоматическое построение профилей нормального поведения веб-приложений

  • Увеличить шрифт
  • Уменьшить шрифт


<<   СОДЕРЖАНИЕ   >>

Описание подсистем модул

В данном подразделе приводятся описания основных подсистем модуля обнаружения уязвимостей.

Консоль управления

Задачами консоли управления являются настройка, запуск и координация остальных подсистем модуля.

При запуске консоль управления считывает файл с настройками модуля. Далее настройки передаются запускаемым подсистемам.

Подсистема предварительной обработки трассы

Задачей подсистемы предварительной обработки трассы (далее - «предобработчик трассы») является анализ и преобразование записей трассы к внутреннему представлению для дальнейшего анализа подсистемами построения профиля нормального поведения и обнаружения аномалий.

Основными задачами предобработчика трассы являются:

  • · анализ значений POST-параметров и их замена на типы;
  • · суммирование значений для одинаковых операций в записи трассы.

Как было сказано в Подразделе 4.5, при сравнении GET-параметров сопоставляются значения параметров, а при сравнении POST-параметров - их типы. Определение типов POST-параметров является непосредственной задачей предобработчика трассы.

В качестве типов используются символьные классы регулярных выражений стандарта POSIX [24]. Для определения типа используется соответствующее регулярное выражение.

Как было отмечено в Подразделе 6.2.2, в ряде случаев нужно обрабатывать отдельные GET-параметры как POST-параметры, и наоборот. То есть - заменять значение отдельных GET-параметров на их типы и не заменять значение отдельных POST-параметров на их типы. Список таких исключений задаётся в отдельном файле, представляющем собой совокупность записей, описывающих исключения.

Запись имеет следующую структуру:

  • · запись открывается ключевым словом WAProfile_ExclusionBegin;
  • · набор полей, описывающих исключение;
  • · запись закрывается ключевым словом WAProfile_ExclusionEnd.

Запись состоит из следующих полей:

  • · WAProfile_ExclusionURL - поле содержит URL-адрес веб-приложения, которому передаётся параметр;
  • · WAProfile_ExclusionMethod - поле содержит метод, которым передаётся параметр. Возможные значения:
    • o GET
    • o POST
  • · WAProfile_ExclusionParam - имя передаваемого параметра;
  • · WAProfile_ExclusionType - уточнение способа, которым должен обрабатываться данный параметр. Возможные значения:
    • o use_value - параметр сохраняет значение, при сравнении наборов HTTP-параметров происходит сравнение значений данных параметров;
    • o use_type - вместо значения параметра определяется и используется его тип, при сравнении наборов HTTP-параметров происходит сравнение типов данных параметров;
    • o use_custom_regexp - значение параметра проверяется специальным регулярным выражением в формате PCRE [24], которое указывается в отдельном поле.
  • · WAProfile_ExclusionRegexp - поле содержит регулярное выражение в формате PCRE [24]. Поле является необязательным. Регулярное выражение, заданное в поле, используется для проверки значения параметра, если в качестве значения поля WAProfile_ExclusionType задано use_custom_regexp.

Примеры записей:

WAProfile_ExclusionBegin

WAProfile_ExclusionURL: http://localhost/mrvs/

WAProfile_ExclusionMethod: POST

WAProfile_ExclusionParam: q

WAProfile_ExclusionType: use_value

WAProfile_ExclusionEnd

WAProfile_ExclusionBegin

WAProfile_ExclusionURL: http://localhost/mrvs/

WAProfile_ExclusionMethod: GET

WAProfile_ExclusionParam: q

WAProfile_ExclusionType: use_custom_regexp

WAProfile_ExclusionRegexp: /^node/[0-9]+/edit(/)?$/i

WAProfile_ExclusionEnd

 
Перейти к загрузке файла
<<   СОДЕРЖАНИЕ   >>