Предварительно настроенные правила WAF Cloud Armor Codelab

1. Введение

Привет! Добро пожаловать в лабораторию предварительно настроенных правил WAF Cloud Armor!

Google Cloud Armor — это решение Google для обеспечения безопасности периферийной сети предприятия, обеспечивающее защиту от DDOS, соблюдение правил WAF и адаптивное управление в любом масштабе.

Cloud Armor расширил предварительно настроенные наборы правил WAF для устранения уязвимостей безопасности веб-приложений , входящих в десятку лучших по версии OWASP . Наборы правил основаны на базовом наборе правил OWASP Modsecurity версии 3.0.2 для защиты от некоторых наиболее распространенных угроз безопасности веб-приложений, включая локальное включение файлов (lfi), удаленное включение файлов (rfi), удаленное выполнение кода (rce), и многое другое.

В этой лаборатории кода вы узнаете, как устранить некоторые распространенные уязвимости с помощью правил Google Cloud Armor WAF.

Что вы узнаете

  • Как настроить группу экземпляров и глобальный балансировщик нагрузки для поддержки службы
  • Как настроить политики безопасности Cloud Armor с предварительно настроенными правилами WAF для защиты от lfi, rce, сканеров, атак на протоколы и фиксации сеанса
  • Как проверить, что Cloud Armor смягчил атаку, просматривая журналы.

Что вам понадобится

  • Базовые знания Google Compute Engine ( codelab ).
  • Базовые знания сетевых технологий и TCP/IP.
  • Базовые знания командной строки Unix/Linux.
  • Полезно пройти экскурсию по сетям в GCP с помощью Networking в Google Cloud.
  • (Необязательно) Пройдите лабораторную работу Cloudnet20 Cloud Armor, чтобы научиться защищать рабочие нагрузки с помощью SQL-инъекций, правил на основе IP и географического положения.

Топология Codelab и вариант использования

119e13312f3cec25.jpeg

Рис. 1. Топология кодовой лаборатории правил Cloud Armor WAF

Приложение OWASP Juice Shop полезно для обучения и повышения осведомленности в области безопасности, поскольку оно содержит примеры каждой из 10 наиболее уязвимых мест безопасности OWASP — по замыслу. Злоумышленник может использовать его в целях тестирования. В этой лаборатории кода мы будем использовать его для демонстрации некоторых атак на приложения с последующей защитой приложения с помощью правил Cloud Armor WAF. Приложение будет работать под управлением Google Cloud Load Balancer, к которому будут применяться политика и правила безопасности Cloud Armor. Он будет обслуживаться в общедоступном Интернете, поэтому доступен практически из любого места и защищен с помощью правил Cloud Armor и брандмауэра VPC.

2. Настройка и требования

Самостоятельная настройка среды

  1. Войдите в Cloud Console и создайте новый проект или повторно используйте существующий. Если у вас еще нет учетной записи Gmail или Google Workspace, вам необходимо ее создать .

96a9c957bc475304.png

b9a10ebdf5b5a448.png

a1e3c01a38fa61c2.png

Запомните идентификатор проекта — уникальное имя для всех проектов Google Cloud (имя, указанное выше, уже занято и не подойдет вам, извините!). Позже в этой лаборатории он будет называться PROJECT_ID .

  1. Далее вам необходимо включить биллинг в Cloud Console, чтобы использовать ресурсы Google Cloud.

Прохождение этой лаборатории кода не должно стоить много, если вообще стоит. Обязательно следуйте всем инструкциям в разделе «Очистка», в которых рассказывается, как отключить ресурсы, чтобы вам не приходилось нести расходы, выходящие за рамки этого руководства. Новые пользователи Google Cloud имеют право на участие в программе бесплатной пробной версии стоимостью 300 долларов США .

Запустить Cloud Shell

Хотя Google Cloud можно управлять удаленно с вашего ноутбука, в этой лаборатории вы будете использовать Google Cloud Shell , среду командной строки, работающую в облаке.

В консоли GCP щелкните значок Cloud Shell на верхней правой панели инструментов:

bce75f34b2c53987.png

Подготовка и подключение к среде займет всего несколько минут. Когда все будет готово, вы должны увидеть что-то вроде этого:

f6ef2b5f13479f3a.png

