正当なボットを管理する方法|正当なボットと悪意のあるボット

管理する必要があるのは、悪意のあるボットだけではありません。ボット管理戦略では、悪意のあるボットを軽減しながら、正当なボットをブロックしないようにする必要があります。

Share facebook icon linkedin icon twitter icon email icon

正当なボットの管理

学習目的

この記事を読み終えると、以下のことができます。

  • 正当なボットと悪意のあるボットの違いを説明する
  • 何を持って「正当な」ボットといえるのか、そして正当なボットがWebプロパティにアクセスする必要がある理由を理解する
  • 正当なボットと悪意のあるボットを管理するための効果的な戦略を学ぶ

正当なボットとは?

ボットは、インターネットを介したWebプロパティの操作を自動化するコンピュータープログラムです。「正当な」ボットとは、インターネットでのユーザー体験に悪影響を及ぼさない、有用または役立つタスクを実行するボットです。正当なボットは悪意のあるボットと同様の特性を共有することがあるため、ボット管理戦略をまとめるにあたっての課題は、正当なボットがブロックされないようにすることです。

正当なボットにはさまざまな種類があり、それぞれが異なるタスクのために設計されています。以下に例を示します。

  • 検索エンジンボット: Webクローラーまたはスパイダーとも呼ばれます。これらのボットは、インターネット上のほぼすべてのWebサイトのコンテンツを「クロール」またはレビューし、関連するユーザーの検索に対して検索エンジンの結果にコンテンツが表示されるようにコンテンツにインデックス付けをします。これらのボットはGoogle、Bing、Yandexなどの検索エンジンによって運営されています。
  • 著作権ボット:プラットフォームまたはWebサイトをクロールして、著作権法に違反する可能性のあるコンテンツを探すボット。これらのボットは、著作権で保護された素材を所有する個人または企業が運営することがあります。著作権ボットは、複製されたテキスト、音楽、画像、さらには動画を探すことができます。
  • サイト監視ボット:これらのボットは、Webサイトの指標を監視し(たとえば、バックリンクやシステムの停止の監視)、ユーザーに大きな変更やダウンタイムを警告できます。たとえば、Cloudflareは、Always Onlineと呼ばれるクローラーボットを運営し、配信元サーバーがダウンした場合にWebページのキャッシュバージョンを提供するようCloudflareネットワークに指示します。
  • 商業ボット:商業企業が運営するボットで、情報を求めてインターネットをクロールします。これらのボットは、市場調査会社が運営してニュースレポートや顧客レビューを監視したり、広告ネットワークが広告を表示する場所を最適化したり、またはSEO機関がクライアントのWebサイトをクロールしたりするために利用されています。
  • フィードボット:これらのボットはインターネットをクロールし、プラットフォームのニュースフィードに追加するニュース価値のあるコンテンツを探します。コンテンツアグリゲーターサイトやソーシャルメディアネットワークがこれらのボットを運営する場合があります。
  • チャットボット:チャットボットは、事前にプログラムされた応答でユーザーに応答することにより、人間の会話を模倣します。一部のチャットボットは、長時間の会話を続けるのに十分な複雑性を持ちます。
  • パーソナルアシスタントボット:SiriやAlexaなど:これらのプログラムは一般的なボットよりもはるかに高度ですが、それでもボット、つまりデータを求めてWebを閲覧するコンピュータープログラムです。

正当なボットと悪意のあるボット

Webプロパティは、悪意のあるボットトラフィックを除外しようとするこれらの種類のボットをブロックしないようにする必要があります。特に重要なのは、検索エンジンのWebクローラーボットがブロックされないことです。これらがなければ、Webサイトが検索結果に表示されないからです。

不正なボットは、データを盗んだり、ユーザーアカウントに侵入したり、オンラインフォームからジャンクデータを送信したり、その他の悪意のあるアクティビティを実行できます。悪意のあるボットの種類には、クレデンシャルスタッフィングボットコンテンツスクレイピングボット、スパムボット、およびクリック詐欺ボットがあります。

