すべてのプロダクト
Search
ドキュメントセンター

Web Application Firewall:コア保護ルールモジュールの構成

最終更新日:Jul 24, 2025

Web Application Firewall (WAF) 3.0 に Web サービスを追加した後、エンジン設定を構成し、ルールライブラリを管理して、SQL インジェクション攻撃、クロスサイトスクリプティング (XSS) 攻撃、コード実行、Webshell のアップロード、コマンドインジェクション攻撃などの一般的な Web アプリケーション攻撃から Web サービスを保護できます。このトピックでは、コア保護ルールモジュールの構成方法について説明します。

重要

2024年11月7日 (UTC + 08:00) に、コア保護ルールモジュールがアップグレードされました。詳細については、「WAF 3.0 の基本保護ルールモジュールのアップグレード」をご参照ください。このトピックでは、コア保護ルールモジュールの新しいバージョンについて説明します。古いバージョンを使用している場合は、「コア保護ルールモジュールの保護ルールとルールグループの構成」に記載されている手順に従ってモジュールを構成できます。

モジュール機能の概要

コア保護ルールモジュールの各保護テンプレートは、独立した検出エンジンを使用します。さまざまな保護ルールは、ビジネス経験に基づいて異なる検出モジュールに組み込まれています。異なる検出モジュールは、異なるタイプの攻撃を識別します。次の図は、保護テンプレート、検出エンジン、検出モジュール、およびルールの関係を示しています。

パブリッククラウド保護シナリオ

ハイブリッドクラウド保護シナリオ

特徴

複数のデコード形式のサポート

コア保護ルールモジュールは、以下を含む複数のデコード形式をサポートしています。

  • モジュールは、さまざまな形式のデータを解析して、検出精度を向上させることができます。データ形式には、JSON、XML、および Multipart が含まれます。

  • モジュールは、WAF をバイパスするためにエンコードされたデータを識別できます。これにより、攻撃の検出率が向上します。エンコード形式には、Unicode エンコーディングと HTML エンティティエンコーディングが含まれます。

インテリジェントホワイトリストエンジンのサポート

誤検知のリスクを軽減するために、WAF は過去のサービストラフィックに基づいて AI 学習を実行し、URL レベルでは適切でない可能性のあるルールを識別し、それらを自動的にホワイトリストに追加します。

ハイブリッドクラウドシナリオでのカスタム保護ルールのサポート

カスタム保護ルールは、ハイブリッドクラウドモードで WAF にサービスを追加したときに生成される保護対象に対してのみ有効です。このタイプの保護対象は、ハイブリッドクラウド保護対象と呼ばれます。カスタム保護ルールを作成して保護テンプレートに追加する方法の詳細については、「ルールライブラリの管理」をご参照ください。

前提条件

テンプレートタイプ

コア保護ルールモジュールには、次の 2 つのタイプの保護テンプレートがあります。

保護テンプレート

説明

有効なオブジェクト

デフォルトの保護テンプレート

WAF によって提供される初期デフォルトの保護テンプレートで、WAF のコア保護ルールセットが含まれています。特定の保護要件がない場合は、構成は不要です。

作成されると、カスタム保護テンプレートに関連付けられていない保護対象/グループに自動的に適用されます。新しく追加された保護対象も、デフォルトの保護テンプレートに自動的に追加されます。これは手動で調整できます。

カスタム保護テンプレート

ビジネスニーズに応じてカスタマイズされた保護テンプレート。手動で作成する必要があり、単一のデフォルトの保護テンプレートではビジネス要件を満たすことができないシナリオに適しています。

[有効なオブジェクト] を設定する必要があります。テンプレートは、保護テンプレートに関連付けられている保護対象とオブジェクトグループに対してのみ有効です。

