ボットの検出は、デジタル アクティビティが人間によるものか、自動化されたクライアントによるものなのか、不確実なソースによるものなのかを判断するプロセスです。 Web サイト、アプリ、API は、ネットワーク、リクエスト、ブラウザー、動作、セッション、アカウントのシグナルを組み合わせて決定を行います。
その結果、いくつかのアクションが発生する可能性があります。 プラットフォームは、リクエストを許可したり、監視したり、速度を落としたり、検証を求めたり、レビューのために送信したり、ブロックしたりすることができます。
これは人間と機械の間の単純な競争ではありません。 検索クローラー、監視ツール、アクセシビリティ サービス、テスト スクリプト、承認された統合も自動化されます。 有用な検出システムは、許容可能な自動化を、リスクや悪用を生み出すアクティビティから分離する必要があります。
ボットの検出とは何ですか?
ボットの検出は分類プロセスです。 自動化の兆候を探し、アクティビティが何をしようとしているかを検討します。
その 2 番目の部分が重要です。 監視サービスは、毎分同じページを要求する場合があります。 資格情報スタッフィング ツールは、ログイン試行を繰り返し送信する場合があります。 どちらも自動化されていますが、リスクは大きく異なります。
検出システムは次のようなラベルを返す場合があります。
- 認証済みボット
- おそらく人間
- 自動化される可能性が高い
- 不審な自動化
- 不明なトラフィック
一部のシステムは代わりにスコアを返します。 より低いスコアまたはより高いスコアは、リクエストが自動化される推定確率を表す場合があります。 スケールの方向はプロバイダーによって異なります。
スコアは証拠ではなく証拠です。 ブラウザの設定がおかしいからといって、悪意があるとは証明できません。 使い慣れた IPアドレス は、個人が制御していることを証明するものではありません。 通常、強力な決定は、同じ方向を指すいくつかのシグナルに依存します。
ボットの検出 ソフトウェアは、この分析を実行する製品カテゴリです。 多くの製品には管理機能と軽減機能も含まれていますが、それらは別の段階です。
ボットの検出はどのように機能しますか?
通常、このプロセスは 5 つの部分で構成されます。
- 関連するシグナルを収集する
システムは、接続、リクエスト、ブラウザ、セッション、アカウント、および試行されたアクションを監視します。 ログイン ページでは、公開記事や API エンドポイントとは異なるシグナルが必要になる場合があります。
- 信号を比較する
現在のリクエストは、同じフロー内の既知のクローラー、脅威インテリジェンス、セッション履歴、通常のトラフィック、および他のリクエストと比較されます。 システムは矛盾も探します。 ある環境を主張しているにもかかわらず、別の環境のように動作するブラウザは、より厳しい調査を受ける可能性があります。
- スコアまたはクラスを割り当てる
ルール、統計モデル、または機械学習は、アクティビティが人間によるものであるか、自動化されたものであるか、検証済みであるか、疑わしいものであるか、または不確実であるかを推定します。 Cloudflare は、ボットの検出 エンジン のドキュメントで同様のアプローチを説明しています。 そのシステムは、ヒューリスティック、ブラウザー信号、セッション特性、機械学習を組み合わせています。
- ポリシーを適用する
プラットフォームは信頼性とリスクに基づいて対応を選択します。 低リスクのトラフィックは通過する可能性があります。 不確実なトラフィックは課題に直面する可能性があります。 信頼性の高い不正行為は制限またはブロックされる場合があります。
- 結果を確認する
セキュリティ チームは、誤検知、攻撃の見逃し、ユーザーからの苦情、新しいトラフィック パターンを検査します。 先月機能していたルールでも、ブラウザの更新や攻撃者の動作の変化の後は調整が必要になる可能性があります。
エンドポイントはシグナルの意味を変えます。 商品フィードでは、1 分間に 10 件のリクエストが正常である可能性があります。 異なるアカウントに対するログイン試行が 10 回失敗した場合は、より懸念されます。 適切な検出では、すべてのリクエストを同じ方法で処理するのではなく、そのコンテキストが保持されます。
ボットの検出 システムはどのような信号を使用しますか?
現代のシステムは、1 つの完璧な指標に依存しません。 これらは、いくつかの弱い信号と強い信号を組み合わせます。
| 信号層 | 例 | それが示すことができるもの | 主な制限事項 |
|---|---|---|---|
| ネットワーク | IPレピュテーション、ASN、場所、TLS、HTTP 特性 | 接続の出所と既知のパターンと一致するかどうか | 共有ネットワークと変化するネットワークは不確実性を生みます |
| リクエスト | ヘッダー、リクエストレート、順序、エンドポイントシーケンス | クライアントが完全で一貫したリクエストを送信するかどうか | 正規の API クライアントは機械的に見える場合があります |
| ブラウザとデバイス | ブラウザのプロパティ、レンダリング、画面、言語、デバイスの特性 | 環境が一貫性があり、認識可能であるかどうか | プライバシー ツールや一般的ではないデバイスは一般的ではないように見える場合があります |
| オートメーション | ヘッドレスブラウザの特性、フレームワークアーティファクト、およびチャレンジの結果 | ソフトウェアがセッションを制御できるかどうか | 承認されたテストとワークフローは引き続き自動化されています |
| 行動 | タイミング、ナビゲーション、クリック、フォーカス、インタラクションの順序 | アクティビティが通常のユーザー フローと異なるかどうか | 人間とアクセシビリティ ツールはすべて同じように動作するわけではありません |
| セッションとアカウント | Cookie、ログイン履歴、失敗、およびアクションの速度 | 現在のアクティビティが以前のアクティビティに適合するかどうか | 新しいアカウントには履歴がほとんどありません |
| ビジネスの背景 | サインアップ、カート、支払い、コンテンツ、または API アクション | アクティビティがそのワークフローでリスクを生み出すかどうか | 各エンドポイントには独自のポリシーが必要です |
| 評判 | 検証済みのクローラー、ホワイトリスト、脅威フィード | クライアントが既知のエンティティと一致するかどうか | 不明だからといって悪意があるわけではない |
ネットワーク信号
IPレピュテーション とネットワーク所有権は、有用なコンテキストを提供します。 ホスティング ネットワークからのトラフィックは、消費者ネットワークを経由するトラフィックとは異なる処理を受ける必要がある場合があります。 その違いは評決ではありません。
ネットワークの場所は 1 つのレイヤーにすぎません。 プロキシはネットワーク パスを変更します。 ブラウザの動作、セッション履歴、アカウントのアクティビティは変更されません。 プロキシ、VPN、またはアンチディテクトブラウザ は接続の別の部分に影響を与えるため、これらのツールを相互に置き換えることはできません。
ブラウザとデバイスの信号
ウェブサイトは、ブラウザのフィンガープリンティング を通じて、ブラウザのバージョン、オペレーティング システム、画面サイズ、言語、タイムゾーン、フォント、レンダリング動作を組み合わせることができます。
多くの場合、一貫性は 1 つの希少価値以上に重要です。 ブラウザーは、あるオペレーティング システム上で動作すると主張しながら、別のオペレーティング システムに関連付けられたグラフィックス、フォント、または入力機能を公開することがあります。 この不一致によりリスクが高まる可能性があります。 それ自体ではまだ虐待を証明することはできません。
動作とセッションシグナル
検出システムは、セッションがどのように発展するかを調べることができます。 ページの順序、アクション間の時間、繰り返される失敗、訪問間の変化を確認する場合があります。
人間の行動に関する単純な主張は信頼できません。 ユーザーは素早くクリックできます。 キーボードや支援技術を使用して操作するユーザーもいます。 ボットは遅延を追加することもできます。 有用なシグナルは、多くの場合、1 つのマウス パスではなく、完全なシーケンスとビジネス結果から得られます。
アカウントとビジネスのシグナル
最も強力な証拠はログイン後に表示される可能性があります。 プラットフォームは、現在のアクションをアカウント履歴、支払い詳細、購入制限、以前のセッションと比較できます。
有効な挑戦がすべての疑問を解決するわけではないのはこのためです。 クライアントはブラウザ チェックに合格しても、異なるカードを使用して 20 回のチェックアウトを試行する場合があります。 ブラウザは許容できるように見えますが、トランザクション パターンは許容できません。
良いボット、悪いボット、および承認された自動化
すべての自動クライアントが同じグループに属するわけではありません。
優れた検証済みのボット
検索クローラー、稼働時間モニター、および承認されたパートナー サービスは、明確な価値を提供できます。 プラットフォームはその身元を確認し、許可リストに登録する場合があります。 これらのボットには依然として賢明な制限が必要です。 検証済みの名前によって、すべてのエンドポイントへの無制限のアクセスが許可されるべきではありません。
悪質なボットまたは不正なボット
不正なボットは、ユーザー、システム、または業務運営に損害を与えるアクションを実行します。 一般的な例は次のとおりです。
- クレデンシャルスタッフィング
- 偽のアカウントの作成
- カードのテスト
- 在庫の買い占め
- スパム送信
- クリック詐欺
- 不正なデータ収集
リスクは行動、規模、意図から生じます。 自動化によりオペレータはスピードを得ることができますが、スピードだけが問題のすべてではありません。
承認された自動化
QA テスト、内部ブラウザ ワークフロー、監視ジョブ、および承認された API クライアントは、ビジネスの一部として期待される場合があります。 定義された権限、安定した ID、レート制限、ログ、明確な所有者を使用する必要があります。
承認された自動化では、人間のふりをする必要はありません。 可能であれば、公式 API、サービス アカウント、署名されたリクエスト、または文書化されたクローラー ID を使用する必要があります。
不明なトラフィック
一部のトラフィックでは、確信を持って決定するための十分な証拠が得られません。 すべての不明なクライアントをハード ブロックすると、不要な障害が発生します。 より適切な対応としては、監視、レート制限の引き下げ、またはアクセス可能な検証ステップが考えられます。
OWASP ボット管理ガイダンス では、保護されたフローに一致する階層化された制御と応答を推奨しています。 また、正規のクローラー、監視エージェント、およびアクセシビリティ ツールは引き続き使用できるようにする必要があるとも述べています。
一般的なボットの検出方法
署名と評判
基本的な検出は既知の情報から始まります。 システムは、検証済みのクローラ、悪意のある IP 範囲、異常なユーザー エージェント、または既知の自動化署名を認識する場合があります。
これらのチェックは高速ですが、すぐに古くなってしまいます。 ユーザーエージェントはコピー可能です。 IP アドレスが変更されます。 新しい自動化はまだレピュテーション フィードに表示されない可能性があります。
レートとシーケンスの分析
レート制限は、クライアントまたは ID がアクションを実行する頻度を測定します。 シーケンス分析では、これらのアクションの順序を調べます。
1 つの IP ベースの制限で十分な場合はほとんどありません。 オフィス、学校、モバイル ネットワークでは、同じアドレスに多数のユーザーが配置される場合があります。 分散ボットは多くのアドレスを使用できます。 より適切な制御では、IP、セッション、アカウント、エンドポイント、および時間枠を組み合わせて考慮します。
ブラウザとデバイスのフィンガープリンティング
フィンガープリントは、ブラウザまたはデバイスのパターンを共有するリクエストをリンクするのに役立ちます。 また、主張された環境と観察された動作との間の矛盾を明らかにすることもできます。
この方法ではプライバシーのコストが発生します。 サイトは、保護されたフローに必要な信号のみを収集する必要があります。 生データは必要以上に長く保存しないでください。 チェックアウト時の不正チェックは、公的ヘルプページを読むよりも精査が正当化される可能性があります。
行動分析とセッション分析
行動モデルは、アクティビティと予想されるユーザー フローを比較します。 セッション分析により、履歴、失敗した試行、認証状態、および繰り返されたアクションが追加されます。
モデルでは、平均的なユーザーがすべての実際のユーザーを表すと想定すべきではありません。 チームは、システムがキーボード ユーザー、スクリーン リーダー、低速接続、共有デバイス、プライバシー重視のブラウザをどのように扱うかをテストする必要があります。
機械学習と異常検出
機械学習では、小さなルール セットよりも多くの機能を組み合わせることができます。 リクエストとセッション全体のパターンを見つけて、リスク スコアを返します。
モデルにはまだ監督が必要です。 ブラウザの更新により、通常の信号が一晩で変化する可能性があります。 マーケティング キャンペーンにより、攻撃ではない異常なトラフィックが発生する可能性があります。 チームはドリフトを監視し、影響の大きい決定が行われた理由を記録する必要があります。
課題と証明
CAPTCHA、目に見えないチャレンジ、証明トークン、デバイス認証により、不確実なトラフィックからより多くの証拠を収集できます。 ステップアップコントロールとして最適に機能します。
CAPTCHA は完全な検出システムではありません。 実際のユーザーの邪魔をしたり、アクセシビリティの問題が発生したりする可能性がありますが、それでも自動化または有料サービスによって解決されます。 チャレンジに合格しても、次のトランザクションの意図についてはほとんどわかりません。
ボットの検出 対 ボットの管理と軽減
これらの用語は、同じワークフローのさまざまな部分を説明します。
| 用語 | 主な質問 | 典型的な結果 |
|---|---|---|
| ボットの検出 | このアクティビティは自動化されているか、検証されているか、未知であるか、または危険であると思われますか? | スコア、ラベル、または信頼度 |
| ボット管理 | このクラスにはどのようなポリシーを適用する必要がありますか? | 許可、監視、制限、異議申し立て、レビュー、またはブロック |
| ボットの軽減 | 有害な活動はどのように削減されるべきですか? | 遅延、レート制限、チャレンジ、拒否、または調査 |
| CAPTCHA | クライアントはさらなる証拠を提供できますか? | 合格、不合格、トークン、または追加のリスクシグナル |
| 不正行為の検出 | その行為または取引は不正であると思われますか? | アカウントまたは取引のリスクの決定 |
Web アプリケーション ファイアウォールは、これらの制御の一部を提供する場合があります。 これは自動的に完全なボット管理システムになるわけではありません。 DDoS 保護は、1 つのベンダーが両方の製品をバンドルしている場合でも、別の問題も解決します。
ボットの検出はどこで使用されますか?
適切な信号は、保護されたアクションによって異なります。
- ログイン ページは、これを使用して資格情報のスタッフィングとアカウント乗っ取りの試みを識別します。
- サインアップ フォームは、偽のアカウントやスパムを減らすためにこれを使用します。
- チェックアウト フローはこれを使用して、カードのテスト、スキャルピング、在庫の買い占めを検出します。
- コンテンツ サイトは、クローラーと不正なスクレイピングを管理するためにこれを使用します。
- 広告とリードフォームは、偽のクリックと送信を識別するためにこれを使用します。
- API は、認証、クォータ、およびリクエストの署名とともにこれを使用します。
- モバイル アプリは、デバイス、セッション、アカウント、トランザクションのシグナルを使用します。
一般に公開されてもアクセス ルールの必要性がなくなるわけではありません。 同時に、厳格なセキュリティ ルールによって、検証済みの検索クローラーや承認済みの統合が破壊されるべきではありません。
制限と誤検知
ボットの検出 は両方向で間違いを犯します。 誤検知では、正当なアクティビティが疑わしいものとして扱われます。 偽陰性により、不正行為が通過します。
誤検知は、通常とは異なるが有効な設定を使用しているユーザーに影響を与えることがよくあります。 一般的な例は次のとおりです。
- 多くの人が共有する企業や学校のネットワーク
- VPN およびモバイル ネットワーク ユーザー
- プライバシー重視のブラウザ
- アカウント履歴のない新しいデバイス
- アクセシビリティツール
- 接続が遅い、または不安定である
- 明確なアイデンティティを持たない承認された自動化
最初の弱い信号をハードブロックすると、これらの問題がさらに悪化します。 通常、段階的応答の方が安全です。
- 低リスクのトラフィックを許可する
- 不確実なパターンを観察する
- エンドポイントベースのレート制限を適用する
- 追加の検証をリクエストする
- 影響力の高いアクションをレビューする
- 高信頼性の悪用をブロックする
反応は起こり得る危害に応じたものでなければなりません。 公開ページの閲覧と支払い方法の変更が同じしきい値に直面してはなりません。
検出にはデータ収集も含まれます。 ブラウザの指紋、インタラクション データ、アカウント履歴、ネットワーク情報は、一緒に保存すると機密性が高くなる可能性があります。 サイト所有者は、明確な保存制限、アクセス制御、プライバシーの開示を必要としています。 より多くのデータを収集することが、自動的により適切な検出につながるわけではありません。
ボットの検出 とブラウザ プロファイル
ブラウザ プロファイルは、ブラウザ セッションが実行される環境を制御します。 Cookie、ローカル ストレージ、ブラウザ設定、プロキシ構成を他のプロファイルから分離して保持する場合があります。
この分離は、承認されたワークフローに役立ちます。 これにより、偶発的なアカウントの重複が減り、セッションの所有権がより明確になります。 第三者がアクティビティをどのように分類するかを決定するものではありません。
MoreLogin を使用すると、チームはワークフローごとに個別の ブラウザ プロファイル を作成できます。 開発者は、MoreLogin API を使用して、プロファイルを開始し、サポートされている自動化ツールに接続し、タスク後にプロファイルを閉じることができます。
プロファイルは結果の一部にすぎません。 ネットワーク コンテキスト、アカウント履歴、タスクの頻度、コンテンツ、プラットフォーム ポリシーは依然として重要です。 プロファイルを適切に分離しても、未承認のアクションが承認されたアクションに変わることはありません。
分離されたセッションとロールベースのワークフローが必要なチームの場合、マルチアカウント ブラウザ を使用すると、より明確な運用構造を提供できます。 権限、ログ、レート制限、人間によるレビューはプロセスの一部として残す必要があります。
重要なポイント
- ボットの検出は複数のシグナルを組み合わせます。単一のブラウザチェックだけで判断するものではありません。
- 自動化の検出は悪意のある意図を証明するものではありません。
- 検出によりスコアまたはクラスが生成されます。 経営陣が対応を決定します。
- ブラウザ、ネットワーク、動作、セッション、ビジネス コンテキストはすべて重要です。
- 誤検知には、監視、アクセス可能な課題、および回復パスが必要です。
- ブラウザ プロファイルは環境を分離します。 プラットフォームの決定を保証するものではありません。
ボットの検出に関するよくある質問
ボットの検出とは簡単に言うと何ですか?
ボットの検出は、オンライン アクティビティが人間によるものなのか、自動化されたクライアントによるものなのか、不確実なソースによるものなのかを判断するプロセスです。 ネットワーク、リクエスト、ブラウザ、動作、セッション、アカウントからのシグナルを組み合わせます。 この結果は、プラットフォームがアクティビティを許可、監視、制限、検証、ブロックするかどうかを決定するのに役立ちます。
Web サイトはどのようにしてボットを検出するのでしょうか?
ウェブサイトでは、いくつかの種類の証拠を比較します。 IP およびネットワークの評判、リクエスト ヘッダー、ブラウザのプロパティ、自動化特性、ナビゲーション パターン、セッション履歴、アカウント アクティビティを調査する場合があります。 ルールまたは機械学習モデルは、これらの信号をスコアまたは分類に結合します。 すべての訪問者に対して単一の信号が確実に機能するということはありません。
すべてのボットに悪意があるのでしょうか?
いいえ。 検索クローラー、監視サービス、テスト ツール、アクセシビリティ サービス、承認された統合はすべて自動化できます。 プラットフォームは、詐欺、悪用、パフォーマンスの問題、または不正アクセスを引き起こす自動化を制限しながら、有用なボットを検証および管理する必要があります。
CAPTCHA は ボットの検出 と同じですか?
いいえ。 CAPTCHA は、確信が持てないクライアントにさらなる証拠を求める方法の 1 つです。 より広範な検出システムでは、ネットワーク、ブラウザ、セッション、動作、ビジネス シグナルも考慮されます。 CAPTCHA はアクセシビリティとユーザー エクスペリエンスの問題を引き起こす可能性があるため、これが唯一のコントロールであってはなりません。
ボットの検出とボットの軽減の違いは何ですか?
ボットの検出は、アクティビティを分類するか、リスク スコアを割り当てます。 ボットの軽減は、望ましくないアクティビティに対して措置を講じます。 このアクションには、リクエストのレート制限、遅延、チャレンジ、レビュー、ブロックが含まれる場合があります。 ボット管理は、分類を適切なポリシーに関連付けます。
ボットの検出で間違いが発生する可能性はありますか?
はい。 共有ネットワーク、プライバシー ツール、アクセシビリティ ソフトウェア、新しいデバイス、または不安定な接続により、正規のユーザーが異常に見える場合があります。 洗練されたボットは、通常のトラフィックに似ている場合もあります。 チームは偽陽性と偽陰性を測定し、ルールと回復パスを調整する必要があります。
ブラウザの自動化は検出できますか?
ブラウザの自動化は、ブラウザ、リクエスト フロー、タイミング、セッションで観察可能なシグナルを生成できます。 サイトでは、これらの信号を自動信号または不審信号として分類する場合があります。 最終的な結果は、いくつかの証拠層とプラットフォーム ポリシーによって異なります。 承認された自動化では、可能な限り文書化されたアクセス方法を使用する必要があります。
ブラウザ プロファイルはボットの検出を防止しますか?
いいえ。 ブラウザ プロファイルは、ブラウザの状態と構成を分離します。 第三者の検出システムは制御しません。 タスク、ネットワーク、アカウント履歴、動作、プラットフォームのルールは依然として結果に影響します。

JP
