R-U-Dead-Yet(R.U.D.Y.)攻撃は、長いフォームフィールドを送信してサービス拒否(DoS)を起こします。正当なセッション Cookie を持たないリクエストをブロックするカスタムルールで、この攻撃を止めます。
この例は、正当な認証済みセッション Cookie を含まない HTTP POST リクエストを対象に、3 つの式を組み合わせます。
-
1 つ目の式は
http.request.uri.pathフィールドを使い、R.U.D.Y. から守るパスを対象にします。http.request.uri.path matches "(comment|conversation|event|poll)/create" -
2 つ目は、正当な
auth_sessionCookie の形式に一致する正規表現を使います。not演算子で、その Cookie の形式が正しくないリクエストを対象にします。not http.cookie matches "auth_session=[0-9a-zA-Z]{32}-[0-9]{10}-[0-9a-z]{6}" -
3 つ目の式は、HTTP
POSTリクエストを対象にします。http.request.method eq "POST"
この例の最終的な カスタムルール 式は、3 つの式を and 演算子で結合した複合式です。指定したいずれかの URI への HTTP POST リクエストに、正しい形式の 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