robots.txtとは?

優れたボット管理は、Webサイトのrobots.txtファイルにルールを適切に設定することから始まります。robots.txtファイルは、Webサーバー上にあるテキストファイルで、ホストされているWebサイトまたはアプリケーションにアクセスするボットのルールを指定します。これらのルールは、ボットがクロールできるページとクロールできないページ、フォローするリンクとフォローしないリンク、その他のボットの挙動に関する要件を定義します。

正当なボットはこうしたルールに従います。たとえば、Webサイトの所有者がサイト上の特定のページをGoogle検索結果に表示したくない場合、robots.txtファイルにルールを記述すればGoogleのWebクローラーボットはそのページのインデックスを作成しません。robots.txtファイルは実際にこれらのルールを強制することはできませんが、正当なボットは、他の操作を行う前にファイルを探し、ルールに従うようにプログラムされています。

ただし、悪意のあるボットは、robots.txtファイルを無視するか、これを読んでWebサイトがボットの立ち入りを制約しようとしているコンテンツを知り、そのコンテンツにアクセスします。したがって、ボットの管理は、ただ単に、robots.txtファイルにボットの挙動に関するルールを設定するよりも積極的なアプローチが必要です。

ホワイトリストとは?

ホワイトリストは、イベントのゲストリストのようなものだと考えてください。ゲストリストに載っていない人がイベントに参加しようとすると、セキュリティ担当者がそれを阻止します。リストに載っている人なら誰でも自由にイベントに参加できます。招待されていないゲストは不適切な振る舞いでパーティーを台無しにする可能性があるため、このようなアプローチが必要です。

ボット管理の場合も、基本的にはそのようにホワイトリストが機能します。ホワイトリストは、Webプロパティへのアクセスを許可されているボットのリストです。(ホワイトリストはブラックリストの反対であるためこう呼ばれています。)通常、これは「ユーザーエージェント」と呼ばれるものか、ボットのIPアドレス、または2つの組み合わせによって機能します。ユーザーエージェントは、Webサーバーに対してユーザー(またはボット)のタイプを識別するテキストの文字列です。

検索エンジンに属するエージェントなど、許可された正当なボットのユーザーエージェントのリストを維持し、リストにないボットをブロックすることにより、Webサーバーは正当なボットへのアクセスを確保できます。

Webサーバーは、既知の悪意を持つボットのブラックリストを持つこともできます。

ブラックリストとは?

ネットワークのコンテキストにおいてブラックリストとは、サーバー、ネットワーク、またはWebプロパティへのアクセスが許可されていないIPアドレス、ユーザーエージェント、またはその他のオンラインIDのインジケーターのリストです。これは、ホワイトリストを使用する場合とは少し異なるアプローチです。ブラックリストに基づいたボット管理戦略では、特定のボットをブロックし、他のすべてのボットを通過させますが、ホワイトリスト戦略は、特定のボットのみを通過させ、他のすべてのボットをブロックします。

ホワイトリストは正当なボットを受け入れて悪意のあるボットを排除するために十分ですか?

悪意のあるボットがユーザーエージェント文字列を偽造して、少なくとも最初は正当なボットのように見える可能性があります。泥棒が偽のIDカードを使用してゲストリストに記載されているふりをしてイベントに潜入するのと同様です。

したがって、行動分析や機械学習など、なりすましを検出するアプローチに組み合わせて、正当なボットのホワイトリストを利用する必要があります。これにより、既知の正当なボットを許可するだけでなく、悪意のあるボットと未知の正当なボットの両方を積極的に特定できます。

ボットマネージャーソリューションは何を行いますか?

ボット管理製品は、正当なボットによるWebプロパティアクセスを許可しながら、悪意のあるボットをブロックします。Cloudflare Bot Managementは、ネットワーク全体のトラフィックに対して機械学習と行動分析を使用して、悪意のあるボットを検出し、一方で自動的に継続的に正当なボットをホワイトリストに登録します。