0Pricing
Cloud & IT Cert Prep · Урок

Брандмауэр веб-приложений в Front Door

Подключите политику WAF к профилю Front Door, включите управляемые наборы правил для защиты от атак из OWASP Top 10 и создайте пользовательские правила для блокировки известных вредоносных IP-адресов.

«Брандмауэр веб-приложений в Front Door» — бесплатный урок Cloud & IT Cert Prep на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Cloud & IT Cert Prep, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Cloud & IT Cert Prep содержит 4 уроков всего.

Что такое брандмауэр веб-приложений

Брандмауэр веб-приложений (WAF) проверяет запросы HTTP/HTTPS на уровне 7 и блокирует известные шаблоны атак до того, как они достигнут приложения. К распространённым атакам, от которых он защищает, относятся внедрение SQL-кода, межсайтовый скриптинг (XSS), удалённое включение файлов и аномалии протокола. Без WAF злоумышленники могут использовать уязвимости в коде приложения, даже если сеть правильно защищена. Azure WAF интегрируется с Azure Front Door и Azure Application Gateway.

Ресурс политики WAF

В Azure политика WAF — это отдельный ресурс, содержащий управляемые наборы правил и пользовательские правила. Вы создаёте политику, настраиваете правила, а затем связываете её с одной или несколькими конечными точками Front Door или экземплярами Application Gateway. Такая раздельная архитектура позволяет одной политике WAF защищать несколько конечных точек Front Door: одно изменение политики автоматически распространяется на все связанные конечные точки. Политики WAF существуют в определённом регионе Azure, но при подключении к Front Door защита применяется глобально во всех PoPs.

# Create a WAF policy for Front Door
az network front-door waf-policy create \
  --name myWAFPolicy \
  --resource-group myRG \
  --sku Premium_AzureFrontDoor \
  --mode Prevention

Режимы обнаружения и предотвращения

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

# Switch WAF policy to Prevention mode
az network front-door waf-policy update \
  --name myWAFPolicy \
  --resource-group myRG \
  --mode Prevention

Набор правил Microsoft по умолчанию

Microsoft Default Rule Set (DRS) — это управляемая группа правил, которую поддерживает команда безопасности Microsoft. Она содержит правила для обнаружения уязвимостей из OWASP Top 10, а также сигнатуры ботов и шаблоны атак с перебором учетных данных. Microsoft постоянно обновляет DRS, добавляя новые правила в ответ на возникающие угрозы, поэтому Вам не нужно писать правила самостоятельно. Новые версии DRS выпускаются периодически (например, DRS 2.1), и Вы можете обновить политику WAF до более новой версии во время окна технического обслуживания.

# Add the Microsoft Default Rule Set to your WAF policy
az network front-door waf-policy managed-rules add \
  --policy-name myWAFPolicy \
  --resource-group myRG \
  --type Microsoft_DefaultRuleSet \
  --version '2.1'

Набор правил OWASP

OWASP Core Rule Set (CRS) доступен в Application Gateway WAF и входит в состав CDN WAF уровня Verizon. Он содержит более 200 правил, охватывающих OWASP Top 10: атаки с внедрением, нарушения аутентификации, раскрытие конфиденциальных данных, атаки через внешние сущности XML и многое другое. У каждого правила есть ID и группа (например, REQUEST-942-APPLICATION-ATTACK-SQLI). Вы можете отключать отдельные правила по ID, чтобы подавлять ложные срабатывания, не отключая всю группу правил.

Пользовательские правила WAF

Пользовательские правила позволяют задавать конкретные условия разрешения или блокировки, которые не охватывают управляемые наборы правил. Пользовательское правило состоит из одного или нескольких условий сопоставления (например, исходный IP-адрес, URI запроса, значение заголовка или строка запроса), объединенных с действием (Разрешить, Block, Журналировать или Redirect). Пользовательские правила проверяются перед управляемыми наборами правил и поддерживают порядок приоритетов. Распространенный пример использования: блокировка определенных стран, ограничение частоты запросов от слишком активных сканеров или добавление доверенного IP-адреса системы мониторинга в список исключений, чтобы обойти правила WAF.

# Create a custom rule to block requests from a specific IP
az network front-door waf-policy rule create \
  --name BlockMaliciousIP \
  --policy-name myWAFPolicy \
  --resource-group myRG \
  --priority 100 \
  --action Block \
  --rule-type MatchRule \
  --match-condition remoteAddr IPMatch '1.2.3.4/32'

Ограничение частоты запросов

Правила ограничения частоты запросов ограничивают количество HTTP-запросов с одного IP-адреса клиента в течение заданного временного окна (1 или 5 минут). Когда число запросов превышает пороговое значение, WAF возвращает этому клиенту HTTP 429 (слишком много запросов). Ограничение частоты запросов эффективно защищает от атак методом перебора при входе, перебора учетных данных и злоупотребления API. Порог запросов и временное окно настраиваются в определении пользовательского правила политики WAF.

