(57)【特許請求の範囲】
【請求項１】
ＧＰＳ受信機（３０ａ）を有する複数のクライアント装置（３０）と、前記クライアント装置からアクセス可能なサーバ（２０）とを有するクライアントサーバシステムの不正利用を検知する不正利用検知システム（１０，１１０）であって、
前記サーバがアクセスされた時に、アクセス認証に使用されたユーザ識別子と、前記ユーザ識別子によるアクセスに使用された前記クライアント装置の位置情報と、前記ユーザ識別子によるアクセス時刻と、を取得し、かつ、対応付けて記憶するアクセス情報管理部（３１）と、
前記位置情報で表される任意の２地点に関する所定期間を記憶する記憶部（２２）と、
前記アクセス情報管理部に記憶された前記ユーザ識別子に対応する複数の前記アクセス時刻の内、最新の前記アクセス時刻である第１アクセス時刻、および、２番目に新しい前記アクセス時刻である第２アクセス時刻に関して、前記第１アクセス時刻に対応する前記位置情報である第１位置情報と、前記第２アクセス時刻に対応する前記位置情報である第２位置情報とが異なる場合に、前記記憶部に記憶される前記所定期間、前記第１位置情報および前記第２位置情報に基づいて判定期間を決定する期間決定部（３２）と、
前記第１アクセス時刻と前記第２アクセス時刻との差であるアクセス時間差を算出する時間差算出部（３３）と、
前記時間差算出部によって算出された前記アクセス時間差が、前記期間決定部によって決定された前記判定期間よりも短い場合に、前記クライアントサーバシステムが不正利用されたと判定する不正利用判定部（３４）と、
任意の２個の前記クライアント装置間の距離を前記位置情報から算出し、算出された前記距離に基づいて前記所定期間を算出し、前記記憶部に記憶される前記所定期間を算出された前記所定期間で更新する判定期間更新部（３８）と、
を備え、
前記アクセス情報管理部は、前記ＧＰＳ受信機を用いて前記位置情報を取得する、
不正利用検知システム。
【請求項２】
前記不正利用判定部によって前記クライアントサーバシステムが不正利用されたと判定された場合に、前記クライアント装置および前記サーバの少なくとも一方に対して、その旨の警告を報知する警告報知部（３５）をさらに備える、
請求項１に記載の不正利用検知システム。
【請求項３】
前記不正利用判定部によって前記クライアントサーバシステムが不正利用されたと判定された場合に、前記クライアント装置から前記サーバへのアクセスを制限するアクセス制限部（３６）をさらに備える、
請求項１または２に記載の不正利用検知システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、不正利用検知システムに関する。
【背景技術】
【０００２】
従来、特許文献１（特開２００９−１１００９１号公報）に開示されているように、クライアントサーバシステムにおいてユーザにシステムの利用許可を与えるための認証方法として、ユーザ識別子（ユーザＩＤ）とパスワードが用いられている。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
しかし、ユーザ識別子とパスワードによる認証では、あるユーザのユーザ識別子とパスワードが流出した場合、当該ユーザ以外の者が当該ユーザになりすますことでシステムを不正に利用することができる。その結果、一部のユーザのみがアクセス可能な機密性の高いデータが、不特定多数に知られるおそれがある。しかし、ユーザのセキュリティ意識が高くない場合、ユーザ識別子とパスワードの流出を完全に防ぐことは不可能である。そこで、ユーザ識別子とパスワードが流出してしまった場合に、システムの不正な利用をできるだけ早期に検知するシステムが求められている。
【０００４】
本発明の目的は、システムを利用するための情報が流出した場合に、システムの不正な利用を早期に検知することである。
【課題を解決するための手段】
【０００５】
本発明の第１観点に係る不正利用検知システムは、ＧＰＳ受信機を有する複数のクライアント装置と、クライアント装置からアクセス可能なサーバとを有するクライアントサーバシステムの不正利用を検知する。不正利用検知システムは、アクセス情報管理部と、記憶部と、期間決定部と、時間差算出部と、不正利用判定部と、判定期間更新部とを備える。アクセス情報管理部は、サーバがアクセスされた時に、アクセス認証に使用されたユーザ識別子と、ユーザ識別子によるアクセスに使用されたクライアント装置の位置情報と、ユーザ識別子によるアクセス時刻と、を取得し、かつ、対応付けて記憶する。記憶部は、位置情報で表される任意の２地点に関する所定期間を記憶する。期間決定部は、第１アクセス時刻に対応する位置情報である第１位置情報と、第２アクセス時刻に対応する位置情報である第２位置情報とが異なる場合に、記憶部に記憶される所定期間、第１位置情報および第２位置情報に基づいて判定期間を決定する。第１アクセス時刻は、アクセス情報管理部に記憶されたユーザ識別子に対応する複数のアクセス時刻の内、最新のアクセス時刻である。第２アクセス時刻は、アクセス情報管理部に記憶されたユーザ識別子に対応する複数のアクセス時刻の内、２番目に新しいアクセス時刻である。時間差算出部は、第１アクセス時刻と第２アクセス時刻との差であるアクセス時間差を算出する。不正利用判定部は、時間差算出部によって算出されたアクセス時間差が、期間決定部によって決定された判定期間よりも短い場合に、クライアントサーバシステムが不正利用されたと判定する。判定期間更新部は、任意の２個のクライアント装置間の距離を位置情報から算出し、算出された距離に基づいて所定期間を算出し、記憶部に記憶される所定期間を算出された所定期間で更新する。アクセス情報管理部は、ＧＰＳ受信機を用いて位置情報を取得する。
【０００６】
第１観点に係る不正利用検知システムは、クライアントサーバシステムにおいて、同一のユーザ識別子によってサーバが複数回アクセスされた場合に、アクセスに使用されたクライアント装置の位置情報とアクセス時刻とに基づいて、システムが不正利用されたか否かを判定する。以下、第１観点に係る不正利用検知システムの動作について、具体例を挙げて説明する。不正利用検知システムは、ユーザＡのユーザ識別子が、クライアント装置Ａからのアクセスに使用された場合に、クライアント装置Ａの位置情報およびアクセス時刻を取得する。次に、不正利用検知システムは、ユーザＡのユーザ識別子が、クライアント装置Ａと異なるクライアント装置Ｂからのアクセスに使用された場合に、クライアント装置Ｂの位置情報およびアクセス時刻を取得する。次に、不正利用検知システムは、クライアント装置Ａの位置情報とクライアント装置Ｂの位置情報とに基づいて、判定期間を決定する。判定期間は、通常、クライアント装置Ａの設置場所からクライアント装置Ｂの設置場所までの距離が長いほど、長く設定される。次に、不正利用検知システムは、クライアント装置Ａのアクセス時刻とクライアント装置Ｂのアクセス時刻との差であるアクセス時間差を算出する。次に、不正利用検知システムは、アクセス時間差が判定期間よりも短い場合に、ユーザＡのユーザ識別子が使用されたクライアント装置Ｂからのアクセスは不正であると判定する。すなわち、不正利用検知システムは、ユーザＡのユーザ識別子がクライアント装置Ａからのアクセスに使用された後、所定の期間内に、ユーザＡのユーザ識別子がクライアント装置Ａと異なるクライアント装置Ｂからのアクセスに使用された場合に、システムが不正利用されたと判定する。不正利用検知システムは、各クライアント装置に取り付けられたＧＰＳ受信機を用いて、各クライアント装置の位置情報を取得する。
【０００７】
第１観点に係る不正利用検知システムは、サーバへのアクセスのために使用されるユーザ識別子が流出してしまった場合でも、サーバへのアクセスに使用された端末の位置情報およびアクセス時刻に基づいて、システムの不正利用を検知することができる。従って、第１観点に係る不正利用検知システムは、システムを利用するための情報が流出した場合に、システムの不正な利用を早期に検知することができる。
【０００８】
本発明の第２観点に係る不正利用検知システムは、第１観点に係る不正利用検知システムにおいて、警告報知部をさらに備える。警告報知部は、不正利用判定部によってクライアントサーバシステムが不正利用されたと判定された場合に、クライアント装置およびサーバの少なくとも一方に対して、その旨の警告を報知する。
【０００９】
第２観点に係る不正利用検知システムは、システムの不正利用を検知した場合に、例えば、システムの管理者に対して、システムの不正利用を検知した旨の警告メールを送信し、アクセスログを管理者用端末の画面に表示する。
【００１０】
本発明の第３観点に係る不正利用検知システムは、第１観点または第２観点に係る不正利用検知システムにおいて、アクセス制限部をさらに備える。アクセス制限部は、不正利用判定部によってクライアントサーバシステムが不正利用されたと判定された場合に、クライアント装置からサーバへのアクセスを制限する。
【００１１】
第３観点に係る不正利用検知システムは、システムの不正利用を検知した場合に、例えば、システムの不正利用が行われたクライアント装置からのサーバへのアクセスを禁止する。
【発明の効果】
【００１２】
本発明に係る不正利用検知システムは、システムを利用するための情報が流出した場合に、システムの不正な利用を早期に検知することができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の第１実施形態における、不正利用検知システムの全体構成図である。
【図２】本発明の第１実施形態における、サーバのブロック構成図である。
【図３】本発明の第１実施形態における、アクセス情報テーブルの構成図である。
【図４】本発明の第１実施形態における、位置情報テーブルの構成図である。
【図５】本発明の第１実施形態における、判定期間テーブルの構成図である。
【図６Ａ】本発明の第１実施形態における、不正利用検知のフローチャートである。
【図６Ｂ】本発明の第１実施形態における、不正利用検知のフローチャートである。図６Ａのフローチャートの続きを表す図である。
【図７】本発明の変形例Ａにおける、アクセス情報テーブルの構成図の一例である。
【図８】本発明の変形例Ａにおける、アクセス情報テーブルの構成図の一例である。
【図９】本発明の変形例Ｂおよび変形例Ｃにおける、不正利用検知システムの全体構成図である。
【図１０】本発明の変形例Ｂおよび変形例Ｃにおける、サーバのブロック構成図である。
【発明を実施するための形態】
【００１４】
（１）全体構成
本発明の実施形態に係る不正利用検知システム１０について、図面を参照しながら説明する。図１は、不正利用検知システム１０の全体構成を例示するシステム構成図である。不正利用検知システム１０は、サーバ２０と、複数のクライアント装置３０とを備えるクライアントサーバシステム（以下、単に「システム」と呼ぶ。）である。
【００１５】
サーバ２０は、デスクトップＰＣおよびワークステーション等の固定端末である。サーバ２０には、入力装置２５ａおよび出力装置２６ａが接続されている。システムの管理者（以下、単に「管理者」と呼ぶ。）は、サーバ２０を用いて、システムの設定および監視等、システムの管理を行う。
【００１６】
クライアント装置３０は、デスクトップＰＣおよびワークステーション等の固定端末である。クライアント装置３０は、ネットワーク９０を介してサーバ２０に接続されている。ネットワーク９０は、例えば、社内ネットワークとして用いられるＬＡＮ、広域イーサネット（登録商標）、ＶＰＮ等である。システムのユーザ（以下、単に「ユーザ」と呼ぶ。）は、クライアント装置３０を用いて、サーバ２０にアクセスしてシステムを利用することができる。
【００１７】
以下、説明を簡略化するために、本実施形態において、不正利用検知システム１０は、図１に示されるように、東京、大阪およびロンドンの３箇所にオフィスを有する企業によって使用されるシステムであると仮定する。各オフィスには、クライアント装置３０が３台ずつ設置され、システム全体では合計９台のクライアント装置３０が設置されている。それぞれのクライアント装置３０には、自身を識別するための符号（後述する「クライアント識別子」）が付与されている。
【００１８】
（２）サーバの構成
図２は、サーバ２０の構成を例示するブロック構成図である。サーバ２０は、ＣＰＵ２１と、記憶装置２２と、メモリ２３と、ネットワークインターフェイス２４と、入力インターフェイス２５と、出力インターフェイス２６と、内部時計２７とを備える。以下、サーバ２０の各構成要素について説明する。
【００１９】
（２−１）ＣＰＵ
ＣＰＵ２１は、不正利用検知システム１０に必要な機能を実現する。ＣＰＵ２１は、記憶装置２２に記憶されているプログラムおよびデータをメモリ２３に一時的に読み出し、読み出したプログラムを実行して読み出したデータを処理する。その後、ＣＰＵ２１は、処理したデータを記憶装置２２に書き込み、読み出したプログラムおよびデータをメモリ２３から消去する。
【００２０】
（２−２）記憶装置
記憶装置２２は、ハードディスクドライブおよびリムーバブルメディア等の、大容量かつ不揮発性の補助記憶装置である。記憶装置２２には、ＣＰＵ２１によってメモリ２３に読み出されるプログラムおよびデータが半永続的に記憶される。記憶装置２２は、アクセス情報テーブルＴ１と、位置情報テーブルＴ２と、判定期間テーブルＴ３とを記憶する。
【００２１】
（２−２−１）アクセス情報テーブル
アクセス情報テーブルＴ１の構成を図３に示す。アクセス情報テーブルＴ１の各レコードは、ユーザ識別子Ｆ１１、クライアント識別子Ｆ１２およびアクセス時刻Ｆ１３の３つのフィールドを格納する。
【００２２】
ユーザ識別子Ｆ１１は、ユーザを一意に識別するために、各ユーザに付与された符号である。本実施形態において、ユーザ識別子Ｆ１１は、「Ｕ１２３４」のように、文字「Ｕ」の後に４桁の数値が結合された符号で表される。各ユーザは、任意のクライアント装置３０のログイン画面に、自身のユーザ識別子Ｆ１１およびログイン用パスワードを入力することによって、サーバ２０にアクセスすることができる。
【００２３】
クライアント識別子Ｆ１２は、クライアント装置３０を一意に識別するために、各クライアント装置３０に付与された符号である。本実施形態において、クライアント識別子Ｆ１２は、「Ｃ１２３４」のように、文字「Ｃ」の後に４桁の数値が結合された符号で表される。図１に示されるように、本実施形態において、東京オフィスの３台のクライアント装置３０にはクライアント識別子「Ｃ０１０１」・「Ｃ０１０２」・「Ｃ０１０３」がそれぞれ付与され、大阪オフィスの３台のクライアント装置３０にはクライアント識別子「Ｃ０２０１」・「Ｃ０２０２」・「Ｃ０２０３」がそれぞれ付与され、ロンドンオフィスの３台のクライアント装置３０にはクライアント識別子「Ｃ０３０１」・「Ｃ０３０２」・「Ｃ０３０３」がそれぞれ付与される。
【００２４】
アクセス時刻Ｆ１３は、ユーザがクライアント装置３０を用いてサーバ２０にアクセスした日時を表す。本実施形態において、アクセス時刻Ｆ１３は、「ｙｙｙｙＭＭｄｄＨＨｍｍｓｓ」形式の１４桁の数値で表される。例えば、アクセス時刻「２０１１０３２３１８３２４０」は、２０１１年３月２３日１８時３２分４０秒にサーバ２０がアクセスされたことを意味する。
【００２５】
アクセス情報テーブルＴ１は、クライアント装置３０からサーバ２０がアクセスされる度に更新される。アクセス情報テーブルＴ１の各レコードは、アクセス時刻Ｆ１３の降順に自動的に整列される。すなわち、図３において、アクセス情報テーブルＴ１は、各レコードを、アクセス時刻Ｆ１３が新しい順に上から下に並べて格納する。
【００２６】
例として、図３に示されるアクセス情報テーブルＴ１の一番上のレコードは、ユーザ識別子Ｆ１１「Ｕ００１１」を用いて、クライアント識別子Ｆ１２「Ｃ０１０３」が付与されたクライアント装置３０から、２０１１年１月１０日９時５０分００秒にサーバ２０がアクセスされたことを表す。
【００２７】
（２−２−２）位置情報テーブル
位置情報テーブルＴ２の構成を図４に示す。位置情報テーブルＴ２の各レコードは、クライアント識別子Ｆ２１および位置情報Ｆ２２の２つのフィールドを格納する。
【００２８】
クライアント識別子Ｆ２１は、アクセス情報テーブルＴ１に格納されるクライアント識別子Ｆ１２と同様に、クライアント装置３０を一意に識別するために、各クライアント装置３０に付与された符号である。位置情報Ｆ２２は、クライアント識別子Ｆ１２が付与されたクライアント装置３０が設置されている場所に関する情報である。本実施形態では、位置情報Ｆ２２は、各クライアント装置３０が設置されているオフィスがある都市の名前を表す英文字列である。
【００２９】
例として、図４に示される位置情報テーブルＴ２は、クライアント識別子Ｆ２１「Ｃ０１０２」が付与されたクライアント装置３０は、東京（Ｔｏｋｙｏ）に設置され、クライアント識別子Ｆ２１「Ｃ０３０１」が付与されたクライアント装置３０は、ロンドン（Ｌｏｎｄｏｎ）に設置されていることを表す。
【００３０】
管理者は、各クライアント装置３０に対応する位置情報Ｆ２２を、位置情報テーブルＴ２に予め入力する。管理者のみが、位置情報テーブルＴ２を修正および更新するための権限を有する。
【００３１】
（２−２−３）判定期間テーブル
判定期間テーブルＴ３の構成を図５に示す。判定期間テーブルＴ３は、位置情報テーブルＴ２の位置情報Ｆ２２に格納される文字列、および、「判定期間」を格納する。本実施形態において、判定期間は、システムの不正利用を検知するために使用される情報であり、位置情報Ｆ２２で表される任意の２地点に関する所定期間を表す。判定期間は、「ＨＨｍｍ」形式の４桁の数値で表される。例えば、判定期間「０６３０」は、６時間３０分を表す。
【００３２】
例として、図５に示される判定期間テーブルＴ３において、「Ｏｓａｋａ（大阪）」のフィールドと「Ｔｏｋｙｏ（東京）」のレコードが交差するセルに格納されている値は、「０２００」である。すなわち、大阪と東京に関する判定期間は、２時間である。また、「Ｔｏｋｙｏ（東京）」のフィールドと「Ｌｏｎｄｏｎ（ロンドン）」のレコードが交差するセルに格納されている値は、「１２００」である。すなわち、東京とロンドンに関する判定期間は、１２時間である。通常、任意の２地点の間の移動時間が長いほど、当該２地点に関する判定期間は長く設定される。任意の２地点が同一の場合、判定期間は０時間である。
【００３３】
管理者は、判定期間を、判定期間テーブルＴ３に予め入力する。管理者のみが、判定期間テーブルＴ３を修正および更新するための権限を有する。
【００３４】
（２−３）メモリ
メモリ２３は、ＤＲＡＭやＳＲＡＭ等の、低容量かつ揮発性の主記憶装置である。メモリ２３は、プログラムおよびデータを一時的に記憶して、プログラムの実行およびデータの処理を行うために、ＣＰＵ２１が使用する作業領域である。メモリ２３は、図２に示されるように、アクセス情報管理部３１と、期間決定部３２と、時間差算出部３３と、不正利用判定部３４と、警告表示部３５と、アクセス制限部３６とを有する。ＣＰＵ２１は、記憶装置２２から所定のプログラムをメモリ２３に読み出して実行することで、メモリ２３が有する各構成要素が持つ機能を実現する。
【００３５】
（２−３−１）アクセス情報管理部
アクセス情報管理部３１は、クライアント装置３０からサーバ２０へのアクセスが発生した時に、当該アクセスを検知して、アクセス情報テーブルＴ１を更新する。
【００３６】
アクセス情報管理部３１は、後述するネットワークインターフェイス４０を通過するパケットを監視して、クライアント装置３０からサーバ２０へのアクセスを検知する。アクセス情報管理部３１は、サーバ２０へのアクセスを検知した場合に、アクセスに使用されたユーザ識別子Ｆ１１およびクライアント識別子Ｆ１２を取得し、かつ、アクセスが発生した時刻であるアクセス時刻Ｆ１３を取得する。アクセス時刻Ｆ１３の値は、サーバ２０の内部時計２７が示す現在時刻に基づいて決定される。
【００３７】
次に、アクセス情報管理部３１は、取得したユーザ識別子Ｆ１１、クライアント識別子Ｆ１２およびアクセス時刻Ｆ１３に基づいて、アクセス情報テーブルＴ１を更新する。
【００３８】
（２−３−２）期間決定部
期間決定部３２は、アクセス情報テーブルＴ１、位置情報テーブルＴ２および判定期間テーブルＴ３に格納されたデータに基づいて、判定期間を決定する。
【００３９】
最初に、期間決定部３２は、クライアント装置３０からサーバ２０へのアクセスが発生した時に、当該アクセスに関する情報がアクセス情報管理部３１によって追加されたアクセス情報テーブルＴ１から、当該アクセスに関するレコードである第１レコードＲ１を取得する。第１レコードＲ１は、図３において、アクセス情報テーブルＴ１の一番上方に格納されているレコードである。
【００４０】
次に、期間決定部３２は、アクセス情報テーブルＴ１が第２レコードＲ２を有すると判定した場合に、第２レコードＲ２を取得する。第２レコードＲ２は、第１レコードＲ１に格納されているユーザ識別子Ｆ１１と同じユーザ識別子Ｆ１１を有し、第１レコードＲ１に格納されているクライアント識別子Ｆ１２と異なるクライアント識別子Ｆ１２を有するレコードの内、アクセス時刻Ｆ１３が最新のレコードである。
【００４１】
次に、期間決定部３２は、位置情報テーブルＴ２を用いて、第１レコードＲ１に格納されているクライアント識別子Ｆ１２に対応する位置情報Ｆ２２である第１位置情報と、第２レコードＲ２に格納されているクライアント識別子Ｆ１２に対応する位置情報Ｆ２２である第２位置情報とを取得する。
【００４２】
次に、期間決定部３２は、判定期間テーブルＴ３を用いて、第１位置情報と第２位置情報とから判定期間を決定する。
【００４３】
（２−３−３）時間差算出部
時間差算出部３３は、アクセス情報テーブルＴ１に基づいて、アクセス時間差を算出する。アクセス時間差は、第１レコードＲ１に格納されているアクセス時刻Ｆ１３である第１アクセス時刻と、第２レコードＲ２に格納されているアクセス時刻Ｆ１３である第２アクセス時刻との差である。
【００４４】
（２−３−４）不正利用判定部
不正利用判定部３４は、時間差算出部３３によって算出されたアクセス時間差が、期間決定部３２によって決定された判定期間より短い場合に、システムが不正利用されたと判定する。具体的には、不正利用判定部３４は、第１レコードＲ１に格納されているユーザ識別子Ｆ１１を用いて、当該ユーザ識別子Ｆ１１を付与されたユーザ以外の者が、第１レコードＲ１に格納されているクライアント識別子Ｆ１２に対応するクライアント装置３０から、サーバ２０に不正にアクセスしたと判断する。
【００４５】
（２−３−５）警告表示部
警告表示部３５は、不正利用判定部３４によってシステムが不正利用されたと判定された場合に、管理者に対して警告をする。例えば、システムが不正利用された旨や、不正なアクセスのために使用されたクライアント装置３０のクライアント識別子Ｆ１２や、不正なアクセスが行われた時刻等を、サーバ２０の出力装置２６ａに表示する。
【００４６】
（２−３−６）アクセス制限部
アクセス制限部３６は、不正利用判定部３４によってシステムが不正利用されたと判定された場合に、クライアント装置３０からサーバ２０へのアクセスを制限する。例えば、不正なアクセスのために使用されたクライアント装置３０からサーバ２０へのアクセスを、禁止あるいは制限する。なお、アクセス制限部３６によるアクセス制限の具体的な内容は、管理者によって予め設定されて、記憶装置２２に記憶される。
【００４７】
（２−４）ネットワークインターフェイス
ネットワークインターフェイス２４は、ネットワーク内でコンピュータ間の通信を行うために必要な、ＬＡＮカード等のハードウェアである。ネットワークインターフェイス２４は、ネットワーク９０をサーバ２０に接続する。
【００４８】
（２−５）入力インターフェイス
入力インターフェイス２５は、ＰＳ／２、ＵＳＢ、ＩＥＥＥ１３９４およびＲＳ−２３２Ｃ等のインターフェイス規格に対応する接続端子を備える機器である。入力インターフェイス２５は、入力装置２５ａをサーバ２０に接続する。入力装置２５ａは、例えば、キーボード、マウスおよびスキャナである。管理者は、入力装置２５ａを用いて、位置情報テーブルＴ２および判定期間テーブルＴ３を修正および更新し、および、アクセス制限部３６によるクライアント装置３０からサーバ２０へのアクセス制限の設定を行うことができる。
【００４９】
（２−６）出力インターフェイス
出力インターフェイス２６は、ＡＧＰ、ＰＣＩ  ＥｘｐｒｅｓｓおよびＲＳ−２３２Ｃ等のインターフェイス規格に対応する接続端子を備える機器である。出力インターフェイス２６は、出力装置２６ａをサーバ２０に接続する。出力装置２６ａは、例えば、ＣＲＴディスプレイおよび液晶ディスプレイ等である。管理者は、出力装置２６ａを用いて、警告表示部３５から警告を受け取ることができる。
【００５０】
（２−７）内部時計
内部時計２７は、サーバ２０が設置されている場所が属するタイムゾーンの現在時刻を取得する。ＣＰＵ２１は、内部時計２７が取得した現在時刻に基づいて、メモリ２３が有する各機能を実行する。内部時計２７は、定期的に、ＦＴＰサーバにアクセスして時刻補正を行う。
【００５１】
（３）動作
本実施形態に係る不正利用検知システム１０においてシステムの不正利用を検知する「不正利用検知ルーチン」について、図６Ａおよび図６Ｂに示されるフローチャートに従って説明する。その際、図３乃至図５に示されるアクセス情報テーブルＴ１、位置情報テーブルＴ２および判定期間テーブルＴ３を用いて、ステップＳ１０１乃至Ｓ１１０の動作を具体的に説明する。図４に示される位置情報テーブルＴ２および図５に示される判定期間テーブルＴ３は、管理者によって予め作成され、記憶装置２２に記憶されている。なお、この不正利用検知ルーチンは、サーバ２０によって、バックグラウンドで繰り返し実行される。
【００５２】
ステップＳ１０１において、アクセス情報管理部３１は、クライアント装置３０からサーバ２０がアクセスされているか否かを判定する。サーバ２０がアクセスされている場合、ステップＳ１０２に移行する。サーバ２０がアクセスされていない場合、不正利用検知ルーチンは終了する。
【００５３】
ステップＳ１０２において、アクセス情報管理部３１は、アクセス情報テーブルＴ１を更新する。具体的には、アクセス情報管理部３１は、ステップＳ１０１で判定されたアクセス（以下、「本アクセス」と呼ぶ。）に関するユーザ識別子Ｆ１１、クライアント識別子Ｆ１２およびアクセス時刻Ｆ１３を取得して、第１レコードＲ１としてアクセス情報テーブルＴ１に追加する。この時点において、記憶装置２２には、図３に示されるアクセス情報テーブルＴ１が記憶されている。本アクセスは、第１レコードＲ１に示されるように、ユーザ識別子Ｆ１１「Ｕ００１１」を用いて、クライアント識別子Ｆ１２「Ｃ０１０３」を有するクライアント装置３０から、２０１１年１月１０日９時５０分００秒に行われたアクセスである。次に、ステップＳ１０３に移行する。
【００５４】
ステップＳ１０３において、期間決定部３２は、アクセス情報テーブルＴ１が第２レコードＲ２を有しているか否かを判定する。アクセス情報テーブルＴ１が第２レコードＲ２を有している場合、ステップＳ１０４に移行する。アクセス情報テーブルＴ１が第２レコードＲ２を有していない場合、不正利用検知ルーチンは終了する。本アクセスにおいて、図３に示されるアクセス情報テーブルＴ１には、第１レコードＲ１のユーザ識別子Ｆ１１「Ｕ００１１」と同じユーザ識別子Ｆ１１を有し、かつ、第１レコードＲ１のクライアント識別子Ｆ１２「Ｃ０１０３」と異なるクライアント識別子Ｆ１２を有する２個のレコードが存在する。当該２個のレコードの内、アクセス時刻Ｆ１３が最新のレコードが、第２レコードＲ２である。図３に示されるアクセス情報テーブルＴ１において、第２レコードＲ２に関するアクセスは、ユーザ識別子Ｆ１１「Ｕ００１１」を用いて、クライアント識別子Ｆ１２「Ｃ０２０１」を有するクライアント装置３０から、２０１１年１月１０日８時２０分００秒に行われたアクセスである。次に、ステップＳ１０４に移行する。
【００５５】
ステップＳ１０４において、期間決定部３２は、第１位置情報および第２位置情報を取得する。本アクセスにおいて、図４に示される位置情報テーブルＴ２に示されるように、第１レコードＲ１のクライアント識別子Ｆ１２「Ｃ０１０３」に対応する位置情報Ｆ２２である第１位置情報は「Ｔｏｋｙｏ（東京）」であり、第２レコードＲ２のクライアント識別子Ｆ１２「Ｃ０２０１」に対応する位置情報Ｆ２２である第２位置情報は「Ｏｓａｋａ（大阪）」である。次に、ステップＳ１０５に移行する。
【００５６】
ステップＳ１０５において、期間決定部３２は、第１位置情報および第２位置情報に基づいて、判定期間を決定する。本アクセスにおいて、図５に示される判定期間テーブルＴ３に示されるように、「Ｔｏｋｙｏ（東京）」および「Ｏｓａｋａ（大阪）」に関する判定期間は、２時間と決定される。次に、ステップＳ１０６に移行する。
【００５７】
ステップＳ１０６において、時間差算出部３３は、アクセス時間差を算出する。本アクセスにおいて、図３に示されるアクセス情報テーブルＴ１に示されるように、第１レコードＲ１のアクセス時刻Ｆ１３は２０１１年１月１０日９時５０分００秒であり、第２レコードＲ２のアクセス時刻Ｆ１３は２０１１年１月１０日８時２０分００秒である。従って、アクセス時間差は、これらの２つのアクセス時刻の差である１時間３０分と算出される。次に、ステップＳ１０７に移行する。
【００５８】
ステップＳ１０７において、不正利用判定部３４は、アクセス時間差が判定期間より短いか否かを判定する。アクセス時間差が判定期間より短い場合、ステップＳ１０８に移行する。アクセス時間差が判定期間と等しいか、または、判定期間より長い場合、不正利用検知ルーチンは終了する。本アクセスにおいて、ステップＳ１０６において算出されたアクセス時間差は１時間３０分であり、ステップＳ１０５において決定された判定期間は２時間である。従って、アクセス時間差が判定期間より短いので、ステップＳ１０８に移行する。
【００５９】
ステップＳ１０８において、不正利用判定部３４は、システムの不正利用を検知する。本アクセスにおいて、不正利用判定部３４は、第１レコードＲ１に関するアクセスは、サーバ２０への不正なアクセスであると判断する。すなわち、不正利用判定部３４は、第１レコードＲ１に関するアクセスは、ユーザ識別子Ｆ１１「Ｕ００１１」が付与されたユーザ以外の者によって、ユーザ識別子Ｆ１１「Ｕ００１１」が不正に使用されたアクセスであると判断する。次に、ステップＳ１０９に移行する。
【００６０】
ステップＳ１０９において、警告表示部３５は、管理者に対して、システムが不正利用された旨の警告をする。本アクセスにおいて、警告表示部３５は、ユーザ識別子Ｆ１１「Ｕ００１１」を用いてシステムが不正利用された旨の警告、および、システムの不正利用に使用されたクライアント端末３０のクライアント識別子Ｆ１２「Ｃ０１０３」等を出力装置２６ａに表示する。次に、ステップＳ１１０に移行する。
【００６１】
ステップＳ１１０において、アクセス制限部３６は、クライアント装置３０からサーバ２０へのアクセスを制限する。本アクセスにおいて、アクセス制限部３６は、システムの不正利用に使用されたユーザ識別子Ｆ１１「Ｕ００１１」を用いたサーバ２０へのアクセスを一時的に禁止する。
【００６２】
ステップＳ１１０の実行後、不正利用検知ルーチンは終了する。不正利用検知ルーチンは、バックグラウンドで繰り返し実行されるので、ステップＳ１１０の実行後、ステップＳ１０１が再度実行される。
【００６３】
（４）特徴
（４−１）
本実施形態に係る不正利用検知システム１０では、アクセス情報テーブルＴ１、位置情報テーブルＴ２および判定期間テーブルＴ３を用いて、アクセスに使用されたクライアント装置３０の位置情報とアクセス時刻とに基づいて、システムの不正利用を検知する。
【００６４】
本実施形態では、あるユーザＡが、ユーザＡに付与された正規なユーザ識別子を用いてクライアント装置Ａからサーバにアクセスし、その後、所定の期間内に、ユーザＢが、ユーザＡのユーザ識別子を用いてクライアント装置Ａと異なるクライアント装置Ｂからサーバにアクセスした場合に、ユーザＢによるアクセスをシステムの不正利用と判定する。このケースにおいて、クライアント装置Ｂが、クライアント装置Ａの設置場所から最低２時間は移動に要する場所に設置されていると仮定すると、ユーザＡが、クライアント装置Ａからサーバにアクセスし、ユーザＡが、１時間後にクライアント装置Ｂからサーバにアクセスすることは、物理的に不可能である。そこで、クライアント装置Ｂからのアクセスは、ユーザＡ以外の者が、ユーザＡに付与されたユーザ識別子を用いて行ったアクセスであると判断する。すなわち、本実施形態では、クライアント装置Ｂからサーバへのアクセスが行われた時点で、システムの不正利用を検知することができる。
【００６５】
従って、本実施形態では、サーバへのアクセスのために使用されるユーザ識別子が流出してしまった場合でも、サーバへのアクセスに使用されたクライアント装置の位置情報と、サーバへのアクセス時刻とに基づいて、システムの不正利用を早期に検知することができる。これにより、本実施形態に係る不正利用検知システムは、システムを利用するための情報が流出した場合に、システムの不正な利用を早期に検知することができる。
【００６６】
（４−２）
本実施形態に係る不正利用検知システム１０では、不正利用判定部３４によってシステムが不正利用されたと判定された場合に、警告表示部３５は、管理者に対して警告して不正なアクセスに関する情報を提供し、アクセス制限部３６は、不正なアクセスに使用されたクライアント装置３０からサーバ２０へのアクセスを制限する。
【００６７】
従って、本実施形態では、システムの不正利用が検知された場合に、管理者は、不正なアクセスに使用されたクライアント装置からのアクセスを一定期間禁止することや、不正なアクセスに使用されたユーザ識別子の正規の所有者であるユーザに対してパスワードを直ちに変更する指示を与える等、システムの不正利用の対応策を速やかに取ることができる。これにより、本実施形態に係る不正利用検知システムは、システムを利用するための情報が流出してシステムが不正に利用された場合であっても、システムを正常な状態に早期に回復させることができる。
【００６８】
（５）変形例
以上、本発明の実施形態について図面を参照しながら説明したが、本発明の具体的構成は、本発明の要旨を逸脱しない範囲内で変更可能である。本発明の実施形態に係る不正利用検知システム１０は、種種の規模のネットワーク内で使用されるクライアントサーバシステムにも適用することができる。
【００６９】
以下、本発明の実施形態に係る不正利用検知システム１０に対する適用可能な変形例について説明する。
【００７０】
（５−１）変形例Ａ
本実施形態に係る不正利用検知システム１０では、アクセス情報テーブルＴ１は、クライアント装置３０に付与されたクライアント識別子Ｆ１２を格納し、かつ、期間決定部３２は、アクセス情報テーブルＴ１および位置情報テーブルＴ２に基づいて、クライアント装置３０の位置情報Ｆ２２を取得する。しかし、アクセス情報テーブルＴ１は、クライアント装置３０を一意に識別することができる情報であれば、例えば、クライアント装置３０のＩＰアドレスおよびＭＡＣアドレス等を格納してもよい。
【００７１】
本変形例におけるアクセス情報テーブルの一つの例を図７に示す。図７に示されるアクセス情報テーブルＴ１１の各レコードには、ユーザ識別子Ｆ１１１、ＩＰアドレスＦ１１２およびアクセス時刻Ｆ１１３の３つのフィールドが格納される。ユーザ識別子Ｆ１１１およびアクセス時刻Ｆ１１３は、それぞれ、本実施形態におけるユーザ識別子Ｆ１１およびアクセス時刻Ｆ１３と同一である。ＩＰアドレスＦ１１２は、ネットワーク９０内の各クライアント装置３０に割り当てられたＩＰアドレスである。クライアント装置３０のＩＰアドレスは、ネットワーク９０内において各クライアント装置３０に固有であるため、各クライアント装置３０を一意に識別することができる符号として使用することができる。
【００７２】
また、本変形例におけるアクセス情報テーブルの他の例を図８に示す。図８に示されるアクセス情報テーブルＴ２１の各レコードには、ユーザ識別子Ｆ２１１、ＭＡＣアドレスＦ２１２およびアクセス時刻Ｆ２１３の３つのフィールドが格納される。ユーザ識別子Ｆ２１１およびアクセス時刻Ｆ２１３は、それぞれ、本実施形態におけるユーザ識別子Ｆ１１およびアクセス時刻Ｆ１３と同一である。ＭＡＣアドレスＦ２１２は、ネットワーク９０内の各クライアント装置３０が備えるネットワークインターフェイス２４に割り当てられたＭＡＣアドレスである。ネットワークインターフェイス２４のＭＡＣアドレスは、各ネットワークインターフェイス２４に固有であるため、各クライアント装置３０を一意に識別することができる情報として使用することができる。
【００７３】
（５−２）変形例Ｂ
本実施形態に係る不正利用検知システム１０では、管理者は、位置情報テーブルＴ２に、各クライアント装置３０の位置情報Ｆ２２を予め入力する必要がある。しかし、各クライアント装置３０に取り付けられたＧＰＳ受信機３０ａから送信された情報に基づいて、位置情報テーブルＴ２が自動的に更新されてもよい。この場合、管理者は、位置情報テーブルＴ２に、各クライアント装置３０の位置情報Ｆ２２を予め入力する必要がない。
【００７４】
本変形例における不正利用検知システム１１０の全体構成図を図９に示し、不正利用検知システム１１０が備えるサーバ１２０のブロック構成図を図１０に示す。（図１０には、後述する変形例Ｃで使用される「判定期間更新部３８」も示されている。）本変形例では、各クライアント装置３０にはＧＰＳ受信機３０ａが取り付けられる。ＧＰＳ受信機３０ａは、ＧＰＳ衛星３０ｂからの信号を受信して、クライアント装置３０の現在位置に関する情報を取得することができる。現在位置に関する情報は、例えば、経緯度および地名等である。
【００７５】
本変形例において、サーバ１２０のメモリ２３は、位置情報更新部３７をさらに有する。位置情報更新部３７は、各クライアント装置３０に取り付けられたＧＰＳ受信機３０ａに対して、クライアント装置３０の現在位置に関する情報の送信を要求する。次に、位置情報更新部３７は、各ＧＰＳ受信機３０ａから、クライアント装置３０の現在位置に関する情報を受信して、当該情報に基づいて位置情報テーブルＴ２を更新する。すなわち、位置情報更新部３７は、ＧＰＳ受信機３０ａによって、クライアント装置３０の現在位置をリアルタイムに把握することができる。
【００７６】
本変形例に係る不正利用検知システム１１０では、管理者は、クライアント装置３０の現在位置が変更された場合でも、位置情報テーブルＴ２を更新する必要がない。従って、本変形例では、クライアント装置３０が持ち運び可能な端末であっても、システムの不正利用を検知することができる。例えば、クライアント装置３０は、ラップトップＰＣおよびスマートフォン等の携帯端末であってもよい。
【００７７】
（５−３）変形例Ｃ
変形例Ｂに係る不正利用検知システム１１０では、サーバ１２０のメモリ２３は、位置情報テーブルＴ２を自動的に更新する位置情報更新部３７を有するが、判定期間テーブルＴ３を自動的に更新する判定期間更新部３８をさらに備えてもよい。
【００７８】
本変形例における不正利用検知システム１１０の全体構成図を図９に示し、不正利用検知システム１１０が備えるサーバ１２０のブロック構成図を図１０に示す。本変形例では、判定期間更新部３８は、位置情報更新部３７が取得したクライアント装置３０の現在位置を表す経緯度に基づいて、判定期間テーブルＴ３を自動的に更新する。地球上のある２地点の経度および緯度が取得できれば、当該２地点間の距離を算出することができる。判定期間更新部３８は、各クライアント装置３０の現在位置の経緯度から、任意の２個のクライアント装置３０間の距離を算出する。次に、判定期間更新部３８は、算出した距離に基づいて判定期間を算出し、判定期間テーブルＴ３を更新する。例えば、判定期間更新部３８は、任意の２個のクライアント装置３０間の距離（単位はｋｍ）を２００で除した値を、判定期間（単位は時間）として使用する。この場合、判定期間更新部３８は、ある２個のクライアント装置３０間の距離が５００ｋｍである場合、判定期間は２時間３０分（２．５時間）であると算出する。
【００７９】
本変形例に係る不正利用検知システム１１０では、管理者は、クライアント装置３０の現在位置が変更された場合でも、位置情報テーブルＴ２を更新する必要がなく、かつ、判定期間テーブルＴ３に格納される判定期間を予め設定しておく必要がない。
【００８０】
（５−４）変形例Ｄ
本実施形態に係る不正利用検知システム１０では、アクセス制限部３６は、システムの不正利用に使用されたユーザ識別子Ｆ１１「Ｕ００１１」を用いたサーバ２０へのアクセスを一時的に禁止するが、アクセス制限部３６は、システムの不正利用に使用されたクライアント識別子Ｆ１２「Ｃ０１０３」を有するクライアント装置３０からのサーバ２０へのアクセスを一時的に禁止してもよい。また、アクセス制限部３６は、サーバ２０へのアクセスを禁止する代わりに、サーバ２０へのアクセス権限を制限してもよい。例えば、アクセス制限部３６は、システムの不正利用に使用されたユーザ識別子Ｆ１１「Ｕ００１１」を用いたサーバ２０へのアクセスに関して、サーバ２０に保持されているデータの読み込みを許可し、かつ、書き込みを禁止してもよい。
【産業上の利用可能性】
【００８１】
本発明に係る不正利用検知システムは、システムを利用するための情報が流出した場合に、システムの不正な利用を早期に検知することができる。
【符号の説明】
【００８２】
１０，１１０    不正利用検知システム
２０    サーバ
３０    クライアント装置
３０ａ  ＧＰＳ受信機
３１    アクセス情報管理部
３２    期間決定部
３３    時間差算出部
３４    不正利用判定部
３５    警告報知部
３６    アクセス制限部
【先行技術文献】
【特許文献】
【００８３】
【特許文献１】特開２００９−１１００９１号公報
【図１】
0005541215.tif 000002
【図２】
0005541215.tif 000003
【図３】
0005541215.tif 000004
【図４】
0005541215.tif 000005
【図５】
0005541215.tif 000006
【図６Ａ】
0005541215.tif 000007
【図６Ｂ】
0005541215.tif 000008
【図７】
0005541215.tif 000009
【図８】
0005541215.tif 000010
【図９】
0005541215.tif 000011
【図１０】
0005541215.tif 000012