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

Web Application Firewall:データリスク管理の設定

最終更新日:May 24, 2024

WebサイトをWebアプリケーションファイアウォール (WAF) に追加した後、Webサイトのデータリスク管理を有効にできます。 データリスク管理は、重要なWebサイトサービスを攻撃から保護するために使用されます。 これらのサービスには、登録、ログオン、キャンペーン、フォーラムが含まれます。 このトピックでは、ビジネス要件に基づいてデータリスク管理ルールを設定する方法について説明します。

背景情報

データリスク管理機能は、Alibaba Cloudのビッグデータテクノロジーに基づいて開発されています。 この機能は、リスク決定エンジンとCAPTCHA検証を使用して、さまざまなシナリオで重要なサービスを攻撃から保護します。 データリスク管理を使用するには、WebサイトをWAFに追加するだけです。 サーバーやクライアントを構成する必要はありません。

データリスク管理は、スパムユーザー登録、SMSフラッド攻撃、資格情報スタッフィング攻撃、ブルートフォース攻撃、自動購入ボット、プロモーションの悪用、スナッチャーボット、投票操作、スパムなど、さまざまなシナリオに適しています。

次の図は、データリスク管理がWebサイトを保護する方法を示しています。 データリスク管理のシナリオと保護効果の詳細については、「」をご参照ください。

image

互換性

データリスク管理は、webページまたはHTML5環境にのみ適しています。 場合によっては、ウェブページに挿入されるJavaScriptプラグインは、ウェブページと互換性がないことがある。 これにより、スライダーCAPTCHA検証でエラーが発生します。 次のwebページで互換性の問題が発生する場合があります。

  • URLを使用してアクセスできる静的webページと、location.hrefを変更するか、window.openメソッドまたはアンカータグ <a> を使用してリダイレクトできるwebページ。 静的ウェブページは、HTML詳細ページ、共有ページ、ウェブサイトホームページ、及び文書を含む。

  • コードを書き換えてコミットするWebページと、フォームの送信、XMLHttpRequest (XHR) の書き換え、カスタムAjaxリクエストの送信などのカスタムリクエストを送信するwebページ。

  • コードがwebhooksを使用するWebページ。

データリスク管理を有効にした後、警告モードを選択し、データリスク管理をSimple Log Service for WAF機能と一緒に使用することを推奨します。 これにより、互換性テストを実行できます。 詳細については、「WAF機能の簡易ログサービスの概要」をご参照ください。

ネイティブアプリを保護するために、Anti-Bot SDKを使用することを推奨します。 詳細については、「アプリケーション保護の設定」をご参照ください。

前提条件

  • 次の要件を満たすWAFインスタンスが購入されました。

    • インスタンスは中国本土にデプロイされています。

    • bot管理モジュールが有効になっています。

  • WebサイトがWAFに追加されます。 詳細については、「チュートリアル」をご参照ください。

重要

WAFは、シナリオ固有の設定機能を提供します。 ビジネス要件に基づいてアンチクローラールールを設定し、悪意のあるクローラーからビジネスを保護できます。 悪意のあるクローラーからWebサイトを保護する場合は、シナリオ固有の構成機能を使用することをお勧めします。 詳細については、「シナリオ固有設定の概要」をご参照ください。 アンチクローラールールを設定した後、2種類のルールで悪意のあるクローラーを防ぐことができるため、データリスク管理ルールを設定する必要はなくなりました。 Alibaba Cloudは、データリスク管理機能の更新やメンテナンスを提供しなくなりました。

