本ページでは、悪意のあるクローラーの特徴と、 WAF を使用してクローラーをブロックする方法について説明します。

注意すべきことは、プロフェッショナルのクローラーが、 Web サイト管理者の設定したクロール防止ポリシーを回避するよう絶えずクロール方法を変更していることです。 固定したルールを適用して完全な保護を実現することは不可能です。 さらに、クロール防止は、自身の業務の特性と強い関連性があります。 したがって、理想に近い結果を得るためには、保護ポリシーを定期的に見直して更新する必要があります。

悪意のあるクローラーの識別

一般的に、通常のクローラーには xxspider のユーザーエージェントに似たマークが付いています。 定期的にリクエストし、URL と時間は比較的分散しています。 正当なクローラーに対して逆 nslookup または tracert を実行すると、常に正当なソースアドレスが見つかります。 たとえば、次の図は Baidu クローラーレコードを示します。

ただし、悪意のあるクローラーは、特定の期間中にドメイン名の特定の URLやインターフェイスに対し、大量のリクエストを送信することがあります。 これは、クローラーを装った HTTP フラッド攻撃、またはサードパーティを装ったターゲット機密情報をクロールするクローラーである可能性があります。 悪意のあるクローラーが送信したリクエストの数が十分に多い場合、通常、CPU 使用率の急上昇、Web サイトを開けない、およびサービスの中断を引き起こします。

WAF は悪意のあるクローラーに対してWAF セキュリティレポートを行い、前日のクローラーリクエストについて警告します。 実際の事業状況に基づいて以下のルールを 1 つ以上設定して、対応するクローラーリクエストをブロックします。

HTTP ACL ポリシーを設定して特定のクローラーをブロック

HTTP ACL ポリシーを設定して、ユーザーエージェント、URL、およびその他のキーワードを使用して悪意のあるクローラーリクエストをフィルターして除外します。 たとえば、次の設定では Baidu クローラーのみを許可し、他のクローラーをフィルターして除外します (キーワードの大文字と小文字は区別されません)。
ルール内の複数の条件は ”AND” 論理関係によってつなぐため、ルールを有効にするには、リクエストがルールの条件をすべて満たす必要があります。
次の設定を使用して、すべてのクローラーが /userinfo ディレクトリ配下のコンテンツにアクセスできないようにします。

カスタム HTTP フラッドポリシーを設定して悪意のあるリクエストをブロック

カスタム HTTP フラッド保護ルールを使用して、一定のアクセス頻度でいくつかの特定 URL のブロックルールを設定可能です。