自動攻撃の増加に伴い、ボットマネジメントの必要性が高まりつつあります。初期のボットは、小規模なスクレイピングやスパムに用途が限られていました。現在では、様相が大きく変わり、ユーザーアカウントの乗っ取りやDDoS攻撃、APIの悪用、特定のコンテンツや価格情報を対象とするスクレイピング、その他にボットが使われるようになっています。Gartnerは、「アプリケーションセキュリティのハイプ・サイクル:2018年」で、ボットマネジメントを「効果大」のカテゴリーに位置づけ、「『過度な期待』」のピーク期」にあるとしています。
では、ボットによる深刻な脅威に対し、企業がボット・マネジメント・ソリューションを採用しているかといえば、そうではありません。依然、企業の多くは導入に否定的です。こうした企業は、社内のリソースやソリューションでボットを抑制しようとしていますが、これがかえってユーザーのセキュリティを危険にさらす結果となっています。ShieldSquareのセキュリティ調査チームがまとめた最近のレポート「Development of In-house Bot Management Solutions and their Pitfalls」(社内ボット・マネジメント・ソリューションの開発とその落とし穴)によれば、社内リソースによるボットマネジメントでは、効果があるどころか害の方が大きいことが分かっています。
悪意のあるボットのトラフィックが実際には22.39%あったのに対して、高度な社内ボット・マネジメント・ソリューションを使っても、「検出率」は11.54%どまりでした。また、これらの社内ソリューションは、悪意のあるボットのほとんどを検出できなかったばかりか、「検出」した11.54%のほぼ半数が誤検出でした。
社内のボット・マネジメント・ソリューションがうまく機能しないのはなぜでしょうか。その理由を詳しく検証する前に、重要な要素をいくつか確認しておきましょう。
悪意のあるボットの半数以上は発信元が米国
下の図2に示すように、悪意のあるボットは56.4%が米国発です(2019年第1四半期)。ボット使用者は、米国がビジネスの中心地であり、発信元を米国にすれば、地域に基づくトラフィックのフィルタリングを逃れられることを理解しています。
たとえば、社内リソースを活用してボットを抑制している企業の多くは、自社がビジネスを展開していない国をブロックする場合が少なくありません。また、ロシアなどの国をブロックしている場合もありますが、これは悪意のあるボットの大半はロシア発だろうと考えてのことです。ところが、実際には逆です。2019年第1四半期をみると、ロシア発の不正ボットは、全体のわずか2.6%でした。
現在は、サイバー攻撃者が高度なテクノロジーを活用し、無数のIPアドレスを調べ上げて、地域に基づくトラフィックのフィルタリングを回避しています。ボットの発信地が地理的に多様化すると、IPアドレスあるいは地域に基づくフィルタリングヒューリスティックを応用したソリューションは役に立たなくなります。サイト訪問者の意図を理解しなければ、検出によって疑わしい訪問者を捕らえることはできません。
悪意のあるボットの3分の1は人間の挙動を模倣する
2019年第1四半期だけでも、悪意のあるボットの37%が「ヒューマンライク」でした。ヒューマンライクなボットは、人間の挙動(マウスの動きやキー入力)をまねて、既存のセキュリティシステムをかいくぐります(図3に示す第三世代と第4世代の不正ボットがこれにあたります)。
巧妙なボットは、多数のIPアドレスまたはデバイスIDに分散しており、無作為のIPアドレスを接続に使用し、検出を回避します。こういったステルス型の検出回避活動は、さらにエスカレートしています。これらの巧妙なボットに仕込まれているプログラムは、ボットを止めようとするあなたの対策すら理解してしまいます。無作為のIPアドレスを使う以外に、地理的な場所も悪用できることを知っています。悪意のあるボットは、さまざまなユーザーエージェントの組み合わせを使って、社内のセキュリティ対策を回避します。
社内ソリューションは、種類の異なるさまざまなボットを可視化できていないことが、うまく機能しない原因となっています。これらのソリューションは、社内のリソースから収集されたデータに基づいて動作しており、脅威に関するグローバルなインテリジェンスを欠いています。ボットマネジメントはニッチな分野であり、悪名高いサイバー犯罪者の後手に回らないようにするには、総合的な理解と継続的な調査が必要です。
さまざまな業界の企業が、悪意のあるボットに遭遇すると、初めの段階として、社内ソリューションを導入して抑制を図ろうとします。ところが、社内ソリューションは巧妙なボットのパターンを認識できない場合が多く、失望することになります。
ボットを管理するには
チャレンジ/レスポンス認証を導入する - チャレンジ/レスポンス認証は、第1世代のボットをフィルタリングするのに役立ちます。チャレンジ/レスポンス方式を採用している認証にはさまざまな種類があり、最も広く用いられているのがCAPTCHAです。ただし、チャレンジ/レスポンス認証は、古いユーザーエージェントやブラウザー、それに初歩的な自動スクリプトのフィルタリングには役立ちますが、人間の挙動を模倣するような、巧妙なボットは阻止できません。
APIに厳密な認証メカニズムを実装する - APIの普及に伴い、保護が不十分なAPIに対するボット攻撃が増加しています。通常、APIは認証ステータスのみを検証し、ユーザーの信頼性は確認しません。攻撃者は、セッションのハイジャックやアカウントアグリゲーションなど、さまざまな方法でこのような弱点を悪用し、正規のAPI呼び出しを装います。APIに厳密な認証メカニズムを実装すれば、セキュリティ侵害の防止に役立ちます。
ログインの失敗やトラフィックの急増を監視する - サイバー攻撃者は、ログインページでクレデンシャル(資格情報)のスタッフィングやクラック攻撃を実行するために不正ボットを利用します。この手法は、多数の資格情報や、ユーザーIDとパスワードの組み合わせを次々と変えて試行するため、ログインの失敗回数が増加します。 また、ウェブサイトに悪意のあるボットが存在すると、トラフィックが突然増加します。ログインの失敗やトラフィックの急増を監視しておけば、悪意のあるボットがウェブアプリに侵入する前に、先制的な措置を講じることができます。
専用のボット・マネジメント・ソリューションを導入する - 上記で述べた対策などの社内ソリューションは、基本的な保護にはなっても、ビジネスに欠かせないコンテンツやユーザーアカウント、その他の機密データの安全性は確保できません。現在では、巧妙な第3世代および第4世代のボットが、悪意のあるボットによるトラフィックの37%を占めるまでになっています。これらは多数のIPアドレスに分散して潜り込み、多岐にわたる方法でビジネスに攻撃を仕掛けてきます。低ボリュームや低速の攻撃を行うこともあれば、大規模な分散攻撃を行ってダウンタイムを引き起こすこともあります。専用のボット・マネジメント・ソリューションは、こういった巧妙な自動アクティビティのリアルタイムによる検出と抑制に活躍します。
注:本記事は、Security Boulevardで最初に掲載されたものです。