手順

  1. WAFコンソールにログインします。 上部のナビゲーションバーで、WAFインスタンスがデプロイされているリソースグループとリージョンを選択します。 リージョンは、中国本土または中国本土以外です。

  2. 左側のナビゲーションウィンドウで、保護設定 > ウェブサイト保護.

  3. [Webサイト保護] ページの上部で、[ドメイン名の切り替え] ドロップダウンリストからWebサイト保護ホワイトリストを設定するドメイン名を選択します。切换域名

  4. On theボット管理タブを検索し、データリスク管理セクションをクリックし、設定.

    パラメーター

    説明

    ステータス

    データリスク管理を有効または無効にするために使用できるスイッチ。 webサイトのデータリスク管理を有効にすると、WAFはwebサイトの特定のwebページまたはすべてのwebページにJavaScriptプラグインを挿入します。 webページのデータは、GZIP形式ではない圧縮ファイルとしてユーザーに返されます。 Webサイトが非標準ポートを使用するかどうかに関係なく、それ以上の設定は必要ありません。

    説明
    • Modeパラメーターと保護ルールを設定する場合は、データリスク管理を有効にします。

    • データリスク管理を有効にすると、Webサイト宛てのすべてのリクエストがチェックされます。 ボット管理モジュールのホワイトリストを設定できます。 このようにして、ルールに一致するリクエストはチェックをバイパスできます。 詳細については、「ボット管理のホワイトリストの設定」をご参照ください。

    モード

    データリスク管理のモード。 有効な値:

    • 厳密な傍受: Webサイトが攻撃を受けていることをWAFが検出した場合、リクエストは厳密な多要素認証に合格する必要があります。

    • ブロック: Webサイトが攻撃を受けていることをWAFが検出した場合、リクエストは多要素認証に合格する必要があります。

    • 警告: Webサイトが攻撃を受けていることをWAFが検出すると、リクエストはWebサイトに転送されます。 ただし、リクエストに関連するログが生成されます。 リスクレポートでログの詳細を表示できます。

      説明

      デフォルトでは、ModeパラメーターはWarnモードに設定されています。 このモードでは、データリスク管理は要求をブロックしません。 ただし、WAFは静的webページにJavaScriptプラグインを挿入してクライアントの動作を分析します。

  5. データリスク管理ルールを追加します。

    1. On theデータリスク管理ページをクリックし、防御リクエストタブをクリックし、防御リクエストを追加.

    2. 防御リクエストを追加 ダイアログボックスで、保護するURLを [保護リクエストURL] フィールドに入力します。 詳細については、「保護されたURLの概要」をご参照ください。

    3. OK をクリックします。

    新しいURLは約10分で有効になります。 URLリストで新しいURLを表示できます。 ビジネス要件に基づいてURLを変更または削除することもできます。

  6. オプション: JavaScriptプラグインを挿入するwebページを指定します。

    webページの特定のコードは、JavaScriptプラグインと互換性がない場合があります。 この場合、JavaScriptプラグインは、プラグインと互換性のあるページにのみ挿入することをお勧めします。

    説明

    JavaScriptプラグインがプラグインと互換性のあるページにのみ挿入されている場合、データリスク管理はすべてのユーザー動作を取得できない可能性があります。 これにより、データリスク管理の有効性が低下します。

    1. On theデータリスク管理ページをクリックし、JSをページに挿入タブをクリックします。

    2. 選択JSを特定のページに挿入をクリックし、Webページを追加.

      説明

      webページに最大20のURLパスを追加できます。

    3. URLを追加 ダイアログボックスで、JavaScriptプラグインを挿入するwebページのURLパスを入力し、OK をクリックします。 URLパスはスラッシュ (/) で始まる必要があります。

    URLパスを追加すると、データリスク管理はURLパス内のすべてのwebページにJavaScriptプラグインを挿入します。

データリスク管理を有効にした後、Simple Log Service for WAF機能を使用して保護結果を表示できます。 詳細については、「保護結果の表示」をご参照ください。

保護されたURLの概要

保護されたURLは、サービス操作の実行に使用されるエンドポイントです。 保護されたURLは、ウェブページのURLとは異なる。 たとえば、URLがwww.aliyundoc.com/new_userの登録ページがあるとします。 認証コードの取得に使用できるエンドポイントはwww.aliyundoc.com/getsmscodeですが、登録に使用できるエンドポイントはwww.aliyundoc.com/register.doです。

この例では、www.aliyundoc.com/getsmscodewww.aliyundoc.com/register.doを保護されたURLとしてWAFに追加する必要があります。 これにより、WAFはSMSフラッド攻撃やスパムユーザー登録からURLを保護できます。 保護されたURLとしてwww.aliyundoc.com/new_userを追加する場合、一般的なユーザーもスライダーCAPTCHA検証に合格する必要があります。 これはユーザーエクスペリエンスに影響します。

