Представляем полное обнаружение транзакций для Cloudflare WAF

Источник: Cloudflare Blog•

Представляем полное обнаружение транзакций для Cloudflare WAF

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

Сегодня мы расширяем возможности нашего межсетевого экрана веб-приложений (WAF), добавляя две новые функции: полное обнаружение транзакций и правила для ответов. Полное обнаружение транзакций анализирует каждый HTTP-запрос вместе с его ответом для выявления следов эксплуатации уязвимостей. Это помогает ответить как на вопрос «Выглядит ли этот запрос вредоносным?», так и на вопрос «Что произошло, когда приложение обработало его?». Правила для ответов позволяют заблокировать ответ исходного сервера до того, как он достигнет клиента.

Это ценная защита, поскольку новейшие передовые модели обнаруживают уязвимости, глубоко скрытые в широко используемом программном обеспечении, давая защитникам понимание того, что нужно исправить, а злоумышленникам — новые пути для атак. Недавняя уязвимость php2shell показывает всю серьезность ситуации: изъян в распространенном компоненте программного обеспечения может подвергнуть риску приложения по всему Интернету. ИИ-агенты, сканирующие на наличие уязвимостей, могут быть чрезвычайно настойчивыми, адаптируя полезную нагрузку на основе обратной связи и связывая воедино уязвимости, учетные данные и разрешения. Ответ приложения может показать, сработала ли попытка, и предоставить злоумышленнику информацию, которая поможет ему продвинуться глубже.

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

Благодаря этим новым возможностям клиенты могут использовать управляемую защиту Cloudflare или создавать собственные политики, объединяющие свойства запросов и ответов. Это расширяет нашу постоянно работающую структуру безопасности приложений, а результаты обнаружения доступны в Security Analytics для проведения расследований. Наша первая управляемая защита с использованием этой функции направлена на недавно обнародованную уязвимость php2shell.

И самое приятное? Мы делаем эти новые возможности общедоступными для всех клиентов Cloudflare, включая тарифный план Free.

Проверки только запросов недостаточно

Cloudflare WAF защищает веб-сайты и API с помощью управляемых правил, пользовательских правил и ограничения частоты запросов. Управляемые правила обеспечивают защиту от известных методов атак и уязвимостей, в то время как пользовательские правила позволяют командам создавать собственные политики, используя такие параметры, как IP-адрес, путь URL, заголовки и тело запроса. Эти элементы управления работают на уровне запросов, предотвращая достижение исходного сервера эксплойтами или нежелательным трафиком.

Для многих угроз это правильный уровень для принятия мер. Однако рассмотрение каждого подозрительного запроса как подтвержденного эксплойта ставит перед сложным выбором. Широкие сигнатуры запросов могут перехватить больше потенциальных атак, но они также могут приводить к «ложным срабатываниям», когда под них попадает легитимный трафик, что в итоге нарушает работу приложений. Развертывание только тех правил, которые не вызывают ложных срабатываний, снижает этот риск, но может оставлять больше возможностей для прохождения на сервер более неоднозначного трафика.

Ответ сервера предоставляет недостающие доказательства. Теперь Cloudflare может сопоставить его с запросом, который его породил, поэтому средства обнаружения могут учитывать результат всей HTTP-транзакции.

В качестве иллюстративного примера рассмотрим приложение, которое позволяет пользователям скачивать файлы. Злоумышленник манипулирует параметром файла, чтобы запросить частный файл конфигурации за пределами разрешенного каталога:

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

Полное обнаружение транзакций предоставляет недостающий элемент: оно может сопоставить попытку доступа к файлу с содержимым ответа, характерным для конфиденциального файла конфигурации. Текст, похожий на конфигурационный, может легитимно присутствовать в документации или примерах для скачивания; его сочетание с попыткой обхода каталога предоставляет более веские доказательства утечки конфиденциальных данных, чем каждый из сигналов по отдельности. В этом случае правило ответа может заменить ответ исходного сервера страницей блокировки Cloudflare WAF и ошибкой HTTP 403 до того, как он дойдет до клиента, эффективно пресекая эксплойт за счет предотвращения передачи конфиденциальной информации злоумышленнику.

Обнаружение и митигация по задумке разделены

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

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

В дополнение к полям обнаружения запросов в нашу платформу добавлены следующие новые поля:

Поле

Описание

