WAF — брандмауэр веб-приложений¶
WAF (Web Application Firewall, брандмауэр веб-приложений) — это сетевой фильтр, анализирующий HTTP- и HTTPS-трафик между клиентом и веб-приложением и блокирующий вредоносные запросы, соответствующие заданным правилам. В отличие от классического межсетевого экрана, работающего на уровне сетевых протоколов, WAF работает на уровне приложений и понимает семантику HTTP-запросов: заголовки, параметры, тело запроса, cookies и URL-пути.
¶Назначение
Основная задача WAF — защита веб-приложений от атак, эксплуатирующих уязвимости в коде приложения. Классические сетевые брандмауэры фильтруют трафик по IP-адресам и портам, но не анализируют содержимое HTTP-запроса, поэтому не могут отличить легитимный запрос к веб-форме от попытки SQL-инъекции. WAF заполняет этот пробел, работая как прокси или как модуль, встроенный в веб-сервер.
Типовые угрозы, от которых защищает WAF:
- SQL-инъекции (SQLi) — внедрение вредоносного SQL-кода в параметры запроса;
- межсайтовый скриптинг (XSS) — внедрение вредоносного JavaScript в страницы;
- атаки типа «грубая сила» (brute force) — перебор учётных данных;
- path traversal — попытки доступа к файлам за пределами веб-каталога;
- атаки на API — неавторизованный доступ, злоупотребление функциональностью;
- отказ в обслуживании (DoS) на уровне приложений.
¶Принцип работы
WAF анализирует входящие запросы по набору правил (сигнатур) и решает, пропустить, заблокировать или пометить запрос. Обработка запроса включает:
- Разбор HTTP-запроса — декодирование URL, заголовков, тела, обработка кодировок и многосекционных форм.
- Сопоставление с правилами — проверка по сигнатурам атак, эвристикам и поведенческим моделям.
- Принятие решения — разрешение, блокировка, капча или перенаправление.
Режимы работы WAF:
| Режим | Описание |
|---|---|
| Блокирующий (inline) | WAF стоит на пути трафика и немедленно отклоняет вредоносные запросы |
| Мониторинг (passive) | WAF только логирует подозрительные запросы, не влияя на трафик |
| Сканирование кода | Анализ исходного кода приложения на уязвимости до развёртывания |
¶Классификация
По способу развёртывания WAF делятся на:
- Аппаратные — отдельные сетевые устройства (апплайенсы), устанавливаемые между интернетом и приложением;
- Программные (виртуальные) — ПО, устанавливаемое на сервер или виртуальную машину;
- Облачные (WAF-as-a-Service) — сервисы, фильтрующие трафик на стороне провайдера (например, Cloudflare WAF, AWS WAF, Yandex Cloud WAF). Трафик направляется через провайдера, который применяет правила и пересылает запрос к приложению;
- Встроенные в веб-сервер — модули вроде ModSecurity для Apache и Nginx.
По способу определения правил:
- Сигнатурные — сравнение запросов с базой известных атак;
- Поведенческие (аномалийные) — построение модели «нормального» поведения и отклонение от неё;
- Гибридные — комбинация сигнатур и поведенческого анализа.
¶Стандарты и правила
Основой для многих WAF является стандарт OWASP ModSecurity Core Rule Set (CRS) — открытый набор правил, покрывающий базовые классы атак OWASP Top 10. OWASP (Open Web Application Security Project) — независимое сообщество, публикующее список наиболее критичных уязвимостей веб-приложений.
Российские требования к защите веб-приложений сформулированы в ГОСТ Р 57580.1-2018 «Безопасность финансовых (банковских) операций» и в приказах ФСТЭК, обязывающих банки и операторов критической информационной инфраструктуры (КИИ) применять средства защиты от атак уровня приложений.
¶Ограничения
WAF не является панацеей и имеет ряд ограничений:
- Ложные срабатывания — агрессивные правила могут блокировать легитимные запросы, что требует настройки и тестирования;
- Невозможность защитить от уязвимостей в логике приложения — WAF не заменяет аудит кода и безопасное программирование;
- Обход сигнатур — злоумышленники используют кодирование, фрагментацию и другие техники для обхода правил;
- Нагрузка — инспекция HTTPS-трафика требует расшифровки (TLS-терминации), что увеличивает задержку и нагрузку на процессор.
¶Применение
WAF широко используется в банковской сфере, электронной коммерции, госсекторе и облачной инфраструктуре. В России среди распространённых решений — «Лаборатория Касперского» (WAF в составе комплексов защиты), «Инфотекс», «Ростелеком-Солар» (Solar WAF), а также облачные WAF от Яндекса и Selectel. Законодательство в области КИИ фактически делает WAF обязательным компонентом защиты для операторов критической инфраструктуры.
Источники:
- OWASP ModSecurity Core Rule Set (CRS) — официальная документация проекта
- OWASP Top Ten — список наиболее критичных рисков безопасности веб-приложений
- ГОСТ Р 57580.1-2018 «Безопасность финансовых (банковских) операций»
- Документация Cloudflare WAF, AWS WAF, Yandex Cloud WAF
- Приказ ФСТЭК России № 239 «Об утверждении состава и содержания организационных и технических мер по защите персональных данных»
