Защита от злоумышленников: введение в брандмауэр веб-приложений Azure

Брандмауэр веб-приложений (WAF), доступный как часть раздела WAF SKU шлюза приложений Azure, обеспечивает защиту веб-приложений от распространенных эксплойтов и уязвимостей. Этот брандмауэр веб-приложений настраивается на основе правил ядра OWASP 2.2.9 или 3.0.
Веб-приложения являются общими целями для нескольких типов вредоносных атак, использующих многие широко известные уязвимости. Некоторые из наиболее распространенных среди этих атак — межсайтовый скриптинг и SQL-инъекция. Предотвращение подобных атак в самом коде приложения может оказаться чрезвычайно сложной задачей.
Для такого рода предотвращения может потребоваться тщательный мониторинг, установка исправлений и обслуживание на нескольких уровнях приложения. Когда мы развертываем центральный брандмауэр веб-приложений, это помогает упростить управление безопасностью, а также дает администраторам приложений больше уверенности в том, что приложение хорошо защищено от вторжений или угроз.
Верно также и то, что решение типа WAF может действовать намного быстрее против угрозы безопасности, поскольку оно может исправить известную уязвимость в одном центральном месте, а не защищать каждое веб-приложение по отдельности.
Любой существующий шлюз приложений можно довольно легко преобразовать в приложение, поддерживаемое WAF.

Как работает шлюз приложений?
Шлюз приложений работает как контроллер доставки приложений. Он предлагает сопоставление сеансов на основе файлов cookie, циклическое распределение нагрузки, завершение SSL, маршрутизацию на основе содержимого, улучшения безопасности и возможность размещения нескольких веб-сайтов. Некоторые из связанных с безопасностью улучшений, предлагаемых шлюзом приложений, включают сквозную поддержку SSL и управление политиками SSL.
Учитывая тот факт, что WAF теперь напрямую интегрирован в предложение ADC, безопасность приложений теперь невероятно повышена. Это создает центральное расположение, которое легко настроить и которое можно использовать для защиты ваших веб-приложений от распространенных уязвимостей. Нет, он не сможет защитить вас от сахарного жука, когда вы в следующий раз увидите глазированный пончик или кусочек морковного пирога! Как получить такую защиту?!
Преимущества шлюза приложений и WAF
Вот основные преимущества, предоставляемые шлюзом приложений и WAF:
Защита
- Ваше веб-приложение защищено от атак и веб-уязвимостей без каких-либо модификаций внутреннего кода.
- Несколько веб-приложений защищены одновременно из-за шлюза. Шлюз приложений поддерживает хостинг до 20 веб-сайтов из-за одного шлюза, каждый из которых будет защищен с помощью WAF в случае возникновения веб-атак.
Мониторинг
- Ваше веб-приложение отслеживается на предмет атак с использованием журнала WAF в реальном времени. Этот журнал фактически интегрирован с монитором Azure, чтобы отслеживать журналы и оповещения WAF и легко отслеживать тенденции.
- Вскоре вы увидите, что Центр безопасности Azure будет интегрирован с WAF. Центр безопасности Azure предоставляет единое место, откуда можно получить централизованное представление полного состояния безопасности всех ваших ресурсов Azure.
Настройка
- Правила и группы правил WAF можно настроить в соответствии с требованиями вашего приложения, а также исключить ложные срабатывания.
Функции
Брандмауэр веб-приложений по умолчанию предварительно настроен на CRS 3.0, или вы можете использовать CRS 2.2.9. Наибольшее преимущество CRS 3.0 по сравнению с CRS 2.2.9 заключается в том, что он предлагает гораздо более низкий уровень ложных срабатываний. Кроме того, вы получаете возможность настраивать правила в соответствии с вашими конкретными потребностями. Вот некоторые из наиболее распространенных уязвимостей, атак, нарушений и программ злоумышленников, от которых вас защищает брандмауэр веб-приложений:
- SQL-инъекция.
- Межсайтовый скриптинг
- Распространенные веб-атаки, такие как контрабанда HTTP-запросов, внедрение команд, разделение HTTP-ответов и атаки (файлы) с удаленным включением.
- Нарушения протокола HTTP.
- Аномалии протокола HTTP, включая отсутствие пользовательского агента хоста и заголовков accept.
- Боты, сканеры и поисковые роботы.
- Распространенные неверные настройки (IIS, Apache и т. д.).

