(57)【要約】      （修正有）【課題】分散型ブルートフォース攻撃の検知精度向上を図る装置、方法及びプログラムを提供する。【解決手段】情報処理装置２（Ｗｅｂサーバ）は、サービスへのログイン要求とともにアクセス元関連情報及びサービス関連情報を含むクッキー情報を受信する受信部２１と、前記クッキー情報に含まれるアクセス元関連情報とサービスへのログイン要求の送信元情報との共通性及び前記クッキー情報に含まれるサービス関連情報とサービスへのログイン要求のサービスに係る情報の共通性とに基づいて、ログイン要求を攻撃として検知するか否かを判定する判定部２２２とを備える。【選択図】図５
2018180672.tif 000002
【特許請求の範囲】
【請求項１】
サービスへのログイン要求とともにアクセス元関連情報及びサービス関連情報を含むクッキー情報を受信する受信部と、
前記クッキー情報に含まれる前記アクセス元関連情報と前記ログイン要求の送信元情報との共通性、及び前記クッキー情報に含まれる前記サービス関連情報と前記ログイン要求の前記サービスに係る情報との共通性に基づいて前記ログイン要求を攻撃として検知するか否かを判定する判定部と
を含む情報処理装置。
【請求項２】
前記ログイン要求に基づく前記サービスへのログインが失敗した場合に、前記ログイン要求の送信元情報が前記アクセス元関連情報として含まれるとともに前記サービスに係る情報が前記サービス関連情報として含まれるクッキー情報を前記ログイン要求の送信元へ送信する送信部
をさらに含む請求項１に記載の情報処理装置。
【請求項３】
前記アクセス元関連情報と前記ログイン要求の送信元情報とが合致しないが前記サービス関連情報と前記サービスに係る情報とが合致する場合に、前記判定部は前記ログイン要求を攻撃として検知する
請求項１又は２に記載の情報処理装置。
【請求項４】
前記アクセス元関連情報と前記ログイン要求の送信元情報とが合致するが前記サービス関連情報と前記サービスに係る情報が合致しない場合に、前記判定部は前記ログイン要求を攻撃として検知する
請求項１又は２に記載の情報処理装置。
【請求項５】
前記判定部が前記ログイン要求を攻撃として検知するか否かを判定する処理を前記ログイン要求に含まれるＩＤ及びパスワードを用いた認証処理の前に行う
請求項１から３のいずれか１項に記載の情報処理装置。
【請求項６】
情報処理装置が、
サービスへのログイン要求とともにアクセス元関連情報及びサービス関連情報を含むクッキー情報を受信し、
前記クッキー情報に含まれる前記アクセス元関連情報と前記ログイン要求の送信元情報との共通性、及び前記クッキー情報に含まれる前記サービス関連情報と前記ログイン要求前記サービスに係る情報との共通性に基づいて前記ログイン要求を攻撃として検知するか否かを判定する
ことを含む攻撃検知方法。
【請求項７】
コンピュータに、
サービスへのログイン要求とともにアクセス元関連情報及びサービス関連情報を含むクッキー情報を受信し、
前記クッキー情報に含まれる前記アクセス元関連情報と前記ログイン要求の送信元情報との共通性、及び前記クッキー情報に含まれる前記サービス関連情報と前記ログイン要求の前記サービスに係る情報との共通性とに基づいて前記ログイン要求を攻撃として検知するか否かを判定する
処理を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置，その攻撃検知方法及びプログラムに関する。
【背景技術】
【０００２】
インターネットの発達によって、さまざまなサービスがインターネット経由で利用可能となっている。サービスの多くはユーザがＷｅｂサイトへアクセスすることによって提供されるため、Ｗｅｂサービスと呼ばれている。Ｗｅｂサービスへのログイン認証は、例えば、ＩＤ（識別子）及び パスワードの認証によって行われる。
【０００３】
Ｗｅｂサービスに対する攻撃の一つにブルートフォース攻撃がある。ブルートフォース攻撃は、ＩＤ及びパスワードをログインが成功するまでログイン認証画面に繰り返し入力するという攻撃である。ブルートフォース攻撃の攻撃方法は単純であるため、ブルートフォース攻撃と正常なアクセスにおけるログイン失敗との区別が難しいなどの理由から、多く実施されるサイバー攻撃の一つといわれている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−１０９６５０号公報
【特許文献２】特開２０１１−２３３１２８号公報
【特許文献３】特開２００４−２４８１８５号公報
【特許文献４】特表２０１２−５２７６９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ブルートフォース攻撃では、短い時間中に何度もログイン試行が繰り返される。このため、同じホストからのログイン失敗回数が閾値を超える場合に、その状況をブルートフォース攻撃の可能性が高いアクションとして検知し得る。
【０００６】
上記のような検知を回避するために、分散型ブルートフォース攻撃と呼ばれる攻撃方法が主流となりつつある。分散型ブルートフォース攻撃には、複数のホストから１つのウェブサービスに不正なログイン試行を繰り返すＮ対１分散型ブルートフォース攻撃がある。また、分散型ブルートフォース攻撃には、１つのホストが複数のウェブサービスに所定順序で不正なログイン試行を繰り返す１対Ｎ分散型ブルートフォース攻撃がある。
【０００７】
分散型ブルートフォース攻撃では、１つのホストが１つのＷｅｂサービスに不正なログインを繰り返す攻撃（通常攻撃と称する）に比べてログインの試行回数が減る。このため、分散型ブルートフォース攻撃の検知は、通常攻撃の検知に比べて困難となる。
【０００８】
本発明は、攻撃検知の精度向上を図ることが可能な情報処理装置、その攻撃検知方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
一つの態様は、サービスへのログイン要求とともにアクセス元関連情報及びサービス関連情報を含むクッキー情報を受信する受信部と、前記クッキー情報に含まれる前記アクセス元関連情報と前記ログイン要求の送信元情報との共通性、及び前記クッキー情報に含まれる前記サービス関連情報と前記ログイン要求の前記サービスに係る情報との共通性に基づいて前記ログイン要求を攻撃として検知するか否かを判定する判定部とを含む情報処理
装置である。
【発明の効果】
【００１０】
一側面では、攻撃検知の精度向上を図ることができる。
【図面の簡単な説明】
【００１１】
【図１】図１はＮ対１分散型ブルートフォース攻撃の説明図である。
【図２】図２はプロキシ（proxy）型Ｎ対１分散型ブルートフォース攻撃の説明図である。
【図３】図３は１対Ｎ分散型ブルートフォース攻撃の説明図である。
【図４】図４はＷｅｂサーバとして動作可能な情報処理装置のハードウェア構成例を示す図である。
【図５】図５はＷｅｂサーバの構成例を示す。
【図６】図６はＷｅｂサーバにおける処理例を示すフローチャートである。
【図７】図７は検知用クッキー情報のデータ構造（フォーマット）例を示す。
【図８】図８は検知ルールの一例を示す。
【図９】図９は図６に示した攻撃判定（００４）の処理例を示す。
【図１０】図１０は動作例１の説明図である。
【図１１】図１１は動作例２の説明図である。
【図１２】図１２は検知用クッキー情報の一例を示す。
【発明を実施するための形態】
【００１２】
以下、図面を参照して、通信装置及び通信方法の実施形態について説明する。実施形態の構成は例示であり、本発明は実施形態の構成に限定されない。
【００１３】
図１，図２及び図３は、分散型ブルートフォース攻撃の説明図である。図１は、Ｎ対１分散型ブルートフォース攻撃の説明図であり、図２は、プロキシ（proxy）Ｎ対１分散型
ブルートフォース攻撃の説明図であり、図３は、１対Ｎ分散型ブルートフォース攻撃の説明図である。
【００１４】
図１に示すように、Ｎ対１分散型ブルートフォース攻撃では、複数（Ｎ個（Ｎは正の整数））ブルートフォース攻撃を行う攻撃ホスト１が、Ｗｅｂサービスを提供するＷｅｂサーバ２に不正なログイン試行を行う。図１の例では５つの攻撃ホスト＃１〜＃５が攻撃者の操作に従ってＷｅｂサーバ２を攻撃している。
【００１５】
図２に示すように、プロキシ型Ｎ対１分散型ブルートフォース攻撃では、攻撃ホスト１が複数のプロキシサーバ３を介してＷｅｂサーバ２にブルートフォース攻撃を行う。この場合、攻撃ホスト１は１つであるが、複数のプロキシサーバ３を介してＷｅｂサーバ２への攻撃が行われる。このため、Ｗｅｂサーバ２からは複数の攻撃ホストが分散攻撃を行っているように見える。
【００１６】
プロキシサーバ３は、例えばオープンプロキシ（OpenProxy）である。オープンプロキ
シは、インターネット上で誰でも利用できる。但し、プロキシサーバ３としてオープンプロキシ以外のプロキシサーバが適用されても良い。
【００１７】
図３に示すように、１対Ｎ分散攻撃では、攻撃ホスト１は、１つのＷｅｂサーバ２を攻撃するのではなく、複数のＷｅｂサーバ２を所定順序で攻撃する。例えば、攻撃ホスト１は、Ｗｅｂサーバ＃１，Ｗｅｂサーバ＃２，Ｗｅｂサーバ＃３及びＷｅｂサーバ＃４（Ｎ＝４）に対し、ラウンドロビンで不正ログインを繰り返す。Ｗｅｂサーバ＃１はＷｅｂサービス＃１を提供し、Ｗｅｂサーバ＃２はＷｅｂサービス＃２を提供し、Ｗｅｂサーバ＃
３はＷｅｂサービス＃３を提供し、Ｗｅｂサーバ＃４はＷｅｂサービス＃４を提供する。
【００１８】
Ｎ対１分散型ブルートフォース攻撃では、各攻撃ホスト１やプロキシサーバ３のＷｅｂサーバ２に対するログイン試行の回数が通常攻撃の場合よりも少なくなる。このため、ログイン試行が攻撃であるのか正常なユーザのログイン失敗（入力ミス）であるのかの区別が難しい。
【００１９】
また、プロキシ型Ｎ対１分散型ブルートフォース攻撃では、攻撃者がログイン試行毎に使用するプロキシサーバ３を変えることが考えられる。このため、Ｗｅｂサーバ２からは毎回攻撃元が異なるように見え、連続した攻撃か否かの判定が困難である。プロキシ型Ｎ対１分散攻撃の検知においては、異なるプロキシサーバ３からのログイン試行が同一の攻撃ホストからの攻撃であることを効率的に知ることで、プロキシ型Ｎ対１分散型ブルートフォース攻撃の検知の精度を高めることが考えられる。
【００２０】
また、１対Ｎ分散型ブルートフォース攻撃でも、１つのＷｅｂサーバ２に対するログイン試行の回数は通常攻撃の場合より少なくなる。このため、正常なユーザのログイン失敗と区別し得ない場合がある。また、攻撃ホスト１は毎回異なるＷｅｂサーバ２にログイン試行を行う。このため、異なるＷｅｂサーバ２間に跨がる連続した攻撃かの判定が困難である。そのため１対Ｎ分散型ブルートフォース攻撃の検知においては、異なるサービス間で同じ攻撃ホストから攻撃を受けていることを効率的に知ることで、検知の精度を高めることが考えられる。
【００２１】
以下に説明する実施形態の説明では、１つの攻撃ホストからの分散型フルートフォース攻撃を検知可能とする情報処理装置、その攻撃検知方法、及びプログラムについて説明する。
【００２２】
実施形態では、Cookie（クッキー）を用いて分散型ブルートフォース攻撃に係るアクセスか否かを特定する。クッキーは、Ｗｅｂサーバがクライアントコンピュータ（ホスト、アクセス元）に預けておくファイル（情報）である。ホストがＷｅｂサーバ２に初めてアクセスしたとき、Ｗｅｂサーバによって、ホスト内にクッキーファイルが生成される。ホストがＷｅｂサーバに再度アクセスするとき、クッキーファイル内の情報をＷｅｂサーバへ送信する。クッキー情報として記憶される情報の種別に制限はない。例えば、クッキー情報には、ユーザの氏名、住所、電話番号、アドレスなどの様々な情報を含むことができ、クッキー情報の利用で情報の再入力を回避できる。
【００２３】
実施形態では、Ｗｅｂサーバは、或るアクセス元からのログイン試行に攻撃の可能性がある場合、攻撃の可能性を示す情報を或るアクセス元のクッキー情報に含める。これによって、或るアクセス元が再度Ｗｅｂサーバにアクセスする場合には、攻撃の可能性を示す情報を含むクッキー情報がＷｅｂサーバに送信される。Ｗｅｂサーバはクッキー情報中の攻撃の可能性を示す情報を確認することで、アクセス元を同一の攻撃元と特定することが可能となる。
【００２４】
図４は、Ｗｅｂサーバ２として動作可能な情報処理装置１０のハードウェア構成例を示す図である。図４において、情報処理装置１０は、バスＢを介して相互に接続された、Central Processing Unit（ＣＰＵ）１１と、メモリ１２と、通信インタフェース（通信Ｉ
Ｆ）１３と、ユーザインタフェース（ＵＩ）１４とを含む。
【００２５】
メモリ１２は、主記憶装置と補助記憶装置とを含む。主記憶装置は、プログラムの展開領域，ＣＰＵ１１の作業領域，データやプログラムの記憶領域，通信データのバッファ領域などとして使用される。主記憶装置は、例えばRandom Access Memory（ＲＡＭ），ＲＡ
ＭとRead Only Memory（ＲＯＭ）との組み合わせで形成される。
【００２６】
補助記憶装置はデータやプログラムの記憶領域として使用される。補助記憶装置は、例えば、ハードディスクドライブ（ＨＤＤ），Solid State Drive（ＳＳＤ），フラッシュ
メモリ，Electrically Erasable Programmable Read-Only Memory（ＥＥＰＲＯＭ）など
の不揮発性記憶媒体で形成される。補助記憶装置は、ディスク型記憶媒体を含むことができる。メモリ１２は、「記憶装置」，「記憶媒体」，「メモリ」，「記憶部」の一例である。
【００２７】
通信ＩＦ１３は通信処理を司る。通信ＩＦ１３は、例えばNetwork Interface Card（ＮＩＣ）である。ＵＩ１４は、入力装置と出力装置とを含む。入力装置は、例えば、キー，ボタン，ポインティングデバイス（マウスなど），タッチパネル，音声入力装置（マイクロフォン）などである。出力装置は、ディスプレイ，プリンタ，スピーカ，ランプなどである。
【００２８】
ＣＰＵ１１は、メモリ１２にプログラムをロードして実行する。プログラムの実行によって、情報処理装置１０は、図５に示す構成を有するＷｅｂサーバ２として動作する。すなわち、Ｗｅｂサーバ２は、Ｗｅｂページの送受信部２１，ログイン処理部２２，及びＷｅｂ処理部２３を含む。
【００２９】
送受信部２１は、Ｗｅｂページに係る情報の送受信を行う。送受信部２１は、Ｗｅｂページに係る情報からアクセス情報を抽出するアクセス情報抽出処理２１１と、Ｗｅｂページに係る情報からクッキー情報を抽出するクッキー情報抽出処理２１２とを行う。
【００３０】
ログイン処理部２２は、ログイン画面生成処理２２１と、ログイン判定処理２２２と、ログイン失敗画面生成処理２２３と、クッキー設定処理２２４と、検知処理２２５と、検知用クッキー情報生成処理２２６とを行う。
【００３１】
ログイン処理部２２における処理では、ユーザ情報２２７が適宜使用される。Ｗｅｂ処理部２３は、各種のＷｅｂサービスを提供するための処理が行われる。ＣＰＵ１１は、送受信部２１，ログイン処理部２２，Ｗｅｂ処理部２３として動作する。ユーザ情報２２７は、Ｗｅｂサービス提供先のユーザの情報であり、メモリ１２に記憶される。
【００３２】
ＣＰＵ１１は、「制御装置」，「制御部」，「コントローラ」，「プロセッサ」，「受信部」，「判定部」，「送信部」の一例である。ＣＰＵは、ＭＰＵ（Microprocessor）、プロセッサとも呼ばれる。ＣＰＵは、単一のプロセッサに限定される訳ではなく、マルチプロセッサ構成であってもよい。また、単一のソケットで接続される単一のＣＰＵがマルチコア構成を有していても良い。ＣＰＵ１１で行われる処理の少なくとも一部は、マルチコア又は複数のＣＰＵで実行されても良い。ＣＰＵで行われる処理の少なくとも一部は、ＣＰＵ以外のプロセッサ、例えば、Digital Signal Processor(DSP)、Graphics Processing Unit（ＧＰＵ）、数値演算プロセッサ、ベクトルプロセッサ、画像処理プロセッサ等
の専用プロセッサで行われても良い。
【００３３】
また、ＣＰＵ１１によって行われる送受信部２１，ログイン処理部２２，及びＷｅｂ処理部２３としての動作の少なくとも一部は、集積回路（ＩＣ）、その他のディジタル回路で行われても良い。また、集積回路やディジタル回路はアナログ回路を含んでいても良い。集積回路は、ＬＳＩ，Application Specific Integrated Circuit（ASIC），プログラ
マブルロジックデバイス（ＰＬＤ）を含む。ＰＬＤは、例えば、Field-Programmable Gate Array(FPGA)を含む。ＣＰＵで行われる処理の少なくとも一部は、プロセッサと集積回
路との組み合わせにより実行されても良い。組み合わせは、例えば、マイクロコントロー
ラ（ＭＣＵ），ＳｏＣ（System-on-a-chip），システムＬＳＩ，チップセットなどと呼ばれる。
【００３４】
図６は、Ｗｅｂサーバ２における処理例を示すフローチャートである。図６の処理主体は例えばＣＰＵ１１である。ＣＰＵ１１は、ページ送受信部２１としてアクセス情報抽出処理２１１を行い、受信されたＷｅｂページに係る情報からＷｅｂサービスへのアクセスを検出する。すると、ＣＰＵ１１はログイン処理部２２としてログイン画面生成処理２２１を行うとともに、送受信部２１として生成されたログイン画面情報をアクセス元へ送信する（図６，００１）。
【００３５】
ＣＰＵ１１は、送受信部２１としてログイン画面を用いて入力されたＩＤ及びパスワードを含むログイン要求を受信する（図６、００２）。すると、ＣＰＵ１１は、送受信部２１としてクッキー情報抽出処理２１２を行う。すなわち、００３の処理にて、ログイン要求がクッキー情報を含むか否かを判定し、クッキー情報が含まれると判定される場合には処理が００４に進み、そうでない場合には処理が００５に進む。
【００３６】
００４の処理では、ＣＰＵ１１はログイン処理部２２として検知処理２２５を行う。すなわち、ＣＰＵ１１はログイン要求を攻撃として検知するか否かの判定処理を、クッキー情報を用い、検知ルールに従って行う。すなわち、ＣＰＵ１１はクッキー情報が攻撃と判定する検知ルールを満たす場合にはログイン要求を攻撃として検知する。これに対し、クッキー情報が検知ルールを満たさない場合には、ＣＰＵ１１は攻撃でないと判定し、処理を００５に進める。
【００３７】
００５の処理では、ＣＰＵ１１は、ＩＤ及びパスワードを用いた認証処理によりログイン判定処理２２２を行い、ログインの成否を判定する。ログイン判定処理２２２は、ログイン要求に含まれるＩＤ及びパスワードが、予めメモリ１２に記憶された正当なＩＤ及びパスワードと合致するかを以て行われる。ログイン成功の場合、Ｗｅｂ処理部２３による通常処理が行われる。これに対し、ログイン失敗の場合には処理が００６に進む。
【００３８】
００６の処理では、ＣＰＵ１１は検知用クッキー情報生成処理２２６を行い、攻撃検知用のクッキー情報を生成する。００７の処理では、ＣＰＵ１１はログイン失敗画面生成処理２２３を行い、検知用クッキー情報が設定されたログイン失敗画面の情報を生成する。００８の処理では、ＣＰＵ１１は送受信部２１としてログイン失敗画面の情報をアクセス元へ送信する。
【００３９】
図７は検知用クッキー情報のデータ構造例を示す。図８は検知ルールの一例を示す。図９は図６に示した（００４）の処理の例を示す。
【００４０】
図７に示すように、検知用クッキー情報はアクセス元情報と、Ｗｅｂサービス情報と、ログイン失敗情報とを含む。アクセス元情報は、ログイン要求の送信元を特定する情報である。Ｗｅｂサービス情報はＷｅｂサーバ２によって提供されるＷｅｂサービスを特定する情報である。Ｗｅｂサービス情報はＷｅｂサービスを提供するＷｅｂサーバ２に関連する情報であっても良い。ログイン失敗情報はログイン要求を用いたログインＯＫ／ＮＧの判定でログインＮＧ（ログイン失敗）と判定されたことを示す情報である。ログイン失敗情報はログインの失敗回数であっても良い。
【００４１】
Ｗｅｂサービスは「サービス」の一例である。検知用クッキー情報に含まれるアクセス元情報は「アクセス元関連情報」の一例であり、Ｗｅｂサービス情報は「サービス関連情報」の一例である。
【００４２】
図８に示すように、検知ルールでは、以下の条件を満たすログイン要求を攻撃と判定するように定められている。
（１）クッキー情報中のＷｅｂサービス情報とＷｅｂサーバ２が保持するＷｅｂサービス情報とが同じで、検知用クッキー情報に含めたアクセス元と今回のログイン要求中のアクセス元とが異なる場合に攻撃と判定する。
（２）クッキー情報中のＷｅｂサービス情報とＷｅｂサーバ２が記憶しているＷｅｂサービス情報とが異なり、検知用クッキー情報に含めたアクセス元と今回のログイン要求中のアクセス元とが同じである場合に攻撃と判定する。
【００４３】
なお、例示した検知ルールは単純にクッキーの情報と今回のアクセス情報の異同を用い、一度の検知で「検知」がＵＩ１４に出力される構成を採用する。但し、「攻撃」と判定される事象が２以上（複数回）発生した場合に「攻撃検知」を出力する構成を採用しても良い。
【００４４】
図９に示すように、ＣＰＵ１１は、１０１の処理において、ログイン要求とともに受信されるクッキー情報中のＷｅｂサービス情報とＷｅｂサーバ２が提供するＷｅｂサービス情報とが同じか否かを判定する。両者が同じである場合には処理が１０２に進み、両者が異なる場合には処理が１０３に進む。Ｗｅｂサーバ２が提供するＷｅｂサービス情報は「サービスに係る情報」の一例である。このように、サービス関連情報とサービスに係る情報との共通性に基づく判定が行われる。
【００４５】
１０２の処理ではＣＰＵ１１は検知用クッキー情報に含めたアクセス元関連情報と今回のログイン要求の送信元情報とが同じか否かを判定する。両者が同じと判定される場合には（１０２，Ｙｅｓ）、攻撃でないと扱われる。これに対し、両者が異なると判定される場合には（１０２，Ｎｏ）、ＣＰＵ１１はログイン要求を攻撃として検知する。このように、アクセス元関連情報とログイン要求の送信元情報との共通性に基づく判断が行われる。
【００４６】
１０３の処理では、ＣＰＵ１１は検知用クッキー情報に含めたアクセス元関連情報と今回のログイン要求の送信元情報とが同じか否かを判定する。両者が異なると判定される場合には（１０３，Ｎｏ）、攻撃でないと扱われる。これに対し、両者が異なると判定される場合には（１０３，Ｙｅｓ）、ＣＰＵ１１はログイン要求を攻撃として検知する。このように、アクセス元関連情報とログイン要求の送信元情報との共通性に基づく判定が行われる。なお、１０１において１０２又は１０３の判定処理を行い、１０２及び１０３において１０１の判定処理を行うようにしても良い。
【００４７】
図１０は、実施形態における動作例１の説明図である。動作例１として、プロキシ型Ｎ対１分散型ブルートフォース攻撃の検知について説明する。図１０には図２に示した攻撃ホスト１が複数のプロキシサーバ３（プロキシサーバ＃１〜＃４：Ｎ＝４）を介してＷｅｂサーバ２にブルートフォース攻撃を仕掛けるケースが図示されている。
【００４８】
１回目の攻撃（図１０（１））では、攻撃者は攻撃ホスト１からプロキシサーバ＃１（Proxy#1）を介してＷｅｂサーバ２へログインを実施する。この時点では、ログイン情報
には検知用クッキー情報が含まれていない。このため、Ｗｅｂサーバ２は、攻撃の検知用クッキー情報を生成する。このとき、「Proxy#1」を示す情報がアクセス元の情報に設定
され、Ｗｅｂサーバ２の情報が「Ｗｅｂサービス情報」に設定される。検知用クッキー情報はログイン失敗画面に設定して送信される。ログイン失敗画面の情報はプロキシサーバ＃１を経由して攻撃ホスト１に送付され、攻撃ホスト１が有するクライアントソフトウェアに検知用クッキーが設定される。
【００４９】
２回目の攻撃（図１０（２））では、攻撃者は攻撃ホスト１からプロキシサーバ＃２（Proxy#2）を用いてＷｅｂサーバ２への不正ログインを試行する。このとき、攻撃ホスト
１は、Ｗｅｂサーバ２で受信されるログイン情報に検知用クッキー情報を含める。
【００５０】
このため、Ｗｅｂサーバ２で受信されるログイン情報から検知用クッキーが抽出される。Ｗｅｂサーバ２はクッキー情報からアクセス元情報(Proxy#1)、Ｗｅｂサービス情報を
抽出する。また、Ｗｅｂサーバ２は、プロキシサーバ３からの受信データから得られる今回のアクセス元情報(Proxy#2)と、Ｗｅｂサーバ２が提供するＷｅｂサービス情報とを得
る。Ｗｅｂサーバ２はクッキー情報から抽出されたアクセス元情報とＷｅｂサービス情報とを比較する。
【００５１】
比較の結果、アクセス元が異なり、Ｗｅｂサービス情報が同じであるため、検知ルールに合致する。このため、ＣＰＵ１１はログイン要求が攻撃と判定し、攻撃検知の出力を行う。攻撃検知の出力に合わせて、ログインに係る処理を停止しても良い。
【００５２】
３回目以降の攻撃（図１０（３）、図１０（４））でも、異なるプロキシサーバ３（プロキシサーバ＃３，プロキシサーバ＃４）が使用されるため、２回目と同様の動作で攻撃検知及び処理停止が行われる。
【００５３】
図１１は、実施形態における動作例２の説明図である。動作例２として、１対Ｎ分散型ブルートフォース攻撃の検知について説明する。図１１には、図３に示した攻撃ホスト１が複数のＷｅｂサーバ２（Ｗｅｂサーバ＃１〜＃４：Ｎ＝４）へラウンドロビンでブルートフォース攻撃を仕掛けるケースが図示されている。
【００５４】
１回目の攻撃（図１１（１））では、攻撃者は攻撃ホスト１からＷｅｂサーバ＃１へログインを実施する。この時点では、ログイン情報には検知用クッキー情報が含まれていない。このため、Ｗｅｂサーバ＃１は攻撃の検知用クッキー情報を生成する。このとき、「アクセス元」の情報として攻撃ホスト１を示す情報が設定され、Ｗｅｂサーバ＃１が提供するＷｅｂサービスの情報が「Ｗｅｂサービス情報」に設定される。検知用クッキー情報はログイン失敗画面に設定され攻撃ホスト１に送信される。攻撃ホスト１が有するクライアントソフトウェアは検知用クッキーを記憶する。
【００５５】
２回目の攻撃（図１１（２））では、攻撃者は攻撃ホスト１からＷｅｂサーバ＃２への不正ログインを試行する。このとき、攻撃ホスト１は、Ｗｅｂサーバ＃２で受信されるログイン情報に検知用クッキー情報を含める。
【００５６】
Ｗｅｂサーバ＃２では、攻撃ホスト１から受信されるログイン情報から検知用クッキーが抽出される。Ｗｅｂサーバ＃２はクッキー情報からアクセス元情報（攻撃ホスト１）、及びＷｅｂサーバ＃１が提供するＷｅｂサービス情報を抽出する。また、Ｗｅｂサーバ＃２は、今回のアクセス元情報(攻撃ホスト１)と、Ｗｅｂサーバ＃２が提供するＷｅｂサービス情報とを得て、クッキー情報から抽出されたアクセス元情報及びＷｅｂサーバ情報とを比較する。
【００５７】
比較の結果、アクセス元が同一であり、Ｗｅｂサービス情報が異なるため、検知ルールに合致する。このため、ＣＰＵ１１はログイン要求が攻撃と判定し、攻撃検知の出力を行う。攻撃検知の出力に合わせて、ログインに係る処理を停止しても良い。
【００５８】
３回目以降の攻撃（図１１（３）、図１１（４））でも、異なるＷｅｂサーバ２（Ｗｅｂサーバ＃３，Ｗｅｂサーバ＃４）へのログイン試行が行われるため、２回目と同様の動作で攻撃検知及び処理停止が行われる。
【００５９】
図１２は、動作例１や動作例２で適用し得る検知用クッキーのフォーマット例を示す。図１２の例では、アクセス元情報にアクセス元のＩＰアドレスを適用されている。また、Ｗｅｂサービス情報として、Ｗｅｂサーバが提供するＷｅｂサービスのアドレスのFully Qualified Domain Name（ＦＱＤＮ）が適用されている。さらに、ログイン失敗情報とし
てログイン失敗回数が適用されている。図１２に示すクッキー情報は“Cookie: Host=192.168.0.3; Service=www.aaa.com; Time=1”との文字列で表現し得る。但し、アクセス元
情報，Ｗｅｂサービス情報，ログイン失敗情報は図１２の例以外の情報が用いられても良い。
【００６０】
実施形態によれば、判定部として動作するＣＰＵ１１が、クッキー情報としての検知用クッキーを用いてログイン要求を攻撃として検知するか否かを判定する。判定は、ＣＰＵ１１は、検知用クッキー中のアクセス元関連情報とログイン要求の送信元情報との共通性、及び検知用クッキー中のサービス関連情報とログイン要求のサービスに係る情報の共通性とに基づいて行われる。このように、検知用クッキーを用いることで、動作例１及び動作例２に示したように、同一の攻撃ホスト１からの分散型ブルートフォース攻撃を検知することができる。すなわち、攻撃の検知精度を向上させることができる。
【００６１】
また、実施形態によれば、検知用クッキーが攻撃ホスト１に保持（記憶）された後、攻撃ホスト１は、ログイン要求とともに検知用クッキーを送信する状態となる。これによって、２回目以降のログイン試行のそれぞれにおいて攻撃を検知することができる。また、実施形態によれば、ＩＤ及びパスワードを用いた認証処理（００５）が行われる前に攻撃判定（００４）が行われる。このため、２回目以降の攻撃において偶然にＩＤ及びパスワードが一致して攻撃が成功してしまうことを回避できる。
【００６２】
なお、実施形態では、Ｗｅｂサーバ２として動作可能な情報処理装置１０が検知処理２２５及び検知用クッキー情報生成処理２２６を行っている。但し、少なくとも一方がＷｅｂサーバ２と異なる情報処理装置（コンピュータ）によって行われるようにしても良い。図４に示した情報処理装置１０は、パーソナルコンピュータ，ワークステーション，サーバマシンのような汎用又は専用のコンピュータを適用し得る。但し、これら以外のコンピュータを情報処理装置１０として適用し得る。以上説明した実施形態の構成は適宜組み合わせることができる。
【符号の説明】
【００６３】
１・・・ホスト（攻撃ホスト）
２・・・Ｗｅｂサーバ
３・・・プロキシサーバ
１０・・・情報処理装置
１１・・・ＣＰＵ
１２・・・メモリ
１３・・・通信インタフェース
１４・・・ユーザインタフェース（ＵＩ）
２１・・・送受信部
２２・・・ログイン処理部
【図１】
2018180672.tif 000003
【図２】
2018180672.tif 000004
【図３】
2018180672.tif 000005
【図４】
2018180672.tif 000006
【図５】
2018180672.tif 000007
【図６】
2018180672.tif 000008
【図７】
2018180672.tif 000009
【図８】
2018180672.tif 000010
【図９】
2018180672.tif 000011
【図１０】
2018180672.tif 000012
【図１１】
2018180672.tif 000013
【図１２】
2018180672.tif 000014