保護テンプレートの作成

  1. WAF 3.0 コンソールにログインします。 上部のナビゲーションバーで、WAF インスタンスのリソースグループとリージョンを選択します。 リージョンとして中国本土または中国本土以外を選択できます。 左側のナビゲーションウィンドウで、保護設定 > Web コア保護を選択し、[コア保護ルール] セクションで [テンプレートの作成] をクリックします。

  2. [テンプレートの作成 - コア保護ルール] パネルで、次の手順に従ってテンプレート構成を完了し、[OK] をクリックします。

    1. ステップ 1:[テンプレート情報] の構成

      パラメーター

      構成フィールド

      説明

      テンプレート情報

      [テンプレート名]

      名前に使用できる文字は、英字、数字、ピリオド(.)、アンダースコア(_)、ハイフン(-) です。

      [デフォルトテンプレートとして保存]

      デフォルトの保護テンプレートは、有効なオブジェクトを設定する必要はありません。カスタム保護テンプレートに関連付けられていないすべての保護対象とオブジェクトグループ (新しく追加されたもの、またはカスタム保護テンプレートから削除されたものを含む) に自動的に適用されます。デフォルトテンプレートから手動で削除することもできます。保護モジュールには 1 つのデフォルトテンプレートのみを指定でき、テンプレートの作成時にのみ設定できます。

    2. ステップ 2:エンジン構成

      パラメーター

      構成フィールド

      説明

      エンジン構成

      [検出エンジンの自動更新]

      デフォルトでは、スイッチがオンになっています。この場合、Alibaba Cloud セキュリティチームのデフォルトルールライブラリに追加または削除されたルールは、現在の検出エンジンに自動的に同期されます。スイッチがオンの場合、WAF はルールを自動的に更新します。ルールは有効になっており、[監視] または [ブロック] アクションを使用します。スイッチがオフの場合でも、WAF はルールを同期します。ルールは無効になっており、[監視] アクションを使用します。

      [エンジンを構成する]

      [システム保護ルール]:WAF は、Alibaba Cloud Security の組み込み検出モジュールに基づいて 4 つのレベルのシステム保護ルールを提供します。ルールレベルは、[超厳格][厳格][中][緩和] です。デフォルトでは、[超厳格] レベルと [厳格] レベルのルールは無効になっており、[中] レベルと [緩和] レベルのルールは有効になっています。

      説明

      サポートされている検出モジュールの詳細については、「検出モジュールの説明」をご参照ください。

      ルールの次のパラメーターを構成できます。

      • [アクション]:ルールに一致するリクエストに対して WAF が実行するアクションを指定します。

        • ブロック:ルールに一致するリクエストをブロックし、リクエストを開始したクライアントにブロックページを返します。

          説明

          デフォルトでは、WAF は事前に構成されたブロックページを返します。カスタムレスポンス 機能を使用して、カスタムブロックページを構成できます。

        • 観察:ルールに一致するリクエストをログに記録し、リクエストをブロックしません。ルールに一致するリクエストのログをクエリし、保護パフォーマンスを分析できます。たとえば、ログをクエリして、通常の要求がブロックされているかどうかを確認できます。

          重要

          WAF の Simple Log Service 機能が有効になっている場合 にのみ、ログをクエリできます。

          観察 を選択した場合は、ルールでドライランを実行して、ルールが通常の要求をブロックするかどうかを確認できます。ルールがドライランに合格した場合は、[アクション] パラメーターを ブロック に設定できます。

        説明

        セキュリティレポート ページで、[監視] モードまたは [ブロック] モードで一致したルールの詳細をクエリできます。詳細については、「セキュリティレポート」をご参照ください。

      • [ステータス]:スイッチをオンまたはオフにします。ルールが無効になっている場合、WAF はリクエストとルールを照合しません。

      [適応エンジン]

      [インテリジェントホワイトリストエンジン]:デフォルトでは、スイッチはオフになっています。

      自動的に作成されるホワイトリストモジュールの保護ルールは、[ホワイトリスト] セクションの [AutoTemplate] 保護テンプレートに表示されます。詳細については、「ホワイトリストの表示」をご参照ください。

      説明

      この機能は、Enterprise エディションと Ultimate エディションの従量課金制およびサブスクリプション WAF インスタンスでのみサポートされています。

    3. ステップ 3:有効範囲の構成

      追加された保護対象とオブジェクトグループから、テンプレートを適用する 保護対象保護対象グループ を選択します。

      保護対象またはオブジェクトグループには、1 つのコア保護ルールテンプレートのみを適用できます。ステップ 1 でデフォルトの保護テンプレートを設定した場合、カスタム保護テンプレートに関連付けられていないすべての保護対象とオブジェクトグループがデフォルトで選択されます。デフォルトテンプレートを設定しない場合、デフォルトでは保護対象またはオブジェクトグループは選択されません。有効なオブジェクトは手動で変更できます。

保護テンプレートの表示

保護テンプレート名の左側にある 展开图标 アイコンをクリックすると、テンプレートのエンジン情報を表示できます。また、[エンジンを構成する] をクリックしてエンジン構成ページを開き、詳細ルールの操作とステータス情報を表示することもできます。

