Skip to content

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

開始する

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

1. 検出をオンにする

  1. Cloudflare ダッシュボードで Security の Settings ページを開きます。

    Settings を開く ↗
  2. (任意)Detection tools で絞り込みます。

  3. Malicious uploads detection をオンにします。

次のような POST リクエストを使います。

Required API token permissions

At least one of the following token permissions is required:
  • Zone WAF Write
  • Account WAF Write
Enable Content Scanning for a zone.bash
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/content-upload-scan/enable" \
	--request POST \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"

ゾーンでコンテンツスキャンを有効にするには、cloudflare_content_scanning リソースを使います。例:

resource "cloudflare_content_scanning" "zone_content_scanning_example" {
	zone_id = var.cloudflare_zone_id
	enabled = true
}

2. コンテンツスキャンの動作を検証する

Security Analytics と HTTP ログを使い、悪意のあるコンテンツオブジェクトが正しく検出されていることを検証します。

コンテンツスキャンのテストには、EICAR アンチマルウェアテストファイル を使えます(ZIP 形式を選びます)。

または、次の手順で説明するカスタムルールを、Block などの緩和アクションではなく Log アクションで作成します。このルールは セキュリティイベント を生成するので、設定を検証できます。

3. カスタムルールを作成する

アプリケーションへアップロードされた、検出済みの悪意のあるコンテンツオブジェクトをブロックする カスタムルールを作成 します。

たとえば、Block アクションと次の式でカスタムルールを作成します。

フィールド 演算子
Has malicious content object 等しい True

Expression Editor を使う場合は、次の式を入力します。

(cf.waf.content_scan.has_malicious_obj)

ルールアクション: Block

このルールは、Cloudflare が疑わしい、または悪意のあるコンテンツオブジェクトを検出したリクエストに一致します。WAF コンテンツスキャンが提供するフィールドの一覧は、コンテンツスキャンのフィールド を参照してください。

任意: 他の Rules 言語フィールドと組み合わせる

前の式を、Rules 言語の他の フィールド関数 と組み合わせられます。ルールの適用範囲を調整したり、コンテンツスキャンを他のセキュリティ機能と組み合わせたりできます。たとえば次のとおりです。

  • 次の式は、特定のエンドポイントへアップロードされた悪意のあるコンテンツオブジェクトを持つリクエストに一致します。

    フィールド 演算子 論理
    Has malicious content object 等しい True かつ
    URI Path 含む upload.php

    エディターを使う場合の式:

    (cf.waf.content_scan.has_malicious_obj and http.request.uri.path contains "upload.php")
  • 次の式は、ボットがコンテンツオブジェクトをアップロードするリクエストに一致します。

    フィールド 演算子 論理
    Has content object 等しい True かつ
    Bot Score より小さい 10

    エディターを使う場合の式:

    (cf.waf.content_scan.has_obj and cf.bot_management.score lt 10)

追加の例は、ルールの例 を参照してください。

4. (任意)カスタムスキャン式を設定する

デフォルト設定ではカバーできない方法でアップロード内容を検査するには、カスタムスキャン式 を追加します。

  1. Cloudflare ダッシュボードで Security の Settings ページを開きます。

    Settings を開く ↗
  2. (任意)Detection tools で絞り込みます。

  3. Malicious uploads detection > Configurations の下で、編集アイコンを選びます。

  4. Add content location を選びます。

  5. Content location に、カスタムスキャン式を入力します。例:

    lookup_json_string(http.request.body.raw, "file")
  6. Save を選びます。

次のような POST リクエストを使います。

Required API token permissions

At least one of the following token permissions is required:
  • Zone WAF Write
  • Account WAF Write
Create Content Scanning custom expressions for a zone.bash
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/content-upload-scan/payloads" \
	--request POST \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
	--json '[
		{
				"payload": "lookup_json_string(http.request.body.raw, \"file\")"
		}
	]'

上記のリクエストは、カスタムスキャン式の現在の一覧に次の式を追加します。

lookup_json_string(http.request.body.raw, "file")

cloudflare_content_scanning_expression リソースを使って、カスタムスキャン式を追加します。例:

resource "cloudflare_content_scanning_expression" "my_custom_scan_expression" {
  zone_id = var.cloudflare_zone_id
  payload = "lookup_json_string(http.request.body.raw, \"file\")"
}

詳細は、カスタムスキャン式 を参照してください。

役に立ちましたか?