# Create a rate limit rule — max 100 requests per minute per IP
az network front-door waf-policy rule create \
  --name RateLimitLogin \
  --policy-name myWAFPolicy \
  --resource-group myRG \
  --priority 200 \
  --action Block \
  --rule-type RateLimitRule \
  --rate-limit-threshold 100 \
  --rate-limit-duration-in-minutes 1 \
  --match-condition requestUri Contains '/login'

Набор правил защиты от ботов

Набор правил Bot Manager (доступен в Front Door Premium) классифицирует входящий трафик как трафик хороших ботов (проверенные поисковые роботы), плохих ботов (известные сканеры и средства поиска уязвимостей) и неизвестных ботов (неклассифицированный автоматизированный трафик). Вы можете настроить действие для каждой категории: разрешать хороших ботов, блокировать плохих и журналировать неизвестных. Без защиты от ботов автоматизированные сканеры могут создавать огромную нагрузку, увеличивать расходы и скрывать реальный пользовательский трафик в аналитике.

Исключения WAF

Управляемые наборы правил иногда вызывают ложные срабатывания — блокируют легитимные запросы, которые случайно соответствуют шаблону правила безопасности. Например, CMS с расширенным редактированием текста может отправлять HTML в теле POST-запросов, что соответствует правилу XSS. Исключения WAF позволяют исключить определенные атрибуты запроса (заголовки запроса, файлы cookie, параметры строки запроса или поля тела запроса) из проверки правил — глобально либо для конкретной группы правил или ID правила — без полного отключения правила.

Мониторинг WAF по журналам

WAF создает два типа записей журнала в Azure Monitor: журналы WAF (каждый запрос, соответствующий правилу, независимо от того, был ли он заблокирован или зарегистрирован) и журналы доступа (все запросы, включая прошедшие без соответствия какому-либо правилу). Отправляйте эти журналы в рабочую область Log Analytics и используйте KQL, чтобы анализировать тенденции заблокированных запросов, выявлять наиболее атакуемые конечные точки или исследовать конкретный IP-адрес клиента. Рабочая книга WAF Insights на портале предоставляет готовые панели мониторинга для визуализации этих журналов.

// KQL — top 10 WAF rule hits in the last 24h
AzureDiagnostics
| where Category == 'FrontDoorWebApplicationFirewallLog'
| where TimeGenerated > ago(24h)
| where action_s == 'Block'
| summarize HitCount = count() by ruleName_s
| top 10 by HitCount desc

Связывание политики WAF с Front Door

Чтобы активировать защиту WAF, необходимо связать политику WAF с профилем безопасности Front Door. На портале перейдите в профиль Front Door, выберите пункт Политики безопасности и добавьте политику WAF, указав домены, к которым она применяется. Кроме того, для связывания политики можно использовать CLI. После связывания WAF проверяет все HTTP/HTTPS-запросы, поступающие на эти домены Front Door, прежде чем направить их к источнику. Для каждого домена можно связать одну политику WAF.

# Associate WAF policy with a Front Door security policy
az afd security-policy create \
  --profile-name myFrontDoor \
  --resource-group myRG \
  --security-policy-name mySecurityPolicy \
  --domains /subscriptions/<sub>/resourceGroups/myRG/providers/Microsoft.Cdn/profiles/myFrontDoor/customDomains/myDomain \
  --waf-policy /subscriptions/<sub>/resourceGroups/myRG/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies/myWAFPolicy

Быстрая проверка

Проверьте, насколько хорошо Вы поняли рассмотренные в этом уроке концепции Microsoft Azure Fundamentals (AZ-900).

Итоги урока

В этом уроке Вы узнали, что политики WAF содержат управляемые наборы правил (Microsoft DRS, OWASP) и пользовательские правила, которые проверяют HTTP-трафик до его поступления к источнику; режим обнаружения позволяет настроить правила перед переключением в режим предотвращения; а правила ограничения частоты запросов защищают от атак методом перебора и злоупотреблений. Далее мы рассмотрим использование обработчика правил Front Door для оптимизации производительности с помощью перенаправлений и заголовков безопасности.

Часто задаваемые вопросы

Урок «Брандмауэр веб-приложений в Front Door» бесплатный?

Да — полный текст урока «Брандмауэр веб-приложений в Front Door» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Cloud & IT Cert Prep, подпишись на CoddyKit PRO. Курс Cloud & IT Cert Prep содержит 4 уроков всего.

Чему я научусь в уроке «Брандмауэр веб-приложений в Front Door»?

Подключите политику WAF к профилю Front Door, включите управляемые наборы правил для защиты от атак из OWASP Top 10 и создайте пользовательские правила для блокировки известных вредоносных IP-адресов. Ты практикуешь Cloud & IT Cert Prep с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Cloud & IT Cert Prep?

Предыдущий опыт не требуется. Cloud & IT Cert Prep на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.

Сколько времени занимает урок «Брандмауэр веб-приложений в Front Door»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Cloud & IT Cert Prep?

Да. Каждый урок Cloud & IT Cert Prep включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Профили и конечные точки Azure CDN
  2. Azure Front Door: глобальная балансировка нагрузки
  3. Брандмауэр веб-приложений в Front Door
  4. Оптимизация производительности с помощью правил CDN
← Назад к Cloud & IT Cert Prep