Эта виртуальная машина оснащена всеми необходимыми инструментами разработки. Он предлагает постоянный домашний каталог объемом 5 ГБ и работает в Google Cloud, что значительно повышает производительность сети и аутентификацию. Всю работу в этой лабораторной работе можно выполнять с помощью простого браузера.

Прежде чем начать

В Cloud Shell убедитесь, что идентификатор вашего проекта настроен.

gcloud config list project
gcloud config set project [YOUR-PROJECT-NAME]
PROJECT_ID=[YOUR-PROJECT-NAME]
echo $PROJECT_ID

Включить API

Включите все необходимые сервисы

gcloud services enable compute.googleapis.com
gcloud services enable logging.googleapis.com        
gcloud services enable monitoring.googleapis.com 

3. Создайте сеть VPC.

Создать сеть VPC

Из Cloud Shell

gcloud compute networks create ca-lab-vpc --subnet-mode custom

Выход

Created
NAME        SUBNET_MODE  BGP_ROUTING_MODE  IPV4_RANGE  GATEWAY_IPV4
ca-lab-vpc  CUSTOM       REGIONAL

Создать подсеть

Из Cloud Shell

gcloud compute networks subnets create ca-lab-subnet \
        --network ca-lab-vpc --range 10.0.0.0/24 --region us-central1

Выход

Created 
NAME           REGION       NETWORK       RANGE
ca-lab-subnet  us-central1  ca-lab-vpc    10.0.0.0/24

Создание правил брандмауэра VPC

После создания VPC и подсети вам нужно настроить несколько правил брандмауэра. Первое правило брандмауэра будет использоваться для разрешения всем IP-адресам доступа к внешнему IP-адресу веб-сайта тестового приложения через порт 3000. Второе правило брандмауэра будет использоваться для разрешения проверок работоспособности с исходного IP-адреса балансировщиков нагрузки .

Из Cloud Shell

gcloud compute firewall-rules create allow-js-site --allow tcp:3000 --network ca-lab-vpc

Выход

Creating firewall...done.
NAME           NETWORK     DIRECTION  PRIORITY  ALLOW     DENY  DISABLED
allow-js-site  ca-lab-vpc  INGRESS    1000      tcp:3000        False

Создайте правила FW, чтобы разрешить проверки работоспособности из диапазонов проверок работоспособности Google.

Из Cloud Shell

gcloud compute firewall-rules create allow-health-check \
    --network=ca-lab-vpc \
    --action=allow \
    --direction=ingress \
    --source-ranges=130.211.0.0/22,35.191.0.0/16 \
    --target-tags=allow-healthcheck \
    --rules=tcp

Выход

Creating firewall...done.
NAME                NETWORK     DIRECTION  PRIORITY  ALLOW  DENY  DISABLED
allow-health-check  ca-lab-vpc  INGRESS    1000      tcp          False

4. Настройте тестовое приложение

Следующим шагом будет создание тестового приложения, в данном случае веб-сервера OWASP Juice Shop.

При создании вычислительного экземпляра мы используем образ контейнера, чтобы убедиться, что на сервере есть соответствующие службы. Этот сервер будет развернут в us-central1-c и будет иметь сетевой тег, который позволит проверять работоспособность.

Создайте приложение OWASP Juice Shop.

В качестве уязвимого приложения используйте известное приложение OWASP Juice Shop с открытым исходным кодом. Вы также можете использовать это приложение для решения проблем безопасности OWASP через их веб-сайт .

Из Cloud Shell

gcloud compute instances create-with-container owasp-juice-shop-app --container-image bkimminich/juice-shop \
     --network ca-lab-vpc \
     --subnet ca-lab-subnet \
     --private-network-ip=10.0.0.3 \
     --machine-type n1-standard-2 \
     --zone us-central1-c \
     --tags allow-healthcheck

Выход

NAME                  ZONE           MACHINE_TYPE   PREEMPTIBLE  
owasp-juice-shop-app  us-central1-c  n1-standard-2               

INTERNAL_IP  EXTERNAL_IP     STATUS
10.0.0.3     <public IP>     RUNNING

Настройте компонент балансировки нагрузки Cloud: группа экземпляров.

Создайте группу неуправляемых экземпляров.

Из Cloud Shell

gcloud compute instance-groups unmanaged create juice-shop-group \
    --zone=us-central1-c

Выход