保護テンプレートの編集

保護テンプレートの有効化と無効化

保護テンプレートを作成した後、ステータス 列のスイッチをオンまたはオフにして、テンプレートを有効または無効にすることができます。

保護テンプレートの変更

ターゲットテンプレートの <[アクション] 列の [編集] をクリックします。調整を行った後、[OK] をクリックして変更を保存します。

説明

ハイブリッドクラウドシナリオでの保護の場合、[エンジンを構成する] パネルで、カスタム保護ルールの次のパラメーターを構成できます。

  • [アクション]:ルールに一致するリクエストに対して WAF が実行するアクションを指定します。有効な値:[監視] および [ブロック]

  • [ステータス]:デフォルトでは、スイッチはオフになっています。スイッチをオンまたはオフにできます。スイッチをオンにすると、設定は保護テンプレートに対してのみ有効になります。

保護テンプレートの削除

不要になった保護テンプレートを削除できます。保護テンプレートを削除する前に、テンプレートが保護対象に関連付けられていないことを確認してください。保護テンプレートを削除するには、テンプレートを見つけて、[アクション] 列の [削除] をクリックします。表示されるメッセージで、[OK] をクリックします。

重要
  • 保護テンプレートが削除されると、システムは、削除された保護テンプレートに以前に関連付けられていた保護対象にデフォルトテンプレートを自動的に適用します。

  • デフォルトテンプレートを削除し、テンプレートが保護対象に関連付けられている場合、保護対象はコア保護ルールモジュールによって保護されなくなります。

ヒットレコードの表示

[セキュリティレポート] ページの [コア保護ルール] タブで、特定の保護ルールのヒットレコードを表示できます。詳細については、「セキュリティレポート」をご参照ください。Web コア保護 ページでは、ルール ID で特定のコア保護ルールを検索することはできません。特定のルール情報をクエリするには、「ルールライブラリの管理」をご参照ください。

重要

ルールが通常のサービストラフィックを誤ってブロックしていると思われる場合は、[ホワイトリスト] モジュールを使用して、その特定のルールにホワイトリクトルールを構成できます。ホワイトリstruールの構成方法の詳細については、「ホワイトリストモジュールの保護ルールを構成して特定のリクエストを許可する」をご参照ください。

関連する説明とリファレンス

検出モジュールの説明

検出モジュールは、モジュールの保護ルールに基づいて、さまざまなタイプの Web 攻撃を識別してブロックできます。

サポートされている攻撃タイプ

攻撃タイプ

説明

SQL インジェクション

SQL インジェクションとは、悪意のあるコードがクエリ文に挿入される攻撃です。その後、攻撃者がデータベースに対して必要な操作を実行するために、文が実行されます。

クロスサイトスクリプティング (XSS)

XSS とは、悪意のあるスクリプトが Web ページに埋め込まれる攻撃です。スクリプトは、一般的なユーザーが Web ページを閲覧するときに実行されます。

コード実行

コード実行とは、悪意のあるコードが挿入され、サーバーがコードを実行するように仕向けられる攻撃です。

CRLF インジェクション

キャリッジリターンラインフィード (CRLF) インジェクションとは、HTTP ヘッダーにキャリッジリターン (\r) とラインフィード (\n) が挿入され、HTTP レスポンスが操作されたり、HTTP レスポンス分割が実装されたりする攻撃です。

ローカルファイルインクルージョン (LFI)

ローカルファイルインクルージョン (LFI) とは、URL を使用してファイルを動的に含める攻撃です。サーバーで allow_url_include オプションが有効になっている場合、include()、require()、include_once()、および requir_once() 関数を使用して、動的ファイルインクルージョンを有効にできます。ファイルソースが適切にサニタイズされていない場合、任意のファイルの読み取りまたは任意のコマンドの実行が発生する可能性があります。

リモートファイルインクルージョン (RFI)

リモートファイルインクルージョン (RFI) とは、リモートサーバー上のファイルが含まれる攻撃です。これにより、ローカルサーバーでリモートコードが実行される可能性があります。

Webshell

Webshell とは、悪意のあるスクリプトファイルです。攻撃者は Webshell をアップロードまたは挿入して、サーバーをリモートで制御できます。

OS コマンドインジェクション

オペレーティングシステム (OS) コマンドインジェクションとは、悪意のある OS コマンドがアプリケーションに挿入され、サーバーがコマンドを実行するように仕向けられる攻撃です。

スキャン動作

