Руководство по использованию облачного веб-приложения для управления настройками Nemesida WAF.

Общие сведения
Для настройки Nemesida WAF можно использовать облачное веб-приложение MyWAF, реквизиты доступа к которому предоставляются при получении лицензионного ключа.

Облачное веб-приложение позволяет управлять:

  • настройками динамического модуля Nemesida WAF;
  • настройками Nemesida AI MLC;
  • поведенческими моделями;
  • синхронизацией настроек динамического модуля Nemesida WAF и Nemesida AI MLC;
  • правилами исключения сигнатур и расширенными правилами блокировки.

Первый вход

После выполнения первичной настройки серверов с установленными модулями Nemesida WAF завершить настройку можно с помощью веб-приложения. В качестве реквизитов для первого подключения используется электронная почта (логин) и лицензионный ключ (одноразовый пароль). В дальнейшем использовать лицензионный ключ, в качестве пароля, нельзя, поэтому после успешного входа необходимо установить новый пароль и включить двухфакторную аутентификацию.

Управление настройками Nemesida WAF
Для управления настройками Nemesida WAF используются следующие страницы

Ключи

Раздел предназначен для добавления лицензионных ключей. Представлен в виде таблицы, где указаны:

  • описание ключа;
  • тариф;
  • доступ к функционалу облачного API;
  • срок действия лицензионного ключа;
  • количество доступных поведенческих моделей;
  • WAF ID;
  • доступные действия над ключом.

Для добавления нового ключа в список нажимаем , где указываем лицензионный ключ и описание к нему.

Действия над ключом

С лицензионным ключом можно выполнить 3 действия:

  • создать идентификационный токен;
  • изменить описание;
  • удалить из списка.

Идентификационный токен используется вместо лицензионного ключа, для управления настройками Nemesida WAF с помощью облачного API.

Динамический модуль Nemesida WAF

После клика на открывается раздел управления настройками динамического модуля Nemesida WAF.

Для завершения настройки этого модуля достаточно задать условие временной автоматической блокировки IP-адреса (бана). Использование параметра позволит функционалу выявления DDoS-атак, атак методом перебора и флуда блокировать источник атаки.

По клику на можно добавить новый набор значений для параметра, для этого появится диалоговое окно.

Например, мы добавили условие блокировки запросов отдельно для домена example.com и условия блокировки для всех остальных доменов:

Для редактирования текущих настроек необходимо кликнуть на .

После сохранения настройки применяются автоматически ко всем установленным копиям динамического модуля Nemesida WAF, настройками которых можно управлять с помощью веб-приложения.

Nemesida AI MLC

При клике на открывается раздел управления настройками модуля машинного обучения Nemesida AI MLC. Для активации дополнительных возможностей (выявление DDoS-атак, атак методом перебора и флуд) необходимо активировать соответствующие разделы.

Управление поведенческими моделями

Чтобы начать процесс построения поведенческих моделей необходимо добавить виртуальный хост, соответствующий домену защищаемого веб-приложения, например, example.com.

Поведенческие модели, обучение которых было завершено, отображаются в разделе «Поведенческие модели Nemesida AI». Рядом с названием каждой поведенческой модели присутствует индикатор состояния, где:

  • — выполняется переобучение поведенческой модели;
  • — обучение завершено, поведенческая модель применена к виртуальному хосту.

Для переобучения модели необходимо нажать кнопку и выбрать режим переобучения. Если переобучение модели должно выполняться в течение стандартного периода (4 дня), то для запуска процесса переобучения достаточно нажать кнопку .

Увеличение срока обучения поведенческих моделей Nemesida AI

Для корректного построения моделей требуется порядка 400.000-800.000 уникальных запросов. По умолчанию срок обучения составляет 4 дня. Для изменения периода обучения нажимаем и появится дополнительное поле, где необходимо указать период обучения в днях.

Дообучение моделей с использованием резервной копии обучающей выборки

Если во время обучения количество запросов было недостаточным, то можно его перезапустить и воспользоваться запросами из прошлой выборки. Для этого выполните следующие действия:

1. Остановите сервис Nemesida AI MLC:

# service mlc_main stop

2. Переместите файл /opt/mlc/ml/backup/[vhost].d_[timestamp], где [timestamp] — дата создания резервной копии обучающей выборки, созданной Nemesida AI MLC перед началом построения модели, в /opt/mlc/ml/[vhost].d. Например, для модели example.com:

# mv /opt/mlc/ml/backup/example.com.d_1613587613 /opt/mlc/ml/example.com.d

3. Запустите обучение.

4. Запустите сервис Nemesida AI MLC:

# service mlc_main start

Копирование поведенческой модели

Для копирования поведенческой модели на другой виртуальный хост нажимаем кнопку и выбираем виртуальный хост, для которого будет выполняться копирование поведенческой модели.

Удаление поведенческой модели

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

Управление правилами
Облачное веб-приложение позволяет создавать правила исключения сигнатур и расширенные правила блокировки запросов. Для перехода в раздел управления правилами необходимо перейти в раздел .

Правила исключения

правило исключения предназначается для исключения обработки запроса с помощью правила. Подробная инструкция по созданию правил исключения доступна в соответствующем разделе.

Для создания правила необходимо кликнуть на конпку

Редактирование правила происходит при клике на .

Расширенные правила блокировки запросов

Функционал расширенных правил блокировки запросов схож с функционалом создания персональных сигнатур. Он позволяет создавать правило блокирования запроса сочетанием различных параметров, но без поддержки регулярных выражений.

