ボット管理でクローラー対策ルールを設定し、ブラウザベースの Web ページ、H5 ページ、および iOS または Android 向けにネイティブ開発されたアプリにクローラー対策を適用します。
前提条件
-
WAF が有効化されていること。 詳細については、「WAF の有効化」をご参照ください。
-
ドメイン名が保護対象として WAF に追加されていること。 詳細については、「保護対象ドメイン名の追加」をご参照ください。
-
iOS または Android 向けにネイティブ開発されたアプリ (アプリ内で使用される H5 ページを除く) を使用する場合、アプリのクローラー対策ルールを設定する前に、保護対象のアプリに SDK を統合する必要があります。 詳細については、「Android アプリへの SDK の統合」または「iOS アプリへの SDK の統合」をご参照ください。
Webサイトのクローラー対策ルールの設定
ユーザーがブラウザ経由で Web ページや H5 ページ (アプリ内で使用される H5 ページを含む) にアクセスする場合、ブラウザベースのアクセスに対してクローラー対策ルールを設定し、対象を絞ってサービスをクローラーのリスクから保護します。
- DCDNコンソールにログインします。
左側のナビゲーションウィンドウで、 を選択します。
保護ポリシー ページで、ポリシーの作成 をクリックします。
-
ポリシーの作成 ページで、保護設定を行います。
-
[自動統合 (推奨)]:
JavaScript ベースの Web SDK を使用して、Web ブラウザ環境での保護を強化し、一部の互換性の問題を回避します。
[自動統合 (推奨)] を有効にすると、WAF は保護対象の HTML ページで SDK を自動的に参照します。 SDK は、ブラウザ情報、特定の攻撃・防御プローブ、操作挙動を収集しますが、これには機密性の高い個人情報は含まれません。 WAF は、収集された情報に基づいてリクエストのリスクを識別し、ブロックします。
-
[手動統合]:
[自動統合 (推奨)] が現在の環境に適用できない場合は、[手動統合] を使用します。 詳細については、「Web アプリケーション用 SDK の統合」をご参照ください。
-
[モニター]:クローラー対策ルールは一致したトラフィックを許可し、セキュリティレポートに記録します。
-
[スライダー CAPTCHA]:クライアントは、保護対象へのアクセスを続行する前に、スライダー CAPTCHA を完了する必要があります。
-
元の関連付けるポリシーを追加して置き換えます:関連付けられているポリシーの関連付けを解除し、現在のポリシーに置き換えます。
-
元の関連付けるポリシーを追加して保持します:現在のポリシーと、既存の関連付けられたポリシーは共存し、互いに影響しません。
-
1 つの保護対象ドメイン名は、同じポリシータイプの緩和ポリシー 1 つにのみ関連付けることができます。
ドメイン名がすでに同じタイプの別のポリシーに関連付けられている場合、現在のポリシーをドメイン名に適用すると、ドメイン名に設定されているポリシーは現在のポリシーに置き換えられます。
-
WebSocket が有効になっている Dynamic Content Delivery Network (DCDN) ドメイン名にはボット管理を設定できません。WebSocket のコンテンツは暗号化されており、攻撃の特性を識別できないためです。
ポリシーの作成 をクリックします。
新しい保護ポリシーは、デフォルトで有効になっています。
|
設定モジュール |
設定項目 |
説明 |
|
[ポリシー情報] |
ポリシータイプ |
ボット管理 を選択します。 |
|
ポリシー名 |
ポリシーのカスタム名です。 名前に使用できる文字は、漢字、英字 (大文字と小文字)、数字 ( |
|
|
[グローバル設定] |
保護ターゲットのタイプ |
Web ページ / ブラウザ を選択して、ブラウザ経由でアクセスされる Web ページまたは H5 ページ (アプリ内で純粋な H5 ページとしてレンダリングされるコンテンツを含む) を保護します。 |
|
Web SDK の統合 |
|
|
|
保護ターゲットの特性 |
対象となるトラフィックの HTTP リクエストフィールドとルールを追加します。 これらのフィールドは、保護対象のサービスへアクセスする際の HTTP リクエストメッセージに含まれるコンテンツです。 フィールドの詳細については、「一致条件」をご参照ください。 |
|
|
[正当なボットの管理] |
検索エンジン Web スパイダーのホワイトリスト |
このスイッチをオンにすると、主要な検索エンジンのクローラーIPアドレスに対応し、動的に更新します。 サポートされている検索エンジンは、Google、Baidu、Sogou、Bing、360、Yandex です。 このルールを有効にすると、これらの検索エンジンからの正当なクローラーIPアドレスは、ボット管理モジュールによる保護検出の対象外として許可されます。 |
|
[Bot 機能の認識] |
スクリプトを使用したボットのブロック (JavaScript) |
このスイッチをオンにすると、保護対象にアクセスするクライアントに対して JavaScript チェックが実行されます。 JavaScript チェックをサポートしていない非ブラウザツールからのトラフィックを除外し、単純なスクリプトベースの攻撃をブロックします。 |
|
高度なボット防御 (動的トークンを使用した認証) |
このスイッチをオンにすると、各リクエストの署名を検証し、署名検証に失敗したリクエストをブロックします。 署名検証の失敗 (必須。リクエストに署名がない、または署名が無効な場合を指します)、無効な署名タイムスタンプ、WebDriver 攻撃を選択できます。 |
|
|
[ボット動作の検出] |
AI インテリジェント保護 |
このスイッチをオンにすると、クローラー対策ルールはインテリジェント保護エンジンを使用してアクセストラフィックを分析・学習し、的を絞った保護ルールまたはブラックリストを生成します。 |
|
[カスタムスロットルスロットリング] |
IP アドレスのスロットリング (デフォルト) |
同一 IP アドレスからのリクエスト数が、指定された 統計期間 内に指定された しきい値 を超えた場合、その IP アドレスからのリクエストに対してスロットリングアクションが実行されます。 アクションには、[スライダー CAPTCHA]、[ブロック]、または [モニター] を指定できます。 アクションの期間も指定します。 条件は 3 つまで設定できます。 詳細については、「カスタムルールパラメーター」をご参照ください。 |
|
カスタムセッションの速度制限 |
[セッションタイプ] を設定し、カスタムセッションスロットリング条件を定義できます。 これらの条件は、同一セッションからのリクエスト数が、指定された 統計期間 内に指定された しきい値 を超えた場合に、そのセッションに対してスロットリングアクションが実行されることを指定します。 アクションには、[スライダー CAPTCHA]、[ブロック]、または [モニター] を指定できます。 アクションの期間も指定します。 条件は 3 つまで設定できます。 詳細については、「カスタムルールパラメーター」をご参照ください。 |
|
|
[ボット脅威インテリジェンス] |
クローラーの脅威インテリジェンスライブラリ |
一定期間にわたって複数の Alibaba Cloud ユーザーに対して悪意のあるクローリングを複数回実行した攻撃元の IP アドレスが含まれます。 ボット脅威インテリジェンスライブラリを [モニター] または [スライダー CAPTCHA] に設定できます。 |
|
IDC ブラックリストのブロック |
このスイッチをオンにすると、選択した IP アドレスライブラリをブロックします。 パブリッククラウドまたはデータセンターのソース IP アドレスを使用してサービスにアクセスする場合は、Alipay や WeChat からの支払いコールバック、監視プログラムなど、既知の正当なアクセス元をホワイトリストに追加します。 データセンターブラックリストは、Alibaba Cloud、21Vianet、Meituan Cloud、Tencent Cloud、および「その他」の IP アドレスライブラリ をサポートしています。 データセンターブラックリストを [モニター]、[スライダー CAPTCHA]、または [ブロック] に設定できます。 |
|
|
偽造 Web スパイダーの遮断 |
このスイッチをオンにすると、正当なボット管理のすべての検索エンジンの User-Agent がブロックされます。 ホワイトリストが有効になっている検索エンジンの正当なクライアント IP アドレスは許可されます。 |
|
|
[保護されたドメイン名] |
関連するポリシー関係を選択してください |
|
|
保護されたドメイン名 |
現在の緩和ポリシーに追加するドメイン名を選択します。 説明
|
アプリのクローラー対策ルールの設定
iOS または Android 向けにネイティブ開発されたアプリ (アプリ内で使用される H5 ページを除く) を使用する場合、アプリのクローラー対策ルールを設定して、対象を絞ってサービスをクローラーのリスクから保護します。
- DCDNコンソールにログインします。
左側のナビゲーションウィンドウで、 を選択します。
保護ポリシー ページで、ポリシーの作成 をクリックします。
-
ポリシーの作成 ページで、保護設定を行います。
設定モジュール
設定項目
説明
[ポリシー情報]
ポリシータイプ
ボット管理 を選択します。
ポリシー名
ポリシーのカスタム名です。 名前に使用できる文字は、漢字、英字 (大文字と小文字)、数字 (
0~9)、アンダースコア (_) で、長さは 64 文字までです。[グローバル設定]
保護ターゲットのタイプ
[APP] を選択して、iOS または Android 向けにネイティブ開発されたアプリ (アプリ内で使用される H5 ページを除く) を保護します。
Web SDK の統合
ネイティブアプリ (Android または iOS) 用の SDK を使用して、アプリ環境での保護を強化します。 SDK が統合されると、クライアントのリスク特性を収集し、リクエストに添付するセキュリティ署名を生成します。 WAF は、署名の特性に基づいてリクエストのリスクを識別し、ブロックします。 [appkey の取得とコピー] をクリックしてから、チケットを送信 して SDK パッケージをリクエストしてください。 詳細については、「Android アプリへの SDK の統合」または「iOS アプリへの SDK の統合」をご参照ください。
保護ターゲットの特性
対象となるトラフィックの HTTP リクエストフィールドとルールを追加します。 これらのフィールドは、保護対象のサービスへアクセスする際の HTTP リクエストメッセージに含まれるコンテンツです。 フィールドの詳細については、「一致条件」をご参照ください。 条件は 5 つまで追加できます。
[Bot 機能の認識]
アプリの署名が無効
[無効なアプリ署名] はデフォルトで選択されており、無効にすることはできません。 クローラー対策ルールは、SDK がアプリに統合された後、署名がない、または無効な署名を持つリクエストを検出します。
デバイスの動作が異常
この項目を有効にすると、クローラー対策ルールは、異常な特性を持つデバイスから送信されたリクエストを検出・制御します。 異常なデバイスの特性には以下が含まれます:
-
期限切れの署名:デフォルトで有効です。 デバイスリクエストのタイムスタンプが期限切れの場合を指します。
-
シミュレーターの使用:デバイスでエミュレーターが使用されている場合を指します。
-
プロキシの使用:デバイスでプロキシサービスが使用されている場合を指します。
-
ルート化されたデバイス:デバイスでルート権限が有効になっている場合を指します。
-
デバッグモード:デバイスでデバッグモードが有効になっている場合を指します。
-
フッキング:デバイスにフックプログラムが存在する場合を指します。
-
マルチボクシング:デバイスで保護対象アプリの複数のプロセスが同時に開いている場合を指します。
-
シミュレーションの実行:デバイスにユーザーの挙動をシミュレートする操作が存在する場合を指します。
-
スクリプトツール:デバイスに自動実行スクリプトが存在する場合を指します。
カスタム署名フィールド
[フィールド名] を選択して、
header、[パラメータ]、またはcookieにカスタム署名フィールドを定義します。署名対象のオブジェクトが、本文が大きすぎる、空である、または特殊なエンコードがされているといった通常と異なる場合、ハッシュなどのメソッドを使用して署名コンテンツを処理し、その結果をカスタム署名フィールドに格納できます。 WAF は、このフィールドの内容に基づいて署名を検証します。
操作
要件に応じて、ルールを [モニター] または [ブロック] に設定できます:
-
[モニター]:アラートをトリガーしますが、リクエストはブロックしません。
-
[ブロック]:攻撃リクエストを直接ブロックします。
リパッケージング攻撃の検出
この項目を有効にすると、パッケージ名とパッケージ署名がホワイトリストに登録されていないアプリからのリクエストは、再パッケージ化されたアプリからのリクエストと見なされます。 有効なバージョン情報を指定できます:
-
有効なパッケージ名の指定: 有効なアプリパッケージの名前を指定します。たとえば、
example.aliyundoc.comです。 -
[パッケージ署名]:Alibaba Cloud のセキュリティエンジニアに連絡して、パッケージ署名を取得してください。 アプリのパッケージ署名を検証する必要がない場合は、パッケージ署名を空白のままにします。 WAF は、指定された有効なアプリパッケージ名のみを検証します。
説明パッケージ署名は、アプリの証明書署名ではありません。
iOS と Android の両方のパッケージの有効なバージョンを追加できます (合計 5 つまで)。パッケージ名を重複させることはできません。
要件に応じて、ルールを [モニター] または [ブロック] に設定できます。
[スロットリング]
IP アドレスのスロットリング (デフォルト)
同一 IP アドレスからのリクエスト数が、指定された 統計期間 内に指定された しきい値 を超えた場合、その IP アドレスからのリクエストに対して [ブロック] または [モニター] のスロットリングアクションが実行されます。 アクションの期間も指定します。 条件は 3 つまで設定できます。 詳細については、「カスタムルールパラメーター」をご参照ください。
デバイスの速度制限
デバイススロットリング条件を設定して、同一デバイスからのリクエスト数が、指定された 統計期間 内に指定された しきい値 を超えた場合に、そのデバイスからのリクエストに対して [ブロック] または [モニター] のスロットリングアクションが実行されるように指定できます。 アクションの期間も指定します。 条件は 3 つまで設定できます。 詳細については、「カスタムルールパラメーター」をご参照ください。
カスタムセッションの速度制限
[セッションタイプ] を設定し、カスタムセッションスロットリング条件を定義できます。 これらの条件は、同一セッションからのリクエスト数が、指定された 統計期間 内に指定された しきい値 を超えた場合に、そのセッションに対して [ブロック] または [モニター] のスロットリングアクションが実行されることを指定します。 アクションの期間も指定します。 条件は 3 つまで設定できます。 詳細については、「カスタムルールパラメーター」をご参照ください。
[ボット脅威インテリジェンス]
クローラーの脅威インテリジェンスライブラリ
一定期間にわたって複数の Alibaba Cloud ユーザーに対して悪意のあるクローリングを複数回実行した攻撃元の IP アドレスが含まれます。 ボット脅威インテリジェンスライブラリを [モニター] または [ブロック] に設定できます。
IDC ブラックリストのブロック
このスイッチをオンにすると、選択した IP アドレスライブラリをブロックします。 パブリッククラウドまたはデータセンターのソース IP アドレスを使用してサービスにアクセスする場合は、Alipay や WeChat からの支払いコールバック、監視プログラムなど、既知の正当なアクセス元をホワイトリストに追加します。 データセンターブラックリストは、Alibaba Cloud、21Vianet、Meituan Cloud、Tencent Cloud、および「その他」の IP アドレスライブラリをサポートしています。 データセンターブラックリストを [モニター] または [ブロック] に設定できます。
[保護されたドメイン名]
関連するポリシー関係を選択してください
-
元の関連付けるポリシーを追加して置き換えます:関連付けられているポリシーの関連付けを解除し、現在のポリシーに置き換えます。
-
元の関連付けるポリシーを追加して保持します:現在のポリシーと、既存の関連付けられたポリシーは共存し、互いに影響しません。
保護されたドメイン名
現在の緩和ポリシーに追加するドメイン名を選択します。
説明1 つの保護対象ドメイン名は、同じポリシータイプの緩和ポリシー 1 つにのみ関連付けることができます。
ドメイン名がすでに同じタイプの別のポリシーに関連付けられている場合、現在のポリシーをドメイン名に適用すると、ドメイン名に設定されているポリシーは現在のポリシーに置き換えられます。
-
ポリシーの作成 をクリックします。
新しい保護ポリシーは、デフォルトで有効になっています。