R-U-Dead-Yet? (R.U.D.Y.) 攻撃の防止
R-U-Dead-Yet (R.U.D.Y.) 攻撃は、長いフォームフィールドを送信することによってサービス拒否 (DoS) を実現します。正当なセッションクッキーを持たないリクエストをブロックするカスタムルールを使用して、これらの攻撃を防ぎます。
この例では、正当な認証済みセッションクッキーを含まない HTTP POST リクエストをターゲットにするために、3つの式を組み合わせています:
-
最初の式は、
http.request.uri.pathフィールドを使用して、R.U.D.Y. から保護するパスをターゲットにします:http.request.uri.path matches "(comment|conversation|event|poll)/create" -
2番目は、正当な
auth_sessionクッキーの形式に一致する正規表現を使用します。not演算子は、そのクッキーが正しくフォーマットされていないリクエストをターゲットにします: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 クッキーを含まない場合、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}") - アクション: ブロック