Основные наборы правил
Шлюз приложений поддерживает два набора правил: CRS 2.2.9 и CRS 3.0. Эти наборы правил представляют собой наборы правил, предназначенных для защиты всех ваших веб-приложений от вредоносных действий.
OWASP_3.0
Базовый набор правил версии 3.0 включает 13 различных групп правил, как показано в таблице ниже. Каждая из этих групп правил содержит несколько разных правил, каждое из которых можно отключить по отдельности.
Группа правил | Описание |
ЗАПРОС-910-IP_REPUTATION | Правила защиты от вредоносной активности или известных спамеров |
ЗАПРОС-911-МЕТОД-ПРИМЕНЕНИЕ | Правила, используемые для блокировки методов (PUT, PATCH <..) |
ЗАПРОС-912-DOS-ЗАЩИТА | Защита от атак типа «отказ в обслуживании» |
ЗАПРОС-913-ОБНАРУЖЕНИЕ СКАНЕРА | Защита от окружения и сканеров портов |
ЗАПРОС-920-ПРОТОКОЛ-ОБСЛУЖИВАНИЕ | Для защиты от проблем с кодировкой и протоколом |
ЗАПРОС-930-ПРИЛОЖЕНИЕ-АТАК-LFI | Для защиты от атак на пути и файлы |
ЗАПРОС-931-ПРИЛОЖЕНИЕ-АТАК-RFI | Для защиты от удаленного включения файлов |
ЗАПРОС-932-ПРИЛОЖЕНИЕ-АТАК-RCE | Для защиты от удаленного выполнения кода |
ЗАПРОС-933-ПРИЛОЖЕНИЕ-АТТАКА-PHP | Для защиты от атак PHP-инъекций |
ЗАПРОС-941-ПРИЛОЖЕНИЕ-АТАК-XSS | Для защиты от кросс-скриптинга |
ЗАПРОС-942-ПРИЛОЖЕНИЕ-АТТАКА-SQLI | Для защиты от SQL-инъекций |
ЗАПРОС-943-ПРИЛОЖЕНИЕ-АТАК-SESS-ФИКСАЦИЯ | Для защиты от атак Sessions Fixation |
OWASP_2.2.9
Базовое правило, установленное в версии 2.2.9, содержит 10 различных групп правил, как показано в таблице ниже. Каждая из этих групп правил содержит несколько разных правил, каждое из которых можно отключить по отдельности.
Группа правил | Описание |
crs_20_protocol_violations | Для защиты от нарушений протокола, таких как GET с телом запроса, недопустимыми символами и т. д. |
crs_21_protocol_аномалии | Для защиты от неверной информации в заголовке |
crs_23_request_limits | Для защиты от файлов или аргументов, превышающих ограничения |
crs_30_http_policy | Для защиты от ограниченных заголовков, методов и типов файлов |
crs_35_bad_robots | Для защиты от сканеров и поисковых роботов |
crs_40_generic_attacks | Для защиты от общих атак, таких как внедрение PHP, удаленное включение файлов и фиксация сеансов) |
crs_41_sql_injection_attacks | Для защиты от атак SQL-инъекций |
crs_41_xss_attacks | Для защиты от межсайтового скриптинга |
crs_42_tight_security | Для защиты от атак обхода пути |
crs_45_trojans | Для защиты от бэкдор-троянов |

Режимы WAF
Шлюз приложений WAF можно настроить для работы в двух разных режимах:
- Режим обнаружения: если WAF настроен для работы в этом режиме, WAF шлюза регистрирует и отслеживает все предупреждения, связанные с угрозами, в один файл журнала. Для этого необходимо включить диагностику журналирования с помощью раздела диагностики. Также необходимо убедиться, что журнал WAF выбран и включен. При работе в этом режиме брандмауэр не будет блокировать входящие запросы.
- Режим предотвращения: при работе в этом режиме шлюз блокирует атаки и вторжения, обнаруженные в соответствии с его активными правилами. Злоумышленнику возвращается исключение 403 — неавторизованный доступ, и соединение разрывается. Такие атаки продолжают регистрироваться в журналах WAF.
Защитите свои веб-приложения от любого вредоносного доступа с помощью брандмауэра веб-приложений. Это путь вперед.