← Документация WAF / custom-rules / use-cases
Остановите атаки R-U-Dead-Yet? (R.U.D.Y.)
Атаки R-U-Dead-Yet (R.U.D.Y.) вызывают отказ в обслуживании (DoS), отправляя длинные поля форм. С помощью пользовательских правил можно останавливать такие атаки, блокируя запросы, в которых отсутствует действительный файл cookie сессии.
В этом примере объединяются три выражения, чтобы выделить HTTP POST запросы, не содержащие подлинный файл cookie аутентифицированной сессии:
-
Первое выражение использует
http.request.uri.pathполе, чтобы нацелиться на пути, которые нужно защитить от R.U.D.Y.:http.request.uri.path matches "(comment|conversation|event|poll)/create" -
Второе использует регулярное выражение для сопоставления с форматом легитимного
auth_sessionфайл cookie.notоператор предназначен для запросов, в которых этот cookie-файл имеет неверный формат:not http.cookie matches "auth_session=[0-9a-zA-Z]{32}-[0-9]{10}-[0-9a-z]{6}" -
Третье выражение нацелено на HTTP
POSTзапросы:http.request.method eq "POST"
Чтобы сформировать итоговый пользовательское правило выражение для этого примера. Три выражения объединяются в составное выражение с помощью and оператор. Когда HTTP POST запрос к любому из указанных URI не содержит правильно оформленный auth_session файл cookie, Cloudflare блокирует запрос:
-
Когда входящие запросы соответствуют:
Используйте редактор выражений:
(http.request.method eq "POST" and http.request.uri.path matches "(comment|conversation|event|poll)/create" and not http.cookie matches "auth_session=[0-9a-zA-Z]{32}-[0-9]{10}-[0-9a-z]{6}") -
Затем выберите действие: Block