cf.waf.signature.response.confidence

Значения достоверности, связанные с совпадающими сигнатурами

cf.waf.signature.response.categories

Категории, связанные с совпадающими сигнатурами

cf.waf.signature.response.ref

Идентификаторы ссылок на сигнатуры, до 10 штук

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

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

Создание правил на основе ответов

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

Теперь команды безопасности могут объединять свойства запросов и ответов с результатами обнаружения, чтобы решать, какие ответы следует блокировать. Когда правило блокировки срабатывает, Cloudflare заменяет ответ исходного сервера страницей блокировки WAF или пользовательским ответом.

Элементы управления фазой ответа доступны в панели управления Cloudflare в нижней части страницы Security > Security Rules (Безопасность > Правила безопасности), как для управляемых средств защиты, так и для пользовательских правил.

Мы выпустили управляемые и пользовательские правила для всех тарифных планов, включая Free. Со временем мы будем придерживаться того же подхода, который используется для обнаружения запросов: управляемые средства обнаружения для бесплатных планов фокусируются на резонансных уязвимостях, в то время как платным клиентам доступен более богатый каталог средств обнаружения.

Управляемые обнаружения

Все клиенты получают защиту с помощью полного набора средств обнаружения транзакций в рамках набора правил по умолчанию Cloudflare Managed Response Firewall, который разработан для простого развертывания в один клик и упрощенной настройки. Когда сигнатура совпадает, управляемое обнаружение блокирует ответ и возвращает стандартную страницу блокировки WAF.

Вы можете отредактировать область действия набора правил по умолчанию Cloudflare Managed Response Firewall для запуска обнаружения только на части своих приложений, например, исключив обнаружение или ограничив его определенным путем. Платящие клиенты могут использовать поля обнаружения в пользовательских правилах ответов для создания более адаптированных политик.

Пользовательские правила

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

http.request.uri.path starts_with "/admin" and not http.request.headers["x-internal-user"][0] eq "true" and http.response.code eq 200 and http.response.headers["content-type"][0] contains "text/html"

Это блокирует запрос только тогда, когда неаутентифицированный запрос направлен на `/admin`, а исходный сервер фактически возвращает успешную HTML-страницу администрирования. Это не блокирует обычные сбои аутентификации, перенаправления или трафик, не относящийся к администрированию.

Все клиенты могут создавать до трех пользовательских правил ответов, поддерживающих действия логирования (Log) и блокировки (Block). Поля и функции, доступные в ответ на пользовательские правила, повторяют то, к чему ваш тарифный план уже предоставляет доступ в пользовательских правилах запросов. Создание правил для тела ответа пока недоступно.

Следуя подходу обнаружения сигнатур атак, платящие клиенты также имеют доступ к результатам обнаружения атак через упомянутые выше поля cf.waf.signature.response.*. Эти поля можно комбинировать с другими параметрами (такими как имя хоста, путь URL, исходный IP-адрес, заголовок запроса) для включения защиты на отдельном пути или ограничения политики контекстом, специфичным для приложения. В настоящее время мы внедряем поля ответов для всех наших учетных записей. Если у вас к ним еще нет доступа, обратитесь к своей команде поддержки учетной записи.

Исследование совпадающих запросов

Когда управляемое правило или пользовательское правило ответов регистрирует или блокирует транзакцию, событие отображается в разделе Security Events. Это означает, что специалисты по реагированию могут проследить любое обнаружение до полного контекста запроса и конкретного сработавшего правила.

В настоящее время правила, применяемые только к запросам, и правила для полных транзакций отображаются вместе на одной странице аналитики. В Security Events события, сгенерированные правилами ответов, являются частью службы Managed Rules или Custom Rules. Вы можете отфильтровать события, принадлежащие конкретному идентификатору правила, в соответствующем разделе списка правил.

Начните работу сегодня

Обнаружение полных транзакций общедоступно для всех зон, проксирующих трафик через Cloudflare. Чтобы убедиться, что вы защищены, перейдите в раздел Security > Security Rules на панели управления Cloudflare. Если вы хотите настроить свою политику, начните с просмотра обнаружений полных транзакций в Security Analytics, а затем создайте политику этапа ответа, которая подходит вашему приложению.

О чём эта статья

Ещё в разделе «Облака и инфраструктура»

Все →

Ещё от Cloudflare