Skip to content

非公式本サイトは非公式の日本語ドキュメントであり、Cloudflare 公式サイトではありません。最新情報はdevelopers.cloudflare.comをご確認ください。

Security Rules で攻撃シグネチャを使う

最終更新 Markdown で表示Agent セットアップ

Attack Signature Detection のフィールドを使うと、Security Rules が一致したトラフィックに対して動作できます。検出フィールドだけではアクションは適用されません。

緩和ポリシーを作成する

  1. Security Analytics > Attack Analysis で、過去の一致を確認します。
  2. 信頼度、カテゴリ、シグネチャ Ref のいずれで一致させるかを選びます。
  3. 対象のホスト名、パス、メソッド、エンドポイントにルールの範囲を絞ります。
  4. 確認したトラフィックに適したアクションを選びます。
  5. 結果を監視し、正当なトラフィックに影響がある場合は式を調整します。

セキュリティの目的を満たす範囲で、できるだけ狭い適用範囲から始めます。信頼度の低いシグネチャは、広くブロックするのではなく、アプリケーション固有の確認候補として扱います。

これらのフィールドは、ダッシュボードまたは API で作成する Security Rules で使えます。ルール作成の手順は、ダッシュボードでカスタムルールを作成する または API でカスタムルールを作成する を参照してください。

カテゴリで一致させる

次の式は、SQL インジェクションのカテゴリに一致します。

any(cf.waf.signature.request.categories[*] eq "sqli")

特定の CVE カテゴリを含め、別のカテゴリでも同じ配列式を使えます。アクションを選ぶ前に、過去の一致を確認してください。

信頼度で一致させる

次の式は、信頼度の高いシグネチャに一致します。

any(cf.waf.signature.request.confidence[*] eq "high")

信頼度の低いシグネチャに一致させるには、highlow に置き換えます。信頼度ごとに別ルールを作り、異なるアクションを適用できます。

シグネチャ Ref で一致させる

次の式は、特定のシグネチャ Ref に一致します。

any(cf.waf.signature.request.refs[*] eq "d68f8101f6e14e25aefcaea69c530a29")

Ref は、対応する Managed Rule の公開 Rule ID と同じ値です。この対応を使って、Managed Rules の設定と突き合わせます。

ルールと例外の範囲を決める

ルールビルダーで、シグネチャ条件とリクエストのプロパティを組み合わせます。ホスト名、パス、メソッドなどのプロパティを使い、緩和対象を影響のあるアプリケーション面に限定します。

既知の誤検知がある場合は、正当なエンドポイントを緩和対象から外します。アプリケーションの残りの部分は保護したままにします。デプロイ前に、ルールビルダーで組み合わせた式を検証してください。

ルールの順序を理解する

Attack Signature Detection と Managed Rules のあいだに、特別な連携はありません。検出フィールドを使う Custom Rule は、通常の Custom Rules の順序に従います。

終端アクションはそのルールでリクエスト処理を止めます。Managed Rules は同じリクエストを評価しません。終端しない Log アクションなら、処理は Managed Rules まで続きます。

Managed Rules と比較する

トラフィックを変えずに 2 つの製品を比較するには、次の手順を行います。

  1. 関連する検出フィールドを参照する Custom Rule を作成します。
  2. Custom Rule のアクションに Log を選びます。
  3. 対応する Managed Rules の保護は Block モードのままにします。
  4. Security Events で、ログに残った検出の一致と Managed Rules のブロックを比較します。

重複する扱いを足す前に、Managed Rules がそのトラフィックをすでに緩和しているかを確認します。アプリケーションのリリース後や、トラフィックが大きく変わったあとは、Security Rules を再確認してください。

フィールドの種類と Logpush の対応は、Attack Signature Detection のフィールド を参照してください。

役に立ちましたか?