Приветствуем вас в шестой статье курса «PTAF PRO Getting Started»!
В прошлых материалах мы уже познакомились с тем, что нам предлагает PT AF PRO для обеспечения безопасности нашего веб-приложения.
В данной же статье мы осуществим базовую настройку политики PT AF PRO и протестируем её с помощью GoTestWaf:
Опишем макет и схему подключения;
Настроим сеть и базовую политику PT AF PRO;
Протестируем решение GTWом
Схема
Дополним нашу схему уязвимым приложением в виде metasploitable сервера и смоделируем удаленного пользователя через kali linux, запустив на нем GoTestWaf в докере.
Начнем с Kali linux. Установим последний дистрибутив и запускаем его. Далее осуществляем sudo apt update и sudo apt upgrade для актуализации пакетов. Установим ip адрес на интерфейс согласно макету и пропишем путь.
Затем устанавливаем докер командой: sudo apt install -y docker. io
Ищем контейнер через sudo docker search gotestwaf и выбираем интересующий.
Для данного макета берем следующий:
И пулим его на нашу машину с помощью sudo docker pull wallarm/gotestwaf
Теперь подготовим уязвимое приложение.
Делаем запрос в браузере на скачивание Metasploitable 2. Получаем архив с готовым диском и подключаем его к виртуальной машине.
Запускаем и вводим логин/пароль: msfadmin/msfadmin.
Указываем ему локальный адрес (например 192.168.2.3/24). Прописываем дефолт-роут через 192.168.2.1/24.
Позже установим этот адрес на PT AF.
Настройка PT AF PRO
Первым делом пропишем необходимые нам интерфейсы.
Для тестов нам понадобится eth-ext1 и eth-int1. Еth-mgmt должен быть сконфигурирован для доступа в веб интерфейс устройства. При установке данный шаг был пропущен, поскольку доступ к веб интерфейсу был выдан через dhcp. Теперь же нам необходимо их отредактировать. Все настройки осуществляем через оболочку wsc.
Первым делом отключаем автоматическое назначение ip адресов с mgmt интерфейса и переносим wan роль на ext1: if mode eth-mgmt static dhcp set routers false if del eth-mgmt inet_gateway *.*.*.* if mode eth-ext1 static if set eth-ext1 inet_address *.*.*.* inet_netmask 255.255.255.255 inet_gateway *.*.*.* (чтобывыпускать waf в интернет сеть)
После этого у вас будет переназначена роль WAN на данный интерфейс. Если этого не произошло, то назначьте в ручном порядке.
Также задаем локальный ip адрес на интерфейс int1: if set eth-int1 inet_address 192.168.2.1 inet_netmask 255.255.255.255
Также нужно прописать путь до локальной сети: route add 192.168.2.0/24 dev eth-int1 В итоге будет добавлена следующая настройка:
После всех действий сохраняем конфигурацию: config commit
Переходим в веб-интерфейс PT AF во вкладке «схема конфигурации»:
Это основной центр конфигурации политик.
И само создание политики состоит из 5 основных этапов:
Добавление защищаемого сервера;
Добавления ip-адреса для прослушивания;
Добавление профиля трафика;
Создание набора системных правил и политики безопасности (либо используем шаблонные)
Объединение всех элементов во вкладке веб-приложения для запуска защиты
Как видно на скриншоте выше, можно будет даже подсветить цепочку элементов, с которыми построена связь. Рассмотрим все по порядку.
Добавление защищаемого сервера
Здесь мы просто указываем ip-адрес доступа к нашему приложению на сервере, а также прописываем порт.
Добавление ip-адреса для прослушивания
Здесь прописываем wan-адрес и указываем направление передачи трафика при обращении на прослушиваемый интерфейс. Также указываем маршрут, по которому идёт трафик от прослушиваемого ip адреса.
Добавление профиля трафика
В нем мы выстраиваем «соединение» от прослушиваемого интерфейса до защищаемого сервера.
И указываем тип балансировки трафика между серверами.
В качестве примера мы возьмем шаблонную политику безопасности.
Финальное «соединение»
И последний штрих — запускаем безопасность веб приложения. Указываем созданный профиль трафика, а также политику безопасности, согласно которой будет осуществляться проверка поступающего трафика:
Теперь мы сможем увидеть связность всех элементов, чем подтвердим корректную настройку защиты веб-приложения.
Тестирование решения GTWом
Переходим в Kali linux и запускаем докер с GoTestWafом следующей командой: sudo docker run --rm -it -v ${PWD}/reports:/app/reports \ wallarm/gotestwaf --url=http://10.10.30.29:80/ --workers 20
В конце теста получаем среднее значение между True-positive blocked и true-negative passed в районе 61%.
Напоминаем, что это с учетом установки (по-сути «из коробки»). Не задавая особых условий или дополнительных правил.
На этом закончим данную статью. В следующей статье курса мы рассмотрим события безопасности и информацию, которая сгенерировалась PT AFом.
До встречи на TS University!
Пройти сертификацию
Пройдите тест по содержанию данного курса (рекомендуется после полного прохождения) и получите сертификат, подтверждающий полученные знания.