---
# System prepended metadata

title: WEB Basic -4

---

# WEB Basic -4

**Практическая работа №4**

1. Используя стенд первой практической работы - изменить инфраструктуру в соответсвии со схемой. Главное условие - чтобы машинка с WAF была проксей для WEB-сервера, развернутого во время первой практической работы

Стенд:
WAF - Ubunt20.04
WEB-сервер - Ubunt20.04 c docker и приложением juice-shop

Настройки сети:
WAF
![](https://i.imgur.com/kwzXNsw.png)

WEB-сервер
![](https://i.imgur.com/Td2XxZO.png)

Настройки прокси
![](https://i.imgur.com/GG4rmJT.png)


**2. Установить WAF (ModSecurity 3) на машинку c названием WAF, продемонстрировать что ранее развернутый web-сайт открывается при коннекте на машинку с WAF**


Обновляем Ubuntu
![](https://i.imgur.com/GnnxKgX.png)

**Установка последней версии nginx**
 
Удаляем существующую установку Nginx
![](https://i.imgur.com/sB6rm4w.png)

Добавляем последний Nginx PPA
![](https://i.imgur.com/6Lez98Z.png)

Обновляем список источников APT
![](https://i.imgur.com/CH5O6mT.png)

Установливаем Nginx 
![](https://i.imgur.com/daXPWUd.png)

Добавляем исходный код Nginx в репозиторий
![](https://i.imgur.com/JXipBde.png)

Обновляем список репозиториев
![](https://i.imgur.com/7E2g5Ou.png)

**Скачиваем исходный код Nginx**

Создание и настройка каталогов
![](https://i.imgur.com/74J5Khr.png)

Устанавливаем зависимости и выполняем загрузку
![](https://i.imgur.com/oLrhOo6.png)

Проверяем исходную версию
![](https://i.imgur.com/xTumrh1.png)

**Устанавливаем библиотеку modsecurity 3**

Клонируем репозиторий ModSecurity с Github
![](https://i.imgur.com/Nz5AONF.png)

Устанавливаем зависимости libmodsecurity3
![](https://i.imgur.com/Uu3nY5L.png)

Установливаем следующие подмодули GIT
![](https://i.imgur.com/7iTuXnv.png)

Обновляем подмодули
![](https://i.imgur.com/EK3NCqd.png)

Создание среды ModSecurity
![](https://i.imgur.com/lLZi1cI.png)

Выполняем команду .configure
![](https://i.imgur.com/BOiXNUC.png)

Компиляция исходного кода ModSecurity
![](https://i.imgur.com/ZD4LZyH.png)

Запускаем команду установки
![](https://i.imgur.com/48tKY2T.png)

**Устанавливаем ModSecurity-nginx Connector**

Клонируем репозиторий connector
![](https://i.imgur.com/tgDSmr9.png)

Установливаем зависимости ModSecurity-nginx
![](https://i.imgur.com/fHhJKsV.png)

Скомпилируем модуль ModSecurity-nginx Connector с флагом –with-compat
![](https://i.imgur.com/Gomaq7L.png)

Создадим динамические модули
![](https://i.imgur.com/uqc2CYl.png)

Скопируем созданный динамический модуль в каталог /usr/share/nginx/modules
![](https://i.imgur.com/YjebGrj.png)

**Загрузка и настройка коннектора ModSecurity-nginx с Nginx**

Указываем load_module и путь к нашему модулю modsecurity, местоположение правил
![](https://i.imgur.com/glHRXgb.png)

**Создание и настройка каталогов и файлов для ModSecurity**

Создаём директорию /etc/nginx/modsec, копируем и переименуем файл /usr/local/src/ModSecurity/modsecurity.conf-recommended в только что созданную директорию
![](https://i.imgur.com/th5GUKY.png)

Изменяем правило в modsecurity.conf
![](https://i.imgur.com/cgojPSO.png)
![](https://i.imgur.com/khGTmqx.png)

Создаем файл modsec-config.conf и запишим правило
![](https://i.imgur.com/K08M6Wi.png)

Скопируем ModSecurity’s unicode.mapping, проверим правильность файлов и перезапустим nginx
![](https://i.imgur.com/s0jNdpA.png)

Pанее развернутый web-сайт открывается при коннекте на машинку с WAF
![](https://i.imgur.com/MP0sPTI.png)

**3. Настроить WAF c детектом OWASP top 10**

Используем wget, чтобы скачать OWASP CRS 3.3.2 archive
![](https://i.imgur.com/WdoyOWh.png)

Разархивируем скачанный архив
![](https://i.imgur.com/xhRtQou.png)

Скопируем и переименуем файл crs-setup.conf.example в файл crs-setup.conf в директории /etc/nginx/modsec/corerulleset-3.3.2
![](https://i.imgur.com/ZPg7gTN.png)

Откроем файл /etc/nginx/modsec/modsec-config.conf и допишем правила
![](https://i.imgur.com/vwjsyDL.png)

Проверим синтаксис и перезапустим nginx
![](https://i.imgur.com/PJFyF5d.png)

Провести 3 атаки из списка OWASP top 10 и продемонстрировать работоспособность WAF (должны быть сработки правил WAF)
SQL-инъекция
![](https://i.imgur.com/uwZLKiC.png)
логи
![](https://i.imgur.com/3I9LowN.png)

XSS
![](https://i.imgur.com/KMgS4fL.png)
![](https://i.imgur.com/8XxcVOc.png)
логи
![](https://i.imgur.com/nghtP3A.png)

попытка RCE
![](https://i.imgur.com/KRgwpFT.png)
![](https://i.imgur.com/DUf7VpG.png)