(57)【要約】      （修正有）【課題】クライアント装置における不正通信を検知する不正通信検知装置及びプログラムを提供する。【解決手段】検知サーバ１０は、検知サーバ１０とクライアント装置２０との間の通信状態を示す値である通信状態値の推移を計測し、通信状態値の推移を表した情報である通信状態値の推移パターンを記憶する。検知サーバ１０は、記憶した推移パターンと、計測される通信状態値の推移と、に基づいて、クライアント装置２０における不正通信を検知する。【選択図】図１
2015204478.tif 000002
【特許請求の範囲】
【請求項１】
クライアント装置との間の通信状態値の推移を計測する計測手段と、
前記通信状態値の推移パターンを記憶する推移パターン記憶手段と、
前記推移パターンと、計測される前記通信状態値の推移と、に基づいて、前記クライアント装置における不正通信を検知する不正通信検知手段と、
を含む不正通信検知装置。
【請求項２】
前記通信状態値は、可用通信帯域幅又は使用通信帯域幅である、
請求項１に記載の不正通信検知装置。
【請求項３】
前記不正通信検知手段は、前記推移パターンとの相関値に基づいて、計測される前記通信状態値の推移の一部を選択するとともに、該一部と前記推移パターンとの差が予め定められた条件を充足する場合に、前記クライアント装置における不正通信を検知する、
請求項１又は２に記載の不正通信検知装置。
【請求項４】
前記推移パターン記憶手段は、前記クライアント装置におけるアプリケーションソフトウェアが外部との通信を行っていない期間における、前記通信状態値の推移パターンを記憶する、
請求項１乃至３のいずれかに記載の不正通信検知装置。
【請求項５】
前記クライアント装置から該クライアント装置の通信環境情報を取得する取得手段をさらに含み、
前記推移パターン記憶手段は、前記クライアント装置の前記通信環境情報に関連づけて前記推移パターンを記憶し、
前記不正通信検知手段は、取得される前記通信環境情報に関連づけられた前記推移パターンと、計測される前記通信状態値の推移と、に基づいて、前記クライアント装置における不正通信を検知する、
請求項１乃至４のいずれかに記載の不正通信検知装置。
【請求項６】
前記通信環境情報は、前記クライアント装置の位置又は前記クライアント装置の通信手段のうち、いずれか少なくとも一方を示す、
請求項５に記載の不正通信検知装置。
【請求項７】
クライアント装置との間の通信状態値の推移を計測する計測手段、
前記通信状態値の推移パターンを記憶する推移パターン記憶手段、及び
前記推移パターンと、計測される前記通信状態値の推移と、に基づいて、前記クライアント装置における不正通信を検知する不正通信検知手段
としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は不正通信検知装置及びプログラムに関し、特にクライアント装置における不正通信を検知する技術に関する。
【背景技術】
【０００２】
従来、情報の漏洩などの脅威をもたらす、悪意のある不正なコンピュータプログラム（以下、「マルウェア」とも呼ぶ）が知られている。例えば、マルウェアがパソコンなどのクライアント装置に組み込まれてしまった場合、このクライアント装置と通信を行うサーバ装置などへ影響が及ぶ可能性がある。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Moheeb Abu Rajab, Jay Zarfoss, Fabian Monrose, Andreas Terzis, "A Multifaceted Approach to Understanding the Botnet Phenomenon"、インターネット〈URL：http://conferences.sigcomm.org/imc/2006/papers/p4-rajab.pdf〉
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の目的は、クライアント装置における不正通信を検知する不正通信検知装置及びプログラムを提供することにある。
【課題を解決するための手段】
【０００５】
請求項１に記載の発明は、クライアント装置との間の通信状態値の推移を計測する計測手段と、前記通信状態値の推移パターンを記憶する推移パターン記憶手段と、前記推移パターンと、計測される前記通信状態値の推移と、に基づいて、前記クライアント装置における不正通信を検知する不正通信検知手段と、を含む不正通信検知装置である。
【０００６】
また、請求項２に記載の発明は、前記通信状態値は、可用通信帯域幅又は使用通信帯域幅である、請求項１に記載の不正通信検知装置である。
【０００７】
また、請求項３に記載の発明は、前記不正通信検知手段は、前記推移パターンとの相関値に基づいて、計測される前記通信状態値の推移の一部を選択するとともに、該一部と前記推移パターンとの差が予め定められた条件を充足する場合に、前記クライアント装置における不正通信を検知する、請求項１又は２に記載の不正通信検知装置である。
【０００８】
また、請求項４に記載の発明は、前記推移パターン記憶手段は、前記クライアント装置におけるアプリケーションソフトウェアが外部との通信を行っていない期間における、前記通信状態値の推移パターンを記憶する、請求項１乃至３のいずれかに記載の不正通信検知装置である。
【０００９】
また、請求項５に記載の発明は、前記クライアント装置から該クライアント装置の通信環境情報を取得する取得手段をさらに含み、前記推移パターン記憶手段は、前記クライアント装置の前記通信環境情報に関連づけて前記推移パターンを記憶し、前記不正通信検知手段は、取得される前記通信環境情報に関連づけられた前記推移パターンと、計測される前記通信状態値の推移と、に基づいて、前記クライアント装置における不正通信を検知する、請求項１乃至４のいずれかに記載の不正通信検知装置である。
【００１０】
また、請求項６に記載の発明は、前記通信環境情報は、前記クライアント装置の位置又は前記クライアント装置の通信手段のうち、いずれか少なくとも一方を示す、請求項５に記載の不正通信検知装置である。
【００１１】
また、請求項７に記載の発明は、クライアント装置との間の通信状態値の推移を計測する計測手段、前記通信状態値の推移パターンを記憶する推移パターン記憶手段、及び前記推移パターンと、計測される前記通信状態値の推移と、に基づいて、前記クライアント装置における不正通信を検知する不正通信検知手段としてコンピュータを機能させるためのプログラムである。
【発明の効果】
【００１２】
上記請求項１に記載の不正通信検知装置によれば、クライアント装置における不正通信を検知することができる。
【００１３】
また、上記請求項２に記載の不正通信検知装置によれば、クライアント装置との間で計測された可用通信帯域幅又は使用通信帯域幅を用いて、クライアント装置における不正通信を検知することができる。
【００１４】
また、上記請求項３に記載の不正通信検知装置によれば、通信状態値の推移パターンとの相関値と、この推移パターンとの差とを用いて、クライアント装置における不正通信を検知することができる。
【００１５】
また、上記請求項４に記載の不正通信検知装置によれば、クライアント装置におけるアプリケーションソフトウェアが外部との通信を行っていない場合における通信状態値の推移パターンを用いて、クライアント装置における不正通信を検知することができる。
【００１６】
また、上記請求項５に記載の不正通信検知装置によれば、クライアント装置の通信眼鏡情報に関連づけられた通信状態値の推移パターンを用いて、クライアント装置における不正通信を検知することができる。
【００１７】
また、上記請求項６に記載の不正通信検知装置によれば、クライアント装置の位置又は通信手段のうち、いずれか少なくとも一方に関連づけられた通信状態値の推移パターンを用いて、クライアント装置における不正通信を検知することができる。
【００１８】
また、上記請求項７に記載の不正通信検知装置によれば、コンピュータを用いて、クライアント装置における不正通信を検知することができる。
【図面の簡単な説明】
【００１９】
【図１】検知サーバ及び周辺機器の構成の一例を示す図である。
【図２】検知サーバの機能的構成の一例を示す機能ブロック図である。
【図３Ａ】通信の状態の種類を説明する図である。
【図３Ｂ】通信の状態の種類を説明する図である。
【図４】推移パターン情報記憶部のデータ格納例を示した図である。
【図５】推移パターンとの相関値に基づく判定処理を説明する図である。
【図６】選択される通信状態値の一部と推移パターンとの差に基づく判定処理を説明する図である。
【図７】推移パターンとの差に基づく判定処理において算出されるデータの一例を示す図である。
【図８】検知サーバにおいて実行される処理の一例を示すフローチャートである
【図９】不正通信検知処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００２０】
以下に、本発明を実施するための形態（以下、実施形態と呼ぶ）の例を、図面に従って説明する。なお、本明細書の各図について、既出の図に関して前述したものと同様の要素には同一の符号を付して、詳細な説明を適宜省略することがある。
【００２１】
［１．システム構成］
図１は、実施形態に係る検知サーバ及び周辺機器の構成の一例を示す図である。本実施形態では、検知サーバ１０は、例えば、通信事業者から１又は複数の通信チャンネルを借り受けている通信事業者が所有するサーバコンピュータであり、インターネットなどのネットワーク５に接続されている。検知サーバ１０は、ネットワーク５に接続される他の機器（具体的には、クライアント装置２０など）と相互にデータの授受を行うことが可能である。
【００２２】
また、検知サーバ１０は、マイクロプロセッサ、ＲＡＭやハードディスクドライブなどの記憶媒体により構成される記憶部、通信インタフェース、ディスプレイ、スピーカなどを備える。記憶部には、不正通信検知用のプログラムが格納され、マイクロプロセッサはこの不正通信検知用のプログラムに従って各種情報処理を実行する。なお、不正通信検知用のプログラムは、例えば、光ディスク、磁気ディスク、フラッシュメモリなどのコンピュータ可読な情報記憶媒体を介して、あるいは、ネットワーク５などの通信手段を介して検知サーバ１０に供給されてもよい。
【００２３】
クライアント装置２０は、通信事業者の顧客（以下、単に顧客とも呼ぶ）が情報処理サービスを利用するために用いられるコンピュータであり、検知サーバ１０と同様に、マイクロプロセッサ、記憶部、通信インタフェース、ディスプレイ、スピーカを備える他、ＧＰＳ（Global Positioning System）情報を受信するＧＰＳ受信機などを備える。ここで、ＧＰＳ情報は、クライアント装置２０の位置の情報を示すものである。なお、以下では、クライアント装置２０は、スマートフォン、タブレットＰＣ、及び携帯電話機などのような携帯情報端末であるものとして説明を続けるが、クライアント装置２０は、デスクトップＰＣのような据置型情報端末であってもよい。また、ここでのクライアント装置２０は携帯情報端末であるため、ネットワーク５とクライアント装置２０とが無線接続されているものとして説明を続けるが、ネットワーク５とクライアント装置２０とは有線接続されていてもよい。
【００２４】
ここで、クライアント装置２０にマルウェア２１が組み込まれてしまった場合について説明する。大抵の場合、マルウェア２１は、クライアント装置２０の利用者である顧客の意図に反して、顧客に気づかれることなく勝手に組み込まれてしまうものである。なお、ここでのスパイウェアは、コンピュータウイルスや、利用者に無断で個人情報の収集及び送信を行うスパイウェア、顧客の意図に反して広告を収集し表示するアドウェアなどを含むものとする。
【００２５】
クライアント装置２０に組み込まれたマルウェア２１は、例えば、検知サーバ１０に対し、機密情報などの情報の要求を送信する（５Ｒ）。検知サーバ１０にマルウェア２１の対策が何ら講じられていない場合、要求を受信した検知サーバ１０は、ネットワーク５を介して接続されたサーバコンピュータなどの中継サーバ３０に対し、機密情報を送信することとなる（５Ｓ）。すなわち、悪意のある第三者により、中継サーバ３０を経由して検知サーバ１０に記憶された機密情報が盗み見られることとなる。なお、このようや不正通信は、マルウェア２１のみならず、例えば、悪意のある顧客や第３者がクライアント装置２０を直接操作することで行われる場合もある。
【００２６】
そこで、本実施形態に係る検知サーバ１０は、クライアント装置２０における不正通信を検知するとともに、不正通信を検知した場合、検知サーバ１０及びクライアント装置２０を介して警告を出力したり、不正通信を行ったクライアント装置２０との通信や、不正通信に応じた情報処理の実行を制限したりする。
【００２７】
［３．機能ブロック］
次に、図２に示した検知サーバ１０の機能的構成の一例を示す機能ブロック図に基づき、検知サーバ１０に備えられた機能の一例について説明する。同図に示すように、検知サーバ１０は、機能的には、通信部１１と、通信状態値計測部１２と、通信環境情報取得部１３と、推移パターン取得部１４と、不正通信検知部１５と、警告部１６と、制限部１７と、推移パターン情報記憶部１９とを含む。
【００２８】
通信部１１は、ネットワーク５に接続された、クライアント装置２０などの機器との通信を実行し、クライアント装置２０とのデータの授受を実現する。通信部１１は、例えば、検知サーバ１０に備えられた通信インタフェースを含んで構成されることとしてよい。
【００２９】
通信状態値計測部１２は、クライアント装置２０との間の通信状態値の推移を計測する。本実施形態では、通信状態値計測部１２は、定期的に（例えば、１秒間に１回）通信状態値を計測するものとし、検知サーバ１０の記憶部は、最後に計測された時点から過去の一定期間に計測される通信状態値の推移を示す数値列を一時的に記憶するものとする。ここで、通信状態値とは、検知サーバ１０とクライアント装置２０との間の通信状態を示す値であり、本実施形態では、データの伝送経路において利用可能な帯域幅を示す可用通信帯域幅（bps｜bps：bit/second）（以下、単に可用帯域幅とも呼ぶ）を用いることとする。通信状態値計測部１２は、例えば、ｐａｔｈＣｈｉｒｐやｐａｔｈｌｏａｄなどの公知の計測手法を用いて可用帯域幅を計測することとしてよい。
【００３０】
なお、ある期間で計測される通信状態値の推移を示す数値列は、クライアント装置２０の通信環境や、クライアント装置２０におけるソフトウェアの実行状態に応じて固有の情報となるため、上記計測された通信状態値の推移を示す数値列を「ネットワーク指紋」と呼ぶこともある。
【００３１】
また、本実施形態では、計測される通信状態値の推移を示す数値列に応じて、通信の状態を幾つかの種類に区分することとする。より具体的には、図３Ａ及び図３Ｂに示した通信の状態の種類を説明する図に基づいて、通信の状態を、待機中の状態（５０−１）と、データ通信中の状態（５０−２）と、不正通信中の状態（５０−３）と、の３種類に区分することとする。
【００３２】
まず、待機中の状態（５０−１）とは、クライアント装置２０におけるアプリケーションソフトウェアが外部との通信を行っていない状態である。ここで、アプリケーションソフトウェアとは、クライアント装置２０の利用者により直接的に実行されるソフトウェアであり、例えば、ストリーミングによる動画再生ソフト、ウェブブラウザ、ネットワークゲームなどである。すなわち、待機中の状態（５０−１）では、アプリケーションソフトウェアとは異なる他のソフトウェア（例えば、システムソフトウェア）により、クライアント装置２０の稼働や使用そのものをサポートするための最低限必要の通信のみが行われる。この場合、可用帯域幅は、後述するデータ通信中の状態（５０−２）に比べ、比較的大きい値を示すものとなる。
【００３３】
次に、データ通信中の状態（５０−２）とは、検知サーバ１０とクライアント装置２０との間で比較的盛んにデータ通信が行われている状態であり、例えば、クライアント装置２０が検知サーバ１０へ向けて、データをアップロードしている最中であることを示す。この場合、アップロード中のデータを構成するパケットにより伝送経路が圧迫され、他の通信が阻害されることとなるため、可用帯域幅は、待機中の状態（５０−１）や後述する不正通信中の状態（５０−３）に比べ、比較的小さい値を示すものとなる。
【００３４】
最後に、不正通信中の状態（５０−３）とは、クライアント装置２０において不正通信が行われている状態であり、例えば、アプリケーションソフトウェアが外部との通信を行っていない状態であることを示す。大抵の場合、不正通信は、顧客や通信事業者に知られないように行われるため、比較的少量のパケットが検知サーバ１０に送信されるものとなる。そうすると、不正通信中の状態（５０−３）では、各時間の可用帯域幅は、待機中の状態（５０−１）に比較的近いものとなるが、ある一部の期間（例えば、図３Ｂの点線で囲まれた部分）において可用帯域幅の減少が確認される点で、待機中の状態（５０−１）とは相違するものとなる。
【００３５】
通信環境情報取得部１３は、クライアント装置２０から、このクライアント装置２０の通信環境情報を取得する。ここで、通信環境情報は、クライアント装置２０の位置又はクライアント装置２０の通信手段のうち、いずれか少なくとも一方を示すものである。
【００３６】
より具体的には、通信環境情報取得部１３は、クライアント装置２０にＧＰＳ受信機が受信したＧＰＳ情報を取得することによって、クライアント装置２０の位置情報を取得する。また、通信環境情報取得部１３は、クライアント装置２０の通信手段を示す情報として、例えば、「３．９Ｇ」、「３Ｇ」などの通信規格を示す情報を取得する。通信環境情報取得部１３は、例えば、クライアント装置２０との通信内容に含まれる情報を、通信環境情報として取得することとしてよい。
【００３７】
推移パターン情報記憶部１９は、通信状態値の推移パターンを記憶する。ここで、通信状態値の推移パターンとは、通信状態値の推移を表した情報であり、より具体的には、連続する複数の計測時間のそれぞれにおける通信状態値を示す数値列である。
【００３８】
本実施形態では、推移パターン情報記憶部１９は、クライアント装置２０におけるアプリケーションソフトウェアが外部との通信を行っていない期間における、通信状態値の推移パターンを記憶する。すなわち、推移パターン情報記憶部１９は、待機中の状態（５０−１）における通信状態値の推移パターンを記憶する。
【００３９】
図４は、推移パターン情報記憶部１９のデータ格納例を示した図である。同図に示すように、推移パターン情報記憶部１９は、例えば、クライアント装置２０を識別するための装置ＩＤと、位置情報と、通信手段を示す通信規格に関連づけて、推移パターンとを記憶する。なお、装置ＩＤは、クライアント装置２０を識別する情報であればよく、例えば、ＩＰアドレスであってもよい。
【００４０】
本実施形態では、推移パターンは、計測時間｛Ｔ（０），Ｔ（１），・・・Ｔ（ｎ）｝ごとの通信状態値として、可用帯域幅が格納されているものとする。なお、推移パターンは、クライアント装置２０にマルウェア２１が組み込まれていないことが明らかである場合であって、かつ、クライアント装置２０が待機中の状態（５０−１）である場合に、実際に計測された通信状態値が格納されるものとしてもよい。
【００４１】
推移パターン取得部１４は、推移パターン情報記憶部１９に記憶された推移パターンを取得する。より具体的には、推移パターン取得部１４は、通信相手のクライアント装置２０を特定する装置ＩＤと、通信環境情報取得部１３により取得された通信環境情報と、に関連づけられた推移パターンを取得する。ここでの通信環境情報は、位置情報と通信手段とのうち少なくとも一方を示すものである。
【００４２】
例えば、推移パターン情報記憶部１９に図４に示した推移パターンが事前に格納されている場合であって、かつ、装置ＩＤ「Ｄ０００１」のクライアント装置２０が「地点ｂ」において検知サーバ１０と通信を行った場合、推移パターン「ＢＷｂ（Ｔ（０））,ＢＷｂ（Ｔ（１））,・・・ＢＷｂ（Ｔ（ｎ））」が取得されることとなる。また、上記クライアント装置２０が通信規格「３Ｇ」で通信を行った場合も、上記と同様に、推移パターン「ＢＷｂ（Ｔ（０））,ＢＷｂ（Ｔ（１））,・・・ＢＷｂ（Ｔ（ｎ））」が取得されることとなる。
【００４３】
不正通信検知部１５は、通信環境情報取得部１３により取得される通信環境情報に関連づけられた推移パターンと、計測される前記通信状態値の推移と、に基づいて、クライアント装置２０における不正通信を検知する。すなわち、不正通信検知部１５は、推移パターン取得部１４により取得された推移パターンに基づいて、計測される通信状態値の推移が不正通信中の状態（５０−３）であることを検知する。
【００４４】
より具体的には、不正通信検知部１５は、推移パターンとの相関値に基づいて、計測される通信状態値の推移の一部を選択するとともに、選択される通信状態値の一部と推移パターンとの差が予め定められた条件を充足する場合に、クライアント装置２０における不正通信を検知する。以下、不正通信検知部１５において実行される処理の一例を、図５〜図７に基づいて説明する。
【００４５】
図５は、推移パターンとの相関値に基づく判定処理を説明する図である。同図に示すように、不正通信検知部１５は、通信状態値計測部１２により計測時間ごとに計測された通信状態値に対し、一定期間（例えば、１秒間）ずつ時間をずらしながら、推移パターンとの相関値を算出する。ここで、相関値は、２つの比較対象の類似度を示すものであり、例えば、公知の正規化相関法を用いて算出されることとしてよい。すなわち、図５に示す判定処理においては、計測された通信状態値の推移のうち、推移パターンと類似すると判定された一部が選択されることとなる。
【００４６】
図５に示すように、不正通信検知部１５は、例えば、計測期間ｔ（０）〜ｔ（ｚ）にかけて計測された通信状態値の推移１００に対し検知処理を実行する場合、計測期間ｔ（０）〜ｔ（ｎ）（ｔ（０）＜ｔ（ｎ）＜ｔ（ｚ））に計測された通信状態値と、計測時間｛ｔ（０），ｔ（１），・・・ｔ（ｎ）｝のそれぞれに対応づけた推移パターン（２００−１）の通信状態値とを比較するによって、相関値Ｒを算出する。
【００４７】
そして、不正通信検知部１５は、算出された相関値Ｒが予め定められた閾値の範囲内に含まれるか否かを判定する。相関値Ｒが閾値の範囲内に含まれない場合（すなわち、計測された通信状態値と推移パターンとが非類似と判定される場合）、不正通信検知部１５は、Δｔ秒間（例えば、１秒間）時間をずらしたｔ（１）〜ｔ（ｎ＋１）の計測期間で計測された通信状態値と、計測時間｛ｔ（１），ｔ（２）・・・ｔ（ｎ），ｔ（ｎ＋１）｝のそれぞれに対応づけた推移パターン（２００−２）の通信状態値とを比較することによって、相関値Ｒを算出し、この相関値Ｒが予め定められた閾値の範囲内に含まれるか否かを再度判定する。
【００４８】
算出された相関値Ｒが予め定められた閾値の範囲内に含まれる場合（すなわち、計測された通信状態値と推移パターンとが類似と判定される場合）、不正通信検知部１５は、この相関値Ｒを算出した際の計測された通信状態値の一部（図５に示した例においては、計測期間ｔ（ｘ）〜ｔ（ｘ＋ｎ）に計測された通信状態値）を選択する。そうすると、不正通信検知部１５は、図６に示した判定処理を更に実行する。
【００４９】
図６は、選択される通信状態値の一部と推移パターンとの差に基づく判定処理を説明する図である。同図に示すように、不正通信検知部１５は、選択された通信状態値の一部（すなわち、計測期間ｔ（ｘ）〜ｔ（ｘ＋ｎ）に計測された通信状態値）（１００−ｘ）と、計測時間｛ｔ（ｘ），ｔ（ｘ＋１）・・・ｔ（ｘ＋ｎ）｝のそれぞれに対応づけた推移パターン（２００−ｘ）との、各時間における通信状態値の差の累計を算出する。ここでの判定処理においては、計測された通信状態値の推移が、待機中の状態（５０−１）を示す推移パターンと比べ、相違するものであるか否かが判定されることとなる。
【００５０】
図７は、推移パターンとの差に基づく判定処理において算出されるデータの一例を示す図である。同図に示すように、本実施形態では、不正通信検出部１５は、計測された可用帯域幅（ＢＷ（ｔ））と、遷移パターンにおける可用帯域幅（ＢＷｐ（Ｔ））との差（ＢＷ（ｔ）−ＢＷｐ（Ｔ））、及び、差の累計（Σα）を算出することにより、クライアント装置２０における不正通信を検知する。
【００５１】
ところで、図３Ａ及び図３Ｂに示したように、クライアント装置２０において不正通信が行われている場合の通信の状態（５０−３）は、待機中の状態（５０−１）に近いものとなるが、一部の期間で可用帯域幅の減少が認められるものとなる。そこで、本実施形態に係る不正通信検出部１５は、図７に示した可用帯域幅の差（ＢＷ（ｔ）−ＢＷｐ（Ｔ））を求める際、不正通信中の状態（５０−３）ではないものを評価の対象外とするために、更に以下の規則に従うこととする。
・ＢＷ（ｔ）−ＢＷｐ（Ｔ）≧０の場合、ＢＷｐ（Ｔ）−ＢＷ（ｔ）＝０とする。
・ＢＷ（ｔ）−ＢＷｐ（Ｔ）＜０の場合、ＢＷｐ（Ｔ）−ＢＷ（ｔ）は算出された値とする。
【００５２】
ここで、不正通信検知部１５は、計測される通信状態値の推移の一部と推移パターンとの差が予め定められた条件を充足する場合に、クライアント装置２０における不正通信を検知する。本実施形態では、不正通信検知部１５は、通信状態値の差の累計（Σα）を算出し、この累計が不正通信中の状態（５０−３）を示す閾値の範囲内に含まれる場合、クライアント装置２０において不正通信が行われたものと検知する。また、これに限らず、不正通信検知部１５は、例えば、複数の計測時間で予め定められた回数以上連続して、可用帯域幅の差（ＢＷｐ（Ｔ）−ＢＷ（ｔ））が不正通信中の状態（５０−３）を示す閾値の範囲内となっている場合に、クライアント装置２０における不正通信を検知することとしてもよいし、この条件に加えて、更に複数の計測時間で連続して可用帯域幅の差が待機中の状態（５０−１）を示す閾値の範囲内となっている場合に、クライアント装置２０における不正通信を検知することとしてもよい。
【００５３】
なお、不正通信検知部１５は、最新の計測時間であるｔ（ｚ）までの検知処理が終了するか、クライアント装置２０において不正通信が行われたと検知するまで、上記検知処理を繰り返す。なお、不正通信検知部１５は、予め定められた計測期間の通信状態値が計測された場合に、上記検知処理を実行するようにしてもよいし、新たに通信状態値が計測される度に上記検知処理を実行するようにしてもよい。
【００５４】
警告部１６は、不正通信検知部１５によりクライアント装置２０から不正通信が検知された場合、警告の出力を指示する。より具体的には、警告部１６は、検知サーバ１０のディスプレイに警告画面の出力を指示したり、検知サーバ１０のスピーカに警告を伝えるためのアラート音の出力を指示したりする。また、警告部１６は、クライアント装置２０に警告を出力するための指示を送信することにより、クライアント装置２０のディスプレイやスピーカを介して、クライアント装置２０の利用者である顧客に対し警告が出力されるようにしてもよい。
【００５５】
制限部１７は、不正通信検知部１５によりクライアント装置２０から不正通信が検知された場合、上記クライアント装置２０との通信や、上記クライアント装置２０からの要求に応じた情報処理の実行を制限する。制限部１７は、クライアント装置２０からの要求が不正通信によるものであった場合、この要求に応じた情報処理が実行されること（例えば、機密情報が中継サーバ３０に送信されること）を防止する。
【００５６】
［４．フローチャート］
以下では、本実施形態に係る検知サーバ１０において実行される処理の一例を、図８及び図９に示したフローチャートに基づいて説明する。
【００５７】
図８は、検知サーバ１０において実行される処理の一例を示すフローチャートである。同図に示すように、通信状態値計測部１２は、クライアント装置２０との間の通信状態値の推移（例えば、一定時間ごとの可用帯域幅）を計測し（ステップＳ１０１）、通信環境情報取得部１３は、このクライアント装置２０の位置又は通信規格などの通信手段のうちの少なくとも一方を示す、通信環境情報を取得する（ステップＳ１０２）。
【００５８】
推移パターン取得部１４は、推移パターン情報記憶部１９に記憶された中から、通信相手のクライアント装置２０を識別する装置ＩＤと、ステップＳ１０２において取得された通信環境情報と、に関連づけられた推移パターンを取得し（ステップＳ１０３）、不正通信検知部１５は、不正通信検知処理を実行する（ステップＳ１０４）。以下、ステップＳ１０４で実行される不正通信検知処理の詳細について、図９のフローチャートに基づき説明する。
【００５９】
図９は、不正通信検知処理の一例を示すフローチャートである。同図に示すように、不正通信検知部１５は、変数ｉに１を代入し（ステップＳ２０１）、通信状態値計測部１２により計測された通信状態値の推移のうち、計測期間ｔ（ｉ）〜ｔ（ｉ＋ｎ）に対応する通信状態値が計測されているか確認する（ステップＳ２０２）。なお、本実施形態では、「ｎ」は推移パターンに含まれる通信状態値の数Ｎに対応しており、１≦ｎ≦（Ｎ−１）であることとする。
【００６０】
計測期間ｔ（ｉ）〜ｔ（ｉ＋ｎ）に対応する通信状態値が計測されている場合（ステップＳ２０２：Ｙ）不正通信検知部１５は、計測期間ｔ（ｉ）〜ｔ（ｉ＋ｎ）の通信状態値を選択し（ステップＳ２０３）、不正通信検知部１５は、選択された通信状態値と、ステップＳ１０３において取得された推移パターンとを比較することとによって、相関値Ｒを算出する（ステップＳ２０４）。不正通信検知部１５は、算出された相関値Ｒが、予め定められた閾値の範囲内に含まれるか確認する（ステップＳ２０５）。すなわち、不正通信検知部１５は、算出された相関値Ｒに基づいて、計測期間における計測された通信状態値と、推移パターンとが類似するか否かを判定する。
【００６１】
相関値Ｒが、予め定められた閾値の範囲内に含まれる場合（すなわち、すなわち、計測された通信状態値と推移パターンとが類似と判定される場合）（ステップＳ２０５：Ｙ）、不正通信検知部１５は、ステップＳ２０３において選択された通信状態値と、推移パターンにより示される通信状態値との差の累計Σαを算出し（ステップＳ２０６）、算出された差の累計Σαが閾値の範囲内に含まれるか否かを判定する。すなわち、不正通信検知部１５は、計測された通信状態値の推移が、待機中の状態（５０−１）を示す推移パターンと相違し、かつ、不正通信中の状態（５０−３）を示すものであるか否かを判定する。
【００６２】
算出された差の累計Σαが、予め定められた閾値の範囲内に含まれない場合（計測された通信状態値の推移が、推移パターンと相違しないと判定される場合）（ステップＳ２０７）、不正通信検知部１５は、クライアント装置２０における不正通信を検知したと判定し（ステップＳ２０８）、不正通信検知処理を終了する。
【００６３】
なお、相関値Ｒが閾値の範囲内に含まれない場合（ステップＳ２０５：Ｎ）、又は、差の累計Σαが閾値の範囲内に含まれない場合（ステップＳ２０７：Ｎ）、不正通信検知部１５は、変数ｉに１を加算し（すなわち、計測期間を一定時間ずらし）（ステップＳ２０９）、再度、ステップＳ２０２〜Ｓ２０７の判定処理を実行する。不正通信検知部１５は、計測時間ｔ（ｉ＋ｎ）に対応する通信状態値を計測していないことが確認されるまで（ステップＳ２０２：Ｎ）、又は、ステップＳ２０３において選択された通信状態値が、ステップＳ２０５及びステップＳ２０７の条件を充足することが確認されるまで、上記判定処理を繰り返した後、不正通信検知処理を終了する。ここで、図８に示したフローチャートに戻り説明を続ける。
【００６４】
図８に戻り、不正通信検知処理によりクライアント装置２０の不正通信を検知したと判定される場合（ステップＳ１０５：Ｙ）、警告部１６は、警告の出力を指示する（ステップＳ１０６）。警告部１６は、検知サーバ１０のディスプレイやスピーカにより、又は、クライアント装置２０のディスプレイやスピーカにより、警告出力が行われるよう指示を行う。
【００６５】
また、不正通信検知処理によりクライアント装置２０の不正通信を検知した場合（ステップＳ１０５：Ｙ）、制限部１７は、上記クライアント装置２０との通信や、上記クライアント装置２０からの要求に応じた情報処理が実行されることの制限を開始する（ステップＳ１０７）。なお、クライアント装置２０の不正通信を検知しない場合（ステップＳ１０５：Ｎ）、検知サーバ１０は、通信状態値の推移の計測から、不正通信検知処理までの一連の処理（ステップＳ１０１〜Ｓ１０４）を繰り返し、クライアント装置２０における不正通信の検出処理を続行する。
【００６６】
以上説明した検知サーバ１０では、通信状態値計測部１２により計測された通信状態値の推移と、推移パターン情報記憶部１９に記憶された推移パターンとを比較することにより、クライアント装置２０における不正通信を検知する。
【００６７】
［５．変形例］
以上、本発明の実施形態について説明したが、本発明は上記実施形態に限定されるものではない。以下、本発明の実施形態を変形した一例（変形例）について説明する。
【００６８】
（１）実施形態においては、通信状態値は可用帯域幅であることとして説明したが、通信状態値は、例えば、計測された可用帯域幅に基づいて推定される使用中の帯域幅である使用通信帯域幅（以下、単に使用帯域幅とも呼ぶ）であってもよい。使用帯域幅は、例えば、次の式により算出される。
・使用帯域幅＝（仕様上又は過去の実績で）最大の可用帯域幅  −  計測された可用帯域幅
【００６９】
この場合、通信状態値計測部１２は、計測される可用帯域幅に基づいて使用帯域幅の推移を計測し、推移パターン記憶部１９は、推移パターンとして、計測時間ごとの使用帯域幅の推移を記憶する。
【００７０】
また、この場合、不正通信検出部１５は、計測される使用帯域幅の推移と推移パターンとの相関値、及び、計測される使用帯域幅の推移の一部と推移パターンとの差に基づいて、クライアント装置２０における不正通信を検出する。なお、最大の可用帯域幅を固定値とする場合、使用帯域幅について算出される相関値、及び、推移パターンとの差は、実施形態で説明した可用帯域幅について算出される相関値、及び、推移パターンとの差と同義であるため、不正通信検出部１５は、実施形態と同様の方法により、使用帯域幅に基づいてクライアント装置２０における不正通信を検出することとしてよい。
【００７１】
（２）また、通信状態値は、例えば、検知サーバ１０が実際に受信したデータ量、パケットロス率、ラウンドトリップタイムなどを用いることとしてもよい。
【００７２】
（３）実施形態においては、推移パターン情報記憶部１９が、クライアント装置２０におけるアプリケーションソフトウェアが外部との通信を行っていない期間における、通信状態値の推移パターン（例えば、図３Ａに示した、待機中の状態（５０−１）での推移パターン）を記憶する場合について説明したが、推移パターン情報記憶部１９は、クライアント装置２０が特定の不正通信を行っている場合の通信状態値の推移パターン（例えば、図３Ｂに示した、不正通信中の状態（５０−３）での推移パターン）を記憶することとしてもよい。この場合、不正通信検知部１５は、計測された通信状態値と、推移パターン情報記憶部１９から取得した推移パターンとが類似する場合に、クライアント装置２０において不正通信が行われたことを検知するようにしてもよい。
【００７３】
より具体的には、不正通信検知部１５は、推移パターン情報記憶部１９に記憶された、不正通信中の状態（５０−３）を示す推移パターンと、計測された通信状態値の推移との間で算出された相関値が予め定められた閾値の範囲内である場合に、クライアント装置２０における不正通信を検知することとしてよい。
【００７４】
（４）また、不正通信検知部１５は、推移パターンと、計測された通信状態値の推移との差が予め定められた条件を充足する場合に、クライアント装置２０における不正通信を検知することとしてもよく、例えば、計測時間ごとに算出された通信状態値の差の累計（Σα）が不正通信中の状態（５０−３）を示す閾値の範囲内である場合に、クライアント装置２０における不正通信を検知することとしてもよいし、また例えば、複数の計測時間で連続して通信状態値の差が不正通信中の状態（５０−３）を示す閾値の範囲内となっている場合に、クライアント装置２０における不正通信を検知することとしてもよい。
【００７５】
（５）また、実施形態では、検知サーバ１０がクライアント装置２０における不正通信を検知する場合について説明したが、検知サーバ１０は、自身の不正通信を検知することとしてもよい。例えば、検知サーバ１０の通信状態値計測部１２が、クライアント装置２０などのネットワーク５に接続された他の装置との通信状態値の推移を計測し、不正通信検知部１５が、計測された通信状態値の推移を、予め記憶された推移パターンと比較することにより、当該検知サーバ１０の不正通信を検知することとしてもよい。
【符号の説明】
【００７６】
５  ネットワーク、１０  検知サーバ、１１  通信部、１２  通信状態値計測部、１３  通信環境情報取得部、１４  推移パターン取得部、１５  不正通信検知部、１６  警告部、１７  制限部、１９  推移パターン情報記憶部、２０  クライアント装置、２１  マルウェア、３０  中継サーバ、５０−１  待機中の状態、５０−２  データ通信中の状態、５０−３  不正通信中の状態、１００  通信状態値の推移、２００  推移パターン。
【図１】
2015204478.tif 000003
【図２】
2015204478.tif 000004
【図３Ａ】
2015204478.tif 000005
【図３Ｂ】
2015204478.tif 000006
【図４】
2015204478.tif 000007
【図５】
2015204478.tif 000008
【図６】
2015204478.tif 000009
【図７】
2015204478.tif 000010
【図８】
2015204478.tif 000011
【図９】
2015204478.tif 000012