Перейти к содержанию
Innovialabs

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

Основы3 мин

Коротко

WAF — это фильтр перед сайтом, который проверяет HTTP-запросы и отсекает типовые атаки вроде SQL-инъекций и XSS. Он снижает риск, но не заменяет обновления и безопасный код, а оправдан прежде всего для сайтов с формами, личным кабинетом, платежами или заметной публичностью.

Коротко: что такое WAF

WAF (Web Application Firewall) — межсетевой экран уровня приложения. Он стоит между посетителями и сайтом и смотрит на содержимое HTTP-запросов: адрес, параметры, заголовки, тело формы. Если запрос похож на атаку, WAF его блокирует, ограничивает или записывает в лог.

Обычный файрвол на сервере решает другую задачу: он разрешает или запрещает соединения по IP-адресам и портам. Ему не важно, что внутри запроса. WAF, наоборот, разбирает именно содержимое — поэтому видит попытку внедрить SQL в поле поиска.

Что WAF блокирует хорошо

  • Типовые инъекции: SQL-инъекции, XSS, команды ОС в параметрах.
  • Сканеры и ботов: массовый перебор адресов вроде /wp-admin или /.env, известные вредоносные user-agent.
  • Перебор паролей и злоупотребления: rate limiting на страницу входа, API и формы.
  • Атаки на известные уязвимости: многие сервисы выпускают «виртуальные патчи» — правило, которое закрывает дыру в популярной CMS до того, как вы обновились.
  • DDoS на уровне приложения (L7): облачные WAF обычно работают вместе с защитой от DDoS и умеют отсеивать флуд запросами.

Чего WAF не умеет

  • Не исправляет код. Если в логике приложения есть ошибка, WAF её не увидит: например, пользователь меняет id в URL и получает чужой заказ. Такие запросы выглядят абсолютно нормально.
  • Не защищает от слабых паролей, утечки ключей, фишинга сотрудников.
  • Не заменяет обновления. Виртуальный патч — временная мера, а не повод не обновлять CMS и плагины.
  • Не спасёт, если трафик идёт в обход. Если реальный IP сервера известен, злоумышленник может обратиться напрямую. Сервер нужно настроить так, чтобы он принимал трафик только от WAF.
  • Ограниченно видит зашифрованное. WAF должен расшифровывать TLS, иначе он не видит содержимого запросов. Облачные сервисы делают это у себя — это стоит учитывать при работе с чувствительными данными.

Облачный или self-hosted

КритерийОблачный WAFSelf-hosted (например, ModSecurity)
Как подключаетсяСмена DNS, трафик идёт через сервисМодуль веб-сервера или отдельный прокси
ЗапускБыстро, правила готовыеНужны установка и настройка
ОбслуживаниеБерёт на себя провайдерОбновление правил и разбор логов — на вас
Защита от DDoSОбычно включенаОграничена ресурсами вашего сервера
Контроль над даннымиТрафик расшифровывается у провайдераВсё остаётся в вашей инфраструктуре

ModSecurity — открытый движок WAF, который обычно используют вместе с набором правил OWASP Core Rule Set (CRS). Это гибкий и бесплатный вариант, но он требует опыта: правила нужно подстраивать под конкретное приложение. Документация набора правил — на coreruleset.org.

Ложные срабатывания

Главная практическая боль WAF — false positives: легитимный запрос выглядит как атака. Типичные примеры: статья с примером кода в админке, поле с HTML от визуального редактора, необычные символы в именах.

Как внедрять без вреда для бизнеса:

  1. Включите WAF сначала в режиме мониторинга (только логирование).
  2. Неделю-две смотрите логи: какие правила срабатывают на нормальных пользователей.
  3. Добавьте точечные исключения — для конкретного URL и параметра, а не отключение правила целиком.
  4. Переведите в режим блокировки и следите за жалобами и конверсией форм.
  5. Повторяйте разбор после крупных изменений сайта.

Когда WAF оправдан

Скорее нужен, если:

  • на сайте есть личный кабинет, платежи, формы с персональными данными;
  • сайт работает на популярной CMS с плагинами, которые не всегда обновляются вовремя;
  • вы уже сталкивались с ботами, перебором паролей или DDoS;
  • требования партнёров или регуляторов предполагают защиту веб-приложений.

Можно отложить, если это статичная визитка без форм и админки — там важнее HTTPS, обновления и резервные копии. Но базовый облачный тариф с DDoS-защитой часто подключается за минуты и редко мешает.

Частые вопросы

Да. WAF отсекает типовые атаки, а пентест ищет ошибки в логике и конфигурации, которые фильтр пропустит. Эти меры дополняют друг друга.

Поможем с этим

Если хотите не разбираться самим, а получить результат — этим мы занимаемся каждый день.

Обсудить проект

Читайте также

Есть идея или задача? Расскажите нам

Ответим в течение рабочего дня и предложим решение. Консультация бесплатная.