Механизм расширенных правил блокировки запросов позволяет при составлении персональных правил использовать дополнительные условия. Например, можно составить правило, по которому запрос будет заблокирован если:

  • соответствует географическому местоположению на основе IP-адреса (определение страны по IP-адресу атакующего);
  • происходит обращение на определенный домен или URL;
  • содержит определенный заголовок (например, User-Agent, Cookie, Referer и т.д.) и/или содержимое этих заголовков.

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

В отличие от функционала создания персональных сигнатур, механизм расширенных блокировок запросов позволяет создавать правило сочетанием различных параметров, но без поддержки регулярных выражений.

Поддерживаемые параметры
Опции:

  • Активно — активировать/деактивировать правило. Правило можно активировать временно, для этого необходимо указать период (в часах), в течение которого правило будет активно с момента создания. По истечении времени правило будет деативировано до повторной активации с указанным периодом. Для активации постоянного правила необходимо очистить поле время действия;
  • Отправить в Nemesida WAF API — отправлять результат срабатывания правила в модуль Nemesida WAF API;
  • Не влиять на бан — если параметр не активен, то при срабатывании правила запрос будет заблокирован, но счетчик rate параметра nwaf_limit, необходимый для блокировки IP-адреса источника запросов, не будет увеличиваться;
  • Режим мониторинга — обработка правила в режиме LM (фиксируется срабатывание правила, но запрос не блокируется);

Условия:

  • Виртуальный хост — домен. Допускается использовать строгое соответствие и wildcard-значения: *, example.com, .example.com, *.example.com.;
  • URL — вхождение строки в содержимое зоны URL;
  • Страна — страна (для работы функционала определения географического местоположения на основе IP-адреса необходимо подключить файл с базой GeoIP2 в /etc/nginx/nwaf/conf/global/nwaf.conf);
  • IP — IP-адрес атакующего;
  • ARGS — вхождение строки в содержимое зоны ARGS;
  • BODY — вхождение строки в содержимое зоны BODY;
  • User-Agent — вхождение строки в содержимое зоны User-Agent;
  • Cookie — вхождение строки в содержимое зоны Cookie;
  • Cookie отсутствуют — применение правила только к запросу с пустой зоной Cookie;
  • Referer — вхождение строки в содержимое зоны Referer;
  • Other headers — вхождение строки в содержимое зоны HEADERS, за исключением зон Cookie, User-Agent и Referer.

Создане правила

Для создания правила необходимо перейти во вкладку «Правила блокировки запроса (ERL)» и нажать . После выбора нужных опций необходимо добавить одно или несколько условий нажатием на .

Для всех параметров условий (кроме Cookie отсутствуют) допускается использовать несколько значений в одном блоке параметров, используя логические операторы условий «и», «или», «не» (доступно только для первого значения в блоке), «и не», «или не». Операторы не имеют приоритета.

Значения для параметров можно вводить списком, для этого необходимо использовать функцию «многострочный ввод». Введенные в поле значения будут объединяться между собой используемым для этого поля логическим оператором.

Для добавления нового условия выбираем его из списка и повторяем процесс.

Other headers

Параметры для блока «Other headers» используются в формате ключ/значение и взаимодействуют между собой по следующему принципу:

  • при наличии заголовка будет проверяться содержимое только этого заголовка;
  • при наличии заголовка без содержимого будет проверяться любое содержимое этого заголовка;
  • при наличии только содержимого заголовка будет проверяться указанное содержимое в любом заголовке.

Редактирование правила происходит при клике на .

Создание списка заблокированных IP-адресов

Позволяет создать список IP-адресов, обращения с которых будут заблокированы для определенных (или всех) доменов. Для создания списка достаточно указать IP-адрес(а) и домен, для которого необходимо блокировать обращения с этих адресов. При добавлении данных на странице отобразится таблица, в которой будут указаны следующие значения:

  • Домен — домен, для которого обращения с указанного IP-адреса будет заблокированы;
  • Количество — количество IP адресов, добавленных в список.


Сводная таблица доменов и количества добавленных IP-адресов

IP-адреса, добавленные без указания домена будут применяться ко всем доменам. Допускается использование IPv4/IPv6 адресов, в том числе использование CIDR (например, x.x.x.x/24) и диапазона IP-адресов.

Редактирование списка заблокированных IP-адресов

При нажатии на количество IP-адресов отобразится список всех добавленных для домена IP-адресов. При клике на IP-адрес он автоматически удалится из списка.


Список добавленных IP-адресов для домена example.com

IP-адреса отображаются в двух форматах:

  • — IP-адрес, добавленный для этого домена;
  • — IP-адрес, добавленный для всех доменов, включая текущий.

Для удаления IP-адреса необходимо кликнуть на него или ввести список, используя поле для ввода. IP-адреса зеленого цвета относятся ко всем доменам и для их удаления необходимо перейти в соответствующий список.

Создание пользователей
Для совместного использования функционала управления настройками Nemesida WAF администратор (владелец лицензионного ключа) может создавать дополнительных пользователей. Пользователи наследуют права администратора, кроме создания/удаления пользователей.

Для создания пользователя необходимо отправить приглашение на электронную почту и передать одноразовый код активации. Учетная запись, не прошедшая активацию, будет окрашена серым цветом.

После успешной активации цчетной записи, при первом входе в систему, пользователю необходимо включить двухфакторную аутентификацию. Для активированной учетной записи администратору доступны следующие действия: сбросить настройку двухфакторной аутентификации, сбросить пароль или удалить пользователя.

При неправильном вводе кода активации более 15 раз процесс регистрации прерывается, а учетная запись окрашивается красным цветом. Администратор может удалить учетную зпись , повторно направить письмо с приглашением или сгененрировать новый код активации .

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

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