(57)【要約】      （修正有）【課題】正当な権限を有しない第三者による不正アクセスを検出するアクセス監視装置、方法及びプログラムを提供する。【解決手段】アクセス監視装置（サーバ２）は、所定のアクセス元からの、アカウントの識別情報とパスワードとを用いた認証が失敗し、該アクセス元からの次の認証の際に、前記識別情報と前記パスワードとの双方が変更されたか否かに応じて、不正アクセスを検出する検出部１４、を含む。【選択図】図２
2017107450.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
所定のアクセス元からの、アカウントの識別情報とパスワードとを用いた認証が失敗し、該アクセス元からの次の認証の際に、前記識別情報と前記パスワードとの双方が変更されたか否かに応じて、不正アクセスを検出する、
処理を実行させることを特徴とするアクセス監視プログラム。
【請求項２】
前記不正アクセスは、前記識別情報と前記パスワードとがセットで流出したリストを用いたアクセスであること、
を特徴とする請求項１記載のアクセス監視プログラム。
【請求項３】
前記コンピュータに、
前記アクセス元からの次の認証が所定時間内に行われた場合に、前記識別情報と前記パスワードとの双方が変更されたか否かに応じて、前記不正アクセスを検出する、
処理を実行させることを特徴とする請求項１または２記載のアクセス監視プログラム。
【請求項４】
前記コンピュータに、
前記認証の失敗に応じて、他の認証により前記識別情報と前記パスワードとを前記アクセス元に対して通知する機能が使用された場合、前記不正アクセスを検出しない、
処理を実行させることを特徴とする請求項１乃至３のうち何れか１項に記載のアクセス監視プログラム。
【請求項５】
前記コンピュータに、
複数のアクセス元のそれぞれに対して、前記認証の結果と前記次の認証の際に変更された結果とに基づいて、前記不正アクセスの可能性を数値化した点数を付与し、
所定の時間帯における複数のアクセスのそれぞれの点数に基づく値が第１閾値を超えた場合に、前記不正アクセスを検出する、
処理を実行させることを特徴とする請求項１乃至４のうち何れか１項に記載のアクセス監視プログラム。
【請求項６】
前記コンピュータに、
前記点数に基づく値が前記第１閾値以上であり、且つ前記所定の時間帯におけるアクセス数から、該所定の時間帯に対応する過去の時間帯におけるアクセス数の増加率が第２閾値を超えた場合、検出された前記不正アクセスの確度のレベルを上げる、
処理を実行させることを特徴とする請求項５記載のアクセス監視プログラム。
【請求項７】
前記コンピュータに、
前記点数に基づく値が前記第１閾値以上であり、且つ前記所定の時間帯における同一のアクセス元からの認証の連続失敗回数が第３閾値を超えた場合、検出された前記不正アクセスの確度のレベルを上げる、
処理を実行させることを特徴とする請求項５または６記載のアクセス監視プログラム。
【請求項８】
前記コンピュータに、
前記点数に基づく値が連続的に増加して前記第１閾値以上になった後に減少して該第１閾値未満になった場合、前記点数に基づく値が連続的に増加し始めた時刻から、減少後に前記第１未満になった時刻までを前記不正アクセスが行われた時間として特定する、
処理を実行させることを特徴とする請求項５乃至７のうち何れか１項に記載のアクセス監視プログラム。
【請求項９】
前記コンピュータに、
前記不正アクセスが検出された場合、該不正アクセスが検出されたことと、該不正アクセスのアクセス元に関する情報とを含む情報を他のコンピュータに通知する、
処理を実行させることを特徴とする請求項１乃至８のうち何れか１項に記載のアクセス監視プログラム。
【請求項１０】
コンピュータが、
所定のアクセス元からの、アカウントの識別情報とパスワードとを用いた認証が失敗し、該アクセス元からの次の認証の際に、前記識別情報と前記パスワードとの双方が変更されたか否かに応じて、不正アクセスを検出する、
処理を実行することを特徴とするアクセス監視方法。
【請求項１１】
所定のアクセス元からの、アカウントの識別情報とパスワードとを用いた認証が失敗し、該アクセス元からの次の認証の際に、前記識別情報と前記パスワードとの双方が変更されたか否かに応じて、不正アクセスを検出する検出部、
を備えることを特徴とするアクセス監視装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アクセス監視プログラム、アクセス監視方法およびアクセス監視装置に関する。
【背景技術】
【０００２】
サーバが提供するサービスをクライアントが利用する場合、クライアントはサーバに対してログインを行う。近年では、正当な権限を有しない第三者が、サーバに対して不正アクセスを行い、サーバにログインする場合がある。このような不正アクセスに対して各種の措置が講じられている。
【０００３】
関連する技術として、アクセスログを解析して、アクセスログに対応する複数の観点別の不正度を取得し、取得された観点別の不正度に従って、不正アクセスを検出する技術が提案されている（例えば、特許文献１を参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−２１８６４０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
クライアントがサーバにログインする際に、認証が行われる。この認証には、例えば、Identification（ＩＤ）およびパスワードが用いられる。例えば、ＩＤとパスワードとがセットで正当な権限を有しない第三者に流出した場合、該第三者による不正アクセスが成功する。この場合、該不正アクセスを検出することが難しい。
【０００６】
１つの側面として、本発明は、不正アクセスを検出することを目的とする。
【課題を解決するための手段】
【０００７】
１つの態様では、アクセス監視プログラムは、コンピュータに、所定のアクセス元からの、アカウントの識別情報とパスワードとを用いた認証が失敗し、該アクセス元からの次の認証の際に、前記識別情報と前記パスワードとの双方が変更されたか否かに応じて、不正アクセスを検出する、処理を実行させる。
【発明の効果】
【０００８】
１つの側面によれば、不正アクセスを検出することができる。
【図面の簡単な説明】
【０００９】
【図１】実施形態のシステムの全体構成の一例を示す図である。
【図２】サーバの一例を示す機能ブロック図である。
【図３】ログイン画面の一例を示す図である。
【図４】アクセスログの一例を示す図である。
【図５】スコアテーブルの一例を示す図である。
【図６】最新データおよび集計テーブルの一例を示す図である。
【図７】通知情報の一例を示す図である。
【図８】攻撃時間帯を特定するためのスコア統計値のグラフの一例を示す図である。
【図９】認証処理の流れの一例を示すフローチャートである。
【図１０】不正アクセス検出処理の流れの一例を示すフローチャートである。
【図１１】オプション処理の流れの一例を示すフローチャートである。
【図１２】攻撃時間帯特定処理の流れの一例を示すフローチャートである。
【図１３】サーバのハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【００１０】
＜実施形態のシステムの一例＞
以下、図面を参照して、実施形態について説明する。図１は、実施形態のシステムの全体構成の一例を示す。図１の例のシステム１において、サーバ２に対して、複数のクライアント３がネットワーク４を介して接続される。また、ネットワーク４には管理端末５が接続される。
【００１１】
サーバ２は、ネットワーク４を介して、各クライアント３と通信可能に接続されるコンピュータである。サーバ２は、アクセス監視装置の一例である。サーバ２は、クライアント３に対して、所定のサービスを提供する。
【００１２】
クライアント３は、該クライアント３を操作する操作者（以下、ユーザと称する）により操作される端末であり、ユーザの操作に基づいて、サーバ２に対してアクセスする。ユーザは、クライアント３を操作して、サーバ２が提供するサービスを利用する。
【００１３】
ネットワーク４は、例えば、インターネット網等の任意のネットワークである。管理端末５は、該管理端末５を操作する操作者（以下、管理者）がサーバ２の管理を行うための端末である。
【００１４】
図１の例では、１つのサーバ２を例示しているが、複数のサーバ２がネットワーク４に接続されてもよい。複数のサーバ２は、それぞれ異なるサービスを各クライアント３に提供してもよい。
【００１５】
クライアント３は、サーバ２が提供するサービス（機能）を利用する場合、該サーバ２にログインする。ユーザは、ログインを行うための所定の情報をクライアント３に入力する。クライアント３は入力された情報を受け付けたことに応じて、サーバ２に対してログインを行う。
【００１６】
クライアント３は、サーバ２にログインするために、認証リクエストをサーバ２に送信する。サーバ２は、該認証リクエストに基づいて、アクセス元のクライアント３が、正当な権限を有するユーザが操作する端末であるかの認証を行う。
【００１７】
実施形態では、サーバ２による認証は、ユーザに付与されるアカウントの識別情報（ＩＤ）およびパスワードであるものとする。ＩＤおよびパスワードは、ユーザごとに割り当てられる。サーバ２は、クライアント３から送信されたＩＤおよびパスワードが正当であるか否かに基づいて、認証を行う。
【００１８】
サーバ２は、ユーザごとの正当なＩＤおよびパスワードを記憶する。ログイン時に、クライアント３から送信されたＩＤおよびパスワードの双方が、サーバ２に記憶された正当なＩＤおよびパスワードと一致した場合にのみ、認証は成功する。一方、ＩＤとパスワードとのうち、何れか一方または双方が一致しない場合、認証は失敗する。
【００１９】
認証が成功した場合、クライアント３はサーバ２にログインすることができ、サーバ２はクライアント３によるアクセスを許容する。認証が失敗した場合、サーバ２は、クライアント３によるアクセスを拒否する。
【００２０】
サーバ２に対して、該サーバ２を利用する正当な権限を有しない第三者が端末を用いて不正にアクセスして、該第三者が操作する端末によるサーバ２へのログインが成功する場合がある。
【００２１】
この場合、正当な権限を有しない第三者が操作する端末により、サーバ２に記憶された情報が不正に取得される場合がある。このような不正アクセスの１つの態様として、パスワードリスト攻撃と称される不正アクセスがある。
【００２２】
パスワードリスト攻撃は、例えば、他のサーバ２から流出したＩＤとパスワードとがセットになったリスト（パスワードリスト）を用いた不正アクセスである。
【００２３】
例えば、正当な権限を有するユーザが、複数のサーバ２が提供するサービスを利用し、且つログイン時に用いられるＩＤおよびパスワードを使い回している場合、パスワードリスト攻撃による不正アクセスが成功する可能性が高くなる。
【００２４】
実施形態では、サーバ２は、不正に取得されたＩＤおよびパスワードを含むパスワードリスト攻撃を用いた不正アクセスを検出する。以下、図２を参照して、サーバ２の一例について説明する。
【００２５】
＜実施形態のサーバの一例＞
図２の例に示されるように、サーバ２は、通信部１１と制御部１２と認証部１３と検出部１４とリマインド機能部１５と通知部１６と記憶部１７とを含む。通信部１１は、ネットワーク４を介して、各クライアント３と通信を行う。
【００２６】
制御部１２は、サーバ２の各種制御を行う。認証部１３は、クライアント３から受信した認証リクエストに含まれるＩＤおよびパスワードが正当であるか否かに基づいて、該認証リクエストに対する認証を行う。
【００２７】
サーバ２の記憶部１７には、正当なＩＤとパスワードとがセットで記憶される。認証部１３は、認証リクエストに含まれるＩＤおよびパスワードと、記憶部１７に記憶されたＩＤおよびパスワードとを比較する。
【００２８】
ＩＤとパスワードとの双方が一致した場合にのみ、認証部１３による認証が成功する。ＩＤとパスワードとの何れか一方または双方が不一致の場合、認証部１３による認証は失敗する。認証が成功すれば、クライアント３はサーバ２にログインでき、認証が失敗すれば、サーバ２はクライアント３によるログインを拒否する。
【００２９】
検出部１４は、不正アクセスを検出する。検出部１４は、認証が失敗した後、所定時間内に同じアクセス元から再び認証リクエストを受信し、該認証リクエストに含まれるＩＤとパスワードとの双方が変更されたか否かに基づいて、不正アクセスを検出する。
【００３０】
リマインド機能部１５は、例えば、ユーザがアカウントのＩＤとパスワードとのうち何れか一方または双方を忘却した場合、正当なＩＤおよびパスワードを、ユーザが操作するクライアント３に通知する制御を行う。
【００３１】
例えば、ユーザがクライアント３を操作して、サーバ２が提供するサービスを初めて利用する場合、ユーザは、ＩＤおよびパスワードの他に、リマインド用情報をクライアント３に入力する。リマインド用情報は他の認証を行うための情報であり、ＩＤおよびパスワード以外の情報である。
【００３２】
クライアント３は、ＩＤとパスワードとリマインド用情報とを含む情報の入力を受け付け、入力された情報をサーバ２に送信する。サーバ２は、受信した上記の各種情報を記憶部１７に記憶する。
【００３３】
リマインド機能を利用するリクエストをサーバ２が受信した場合、リマインド機能部１５は、リマインド用情報を入力させるリクエストをクライアント３に送信する。サーバ２が、クライアント３から、リマインド用情報を受信した場合、認証部１３は、該リマインド用情報の認証（他の認証）を行う。
【００３４】
受信したリマインド用情報と、記憶部１７に記憶された正当なリマインド用情報とが一致する場合、リマインド機能部１５は、正当なＩＤおよびパスワードをクライアント３に送信する制御を行う。
【００３５】
通知部１６は、検出部１４が不正アクセスを検出した場合、不正アクセスの検出を管理端末５に通知する制御を行う。記憶部１７は、種々の情報を記憶する。
【００３６】
＜ログイン画面の一例＞
次に、図３の例を参照して、ログイン画面の一例について説明する。ログイン画面は、クライアント３がサーバ２にログインを行う際に表示される画面である。
【００３７】
図３の例のログイン画面２０は、ＩＤ入力欄２１とパスワード入力欄２２とリマインド機能選択部２３とログインボタン２４とを含む。ＩＤ入力欄２１は、ＩＤの入力を受け付ける欄である。パスワード入力欄２２は、パスワードの入力を受け付ける欄である。
【００３８】
例えば、ユーザは、キーボード等を用いて、ＩＤ入力欄２１にＩＤを入力し、パスワード入力欄２２にパスワードを入力する。クライアント３は、これらの入力を受け付ける。
【００３９】
リマインド機能選択部２３は、リマインド機能を使用する場合に使用される。図３の例では、リマインド機能選択部２３は、マウスポインタＰにより選択可能である。例えば、ユーザが、マウスを用いて、マウスポインタＰを操作する。
【００４０】
リマインド機能選択部２３に対するマウスポインタＰの押下操作をクライアント３が受け付けると、該クライアント３は、リマインド機能を使用するリクエストをサーバ２に送信する。
【００４１】
ログインボタン２４は、サーバ２にログインするためのボタンである。ユーザによるログインボタン２４の押下操作をクライアント３が受け付けると、該クライアント３は、入力されたＩＤおよびパスワードを含む認証リクエストをサーバ２に送信する。
【００４２】
＜アクセスログの一例＞
次に、図４の例を参照して、アクセスログの一例について説明する。アクセスログは、サーバ２に対するログインのアクセスに関する情報であり、記憶部１７に記憶される。サーバ２は、該サーバ２に対するログインがあるごとに、アクセスログにログインに関するログ項目（１つのアクセスに関するログ）を追加する。
【００４３】
図４の例のアクセスログは、ＩＤとパスワードとログイン日時とログイン結果とリマインド機能とアクセス元ＩＰアドレスとの項目を含む。ＩＰはInternet Protocolの略称である。
【００４４】
ログイン結果は、ログイン操作による認証の成功または失敗を示す。ログイン結果が成功の場合、認証が成功したことを示す。ログイン結果が失敗の場合、認証が失敗したことを示す。
【００４５】
上述したように、認証は、記憶部１７に記憶された正当なアカウントのＩＤおよびパスワードと、認証リクエストに含まれるＩＤおよびパスワードとが一致するか否かに基づいて、行われる。
【００４６】
上述したように、ＩＤおよびパスワードの双方が一致する場合、認証は成功する。この場合、アクセスログのうちログイン結果は成功を示す。
【００４７】
ＩＤが不一致の場合とパスワードが不一致の場合とＩＤおよびパスワードの双方が不一致の場合、認証は失敗する。これらの場合、アクセスログのうちログイン結果は失敗を示す。
【００４８】
リマインド機能の項目は、アクセスごとに、リマインド機能が使用されたか否かを示す。アクセス元ＩＰアドレスは、アクセス元のクライアント３のＩＰアドレスを示す。アクセス元ＩＰアドレスは、アクセス元のクライアント３を特定する情報である。アクセス元を特定できれば、ＩＰアドレス以外の情報が使用されてもよい。
【００４９】
例えば、図４の例のアクセスログのうち、アクセス元ＩＰアドレス「CCC.CCC.CC.CC」は連続して２回の認証リクエストがあったことを示す。２回の認証リクエストのＩＤは同じである。
【００５０】
２回目の認証リクエストでは、パスワードが正当なパスワードに変更されたことにより、認証が成功したことを示す。この場合、１回目のログイン操作で、正当なユーザにより入力されたパスワードが誤りであり、その後、正しいパスワードに修正されたことが想定される。
【００５１】
この場合、アクセス元ＩＰアドレス「CCC.CCC.CC.CC」からの認証リクエストは、正当なユーザの操作による認証リクエストである可能性が高い。
【００５２】
図４の例のアクセスログのうち、アクセス元ＩＰアドレス「DDD.DDD.DD.DD」はリマインド機能が使用されたことを示す。リマインド機能を使用するユーザは、正当なユーザである可能性が高い。
【００５３】
図４の例のアクセスログは、アクセス元ＩＰアドレス「EEE.EEE.EE.EE」からの認証リクエストに、それぞれ異なるＩＤが使用されたことを示す。ここで、ＩＤ「００７」に対応するパスワードと、ＩＤ「００８」に対応するパスワードとは異なるものとする。
【００５４】
正当なユーザによるログイン操作の場合、１回目の認証が失敗すると、再ログイン時には、ＩＤまたはパスワードの何れかを変更する可能性が高く、ＩＤとパスワードとの双方を変更する可能性は低い。
【００５５】
つまり、同じアクセス元ＩＰアドレスからの認証リクエストにおいて、ＩＤとパスワードとの双方が変更された場合、不正アクセスの可能性が高い。この場合、検出部１４は、不正アクセスを検出する。
【００５６】
図４の例の場合、アクセスログのうち、アクセス元ＩＰアドレス「EEE.EEE.EE.EE」からの認証リクエストは、ＩＤ「００７」のログイン結果が失敗を示し、ＩＤ「００８」のログイン結果は成功を示す。この場合、不正アクセスによるサーバ２に対する攻撃が成功した可能性が高い。
【００５７】
＜スコアテーブルの一例＞
図５は、スコアテーブルの一例を示す。スコアテーブルは、記憶部１７に記憶される。スコアテーブルは、検出部１４が、アクセスログの各アクセス（各ログ項目）に対してスコア（点数）を付与する指標を表すテーブルである。図５以降、パスワードを「ＰＷ」と表記することがある。
【００５８】
スコアテーブルは、結果と再試行結果とリマインド機能と変更項目とスコアと評価とを含む。結果は、認証部１３による認証の結果を示す。再試行結果は、同じアクセス元ＩＰアドレスから所定時間内に次のログイン（再ログイン）の認証リクエストのアクセスがあった場合における認証結果を示す。
【００５９】
変更項目は、サーバ２に対して、再ログインの認証リクエストがあった場合、前回の認証リクエストから、ＩＤとパスワードとのうち何れの項目に変更があったかを示す。スコアは、付与される点数を示す。評価は、各スコアの説明である。
【００６０】
スコアは、不正アクセスの可能性を数値化した値である。スコアの値が高いほど、不正アクセスの可能性が高く、スコアの値が低いほど、不正アクセスの可能性が低い。
【００６１】
結果が成功を示す場合、正当なＩＤおよびパスワードを用いた認証の結果、認証が成功した可能性が高い。
【００６２】
ただし、パスワードリスト攻撃の場合、認証が成功したリクエストが、不正に取得されたＩＤとパスワードとを用いた認証（不正アクセスによる認証）の可能性も僅かにある。図５の例では、結果が成功の場合、スコアテーブルが示すスコアの値は「１」である。
【００６３】
認証が失敗した場合、リマインド機能が使用される場合がある。リマインド機能が使用された場合、認証リクエストは、正当な権限を有するユーザの操作に基づく、リクエストである可能性が高い。この場合、図５の例では、スコアテーブルが示すスコアの値は「０」である。
【００６４】
上述したように、ログイン時に行われる認証が失敗した場合、正当な権限を有するユーザであれば、ＩＤまたはパスワードの何れかを変更して、再度ログインを試みる可能性が高い。
【００６５】
従って、結果が失敗であり、且つ再度のログインが行われた場合（再試行結果が成功または失敗の場合）、再度のログイン時にＩＤまたはパスワードの何れかが変更されたのであれば、正当な権限を有するユーザによるログインの可能性が高い。この場合、図５の例では、スコアテーブルが示すスコアの値は「０」である。
【００６６】
一方、結果が失敗であり、且つ再度のログインが行われた場合（再試行結果が成功または失敗の場合）、再度のログイン時にＩＤとパスワードとの双方が変更されたのであれば、不正アクセスの可能性が高い。この場合、図５の例では、スコアテーブルが示すスコアの値は「１０」である。
【００６７】
例えば、検出部１４は、不正アクセスを検出するためのスコアの閾値（以下、スコア閾値）を「２」に設定してもよい。スコア閾値は第１閾値の一例である。アクセスログに基づくスコアの値がスコア閾値を超えた場合、検出部１４は不正アクセスを検出してもよい。
【００６８】
この場合、再度のログイン時にＩＤとパスワードとの双方が変更された場合に、不正アクセスが検出される。スコアの値は、図５の例には限定されない。
【００６９】
＜最新データおよび集計テーブルの一例＞
図６の例に示す最新データは、所定の時間帯（図６の例では、集計時間帯）におけるサーバ２に対するアクセスに関するデータである。図６の例では、最新データは、１０分間におけるサーバ２に対するアクセスに関するデータを示す。
【００７０】
最新データは、スコア統計値とアクセス数と連続失敗数との項目を含む。図６の例において、現在時刻は、「2015/10/2」の「13:11」であるとする。
【００７１】
また、最新データは、「2015/10/2  13:00-13:10」の１０分間におけるサーバ２に対するアクセスに関するデータであるものとする。制御部１２は、上記の１０分間に含まれるアクセスログの各ログ項目を集計の対象とする。制御部１２は、最新データの集計時間帯に含まれる各アクセスログのスコアを記憶部１７から取得し、取得された各スコアに対して統計処理を行う。
【００７２】
実施形態では、各スコアに対して統計処理された値は、各スコアの平均値であるとする。図６の例の場合、上記の集計時間帯におけるスコア統計値は「８．３」である。スコア統計値は、平均値以外の統計処理された値であってよい。スコア統計値は、点数に基づく値の一例である。
【００７３】
アクセス数は、上記の集計時間帯に含まれるアクセス数（ログ項目の数）を示す。連続失敗数は、上記の集計時間帯に含まれる各アクセスログのうち、同一のアクセス元ＩＰアドレスからのアクセスのリクエストが連続して失敗した回数を示す。制御部１２は、アクセスログに基づいて、アクセス数および連続失敗数を得る。
【００７４】
上記の最新データが過去のデータとなった場合、制御部１２は、上記の最新データを集計テーブルに追加する。例えば、「2015/10/2」の「13:21」の時点では、「2015/10/2  13:00-13:10」の１０分間のデータは過去のデータとなる。この場合、制御部１２は、上記の最新データを集計テーブルに追加する。
【００７５】
図６の例の場合、最新データのスコア統計値は、集計テーブルにおける過去の集計時間帯のスコア統計値よりも高い。また、スコア統計値「８．３」は、スコア閾値「２」を超えている。従って、最新データの集計時間帯において、サーバ２に対して不正アクセスがあった可能性が高い。
【００７６】
また、最新データのアクセス数および連続失敗数も、過去の集計時間帯のアクセス数および連続失敗数より数値が大幅に増加している。従って、これらの点からも、最新データの集計時間帯において、サーバ２に対して不正アクセスがあった可能性が高いことが分かる。
【００７７】
＜管理端末への通知の一例＞
次に、図７の例を参照して、不正アクセスが検出部１４により検出された場合における、管理端末５への通知の一例について説明する。制御部１２は、集計テーブルのうち、スコア統計値がスコア閾値を超えている集計時間帯を特定する。
【００７８】
制御部１２は、アクセスログから、ログイン日時が、特定された集計時間帯に含まれる各アクセスを抽出する。制御部１２は、抽出された各アクセスに対して、スコアテーブルに基づくスコアを付与する。
【００７９】
制御部１２は、付与されたスコアが第１閾値を超えるアクセスを抽出する。抽出されたアクセスは、不正アクセスの可能性が高い。
【００８０】
また、制御部１２は、アクセスログに基づいて、上記の特定された集計時間帯に含まれる各アクセスのうち、抽出されたアクセスと同一のアクセス元ＩＰアドレスおよび該アクセス元ＩＰアドレスからのアクセスの回数を特定する。以下、この特定されたアクセスの回数を試行回数と称することもある。
【００８１】
制御部１２は、集計時間帯、特定されたアクセス元ＩＰアドレス、抽出されたアクセスに対応するＩＤおよび試行回数を含む通知情報を通知部１６に渡す。通知部１６は、通知情報に基づいて、管理端末５に不正アクセスが検出された旨を通知する。図７は、通知部１６が管理端末５に通知する通知情報の一例である。
【００８２】
＜攻撃時間帯の特定の一例＞
図８は、攻撃時間帯を特定するためのスコア統計値のグラフの一例を示す図である。図８の横軸は１日における時刻を示し、縦軸はスコア統計値を示す。制御部１２は、集計テーブルに基づいて、１日の各集計時間帯のスコア統計値をグラフ化する。
【００８３】
スコア統計値がスコア閾値を越えた時点で、検出部１４は不正アクセスを検出する。サーバ２に対して不正アクセスが行われた場合、スコア統計値は連続的に増加する。制御部１２は、グラフ化されたスコア統計値に基づいて、検出部１４により不正アクセスが検出された時刻から遡って、最初にグラフが増加する時刻（以下、始点とする）を特定する。
【００８４】
また、制御部１２は、スコア統計値のグラフがスコア閾値以下になった時刻（以下、終点とする）を特定する。図８の例における黒丸は、始点および終点を表す。制御部１２は、始点から終点までの時間帯を攻撃時間帯（不正アクセスが行われた時間帯）として特定する。
【００８５】
特定された攻撃時間帯におけるスコア統計値のグラフは、連続的に増加して、スコア閾値を超え、減少傾向に転じて、スコア閾値以下となる。このため、攻撃時間帯において、サーバ２に対して不正アクセスが行われた可能性が高いことが特定される。
【００８６】
通知部１６は、上記の通知情報に、攻撃時間帯の情報を含めてもよい。この場合、管理端末５に攻撃時間帯が通知されるため、管理端末５を操作する管理者は、不正アクセスが行われた時間帯を認識することができる。
【００８７】
＜実施形態の処理の流れを示すフローチャートの一例＞
図９を参照して、認証処理の一例について説明する。クライアント３は、ログインするための認証リクエストをサーバ２に送信する。サーバ２の通信部１１は、認証リクエストを受信する（ステップＳ１）。
【００８８】
認証部１３は、受信した認証リクエストの認証を実行する（ステップＳ２）。認証リクエストには、アカウントのＩＤおよびパスワードが含まれる。認証部１３は、記憶部１７に記憶された正当なＩＤおよびパスワードと、受信したＩＤおよびパスワードとを比較する。
【００８９】
ＩＤとパスワードとの双方が一致した場合にのみ、認証が成功する。ＩＤとパスワードとの何れか一方または双方が一致しない場合には、認証は失敗する。
【００９０】
認証リクエストには、ＩＤとパスワードとアクセス元ＩＰアドレスとの情報が含まれる。また、認証リクエストには、リマインド機能を使用したか否かの情報も含まれる。
【００９１】
制御部１２は、認証部１３による認証の結果および認証リクエストに対して認証を行った日時をログイン日時として、上記の各種情報と共に、アクセスログとして記憶部１７に記憶する（ステップＳ３）。
【００９２】
次に、図１０を参照して、不正アクセス検出処理について説明する。制御部１２は、記憶部１７に記憶されたアクセスログから所定時間帯のアクセスログを取得する（ステップＳ１０）。
【００９３】
取得されたアクセスログには、複数のアクセスのそれぞれに関するログ項目（１つのアクセスに関するログ）が含まれる。制御部１２は、複数のログ項目から１つのログ項目を抽出する（ステップＳ１１）。例えば、制御部１２は、ステップＳ１０で取得されたアクセスログの中から時間の順序に応じて、ログ項目を抽出してもよい。
【００９４】
制御部１２は、抽出されたログ項目のうち、ログイン結果を参照して、認証が成功したか否かを判定する（ステップＳ１２）。ログ項目が認証の成功を示す場合（ステップＳ１２でＹＥＳ）、制御部１２は、スコアテーブルに基づいて、ログ項目のアクセスに対してスコア「１」を付与する（ステップＳ１３）。
【００９５】
ログ項目が認証の失敗を示す場合（ステップＳ１２でＮＯ）、制御部１２は、該ログ項目のうちリマインド機能の項目を参照して、リマインド機能が使用されたかを判定する（ステップＳ１４）。
【００９６】
ログ項目が、リマインド機能が使用されたことを示す場合（ステップＳ１４でＹＥＳ）、制御部１２は、スコアテーブルに基づいて、ログ項目のアクセスに対してスコア「０」を付与する（ステップＳ１５）。
【００９７】
リマインド機能が使用されていないことをログ項目が示す場合（ステップＳ１４でＮＯ）、制御部１２は、ステップＳ１０で取得されたアクセスログから、ステップＳ１１で抽出されたログ項目の次のアクセスのログ項目を抽出する。
【００９８】
そして、制御部１２は、抽出された次のアクセスのログ項目とステップＳ１１で抽出されたログ項目とを比較して、変更項目を特定する（ステップＳ１６）。変更項目は、上述したように、ＩＤおよびパスワードの双方が変更されたか、またはＩＤまたはパスワードの何れかが変更されたことを示す。
【００９９】
制御部１２は、ＩＤおよびパスワードの双方が変更されたかを判定する（ステップＳ１７）。ＩＤまたはパスワードの何れかが変更されたことをログ項目が示す場合（ステップＳ１７でＮＯ）、制御部１２は、ログ項目のアクセスに対してスコア「０」を付与する（ステップＳ１５）。
【０１００】
ＩＤおよびパスワードの双方が変更されたことをログ項目が示す場合（ステップＳ１７でＹＥＳ）、制御部１２は、ログ項目のアクセスに対してスコア「１０」を付与する（ステップＳ１８）。
【０１０１】
検出部１４は、ステップＳ１３、Ｓ１５およびＳ１８の処理が実行された後に、付与されたスコアとスコア閾値とに基づいて、不正アクセスを検出してもよい。
【０１０２】
例えば、付与されたスコアが「０」または「１」であれば、該スコアは、スコア閾値「２」未満であるため、検出部１４は不正アクセスを検出しない。一方、付与されたスコアが「１０」であれば、該スコアはスコア閾値以上であるため、検出部１４は不正アクセスを検出する。
【０１０３】
実施形態では、所定時間帯におけるスコア統計値に基づいて、検出部１４は不正アクセスの検出を行う。制御部１２は、ステップＳ１０で取得されたアクセスログに含まれる全てのログ項目にスコアを付与したかを判定する（ステップＳ１９）。
【０１０４】
全てのログ項目にスコアが付与されていなければ、処理はステップＳ１１に戻る。ステップＳ１０で取得されたアクセスログに含まれる全てのログ項目にスコアが付与された場合、制御部１２は、スコア平均値を算出する（ステップＳ２０）。
【０１０５】
実施形態では、所定時間帯における各ログ項目のアクセスに付与されたスコアに対する統計は平均値である。このため、制御部１２は、所定時間帯における各ログ項目のアクセスに付与されたスコアの合計をログ項目の数で除算する。これにより、スコア平均値が得られる。
【０１０６】
スコア平均値がスコア閾値を超えた場合（ステップＳ２１でＹＥＳ）、検出部１４は、不正アクセスを検出する（ステップＳ２２）。一方、スコア平均値がスコア閾値以下の場合（ステップＳ２１でＮＯ）、検出部１４は、不正アクセスを検出しない。
【０１０７】
検出部１４が不正アクセスを検出した場合、通知部１６は、検出された不正アクセスに関する通知情報を管理端末５に送信する制御を行う（ステップＳ２３）。通信部１１は、この制御に基づいて、通知情報を管理端末５に送信する。
【０１０８】
例えば、正当な権限を有するユーザが、ログインの再試行時に、ＩＤとパスワードとの双方を変更する可能性はゼロではない。実施形態では、所定時間帯における複数のアクセスに付与されたスコアの平均値に基づいて、検出部１４は不正アクセスの検出を行うため、不正アクセスの検出精度が向上する。
【０１０９】
ここで、不正アクセス検出処理では、ステップＳ１６の次のアクセスは、所定時間内におけるアクセスである。ステップＳ１０において、所定時間帯のアクセスログが取得され、ステップＳ１６において、抽出されたログ項目と次のアクセスのログ項目との比較が行われる。
【０１１０】
このため、ステップＳ１６の次のアクセスが、所定時間内のアクセスでない場合、ステップＳ１６の比較は行われない。これは、パスワードリスト攻撃においては、不正アクセスは、短時間の間に連続して行われるためである。
【０１１１】
次に、図１１を参照して、オプション処理について説明する。オプション処理は、不正アクセスの確度のレベルを特定する処理である。図１０の例で示した不正アクセス検出処理で不正アクセスが検出されたとしても、検出された不正アクセスは、正当な権限を有するユーザのログイン操作に基づくアクセスである可能性がある。
【０１１２】
オプション処理は、不正アクセスの検出精度を向上させる処理である。制御部１２は、図１０の例で示した不正アクセス検出処理において、検出部１４により不正アクセスが検出されたかを判定する（ステップＳ３１）。
【０１１３】
不正アクセスが検出されない場合（ステップＳ３１でＮＯ）、オプション処理は終了する。不正アクセスが検出された場合（ステップＳ３１でＹＥＳ）、制御部１２は、アラートレベルを「１」に設定する（ステップＳ３２）。
【０１１４】
アラートレベルは、不正アクセス検出処理で不正アクセスが検出された場合、検出された不正アクセスの確度を示すレベルである。アラートレベルが高いほど、検出された不正アクセスは、実際に不正アクセスである可能性が高い。
【０１１５】
制御部１２は、アクセスログから、所定時間帯（集計時間帯）におけるアクセス数を抽出する（ステップＳ３３）。また、制御部１２は、ステップＳ３３で抽出された所定時間帯に対応する過去の時間帯におけるアクセス数をアクセスログから抽出する（ステップＳ３４）。
【０１１６】
所定時間帯における対応する過去の時間帯は、例えば、１日前の同じ時間帯である。例えば、上記の所定時間帯が「2015/10/2  13:00-13:10」の場合、該所定時間帯に対応する過去の時間帯は、「2015/10/1  13:00-13:10」である。
【０１１７】
制御部１２は、ステップＳ３３で抽出されたアクセス数をステップＳ３４で抽出されたアクセス数で除算して、アクセス数の増加率を算出する（ステップＳ３５）。該アクセス数の増加率は、同じ時間帯における１日違いのアクセス数の増加の度合いを示す。
【０１１８】
例えば、１日違いの同じ時間帯であれば、サーバ２に対するアクセス数はそれほど変化しないことが想定される。従って、アクセス数の増加率が大きく変化（増加）した場合、サーバ２に対して不正アクセスがあった可能性は高い。
【０１１９】
制御部１２は、アクセス数の増加率がアクセス数閾値を超えたかを判定する（ステップＳ３６）。アクセス数閾値は、不正アクセスの確度のレベルを上げるか否かの判定に用いられる閾値であり、任意の値が設定されてよい。アクセス数閾値は第２閾値の一例である。
【０１２０】
アクセス数の増加率がアクセス数閾値を超えた場合（ステップＳ３６でＹＥＳ）、制御部１２は、アラートレベルをインクリメントする（ステップＳ３７）。この場合、アラートレベルは「２」になる。アクセス数の増加率がアクセス数閾値以下の場合（ステップＳ３６でＮＯ）、アラートレベルはインクリメントされない。
【０１２１】
制御部１２は、アクセスログに基づいて、同一のアクセス元ＩＰアドレスからのアクセスの認証が連続して失敗した数（連続失敗回数）を特定する（ステップＳ３８）。短い時間の間に、同一のアクセス元ＩＰアドレスから連続して複数回のアクセスがあり、且つ各アクセスの認証が連続して失敗した場合、不正アクセスの可能性が高い。
【０１２２】
制御部１２は、特定された連続失敗回数が回数閾値を超えたかを判定する（ステップＳ３９）。回数閾値は、不正アクセスの確度のレベルを上げるか否かの判定に用いられる閾値であり、任意の値が設定されてよい。回数閾値は、第３閾値の一例である。
【０１２３】
特定された連続失敗回数が回数閾値を超えた場合（ステップＳ３９でＹＥＳ）、制御部１２は、アラートレベルをインクリメントする（ステップＳ４０）。ステップＳ３７の処理が行われた場合、アラートレベルは「３」になる。ステップＳ３７の処理が行われていない場合、アラートレベルは「２」になる。
【０１２４】
特定された連続失敗回数が回数閾値以下の場合（ステップＳ３９でＮＯ）、制御部１２は、アラートレベルをインクリメントすることなく、処理は終了する。
【０１２５】
従って、アラートレベルが「３」の場合、検出された不正アクセスが実際に不正アクセスである確度が最も高い。例えば、通知部１６は、検出された不正アクセスの確度が高い旨の情報を含む通知情報を管理端末５に送信する制御を行ってもよい。これにより、確度の高い不正アクセスが検出されたことを管理者に了知させることができる。
【０１２６】
次に、図１２の例を参照して、攻撃時間帯特定処理の一例について説明する。制御部１２は、集計テーブルに基づいて、スコア統計値をグラフ化する（ステップＳ５１）。制御部１２は、スコア統計値がスコア閾値を超えたかを判定する（ステップＳ５２）。
【０１２７】
スコア統計値がスコア閾値を超えない場合（ステップＳ５２でＮＯ）、処理は終了する。スコア統計値がスコア閾値を超えた場合（ステップＳ５２でＹＥＳ）、制御部１２は、スコア統計値がスコア閾値を越えた時刻を特定する。
【０１２８】
そして、制御部１２は、特定された時刻からグラフを時間軸の逆方向に辿り、スコア統計値が増加し始めた時刻を始点として特定する（ステップＳ５３）。また、制御部１２は、スコア統計値がスコア閾値を越えた時刻からグラフを時間軸の順方向に辿り、スコア統計値がスコア閾値以下となった時刻を終点として特定する（ステップＳ５４）。
【０１２９】
制御部１２は、始点から終点までの時間帯を攻撃時間帯として特定する（ステップＳ５６）。以上により、処理は終了する。
【０１３０】
＜サーバのハードウェア構成の一例＞
次に、図１３の例を参照して、サーバ２のハードウェア構成の一例を説明する。図１３の例に示すように、バス１００に対して、プロセッサ１１１とRandom Access Memory(RAM)１１２とRead Only Memory(ROM)１１３と補助記憶装置１１４と媒体接続部１１５と通信インタフェース１１６とが接続されている。
【０１３１】
プロセッサ１１１は任意の処理回路である。プロセッサ１１１はＲＡＭ１１２に展開されたプログラムを実行する。実行されるプログラムとしては、実施形態の処理を行うプログラムを適用してもよい。ＲＯＭ１１３はＲＡＭ１１２に展開されるプログラムを記憶する不揮発性の記憶装置である。
【０１３２】
補助記憶装置１１４は、種々の情報を記憶する記憶装置であり、例えばハードディスクドライブや半導体メモリ等を補助記憶装置１１４に適用してもよい。媒体接続部１１５は、可搬型記録媒体１１９と接続可能に設けられている。
【０１３３】
可搬型記録媒体１１９としては、可搬型のメモリや光学式ディスク（例えば、Compact Disc(CD)やDigital Versatile Disc(DVD)等）を適用してもよい。この可搬型記録媒体１１９に実施形態の処理を行うプログラムが記録されていてもよい。
【０１３４】
サーバ２のうち、通信部１１は、通信インタフェース１１６により実現されてもよい。記憶部１７は、ＲＡＭ１１２や補助記憶装置１１４等により実現されてもよい。
【０１３５】
制御部１２と認証部１３と検出部１４とリマインド機能部１５と通知部１６とは、与えられたアクセス監視プログラムをプロセッサ１１１が実行することにより実現されてもよい。
【０１３６】
ＲＡＭ１１２、ＲＯＭ１１３、補助記憶装置１１４および可搬型記録媒体１１９は、何れもコンピュータ読み取り可能な有形の記憶媒体の一例である。これらの有形な記憶媒体は、信号搬送波のような一時的な媒体ではない。
【０１３７】
＜その他＞
本実施形態は、以上に述べた実施の形態に限定されるものではなく、本実施形態の要旨を逸脱しない範囲内で種々の構成または実施形態を取ることができる。
【符号の説明】
【０１３８】
１    システム
２    サーバ
３    クライアント
４    ネットワーク
５    サーバ
１１    通信部
１２    制御部
１３    認証部
１４    検出部
１５    リマインド機能部
１６    通知部
１７    記憶部
１１１    プロセッサ
１１２    ＲＡＭ
１１３    ＲＯＭ
【図１】
2017107450.tif 000003
【図２】
2017107450.tif 000004
【図３】
2017107450.tif 000005
【図４】
2017107450.tif 000006
【図５】
2017107450.tif 000007
【図６】
2017107450.tif 000008
【図７】
2017107450.tif 000009
【図８】
2017107450.tif 000010
【図９】
2017107450.tif 000011
【図１０】
2017107450.tif 000012
【図１１】
2017107450.tif 000013
【図１２】
2017107450.tif 000014
【図１３】
2017107450.tif 000015