Веб-брандмауэр
Веб-брандмауэр (Web Application Firewall, WAF) — это программный или аппаратно-программный комплекс, предназначенный для защиты веб-приложений от атак, эксплуатирующих уязвимости на уровне прикладного протокола HTTP/HTTPS. В отличие от сетевых экранов (межсетевых экранов), которые анализируют сетевые пакеты и порты, WAF работает на прикладном уровне (уровень 7 модели OSI) и анализирует содержимое HTTP-запросов и ответов, выявляя и блокируя вредоносные действия.
История
Концепция защиты веб-приложений на уровне контента возникла в конце 1990-х годов, когда рост числа динамических сайтов и электронной коммерции привёл к увеличению количества атак, таких как SQL-инъекции и межсайтовый скриптинг (XSS). Первые WAF представляли собой модификации веб-серверов (например, модули для Apache) или отдельные прокси-серверы с простыми наборами сигнатур.
В 2002 году некоммерческая организация OWASP (Open Web Application Security Project) опубликовала первый рейтинг десяти наиболее критичных уязвимостей веб-приложений (OWASP Top 10), который стал де-факто стандартом для разработчиков WAF. В середине 2000-х годов появились коммерческие решения, такие как ModSecurity (изначально коммерческий, позже открытый), а также облачные сервисы, предоставляющие WAF как услугу (например, Cloudflare). С развитием API и микросервисной архитектуры в 2010-х годах WAF эволюционировали для анализа JSON, XML и других форматов данных, а также для защиты RESTful API.
Принцип работы
WAF размещается между пользователем и веб-сервером (или между балансировщиком нагрузки и сервером) и перехватывает весь трафик. Анализ проходит в несколько этапов:
- Декодирование запроса: WAF восстанавливает исходное содержимое запроса, декодируя URL-кодирование, Base64, multipart/form-data и другие форматы, чтобы обойти простые обфускации.
- Парсинг: Запрос разбирается на составные части: метод (GET, POST, PUT), URI, заголовки, тело запроса, параметры строки запроса, куки.
- Проверка по правилам: Каждая часть запроса сравнивается с набором правил (сигнатур). Правила могут быть:
- Сигнатурные: Ищут точные совпадения с известными паттернами атак (например,
' OR 1=1 --для SQL-инъекции). - На основе регулярных выражений: Выявляют шаблоны, характерные для атак (например, попытки внедрения JavaScript-кода).
- Поведенческие: Анализируют аномалии в поведении (например, слишком частые запросы к одному URI, подозрительная последовательность действий).
- На основе машинного обучения: Некоторые современные WAF используют модели машинного обучения для выявления атак нулевого дня (zero-day), которые не имеют известных сигнатур.
- Принятие решения: На основе результатов проверки WAF может:
- Пропустить запрос (если он безопасен).
- Заблокировать запрос (если обнаружена атака).
- Записать в лог (для последующего анализа).
- Отправить на капчу (если подозревается бот).
- Санация: Изменить запрос (например, удалить опасные символы) перед передачей на сервер.
Классификация веб-брандмауэров
WAF классифицируются по способу развёртывания и по методу анализа.
По способу развёртывания
- Сетевые WAF (Network-based WAF): Аппаратные устройства, устанавливаемые в локальной сети перед серверами. Обеспечивают низкую задержку и высокую производительность, но требуют физического размещения и обслуживания.
- Хост-ориентированные WAF (Host-based WAF): Программные модули, интегрируемые непосредственно в веб-сервер (например, модуль для Apache, Nginx или IIS). Они имеют доступ к конфигурации сервера и могут анализировать трафик на более глубоком уровне, но потребляют ресурсы самого сервера.
- Облачные WAF (Cloud-based WAF): Предоставляются как услуга (SaaS). Трафик пользователя направляется через облачную инфраструктуру провайдера, где происходит фильтрация. Не требуют установки оборудования и легко масштабируются, но могут добавлять задержку из-за дополнительного сетевого прыжка. Примеры: Cloudflare WAF, AWS WAF, Azure WAF.
По методу анализа
- Сигнатурные WAF: Используют базу известных шаблонов атак. Эффективны против известных угроз, но уязвимы для атак нулевого дня и полиморфных атак, меняющих свой облик.
- Аномальные WAF: Строят модель нормального поведения приложения и блокируют любые отклонения от неё. Требуют длительного обучения и могут давать ложные срабатывания на легитимные запросы.
- Гибридные WAF: Сочетают оба подхода, используя сигнатуры для быстрой блокировки известных атак и поведенческий анализ для выявления новых.
Основные защищаемые типы атак
WAF разработаны для противодействия широкому спектру атак, перечисленных в OWASP Top 10. Наиболее распространённые из них:
- SQL-инъекции (SQLi): Внедрение SQL-кода в параметры запроса для манипуляции базой данных.
- Межсайтовый скриптинг (XSS): Внедрение вредоносного JavaScript-кода на страницу, которая затем выполняется в браузере другого пользователя.
- Межсайтовая подделка запроса (CSRF): Выполнение нежелательных действий от имени аутентифицированного пользователя.
- Внедрение команд ОС (OS Command Injection): Выполнение произвольных команд на сервере.
- Удалённое включение файлов (RFI/LFI): Включение и выполнение удалённых или локальных файлов на сервере.
- Атаки на аутентификацию: Брутфорс, подбор паролей, перебор сессионных cookie.
- HTTP-флуд (DDoS на уровне приложений): Массовая отправка легитимных HTTP-запросов с целью исчерпания ресурсов сервера.
- Атаки на API: Манипуляции с JSON/XML, внедрение вредоносных данных в поля API.
Критика и ограничения
Несмотря на эффективность, WAF не является панацеей и имеет ряд ограничений:
- Ложные срабатывания: Строгие правила могут блокировать легитимные запросы, что приводит к отказу в обслуживании реальных пользователей. Требуется тонкая настройка.
- Обход защиты: Опытные злоумышленники могут обходить сигнатурные WAF, используя обфускацию, кодирование или разделение запроса на несколько частей.
- Неэффективность против логических уязвимостей: WAF не может защитить от уязвимостей, связанных с бизнес-логикой приложения (например, возможность получить скидку, изменив значение параметра в запросе, если это не противоречит синтаксису HTTP).
- Зависимость от обновлений: Сигнатурные WAF требуют постоянного обновления базы правил для защиты от новых атак.
- Производительность: Глубокий анализ каждого запроса потребляет вычислительные ресурсы и может увеличивать время отклика сервера, особенно при высоких нагрузках.
Применение в России
В России WAF широко используются в государственных информационных системах, финансовом секторе, электронной коммерции и телекоммуникациях. Требования к защите веб-приложений регламентируются нормативными документами ФСТЭК России (Федеральная служба по техническому и экспортному контролю), в частности, приказами о защите информации в государственных информационных системах (ГИС) и автоматизированных системах управления производством (АСУ ТП). Многие российские компании, такие как Positive Technologies, Solar Security и InfoWatch, разрабатывают собственные сертифицированные WAF-решения, соответствующие требованиям законодательства РФ в области защиты персональных данных (152-ФЗ) и критической информационной инфраструктуры (187-ФЗ).
Интересные факты
- ModSecurity, один из самых популярных открытых WAF, первоначально был разработан как коммерческий продукт, но в 2012 году его исходный код был открыт под лицензией Apache 2.0.
- По данным отчётов OWASP, SQL-инъекции и XSS остаются в тройке самых распространённых атак на веб-приложения на протяжении более 15 лет, что подтверждает актуальность WAF.
- Некоторые облачные WAF-провайдеры используют глобальные сети доставки контента (CDN) для кэширования статического контента, что позволяет не только защищать, но и ускорять работу сайта.
Источники
- OWASP Top 10 – 2021. The Open Web Application Security Project.
- Приказ ФСТЭК России от 11 февраля 2013 г. № 17 «Об утверждении Требований о защите информации, не составляющей государственную тайну, содержащейся в государственных информационных системах».
- Федеральный закон от 27 июля 2006 г. № 152-ФЗ «О персональных данных».
- Федеральный закон от 26 июля 2017 г. № 187-ФЗ «О безопасности критической информационной инфраструктуры Российской Федерации».
- Документация по ModSecurity (Trustwave SpiderLabs).
- Технические материалы Positive Technologies, Solar Security.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →