Вебформат

Главная/Блог/ИТ-специалистам

ИТ-специалистам18 мая 20267 мин

Межсетевой экран на страже сайта: как WAF отсекает атаки

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

Поделиться
Межсетевой экран · первый рубеж против вредоносного трафика

Любой сайт рано или поздно сталкивается с атаками: взломы ради выкупа, заражение вирусом, спам. По данным за 2022 год, число кибератак на российские сайты выросло на 80%. Вредоносные запросы начинаются почти сразу после запуска - их видно в логе веб-сервера как непрерывное сканирование на уязвимости.

GET /.git/config
GET /.env
GET /server-status
POST /phpinfo
Типичные вредоносные запросы из лога: боты ищут уязвимости

Найдя уязвимость, бот загружает на сайт вирус, который ждёт активации. Первый рубеж против этого - межсетевой экран веб-приложений (web application firewall), фильтрующий входящий трафик.

Что межсетевой экран может и чего не может

Было

Может: обнаруживать и блокировать вредоносные запросы, отсекать спам, парализовать уже проникший вирус (он не получает внешних команд), собирать данные об атаках.

Стало

Не может: искать и удалять уже проникшие вирусы, защищать от DDoS-атак. Это не антивирус и не замена ему, а дополнительный рубеж - он не пускает новое, пока код чистят отдельно.

Двухступенчатое решение

Мы используем лёгкий межсетевой экран из двух уровней, который не зависит от платформы и подходит для Битрикс, WordPress, Laravel и Yii2:

  • Первая ступень - дополнение к nginx. Набор конфигов, который проверяет запросы штатным модулем ngx_http_map_module. Сигнатуры - регулярные выражения, ловящие опасные функции и подозрительные файлы ещё до PHP.
  • Вторая ступень - дополнение к PHP. Разбирает POST-запросы, которые веб-сервер не видит без доп. модулей. Правила группируются в профили: блокировка null-символов, запрет последовательности

Кейс: история одного заражения

Клиент обратился со странным контентом на страницах - сайт заражал вирус, подгружавший данные со сторонних ресурсов. Чистка давала нестабильный результат: вирус возвращался. Проверка резервных копий показала, что он сидел там в спящем виде ещё полугодовой и годовой давности. Как быстрое решение поставили межсетевой экран.

Сразу после включения он отсекал около 15% всех запросов. Для сравнения - на чистых сайтах доля вредоносного трафика была в десятки раз ниже:

  • Заражённый сайт: 712 292 вредоносных запроса из 4,75 млн - 15%.
  • Чистый сайт №1: 6 352 из 2,15 млн - 0,3%.
  • Чистый сайт №2: 20 225 из 3,14 млн - 0,64%.

После установки экрана вирус был парализован: оставаясь в коде, он не мог отвечать на внешние команды. Это дало время на глубокую очистку, а формы заодно закрылись от спама.


Межсетевой экран ставят локально, под полным контролем специалистов, и правила фильтрации настраивают под сайт. Он не заменяет антивирус, а дополняет его и работает в связке с остальными мерами безопасности сайта на 1С-Битрикс. Базовое состояние сайта можно проверить и самому - самостоятельным аудитом. Хотите отсекать атаки на входе - разберём защиту вашего сайта на диагностике.

Хотите отсечь атаки на входе в сайт?

Обсудим ваш проект - посмотрим логи и защиту вашего сайта и предложим установку межсетевого экрана и других мер, чтобы отсекать вредоносный трафик до того, как он навредит.