NAME              LOCATION       SCOPE  NETWORK  MANAGED  INSTANCES
juice-shop-group  us-central1-c  zone                     0

Добавьте экземпляр GCE Juice Shop в группу неуправляемых экземпляров.

Из Cloud Shell

gcloud compute instance-groups unmanaged add-instances juice-shop-group \
    --zone=us-central1-c \
    --instances=owasp-juice-shop-app

Выход

Updated [https://www.googleapis.com/compute/v1/projects/<project name>/zones/us-central1-c/instanceGroups/juice-shop-group].

Установите в качестве именованного порта порт приложения Juice Shop.

Из Cloud Shell

gcloud compute instance-groups unmanaged set-named-ports \
juice-shop-group \
   --named-ports=http:3000 \
   --zone=us-central1-c

Выход

Updated [https://www.googleapis.com/compute/v1/projects/<project name>/zones/us-central1-c/instanceGroups/juice-shop-group].

Теперь, когда вы создали неуправляемую группу экземпляров, следующим шагом будет создание проверки работоспособности, внутренней службы, сопоставления URL-адресов, целевого прокси-сервера и правила переадресации.

Настройте компонент балансировки нагрузки Cloud: проверка работоспособности

Создайте проверку работоспособности для сервисного порта Juice Shop.

Из Cloud Shell

gcloud compute health-checks create tcp tcp-port-3000 \
        --port 3000

Выход

Created 
NAME           PROTOCOL
tcp-port-3000  TCP

Настройте компонент балансировки нагрузки Cloud: серверную службу.

Создайте параметры серверной службы.

Из Cloud Shell

gcloud compute backend-services create juice-shop-backend \
        --protocol HTTP \
        --port-name http \
        --health-checks tcp-port-3000 \
        --enable-logging \
        --global 

Выход

NAME                BACKENDS  PROTOCOL
juice-shop-backend            HTTP

Добавьте группу экземпляров Juice Shop во внутреннюю службу.

Из Cloud Shell

 gcloud compute backend-services add-backend juice-shop-backend \
        --instance-group=juice-shop-group \
        --instance-group-zone=us-central1-c \
        --global

Выход

Updated [https://www.googleapis.com/compute/v1/projects/cythom-host1/global/backendServices/juice-shop-backend].

Настройте компонент балансировки нагрузки Cloud: карта URL-адресов

Создайте карту URL-адресов для отправки на серверную часть.

Из Cloud Shell

gcloud compute url-maps create juice-shop-loadbalancer \
        --default-service juice-shop-backend

Выход

NAME                     DEFAULT_SERVICE
juice-shop-loadbalancer  backendServices/juice-shop-backend

Настройте компонент облачного балансировщика нагрузки: целевой прокси.

Создайте целевой прокси-сервер для отображения карты URL-адресов.

Из Cloud Shell

gcloud compute target-http-proxies create juice-shop-proxy \
        --url-map juice-shop-loadbalancer

Выход

NAME              URL_MAP
juice-shop-proxy  juice-shop-loadbalancer

Настройте компонент балансировки нагрузки Cloud: правило переадресации.

Создайте правило переадресации для балансировщика нагрузки.

Из Cloud Shell

gcloud compute forwarding-rules create juice-shop-rule \
        --global \
        --target-http-proxy=juice-shop-proxy \
        --ports=80

Выход

Created [https://www.googleapis.com/compute/v1/projects/cythom-host1/global/forwardingRules/juice-shop-rule].

Убедитесь, что служба Juice Shop подключена к сети.

Из Cloud Shell

PUBLIC_SVC_IP="$(gcloud compute forwarding-rules describe juice-shop-rule  --global --format="value(IPAddress)")"

Из Cloud Shell

echo $PUBLIC_SVC_IP

Выход

<public VIP of service>

Подождите несколько минут, прежде чем продолжить, иначе вы можете получить ответ HTTP/1.1 404 Not Found.

Из Cloud Shell

curl -Ii http://$PUBLIC_SVC_IP

Выход

HTTP/1.1 200 OK
<...>

Вы также можете зайти в браузер, чтобы просмотреть магазин соков!

428c18eee6708c28.png

Теперь мы готовы изучить уязвимости Juice Shop и способы защиты от них с помощью наборов правил Cloud Armor WAF.

5. Демонстрация известных уязвимостей

В целях экономии времени мы продемонстрируем состояния до и после распространения правил Cloud Armor WAF в сокращенном виде.

Обратите внимание на уязвимость LFI: обход пути

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

Из Cloud Shell

curl -Ii http://$PUBLIC_SVC_IP/ftp

Выход

HTTP/1.1 200 OK
<...>

А также обратите внимание, что обход пути тоже работает:

Из Cloud Shell

curl -Ii http://$PUBLIC_SVC_IP/ftp/../

Выход

HTTP/1.1 200 OK
<...>

Обратите внимание на уязвимость RCE

Удаленное выполнение кода включает в себя различные сценарии внедрения команд UNIX и Windows, позволяющие злоумышленникам выполнять команды ОС, которые обычно доступны только привилегированным пользователям. Ниже показано простое выполнение переданной команды ls.

Из Cloud Shell

curl -Ii http://$PUBLIC_SVC_IP/ftp?doc=/bin/ls

Выход

HTTP/1.1 200 OK
<...>

Вы можете удалить флаги скручивания, чтобы увидеть полный вывод.

Наблюдайте за доступом известного сканера

Как коммерческие приложения, так и приложения с открытым исходным кодом для сканирования для различных целей, включая сканирование на наличие уязвимостей. Эти инструменты используют известный User-Agent и другие заголовки. Обратите внимание, что Curl работает с известным заголовком User-Agent:

Из Cloud Shell

curl -Ii http://$PUBLIC_SVC_IP -H "User-Agent: blackwidow"

Выход

HTTP/1.1 200 OK
<...>

Наблюдайте за атакой на протокол: разделение HTTP

Некоторые веб-приложения используют вводимые пользователем данные для создания заголовков в ответах. Если приложение не фильтрует входные данные должным образом, злоумышленник потенциально может отравить входной параметр последовательностью %0d%0a (последовательность CRLF, которая используется для разделения разных строк). Затем ответ может быть интерпретирован как два ответа всем, что его анализирует, например, промежуточным прокси-сервером, потенциально предоставляющим ложный контент в последующих запросах. Вставьте последовательность %0d%0a во входной параметр, что может привести к показу вводящей в заблуждение страницы.

Из Cloud Shell

curl -Ii "http://$PUBLIC_SVC_IP/index.html?foo=advanced%0d%0aContent-Length:%200%0d%0a%0d%0aHTTP/1.1%20200%20OK%0d%0aContent-Type:%20text/html%0d%0aContent-Length:%2035%0d%0a%0d%0a<html>Sorry,%20System%20Down</html>"

Выход

HTTP/1.1 200 OK
<...>

Наблюдайте за фиксацией сеанса

Из Cloud Shell

curl -Ii http://$PUBLIC_SVC_IP -H session_id=X

Выход

HTTP/1.1 200 OK
<...>

6. Определите правила Cloud Armor WAF.

Перечислите предварительно настроенные правила WAF:

Из Cloud Shell

gcloud compute security-policies list-preconfigured-expression-sets

Выход

EXPRESSION_SET
Sqli-canary
RULE_ID
    owasp-crs-v030001-id942110-sqli
    owasp-crs-v030001-id942120-sqli
<...>

Создайте политику безопасности Cloud Armor.

Из Cloud Shell:

gcloud compute security-policies create block-with-modsec-crs \
    --description "Block with OWASP ModSecurity CRS"

Обновите правило политики безопасности по умолчанию.

Обратите внимание, что приоритет правила по умолчанию имеет числовое значение 2147483647.

Из Cloud Shell:

gcloud compute security-policies rules update 2147483647 \
    --security-policy block-with-modsec-crs \
    --action "deny-403"

Поскольку правило по умолчанию настроено с действием запрета, мы должны разрешить доступ с вашего IP. Найдите свой общедоступный IP-адрес (curl, ipmonkey, whatismyip и т. д.).

Из Cloud Shell:

MY_IP=$(curl ifconfig.me)

Добавьте первое правило, разрешающее доступ с вашего IP (ВСТАВЬТЕ СВОЙ IP НИЖЕ).

Из Cloud Shell:

gcloud compute security-policies rules create 10000 \
    --security-policy  block-with-modsec-crs  \
    --description "allow traffic from my IP" \
    --src-ip-ranges "$MY_IP/32" \
    --action "allow"

Обновите политику безопасности, чтобы блокировать атаки LFI.

Примените основной набор правил OWASP ModSecurity, который предотвращает обход пути для включения локальных файлов.

Из Cloud Shell:

gcloud compute security-policies rules create 9000 \
    --security-policy block-with-modsec-crs  \
    --description "block local file inclusion" \
     --expression "evaluatePreconfiguredExpr('lfi-stable')" \
    --action deny-403

Обновите политику безопасности, чтобы заблокировать удаленное выполнение кода (rce).

В соответствии с базовым набором правил OWASP ModSecurity примените правила, которые ищут rce, включая внедрение команд. Типичные команды ОС обнаруживаются и блокируются.

Из Cloud Shell:

gcloud compute security-policies rules create 9001 \
    --security-policy block-with-modsec-crs  \
    --description "block rce attacks" \
     --expression "evaluatePreconfiguredExpr('rce-stable')" \
    --action deny-403

Обновите политику безопасности, чтобы заблокировать сканеры безопасности.

Примените основной набор правил OWASP ModSecurity, чтобы заблокировать известные сканеры безопасности, скриптовые HTTP-клиенты и веб-сканеры.

Из Cloud Shell:

gcloud compute security-policies rules create 9002 \
    --security-policy block-with-modsec-crs  \
    --description "block scanners" \
     --expression "evaluatePreconfiguredExpr('scannerdetection-stable')" \
    --action deny-403

Обновите политику безопасности, чтобы блокировать атаки протокола.

В соответствии с базовым набором правил OWASP ModSecurity применяются правила, которые ищут символы возврата каретки (CR) %0d и перевода строки (LF) %0a, а также другие типы атак по протоколу, такие как контрабанда HTTP-запросов.

Из Cloud Shell:

gcloud compute security-policies rules create 9003 \
    --security-policy block-with-modsec-crs  \
    --description "block protocol attacks" \
     --expression "evaluatePreconfiguredExpr('protocolattack-stable')" \
    --action deny-403

Обновите политику безопасности, чтобы заблокировать фиксацию сеанса.

В соответствии с базовым набором правил OWASP ModSecurity применяются правила, которые...

Из Cloud Shell:

gcloud compute security-policies rules create 9004 \
    --security-policy block-with-modsec-crs  \
    --description "block session fixation attacks" \
     --expression "evaluatePreconfiguredExpr('sessionfixation-stable')" \
    --action deny-403

Прикрепите политику безопасности к серверной службе

Из Cloud Shell:

gcloud compute backend-services update juice-shop-backend \
    --security-policy block-with-modsec-crs \
    --global

Для распространения правил может потребоваться некоторое время (но не более 10 минут). Убедившись, что прошло достаточно времени, протестируйте ранее продемонстрированные уязвимости, чтобы подтвердить соблюдение правил Cloud Armor WAF на следующем этапе.

7. Обеспечьте защиту Cloud Armor с помощью основного набора правил OWASP ModSecurity.

Подтвердите, что уязвимость LFI устранена

Из Cloud Shell

curl -Ii http://$PUBLIC_SVC_IP/?a=../

Выход

HTTP/1.1 403 Forbidden
<...>

Подтвердите, что атака RCE смягчена

Из Cloud Shell

curl -Ii http://$PUBLIC_SVC_IP/ftp?doc=/bin/ls

Выход

HTTP/1.1 403 Forbidden
<..>

Подтвердите обнаружение известного сканера

Из Cloud Shell

curl -Ii http://$PUBLIC_SVC_IP -H "User-Agent: blackwidow"

Выход

HTTP/1.1 403 Forbidden
<..>

Подтвердите, что атака на протокол устранена

Согласно набору основных правил OWASP ModSecurity версии 3.0.2, атака на протокол смягчается

Из Cloud Shell

curl -Ii "http://$PUBLIC_SVC_IP/index.html?foo=advanced%0d%0aContent-Length:%200%0d%0a%0d%0aHTTP/1.1%20200%20OK%0d%0aContent-Type:%20text/html%0d%0aContent-Length:%2035%0d%0a%0d%0a<html>Sorry,%20System%20Down</html>"

Выход

HTTP/1.1 403 Forbidden
<..>

Подтвердите, что попытки фиксации сеанса заблокированы

Из Cloud Shell

curl -Ii http://$PUBLIC_SVC_IP/?session_id=a

Выход

HTTP/1.1 403 Forbidden
<..>

8. Ознакомьтесь с правилами безопасности Cloud Armor.

Теперь, когда мы создали политику безопасности, давайте посмотрим, какие именно правила были настроены.

d00e4102fc89e44f.png

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

  • Приоритет 9000 — Блокировать LFI (включение локального файла)
  • Приоритет 9001 — Блокировка RCE (удаленное выполнение кода/введение команд)
  • Приоритет 9002 — обнаружены сканеры блоков
  • Приоритет 9003 — блокировка атак на протоколы, таких как разделение HTTP и контрабанда HTTP.
  • Приоритет 9004 — Блокировка атак фиксации сеанса
  • Приоритет 10000 – разрешить доступ к веб-сайту с вашего IP-адреса.
  • Приоритет по умолчанию — Запретить.

*Обратите внимание, что правило «разрешить ваш IP» настроено с наивысшим приоритетом, чтобы разрешить доступ к сайту, однако блокирует любую атаку.

9. Наблюдайте за журналами политики безопасности Cloud Armor.

На странице консоли Cloud Armor вы можете просмотреть подробную информацию о политике безопасности и щелкнуть вкладку Logs , а затем ссылку View policy logs , чтобы перейти на страницу «Журналирование в облаке». Он будет автоматически фильтроваться на основе интересующей политики безопасности, например, resource.type:(http_load_balancer) AND jsonPayload.enforcedSecurityPolicy.name:(block-with-modsec-crs) . Просмотрите коды ответа об ошибке 403 и разверните сведения журнала, чтобы увидеть имя принудительной политики безопасности, соответствующее значение поля и, далее, предварительно настроенные идентификаторы выражений (или идентификатор подписи). На следующих снимках экрана показаны примеры журналов для примененных политик безопасности, настроенных в этой лаборатории кода.

журнал LFI

983a6cab0cff940d.png

журнал RCE

988a3a571f9d9d45.png

Журнал обнаружения сканера

7ed661863ba27555.png

Журнал атак на протокол

17ee3cbe0bd98939.png

Журнал фиксации сеанса

80d1ddfd0fe982e1.png

10. Уборка лаборатории

Очистите ресурсы теперь, когда вы завершили лабораторию.

Запустите эти команды, чтобы удалить политику безопасности Cloud Armor, балансировщик нагрузки, экземпляры, правила брандмауэра и сеть VPC.

Удалите политику безопасности Cloud Armor из серверной службы.

gcloud -q compute backend-services update juice-shop-backend --security-policy "" --global

Удалите политику безопасности Cloud Armor.

Удаление политики безопасности приведет к автоматическому удалению связанных правил.

gcloud -q compute security-policies delete block-with-modsec-crs

Удалить ресурсы балансировщика нагрузки

К этим ресурсам балансировщика нагрузки, которые необходимо удалить, относятся правило переадресации, целевые HTTP-прокси, карты URL-адресов, серверная часть, проверки работоспособности и группа экземпляров.

gcloud -q compute forwarding-rules delete juice-shop-rule --global

gcloud -q compute target-http-proxies delete juice-shop-proxy

gcloud -q compute url-maps delete juice-shop-loadbalancer

gcloud -q compute backend-services delete juice-shop-backend \
    --global

gcloud -q compute health-checks delete tcp-port-3000

gcloud -q compute instance-groups unmanaged delete juice-shop-group --zone=us-central1-c

Удалить экземпляр

gcloud -q compute instances delete owasp-juice-shop-app --zone us-central1-c

Удалите правила брандмауэра, подсеть и VPC.

gcloud -q compute firewall-rules delete allow-health-check
gcloud -q compute firewall-rules delete allow-js-site
gcloud -q compute networks subnets delete ca-lab-subnet --region us-central1
gcloud -q compute networks delete ca-lab-vpc

11. Поздравляем!

Поздравляем с завершением работы над кодом предварительно настроенных правил WAF Cloud Armor!

Что мы рассмотрели

  • Как настроить группу экземпляров и глобальный балансировщик облачной нагрузки
  • Как настроить политики безопасности Cloud Armor с предварительно настроенными правилами WAF для защиты от lfi, rce, сканеров, атак на протоколы и фиксации сеанса
  • Как проверить, что Cloud Armor смягчил некоторые из 10 основных атак OWASP с помощью журналов

Следующие шаги