マネージドルールは Cloudflare WAF(Web Application Firewall)の機能です。HTTP の GET と POST リクエストから不審な動きを検出し、除去します。
マネージドルールが検出する 悪意のある内容 ↗ の例は次のとおりです。
- コメントスパムでよく使われるキーワード(
XX、Rolex、Viagraなど) - クロスサイトスクリプティング攻撃(XSS)
- SQL インジェクション(SQLi)
WAF マネージドルール(旧バージョン)は、Pro、Business、Enterprise プランで、Cloudflare にプロキシされたサブドメイン に対して利用できます。設定は Security > WAF > Managed rules で行います。
マネージドルールには、次の 3 つのパッケージがあります。
- Cloudflare Managed Ruleset
- OWASP ModSecurity Core Rule Set
- お客様からのリクエストによるルール
WAF マネージドルールがブロックした脅威は、Security Events ダッシュボードのサンプリングログで確認できます。
Cloudflare Managed Ruleset には、Cloudflare が作成・管理するセキュリティルールが含まれます。Group の下にあるルールセット名を選ぶと、ルールの説明が表示されます。
Cloudflare Specials は、よくある攻撃 ↗ に対する中核的なファイアウォール保護を提供するグループです。
ルールセットを表示すると、Default mode の下に各ルールのデフォルトアクションが示されます。特定の Cloudflare Managed Ruleset 内の個別ルールで選べる Mode は次のとおりです。
- Default: 特定ルールを表示したときの Default mode に記載されたデフォルトアクションを取ります。
- Disable: グループ内のそのルールをオフにします。
- Block: リクエストを破棄します。
- Interactive Challenge: 訪問者に、操作が必要なチャレンジページが表示されます。
- Simulate: リクエストは通過しますが、サンプリングログ に記録されます。
Cloudflare Managed Ruleset の継続的な変更は、Cloudflare の WAF changelog で確認できます。
OWASP ModSecurity Core Rule Set パッケージは、発火した OWASP ルールの数に基づいて、各リクエストにスコアを付けます。ルールによって感度スコアは異なります。
OWASP がリクエストを評価したあと、Cloudflare は最終スコアをゾーンの Sensitivity と比較します。スコアが感度を超えると、Package: OWASP ModSecurity Core Rule Set で設定した Action に従ってリクエストが処理されます。
- Block: リクエストを破棄します。
- Challenge: 訪問者に、操作が必要なチャレンジページが表示されます。
- Simulate: リクエストは通過しますが、サンプリングログ に記録されます。
特定の Sensitivity で WAF が発火するために必要な感度スコアは次のとおりです。
- Low: 60 以上
- Medium: 40 以上
- High: 25 以上
AJAX リクエストでは、次のスコアが代わりに適用されます。
- Low: 120 以上
- Medium: 80 以上
- High: 65 以上
最終スコアと、発火した個別ルールは、サンプリングログ のエントリで確認します。
OWASP ModSecurity Core Rule Set パッケージには、OWASP プロジェクト ↗ の複数のルールが含まれます。OWASP ルールは Cloudflare が作成・管理しているものではありません。Cloudflare Managed Ruleset とは異なり、個別の OWASP ルールは On または Off だけです。
OWASP のしきい値を管理するには、Package: OWASP ModSecurity Core Rule Set の Sensitivity を Low、Medium、High のいずれかに設定します。
Sensitivity を Off にすると、OWASP パッケージ全体とそのルールがすべて無効になります。適切な Sensitivity は、業種と運用によって異なります。たとえば、Low が適しているのは次のような場合です。
- WAF が発火しやすい業種
- 大きなファイルのアップロード
感度が高いと、大きなファイルのアップロードで WAF が発火します。
最初は感度を Low にし、誤検知を確認してから感度を上げることを推奨します。
-
マネージドルールを使うと、わずかな遅延が加わります。
-
WAF マネージドルールの変更は、全世界への反映に約 30 秒かかります。
-
Cloudflare は独自ルールでトラフィックをフィルターします。
-
確立済みの WebSocket では、以降のリクエストにマネージドルールは発火しません。
-
マネージドルールは JSON レスポンスを解析し、API を対象とした脆弱性を特定します。JSON ペイロードの解析上限は 128 KB です。
-
マネージドルールはパディング手法を緩和します。次の対応を推奨します。
-
ID
100048のルールを有効にします。このルールはパディング型の攻撃から保護しますが、お客様環境で誤検知が起きやすいため、デフォルトではデプロイされません。ただし、マネージドルールの設定を調整することは重要です。 -
ヘッダーやボディを検査して、より大きなペイロード(128 KB 超)をブロックする必要がある場合は、Expression Editor で WAF カスタムルールを作成します。この目的では次のフィールドを使います。
まず Log モード(利用できる場合)でルールをテストします。誤検知が出ることがあります。
-
-
Managed rules を Cloudflare ダッシュボードでオフにしても、Cloudflare が無効にしないマネージドルールがいくつかあります。例として、ID が
WP0025B、100043A、100030のルールがあります。