保護されたURLを設定するときは、次の項目に注意してください。

  • 保護されたURLは完全一致をサポートしますが、ファジー一致はサポートしません。

    たとえば、保護されたURLとしてwww.aliyundoc.com/testを追加した場合、データリスク管理はこのURLに送信されるリクエストのみをフィルタリングします。 データリスク管理では、このURLのサブディレクトリに送信されるリクエストはフィルタリングされません。

  • データリスク管理は、Webサイトディレクトリに基づいてトラフィックを保護します。

    保護されたURLとしてwww.aliyundoc.com/book/* を追加すると、データリスク管理は、www.aliyundoc.com/bookのすべてのサブディレクトリ内のwebページに送信されるリクエストをフィルタリングします。 Webサイト全体を監視するようにデータリスク管理を構成しないことを推奨します。 保護されたURLとしてwww.aliyundoc.com/* を追加する場合、一般的なユーザーは、Webサイトのホームページにアクセスする前に、スライダーCAPTCHA検証に合格する必要があります。 これはユーザーエクスペリエンスに影響します。

  • 保護されたURLに送信されるリクエストは、常にスライダーCAPTCHA検証をトリガーします。 一般ユーザーが保護されたURLを直接リクエストできないようにしてください。 一般的なユーザーは、保護されたURLにアクセスする前に、多要素認証に合格する必要があります。

  • データリスク管理は、API操作をサポートするWebサイトには適用されません。 API呼び出しはマシンアクションであり、データリスク管理のスライダーCAPTCHA検証に合格することはできません。 ただし、一般的なユーザーがページのボタンをクリックしてAPI操作を呼び出すと、データリスク管理は期待どおりに機能します。

保護結果の表示

Simple Log Service for WAF機能を使用して、保護結果を表示できます。

ドメイン名のログ収集を有効にした後、[ログクエリ] タブの [詳細検索] セクションの [不正防止] オプションを選択して、保護結果を表示できます。 詳細については、「ログの照会と分析」をご参照ください。

ユーザーTomは、ドメイン名がwww.aliyundoc.comのWebサイトを持っています。 一般ユーザーは、www.aliyundoc.com/register.htmlでWebサイトのメンバーとして登録できます。 トムは、攻撃者が悪意のあるスクリプトを使用して登録リクエストを送信し、アカウントを作成できることに気づきました。 アカウントは、ウェブサイトが保持する抽選に参加するために使用されます。 登録要求は通常の要求と同様であり、要求レートは通常のレベルに維持される。 この場合、HTTPフラッド保護ポリシーは、このタイプの悪意のある要求を識別できません。

サンプルコード

TomはWebサイトをWAFに追加し、www.aliyundoc.comドメイン名のデータリスク管理を有効にします。 最も重要な登録サービスのURLはwww.aliyundoc.com/register.htmlです。 したがって、TomはこのURLを保護URLとして追加します。

保護結果

設定が有効になった後、データリスク管理はJavaScriptプラグインをwebサイトのすべてのwebページに挿入します。 これにより、Tomは、www.aliyundoc.comを訪れる各ユーザーの行動を監視および分析できます。 JavaScriptプラグインが挿入されるウェブページは、ホームページ及びサブページを含む。 そして、データリスク管理は、各ユーザの行動が正常であるか否かを判定する。 データリスク管理は、Alibaba Cloudのビッグデータ評価ライブラリに基づいて、送信元IPアドレスが悪意のあるものであるかどうかも判断します。

ユーザーがwww.aliyundoc.com/register.htmlに登録リクエストを送信すると、WAFは、ユーザーがWebサイトにアクセスしてから登録リクエストを送信するまでに生成されるユーザーの行動データと環境データに基づいて、ユーザーが攻撃者であるかどうかを判断します。 たとえば、ユーザーが登録リクエストを直接送信し、リクエストが送信される前に他の操作を実行しない場合、リクエストは疑わしいと識別されます。 ドメイン名を入力するときは、次の項目に注意してください。

  • データリスク管理が、ユーザーの以前の行動に基づいて、要求が通常のユーザーからのものであると判断した場合、ユーザーは、検証に合格する必要なしにアカウントを登録できます。

  • データリスク管理によって要求が疑わしいと特定された場合、またはソースIPアドレスが悪意のある要求を送信するために使用されたという記録がソースIPアドレスにある場合、スライダーCAPTCHA検証がトリガーされてユーザーのIDが検証されます。 認証に合格したユーザーのみがアカウントを登録できます。

    スライダーCAPTCHA検証が、実際のユーザー行動をシミュレートし、スライダーCAPTCHA検証に合格するスクリプトの使用など、疑わしいユーザー行動をキャプチャした場合、データリスク管理は、ユーザーが検証に合格するまで、他の検証方法を使用してユーザーIDを検証します。 そして、そのユーザは、通常のユーザであると特定される。 ユーザーが検証に失敗した場合、データリスク管理は要求をブロックします。

このプロセス中、Webサイト全体 (www.aliyundoc.com) のデータリスク管理が有効になります。 データリスク管理では、webサイトのすべてのwebページにJavaScriptプラグインを挿入して、ユーザーの行動を分析します。 ただし、保護と検証は、ユーザーが登録リクエストを送信するwww.aliyundoc.com/register.htmlにのみ必要です。 データリスク管理は、登録リクエストが送信された場合にのみトリガーされます。