Настройка PT Application Firewall
PT Application Firewall
В данном сценарии вы развернете тестовую инфраструктуру, включающую межсетевой экран уровня веб-приложений PT Application Firewall и тестовое уязвимое веб-приложение
Чтобы настроить PT Application Firewall и проверить его работу:
- Подготовьте облако к работе.
- Создайте веб-сервер.
- Запустите уязвимое веб-приложение.
- Настройте межсетевой экран.
- Протестируйте работу межсетевого экрана.
Если созданные ресурсы вам больше не нужны, удалите их.
Подготовьте облако к работе
Зарегистрируйтесь в Yandex Cloud и создайте платежный аккаунт:
- Перейдите в консоль управления
, затем войдите в Yandex Cloud или зарегистрируйтесь. - На странице Yandex Cloud Billing
убедитесь, что у вас подключен платежный аккаунт, и он находится в статусеACTIVE
илиTRIAL_ACTIVE
. Если платежного аккаунта нет, создайте его.
Если у вас есть активный платежный аккаунт, вы можете создать или выбрать каталог, в котором будет работать ваша инфраструктура, на странице облака
Подробнее об облаках и каталогах.
Необходимые платные ресурсы
В стоимость поддержки инфраструктуры входят:
- плата за постоянно работающие ВМ (см. тарифы Yandex Compute Cloud);
- плата за использование публичных IP-адресов и исходящий трафик (см. тарифы Yandex Virtual Private Cloud);
Создайте веб-сервер
-
Создайте ВМ
dvwa-server
с ОС Ubuntu:- В консоли управления
выберите каталог, в котором будет создана ВМ. - В списке сервисов выберите Compute Cloud.
- Нажмите кнопку Создать виртуальную машину.
- В блоке Общая информация:
- Введите имя
dvwa-server
. - Выберите зону доступности, в которой будет находиться ВМ.
- Введите имя
- В блоке Выбор образа/загрузочного диска выберите Ubuntu 22.04.
- В блоке Доступ укажите данные для доступа на ВМ:
- В поле Логин введите имя пользователя
ycuser
. - В поле SSH-ключ вставьте содержимое файла открытого ключа. Пару ключей для подключения по SSH необходимо создать самостоятельно.
- В поле Логин введите имя пользователя
- Остальные настройки оставьте без изменения и нажмите кнопку Создать ВМ.
Примечание
При создании ВМ назначаются публичный и внутренний IP-адреса. Запишите их, они понадобятся для доступа к ВМ и настройки межсетевого экрана.
- В консоли управления
-
Подключитесь к ВМ
dvwa-server
по SSH, выполнив в терминале команду:ssh ycuser@<публичный_IP-адрес_ВМ_dvwa-server>
Запустите уязвимое веб-приложение DVWA
-
На ВМ
dvwa-server
установите Docker :curl -fsSL https://test.docker.com -o test-docker.sh sudo sh test-docker.sh
-
Запустите контейнер с уязвимым веб-приложением:
sudo docker run --rm -it -p 8080:80 sagikazarmark/dvwa
-
Настройте уязвимое веб-приложение:
- В браузере перейдите по адресу:
http://<публичный_IP-адрес_ВМ_dvwa-server>:8080
- На странице авторизации введите логин
admin
и парольpassword
. - На странице
Database Setup
внизу нажмите кнопку Create / Reset Database. - Повторно авторизуйтесь с тем же логином и паролем.
- Нажмите на кнопку DVWA Security в левой части экрана и перейдите на страницу с настройками безопасности.
- В секции Security Level выберите нужный уровень защищенности приложения. В выпадающем списке выберите Low и нажмите кнопку Submit.
Настройте межсетевой экран
-
Создайте ВМ
pt-firewall
из публичного образа PT Application Firewall:Консоль управления- В консоли управления
выберите каталог, в котором будет создана ВМ. - В списке сервисов выберите Compute Cloud.
- Нажмите кнопку Создать виртуальную машину.
- В блоке Общая информация:
- Введите имя
pt-firewall
. - Выберите ту же зону доступности, в которой находится ВМ
dvwa-server
.
- Введите имя
- В блоке Выбор образа/загрузочного диска перейдите на вкладку Marketplace.
- Выберите актуальный образ PT Application Firewall.
- В блоке Доступ укажите данные для доступа на ВМ:
- В поле Логин введите имя пользователя
ycuser
. - В поле SSH-ключ вставьте содержимое файла открытого ключа. Пару ключей для подключения по SSH необходимо создать самостоятельно.
- В поле Логин введите имя пользователя
- Активируйте опцию Доступ к серийной консоли.
- Остальные настройки оставьте без изменения и нажмите кнопку Создать ВМ.
Примечание
При создании ВМ назначаются публичный и внутренний IP-адреса. Рекомендуется сделать публичный адрес статическим.
- В консоли управления
-
Перейдите в серийную консоль созданной ВМ:
Консоль управления- В консоли управления
выберите каталог, в котором была создана ВМ. - Перейдите в сервис Compute Cloud и выберите ВМ
pt-firewall
. - Перейдите на вкладку Серийная консоль.
- Введите логин
pt
и парольpositive
. - Вам будет предложено сменить пароль. Введите прежний пароль
positive
и создайте новый пароль в соответствии с требованиями системы. - Вам будут предложены варианты дальнейших действий. Введите
0
. - Создайте конфигурацию, последовательно выполнив следующие команды:
if set eth-ext1 inet_method dhcp dns add 77.88.8.8 config commit config sync
- В консоли управления
-
Авторизуйтесь в консоли настройки межсетевого экрана:
- В браузере перейдите по адресу:
http://<публичный_IP-адрес_ВМ_pt-firewall>:8443
- На странице авторизации введите логин
admin
и парольpositive
. - Вам будет предложено сменить пароль. Введите прежний пароль
positive
и создайте новый пароль.
- В браузере перейдите по адресу:
-
Настройте сетевые интерфейсы:
- В верхней части экрана выберите Configuration / Network / Gateways.
- В таблице, в строке с интерфейсом
pt-firewall
нажмите иконку редактирования. - На вкладке General активируйте интерфейс, включив опцию
Active
. - На вкладке Network в поле Aliases добавте опции
WAN-wan
,LAN-lan
иMGMT-mgmt
из выпадающего списка. - Нажмите Apply.
-
Настройте Upstream, в котором в качестве бэкенд-сервера будет указано веб-приложение DVWA:
- В верхней части экрана выберите Configuration / Network / Upstreams.
- На странице
UPSTREAMS
нажмите кнопку Create. - В поле Name введите
DVWA
. - В строке Backend нажмите кнопку Add и укажите:
- В поле Host —
<публичный_IP-адрес_ВМ_dvwa-server>
; - В поле Port —
8080
.
- В поле Host —
- Остальные настройки оставьте без изменения и нажмите кнопку Apply.
-
Настройте сервис:
- В верхней части экрана выберите Configuration / Network / Services.
- На странице
SERVICES
нажмите кнопку Create. - В поле Name введите
DVWA-RP
. - В строке Servers нажмите кнопку Add и укажите:
- В поле Network interface alias —
WAN-wan
из выпадающего списка; - В поле Listen Port —
80
; - В поле Upstream —
DVWA
из выпадающего списка;
- В поле Network interface alias —
- Остальные настройки оставьте без изменения и нажмите кнопку Apply.
-
Добавьте веб-приложение:
- В верхней части экрана выберите Configuration / Security / Web applications.
- На странице
WEB APPLICATIONS
нажмите кнопку Create. - В поле Name введите
DVWA-APP
. - В поле Service —
DVWA-RP
из выпадающего списка; - В поле Protection mode —
Detection
из выпадающего списка; - В строке Locations нажмите кнопку Add и укажите:
\/
- Остальные настройки оставьте без изменения и нажмите кнопку Apply.
Протестируйте работу межсетевого экрана
Чтобы протестировать работу межсетевого экрана, воспользуйтесь симулятором веб-атак GoTestWAF
-
Откройте новое окно терминала командной строки и подключитесь к ВМ
dvwa-server
по SSH:ssh yclogrus@<публичный_IP-адрес_ВМ_dvwa-server>
-
Запустите тест, выполнив команду:
sudo docker run -v ${PWD}/reports:/app/reports wallarm/gotestwaf --url=http://<публичный_IP-адрес_ВМ_pt-firewall>/ --skipWAFBlockCheck
-
Дождитесь окончания теста и просмотрите результаты. В итоговой таблице
Summary
легко видеть, что атаки не были заблокированы (секцияTRUE-NEGATIVE TESTS BLOCKED
):Summary: +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ | TYPE | TRUE-NEGATIVE TESTS BLOCKED | TRUE-POSITIVE TESTS PASSED | AVERAGE | +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ | API Security | 0.00% | n/a | 0.00% | | Application Security | 0.17% | 100.00% | 50.09% | +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ | SCORE | 25.05% | +-----------------------------+-----------------------------+-----------------------------+-----------------------------+
-
Вернитесь в браузере на страницу настроек межсетевого экрана, раздел
WEB APPLICATIONS
(Configuration / Security / Web applications) и нажмите иконку редактирования в строке приложенияDVWA
. -
В поле Protection mode выберите
Active prevention
из выпадающего списка и нажмите кнопку Apply. -
В терминале повторно запустите тест из пункта 2.
-
Дождитесь окончания теста и просмотрите результаты. В итоговой таблице
Summary
показано, что в этот раз были отражены все атаки (100% атак в секцииTRUE-NEGATIVE TESTS BLOCKED
):Summary: +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ | TYPE | TRUE-NEGATIVE TESTS BLOCKED | TRUE-POSITIVE TESTS PASSED | AVERAGE | +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ | API Security | 100.00% | n/a | 100.00% | | Application Security | 100.00% | 0.00% | 50.00% | +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ | SCORE | 75.00% | +-----------------------------+-----------------------------+-----------------------------+-----------------------------+
Как удалить созданные ресурсы
Чтобы перестать платить за созданные ресурсы:
- Удалите ВМ
dvwa-server
иpt-firewall
. - Удалите статические публичные IP-адреса.