F2B – настройка параметров блокировки адресов по количеству вредоносных запросов

Настройка ограничений F2B, обеспечивающих защиту от кибератак: защиту с применением правил ModSecurity, защиту от DDoS-атак уровня приложений. При превышении ограничений защита ограничивает трафик клиента, защищая веб-приложение. Реакция защиты зависит от выбранного режима работы, например, клиенту может быть предложено пройти проверку через сервис капчи либо у него замедлится скорость перехода на страницу, либо защита заблокирует доступ к веб-приложению, выдав сообщение об ошибке.

В ходе настройки ограничений F2B рекомендуем сначала задать пассивный режим работы (ModSecРежим работы). Протестировать работу веб-приложения под нагрузкой, убедиться по таблице атак или по отчету в корректности настроек (разделы «Таблица атак», «Отчеты»). После завершения настройки рекомендуем задать активный режим (ModSec - Режим работы).

Предусмотрена возможность задать несколько вариантов настроек (ограничений F2B): по одному набору ограничений на каждое свойство запроса.

Пример. Можно задать:

одно ограничение F2B с параметром Свойство запроса = $remote_addr

и

одно ограничение F2B с параметром Свойство запроса = $server_name,

и так по одному ограничению F2B на каждое свойство запроса.

Конец примера.

../_images/user_guide_107cl.png

По кнопке F2B открывается окно со списком заданных ограничений F2b. На скриншоте выше показано одно заданное ограничение – по свойству запроса $remote_addr. Посмотреть и отредактировать ограничение можно, кликнув по полю ограничения, в данном примере - «$remote_addr». С помощью пиктограммы lk_black_del ограничение удаляется.

На скриншоте ниже показано два варианта настроек: Простой режим и Расширенные настройки с одноименными кнопками переключения между режимами. В простом режиме можно изменить только режим работы, а в расширенных настройках – остальные настройки F2B, включая режим работы, который переключается кнопками внизу окна.

../_images/user_guide_116cl.png

Нажимая на Новое ограничение F2B, создается ограничение для оставшихся свойств запроса (скриншот ниже). Доступно два варианта настроек: Простой режим и Расширенные настройки с возможностью переключаться между вариантами настроек. Простой режим показан на скриншоте слева, он содержит два поля (Свойство запроса и Режим работы). Расширенные настройки показаны на скриншоте справа, они содержат остальные поля.

../_images/user_guide_117cl.png

Строгий режим – это специальный режим работы защиты, в котором:

  • при первом запросе,

  • каждые n секунд,

  • когда у клиента недостаточно баллов на очередной запрос,

открывается сервис капчи; только после успешного прохождения проверки через сервис капчи выполняется запрос.

Количество баллов клиента восстанавливается после успешного прохождения проверки через сервис капчи. Период n секунд задается в конфигурации «Weblock.».

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

Далее подробнее, как заполнять поля для нового ограничения F2B.

Свойство запроса – объект применения ограничений F2B, т.е. к каким группам запросов применяется ограничение. Список значений:

  • $remote_addr – ограничение по IP-адресам трафика защищаемого веб-приложения, когда ограничение F2B применяется по отношению к трафику с IP-адреса.

  • $binary_remote_addr – ограничение по бинарному представлению IP-адресов трафика защищаемого веб-приложения; где ограничение F2B применяется по отношению к трафику с IP-адреса в бинарном представлении.

  • $server_name – ограничение по трафику защищаемого веб-приложения в целом; когда ограничение F2B применяется ко всему потоку запросов, независимо от источника трафика.

Режим работы – режим защиты с применением правил ModSecurity:

  • Пользовательский – режим, в котором защита отключена (значение по умолчанию, в расширенных настройках не показывается).

  • Тихий – режим, в котором, если у клиента за сеанс использования куки недостаточно баллов на очередной запрос, то защита считает это нарушением. Параметр Кол-во блокировок ModSecurity регулирует, сколько раз клиент может допустить нарушение. При превышении нарушений по умолчанию выдается ошибка с кодом 418. Клиенту блокируется доступ к веб-приложению на период, заданный параметром Время в секундах.

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

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

    Также защита ограничивает число нарушений параметром Кол-во блокировок ModSecurity. Т.е. когда у клиента n раз было недостаточно баллов, то защита каждый раз просила клиента пройти проверку через сервис капчи, а на (n+1)-й раз – выдаст ошибку с кодом 418 и периодом блокировки доступа к веб-приложению, заданным параметром Время в секундах.

  • Параноидальный – режим, в котором при первом запросе, каждые n секунд, а также, когда у клиента недостаточно баллов на очередной запрос, открывается сервис капчи, только после успешного решения капчи выполняется запрос. Количество баллов клиента восстанавливается после успешного решения капчи. Период n секунд задается в конфигурации «Weblock.».

Кол-во блокировок ModSecurity – сколько раз клиент может нарушить правила ModSecurity до блокировки. Целое число >=0.

Кол-во блокировок ModSecurity для перевода клиента в строгий режим – сколько раз клиент может нарушить правила ModSecurity до перевода в строгий режим. Целое число >=0 и меньше параметра Кол-во блокировок ModSecurity. Если задаваемый параметр равен параметру Кол-во блокировок ModSecurity, то строгий режим игнорируется.

Время в секундах – период блокировки или на сколько секунд блокируется доступ к веб-приложению. Целое число >= 0. Действует до перезапуска веб-сервера, модуля «Weblock.».

Кол-во нарушений лимитов anti_ddos для блокировки клиента – сколько раз в качестве реакции защиты Анти-DDoS клиенту будет предложено пройти проверку через сервис капчи вместо блокировки. Целое число >= 0. Задается для защиты от DDoS-атак уровня приложений в режиме работы «ATTENTIVE».

Кол-во нарушений лимитов anti_ddos для перевода клиента в строгий режим – сколько раз клиент может нарушить ограничения защиты Анти-DDoS до перевода в строгий режим. Целое число >= 0 и меньше параметра Кол-во нарушений лимитов anti_ddos для блокировки клиента. Если задаваемый параметр = Кол-во нарушений лимитов anti_ddos для блокировки клиента, то строгий режим игнорируется.

Кол-во игнорирований Set-Cookie для перевода клиента в строгий режим – сколько раз клиент может отключить куки до перевода в строгий режим. Целое число >= 0 и меньше параметра Кол-во игнорирований Set-Cookie для блокировки клиента. Если задаваемый параметр = Кол-во игнорирований Set-Cookie для блокировки клиента, то строгий режим игнорируется.

Кол-во игнорирований Set-Cookie для блокировки клиента – сколько раз клиент может отключить куки, избежав блокировки. Целое число >= 0.

Пример. Параметры ограничений F2B по умолчанию для различных режимов работы защиты приведены в таблице.

Параметр

Тихий режим

Внимательный режим

Параноидальный режим

Кол-во блокировок ModSecurity

20

6

6

Кол-во блокировок ModSecurity для перевода клиента в строгий режим

10

3

6

Время в секундах

300

420

420

Кол-во нарушений лимитов anti_ddos для перевода клиента в строгий режим

30

30

20

Кол-во нарушений лимитов anti_ddos для блокировки клиента

30

30

20

Кол-во игнорирований Set-Cookie для перевода клиента в строгий режим

75

75

200

Кол-во игнорирований Set-Cookie для блокировки клиента

75

100

200

Конец примера.

../_images/Weblock_Logos_small.png