スキャン動作とは、SQL インジェクションや XSS などの脆弱性を検出するために Web アプリケーションを自動的にスキャンするスキャナーの動作と特性を指します。スキャナーはまた、多くのリクエストを生成して送信し、Web アプリケーションのレスポンスを分析します。

ビジネスロジックの脆弱性

ビジネスロジックの脆弱性とは、アプリケーションの実装における欠陥です。従来の入力検証または出力エンコーディングでは、このタイプの脆弱性から防御するには不十分です。攻撃者は、アプリケーションのビジネスロジックの脆弱性を悪用してビジネスロジックを操作し、不正アクセスやその他の悪意のある動作を実行する可能性があります。

任意のファイルの読み取り

任意のファイルの読み取りとは、システム内の任意のファイルを読み取るために悪用される可能性のある脆弱性です。攻撃者は、HTTP リクエストであいまいなファイルパスを指定して、脆弱性を悪用する可能性があります。その後、攻撃者は構成ファイル、資格情報、人事データなどの機密情報にアクセスする可能性があります。

任意のファイルのダウンロード

任意のファイルのダウンロードとは、任意のファイルの読み取りに似た脆弱性です。任意のファイルのダウンロードにより、攻撃者はシステム内の任意のファイルをダウンロードできます。これにより、機密情報が漏洩する可能性があります。攻撃者はオフライン分析のためにシステムの完全バックアップを取得することさえできます。

XXE インジェクション

XML 外部エンティティ (XXE) インジェクションとは、XML の機能が悪用されて外部エンティティが構築され、XML パーサーがエンティティを解析するように仕向けられる攻撃です。攻撃者はシステムファイルを読み取り、Server-Side Request Forgery (SSRF) またはサービス拒否 (DoS) 攻撃を開始する可能性があります。ほとんどの場合、XXE インジェクションには、悪意のある外部エンティティを参照する XML 入力が含まれます。

クロスサイトリクエストフォージェリ

クロスサイトリクエストフォージェリ (CSRF) とは、認証されたユーザーが悪意のあるアクションを実行するために Web アプリケーションに不正なリクエストを送信するように仕向けられる攻撃です。攻撃者は、ユーザーに悪意のあるリンクをクリックさせたり、悪意のある Web ページにアクセスさせたりする可能性があります。その後、攻撃者はユーザーの ID を使用して、設定の変更やフォームの送信などの操作を実行できます。

式インジェクション

式言語 (EL) インジェクションとは、悪意のある式が挿入され、サーバーが式を実行するように仕向けられる攻撃です。

.NET 逆シリアル化

逆シリアル化とは、JSON、XML、バイナリなどの特定のデータ形式のデータをオブジェクトに戻すプロセスです。.NET アプリケーションでは、安全でない逆シリアル化により、任意のコードが実行される可能性があります。攻撃者が逆シリアル化されたデータを操作できる場合、悪意のあるデータを挿入して任意のコードを実行する可能性があります。

Java 逆シリアル化

攻撃者は、悪意のあるコードを含むシリアル化されたオブジェクトを構築して、逆シリアル化中にサーバーが悪意のあるコードを実行するように仕向けます。

PHP 逆シリアル化

攻撃者は、悪意のあるコードを含むシリアル化されたオブジェクトを構築して、逆シリアル化中にサーバーが悪意のあるコードを実行するように仕向けます。

SSRF (Server-Side Request Forgery)

SSRF とは、サーバーリクエストが偽造され、サーバーが内部または外部リソースにアクセスするように仕向けられる攻撃です。

パストラバーサル

パストラバーサルとは、../ などの相対パスを使用して、アクセスが意図されていないファイルにアクセスする攻撃です。

プロトコル非準拠

プロトコル非準拠とは、HTTP や HTTPS などのプロトコルが悪意を持って操作され、セキュリティメカニズムをバイパスする攻撃です。

任意のファイルのアップロード

任意のファイルのアップロードとは、悪意のあるファイルをアップロードしてサーバーがファイルを実行するように仕向けるために悪用される可能性のある脆弱性です。

リファレンス

  • WAF 3.0 の保護対象、保護モジュール、および保護プロセスの詳細については、「保護構成の概要」をご参照ください。

  • API 操作を呼び出して保護テンプレートを作成する方法の詳細については、「CreateDefenseTemplate」をご参照ください。

  • OpenAPI を使用してコア保護ルールを作成する方法の詳細については、「CreateDefenseRule」をご参照ください。