Привет, меня зовут Александр Быков. В Nubes я руковожу направлением сервисов информационной безопасности. Мы продолжаем серию статей про тестирование межсетевого экрана Sangfor NGAF M5300. В этом посте речь пойдет про модуль WAF. 

На рынке инфобезопасности есть множество продуктов, у которых по заявлению их разработчиков, есть функциональность WAF. Однако при ближайшем рассмотрении оказывается, что это всего лишь маркетинг, а не полноценные решения. А что же с модулем Sangfor WAF? Рассказываю про результаты нашего тестирования. 

Методика оценки

Sangfor я сегодня буду сравнивать в первую очередь со «взрослыми решениями».

Для оценки были выбраны три критерия:

  1. Как WAF блокирует атаки сигнатурными методами из коробки.

  2. Как реализованы функции управления трафиком и сертификатами.

  3. Дополнительные «плюшки»» продукта: ML, Bot Protection и т.д.

По этой же методике ранее я оценивал решения отечественных и ушедших из России иностранных вендоров.

Оценка сигнатурных методов блокировки атак

Я использовал утилиту GoTestWAF. Мы пытались тестировать WAF  с помощью других утилит, но Sangfor не отдает стандартные retcode (40x, 50x) в ответ на заблокированные сообщения. Поэтому большинство утилит неправильно распознавали корректно заблокированные запросы. В GoTestWAF такой вариант предусмотрен и решается добавлением  нескольких ключей --skipWAFBlockCheck и --blockConnReset при запуске программы.

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

Также делали проверки на False Positive, когда отправляются запросы, которые не являются зловредными.

Для теста использовались все паки сэмплов, предоставленных программой.

На WAF все стандартные модули переведены в режим Deny, кроме модулей, которые по сумме сработок блокируют IP-адрес. Для сигнатур используются дефолтные действия.

Вот какую оценку получили в результате тестирования:

Оценку проводили по двум категориям: защита API и AppSec

Вот как выглядит лог одного из заблокированных запросов:

Для оценки полученных результатов GoTestWAF предлагает сравнить их с параметрами популярного WAF modsecurity:

Результат по Application Security для ненастроенного WAF на достойном уровне.
По защите API результаты хуже, но это можно исправить настройкой позитивной модели под каждый проект.

Функции управления трафиком

В аспекте управления трафиком у Sangfor больше всего прослеживается, что WAF — это часть комплексного продукта и работает он в связке с файерволом L4.

Обычно в WAF можно оперировать связкой доменное имя + IP-адрес, а также совершать операции с доменами, создавать для них отдельные профили, отправлять их на разные адреса. В Sangfor эта логика упрощена: для создания защиты сервиса необходимо работать с IP-адресами. Именно на IP-адрес «вешается» профиль WAF и к нему же привязывается SSL-сертификат. В итоге доменные имена защищаемых сервисов мы видим только в логах или используем URL при написании исключений для проверки.

В Sangfor отсутствуют и некоторые другие привычные функции:

  1. Отсутствует умная балансировка по параметрам HTTP-запроса.

  2. Нет возможности настроить SNI на входящем интерфейсе (отдать его на бэкэнд сервер тоже нельзя).

  3. Нельзя защищать разные сайты разными профилями защиты, если они работают на одном IP-адресе.

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

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

Дополнительный функционал

Из нестандартного функционала хочется отметить следующий:

  1. Machine Learning. Подкупает его лаконичность, нет перегруженности в интерфейсе и углубления в бизнес-логику. (Про ML подробно расскажем в следующей статье)

  2. Достойный встроенный сканер уязвимостей. Можно сканировать в активном и пассивном режиме. 

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

Пример сработки из отчета встроенного сканера:

Также есть много возможностей, которые часто применяются для защиты веб-приложений, но в Sangfor они вынесены за рамки модуля WAF. Например: блокировка по GEO, контроль количества подключений, блокировка на основе репутации.

Резюме

В целом модуль WAF на Sangfor оставил у меня приятные впечатления. Его можно эффективно применять для защиты небольшой или однородной инфраструктуры веб-приложений. Он вполне подойдет для публикации корпоративных порталов и сервисов. Формат комплексного продукта может упростить внедрение на многих проектах.

Главный минус Sangfor WAF — решение не умеет управлять трафиком на уровне его продвинутых аналогов. Sangfor WAF плохо подойдет для больших проектов или приложений со сложной структурой. Однако если у вас небольшой парк веб-приложений и веб-серверов, то этот сервис справится со своей главной задачей. 

Комментарии (0)