JP6207784B1 - 中継装置、中継方法およびプログラム - Google Patents

中継装置、中継方法およびプログラム Download PDF

Info

Publication number
JP6207784B1
JP6207784B1 JP2017061352A JP2017061352A JP6207784B1 JP 6207784 B1 JP6207784 B1 JP 6207784B1 JP 2017061352 A JP2017061352 A JP 2017061352A JP 2017061352 A JP2017061352 A JP 2017061352A JP 6207784 B1 JP6207784 B1 JP 6207784B1
Authority
JP
Japan
Prior art keywords
communication
state
evaluation value
information
terminal device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017061352A
Other languages
English (en)
Other versions
JP2018163582A (ja
Inventor
高行 内田
高行 内田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Lac Co Ltd
Original Assignee
Lac Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Lac Co Ltd filed Critical Lac Co Ltd
Priority to JP2017061352A priority Critical patent/JP6207784B1/ja
Application granted granted Critical
Publication of JP6207784B1 publication Critical patent/JP6207784B1/ja
Publication of JP2018163582A publication Critical patent/JP2018163582A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)

Abstract

【課題】端末装置がマルウェアに感染したことを精度良く判定することができる中継装置などを提供する。【解決手段】端末装置とネットワークとの間に設けられる中継装置であって、前記端末装置から前記ネットワークに対して送信されるHTTPのリクエスト信号に基づく第1の評価値と、前記HTTPのリクエスト信号に応じて前記ネットワークから前記端末装置に対して送信されるHTTPのレスポンス信号に基づく第2の評価値と、前記端末装置により行われた過去の通信に関する状態および当該状態が発生した後における前記HTTPのリクエスト信号あるいは前記HTTPのレスポンス信号に基づく第3の評価値とを合計した結果である合計値に基づいて判定を行う評価値判定部を備える、中継装置。【選択図】図1

Description

本発明は、中継装置、中継方法およびプログラムに関する。
端末装置とネットワーク上のサーバ装置との間の通信を中継装置により中継することが行われている。
例えば、中継装置とサーバ装置とのそれぞれがネットワークに接続され、端末装置が中継装置と接続される。
一例として、特許文献1には、ユーザ端末とファイルサーバとの通信を中継するネットワーク機器において、ファイルサーバへの不正アクセスを検出する技術が開示されている(特許文献1の段落0016参照。)。
特開2016−157311号公報
従来では、端末装置が悪意のあるソフトウェア(マルウェア)に感染したことを判定する技術について、さらなる開発が要求されていた。
本発明の実施形態は、このような事情に鑑み、端末装置がマルウェアに感染したことを精度良く判定することができる中継装置、中継方法およびプログラムを提供する。
本発明の実施形態に係る中継装置は、端末装置とネットワークとの間に設けられる中継装置であって、前記端末装置から前記ネットワークに対して送信されるHTTPのリクエスト信号に基づく第1の評価値と、前記HTTPのリクエスト信号に応じて前記ネットワークから前記端末装置に対して送信されるHTTPのレスポンス信号に基づく第2の評価値と、前記端末装置により行われた過去の通信に関する状態および当該状態が発生した後における前記HTTPのリクエスト信号あるいは前記HTTPのレスポンス信号に基づく第3の評価値として、点数を計数し、計数されたこれらの点数を合計して合計値を計数し、また、前記合計値を、前記リクエスト信号および前記レスポンス信号の通信を単位として、当該単位ごとにリセットする評価値計数部と、前記合計値が所定の閾値を超えたか否かに基づいて、前記端末装置についてマルウェアの感染に関する判定を行う評価値判定部と、を備える。
発明の一態様に係る中継装置において、前記端末装置により行われた過去の通信に関する状態は、当該状態が発生した後に、所定の期間が経過した後に、リセットされる、構成とされてもよい。
本発明の一態様に係る中継装置において、前記第1の評価値は、前記リクエスト信号のヘッダとボディとのそれぞれについて求められ、前記第2の評価値は、前記レスポンス信号のヘッダとボディとのそれぞれについて求められる、構成とされてもよい。
本発明の一態様に係る中継装置において、前記評価値判定部により行われた判定の結果に基づいて前記端末装置に関する通信の制御を行う通信制御部を備える、構成とされてもよい。
本発明の実施形態に係る中継方法は、端末装置とネットワークとの間に設けられる中継装置により行われる中継方法であって、前記中継装置は、前記端末装置から前記ネットワークに対して送信されるHTTPのリクエスト信号に基づく第1の評価値と、前記HTTPのリクエスト信号に応じて前記ネットワークから前記端末装置に対して送信されるHTTPのレスポンス信号に基づく第2の評価値と、前記端末装置により行われた過去の通信に関する状態および当該状態が発生した後における前記HTTPのリクエスト信号あるいは前記HTTPのレスポンス信号に基づく第3の評価値として、点数を計数し、計数されたこれらの点数を合計して合計値を計数し、また、前記合計値を、前記リクエスト信号および前記レスポンス信号の通信を単位として、当該単位ごとにリセットし、前記中継装置は、前記合計値が所定の閾値を超えたか否かに基づいて、前記端末装置についてマルウェアの感染に関する判定を行う
本発明の実施形態に係るプログラムは、端末装置とネットワークとの間に設けられる中継装置を構成するコンピュータに、前記端末装置から前記ネットワークに対して送信されるHTTPのリクエスト信号に基づく第1の評価値と、前記HTTPのリクエスト信号に応じて前記ネットワークから前記端末装置に対して送信されるHTTPのレスポンス信号に基づく第2の評価値と、前記端末装置により行われた過去の通信に関する状態および当該状態が発生した後における前記HTTPのリクエスト信号あるいは前記HTTPのレスポンス信号に基づく第3の評価値として、点数を計数し、計数されたこれらの点数を合計して合計値を計数し、また、前記合計値を、前記リクエスト信号および前記レスポンス信号の通信を単位として、当該単位ごとにリセットする機能前記合計値が所定の閾値を超えたか否かに基づいて、前記端末装置についてマルウェアの感染に関する判定を行う機能と、を実現させるためのプログラムである。
上記した中継装置、中継方法およびプログラムによれば、端末装置がマルウェアに感染したことを精度良く判定することができる。
本発明の実施形態に係る通信システムの概略的な構成例を示す図である。 本発明の実施形態に係る中継装置の概略的な構成例を示す図である。 本発明の実施形態に係るリクエスト信号に関する条件の一例を示す図である。 本発明の実施形態に係るレスポンス信号に関する条件の一例を示す図である。 本発明の実施形態に係る状態と信号に関する条件の一例を示す図である。 本発明の実施形態に係る状態の判定に関する条件の一例を示す図である。 本発明の実施形態に係る通信システムにおいて行われる通信の一例を示す図である。 本発明の実施形態に係る中継装置において行われる処理の手順の一例を示すフローチャートである。 本発明の実施形態に係る中継装置において行われる処理の手順の一例を示すフローチャートである。 本発明の実施形態に係る中継装置において行われる処理の手順の一例を示すフローチャートである。 本発明の実施形態に係る中継装置において行われる処理の手順の一例を示すフローチャートである。
本発明の実施形態について図面を参照して詳細に説明する。
[通信システム]
図1は、本発明の実施形態に係る通信システム1の概略的な構成例を示す図である。
通信システム1は、n(nは2以上の任意の値)個の端末装置11−1〜11−nと、中継装置12と、ネットワーク21と、m(mは2以上の任意の値)個のサーバ装置13−1〜13−mを備える。
ここで、図1の例では、1個の中継装置12に複数の端末装置11−1〜11−nが接続される場合を示すが、他の構成例として、1個の中継装置12に1個の端末装置(例えば、端末装置11−1)が接続されていてもよい。
また、図1の例では、ネットワーク21に複数のサーバ装置13−1〜13−mが接続される場合を示すが、他の構成例として、ネットワーク21に1個のサーバ装置(例えば、サーバ装置13−1)が接続されていてもよい。
本実施形態では、端末装置11−1〜11−nとサーバ装置13−1〜13−mとの間の通信を中継装置12が中継する。
一例として、端末装置11−1とサーバ装置13−1との通信では、端末装置11−1からサーバ装置13−1に宛てて送信された信号を中継装置12が端末装置11−1から受信した後にネットワーク21を介してサーバ装置13−1に送信し、また、サーバ装置13−1から端末装置11−1に宛ててネットワーク21に送信された信号を中継装置12がサーバ装置13−1から受信した後に端末装置11−1に送信する。
ここで、それぞれの端末装置11−1〜11−nは、通信を行う任意の装置であってもよく、例えば、企業または施設などに設置されたコンピュータであってもよい。また、それぞれの端末装置11−1〜11−nは、例えば、一定の位置に固定される据え置き型の装置であってもよく、あるいは、人により持ち運び可能な携帯型の装置であってもよい。
本実施形態では、それぞれの端末装置11−1〜11−nは、クライアント装置に相当する。
中継装置12は、通信の中継を行う任意の装置であってもよく、例えば、ゲートウェイ(GW)の機能を有する。ゲートウェイは、例えば、多数のコンピュータとインターネットとの間に設置され、Web通信を監視して、インターネットから当該コンピュータに対して悪意のあるソフトウェアなどが入り込まないようにする。
それぞれのサーバ装置13−1〜13−mは、通信を行う任意の装置であってもよく、例えば、所定のサービスを提供するコンピュータであってもよい。
ネットワーク21は、任意のネットワークであってもよく、例えば、インターネットであってもよく、あるいは、一部にインターネットを含んでもよい。
なお、ネットワーク21としては、例えば、有線のネットワークであってもよく、無線のネットワークであってもよく、あるいは、有線と無線の両方を含むネットワークであってもよい。
また、それぞれの端末装置11−1〜11−nと中継装置12との通信としては、例えば、有線の通信が用いられてもよく、無線の通信が用いられてもよく、あるいは、有線と無線の両方を含む通信が用いられてもよい。
また、端末装置11−1〜11−nと、中継装置12と、サーバ装置13−1〜13−mと、ネットワーク21の配置(接続関係)としては、任意の配置が用いられてもよい。
また、端末装置11−1〜11−nあるいはサーバ装置13−1〜13−mのように、複数備えられる装置は、例えば、それぞれの装置に割り当てられた識別情報を用いて識別される。当該識別情報としては、任意の情報が用いられてもよく、例えば、アドレスの情報が用いられてもよい。
[中継装置]
図2は、本発明の実施形態に係る中継装置12の概略的な構成例を示す図である。
中継装置12は、入力部111と、出力部112と、記憶部113と、通信部114と、制御部115を備える。
制御部115は、通信情報取得部131と、通信条件情報取得部132と、状態情報取得部133と、通信情報判定部134と、評価値計数部135と、評価条件情報取得部136と、評価値判定部137と、状態判定条件情報取得部138と、状態判定部139と、通信制御部140を備える。
入力部111は、外部から情報を入力する。入力部111は、例えば、ユーザ(人)により行われる操作を受け付ける操作部を有し、当該操作部により受け付けられた操作に応じた情報を入力する。入力部111は、例えば、外部の装置(例えば、記録媒体など)と接続されて当該外部の装置から出力される情報を入力する。
出力部112は、情報を出力する。出力部112は、例えば、画面を有しており、情報を画面に表示(出力)する。出力部112は、例えば、外部の装置(例えば、記録媒体など)と接続されて当該外部の装置に情報を出力する。
記憶部113は、情報を記憶する。
通信部114は、情報を通信する。本実施形態では、通信部114は、それぞれの端末装置11−1〜11−nとの間で信号を通信することで、当該信号に含まれる情報を通信し、また、それぞれのサーバ装置13−1〜13−mとの間で信号を通信することで、当該信号に含まれる情報を通信する。
制御部115は、中継装置12における各種の制御を行う。
本実施形態では、記憶部113は、所定の制御プログラムおよびそのパラメーターの情報を記憶する。また、制御部115は、CPU(Central Processing Unit)を用いて構成される。そして、制御部115では、CPUが記憶部113に記憶された制御プログラムを、記憶部113に記憶されたパラメーターを使用して実行することで、各種の制御を行う。
なお、中継装置12について、図2に示した各処理部111〜115を備える構成は一例であり、他の構成が用いられてもよい。例えば、各処理部111〜115の機能の区分は、説明の便宜上のものであり、必ずしも図2に示した構成に限定されない。
制御部115の機能について説明する。
通信情報取得部131は、通信部114により行われる通信に関する情報(通信情報)を取得する。通信情報取得部131は、例えば、通信部114により行われる通信を監視することで、当該通信情報を取得する。当該通信情報としては、例えば、通信される信号の情報が用いられてもよく、この場合、例えば、送信元においてもともと設けられていない信号部分の情報は通信情報取得部131により取得されない。
通信条件情報取得部132は、通信に関する条件(通信条件)の情報を取得する。本実施形態では、当該通信条件の情報(通信条件情報)が記憶部113に記憶されており、通信条件情報取得部132は記憶部113に記憶された通信条件情報を取得する。
状態情報取得部133は、過去の通信に関する状態(通信状態)を示す情報を取得する。本実施形態では、当該通信状態の情報(通信状態情報)が記憶部113に記憶されており、状態情報取得部133は記憶部113に記憶された通信状態情報を取得する。
通信情報判定部134は、通信情報取得部131により取得された通信情報について、通信条件情報に基づいて、評価値を判定する。
また、通信情報判定部134は、通信情報取得部131により取得された通信情報について、通信条件情報および通信状態情報に基づいて、評価値を判定する。
ここで、本実施形態では、評価値として、数値で表される点数が用いられている。
本実施形態では、通信条件情報のなかに、条件が満たされた場合に付与される評価値(本実施形態では、点数)の情報が含まれている。そして、通信情報判定部134は、通信条件情報に含まれるいずれかの条件が満たされた場合には当該条件に対応した評価値を判定する。また、通信情報判定部134は、通信条件情報に含まれるいずれの条件も満たされない場合には評価値として所定値(本実施形態では、0である点数)を判定する。
なお、他の構成例として、通信情報判定部134は、通信条件情報に含まれるいずれの条件も満たされない場合には、評価値を判定しない(本実施形態では、明示的な点数を算定しない)構成が用いられてもよい。当該他の構成例では、この場合においても、評価値として所定値(本実施形態では、0である点数)が判定された場合と同等とみなして後続する処理が行われる。
評価値計数部135は、通信情報判定部134により判定された評価値を順次加算することで、評価値の合計値(総合値)を計数する。なお、本実施形態では、未だに1つの評価値も加算されていない状態(つまり、評価値の初期値である状態)についても、あるいは、1つの評価値のみが加算された状態(つまり、その1つの評価値のままの値である状態)についても、あるいは、2つ以上の評価値が加算された状態についても、説明の便宜上、合計値と呼ぶ。
また、評価値計数部135は、所定のタイミングで、計数された合計値を初期値にリセット(クリア)する。当該初期値は、任意の値であってもよく、本実施形態では、0である。
評価条件情報取得部136は、評価値の合計値に関する判定を行うための条件(評価条件)の情報を取得する。本実施形態では、当該評価条件の情報(評価条件情報)が記憶部113に記憶されており、評価条件情報取得部136は記憶部113に記憶された評価条件情報を取得する。
当該評価条件情報は、本実施形態では、評価値計数部135により計数される合計値に関する判定を行うための所定の値(閾値)である。
評価値判定部137は、評価値計数部135により計数された合計値について、評価条件情報に基づいて、通信に関する判定を行う。本実施形態では、評価値判定部137は、当該合計値が当該評価条件情報に相当する閾値を超えたか否か(または、当該閾値以上であるか否か)を判定する。
ここで、本実施形態では、通信に関する判定として、評価値の合計値に基づいて、マルウェアに感染した端末装置11−1〜11−nにより行われた通信であるか否かの判定が行われる。なお、この判定は推定的なものであり、この判定の精度は必ずしも100%でなくてもよく、判定の結果が実際と比べて異なる場合があってもよい。
状態判定条件情報取得部138は、通信状態を判定するための条件(状態判定条件)の情報を取得する。本実施形態では、当該状態判定条件の情報(状態判定条件情報)が記憶部113に記憶されており、状態判定条件情報取得部138は記憶部113に記憶された状態判定条件情報を取得する。
状態判定部139は、状態判定条件情報取得部138により取得された状態判定条件情報に基づいて、通信状態を判定する。
また、状態判定部139は、判定された通信状態の情報(通信状態情報)を記憶部113に記憶させる。本実施形態では、それぞれの端末装置11−1〜11−nごとに、通信状態情報が保持され、状態判定部139は通信状態情報を判定するごとに当該通信状態情報を更新していく。なお、本実施形態では、この通信状態情報が、状態情報取得部133により取得される。
ここで、それぞれの端末装置11−1〜11−nごとに、例えば、最大で1つの通信状態情報が保持される構成が用いられてもよく、あるいは、2つ以上の通信状態情報が独立に保持される構成が用いられてもよい。なお、それぞれの端末装置11−1〜11−nごとに、最大で1つの通信状態情報が保持される構成では、例えば、新たな通信状態が検出(判定)された場合には、そのときに保持されていた通信状態情報が当該新たな通信状態に対応する通信状態情報に上書きされる。
本実施形態では、それぞれの端末装置11−1〜11−nごとの通信状態は、当該それぞれの端末装置11−1〜11−nにより既に行われた通信に関する状態を表わしており、過去の通信に関する状態を表わしている。
通信制御部140は、通信に関する制御を行う。本実施形態では、通信制御部140は、端末装置11−1〜11−nにより行われる通信を中継するための通信に関する制御を行う。より具体的には、本実施形態では、通信制御部140は、端末装置11−1〜11−nにより行われる通信を中継するための通信を行うか否かに関する制御を行う。
[通信情報]
本実施形態では、端末装置11−1〜11−nとサーバ装置13−1〜13−mとは、HTTP(HyperText Transfer Protocol)の通信を行う。端末装置11−1〜11−nはサーバ装置13−1〜13−mにリクエスト信号を送信し、当該リクエスト信号に応じてサーバ装置13−1〜13−mは端末装置11−1〜11−nにレスポンス信号を送信する。
本実施形態では、通信情報には、リクエスト信号の情報と、レスポンス信号の情報が含まれる。
[条件情報]
<リクエスト信号に関する条件情報>
図3は、本発明の実施形態に係るリクエスト信号に関する条件の一例を示す図である。
図3には、リクエスト信号に関する通信条件情報1011の一例を示してある。リクエスト信号に関する通信条件情報1011は、例えば、あらかじめ定義されて、記憶部113に記憶されてもよい。
図3の例における通信条件情報1011では、信号部分と、条件と、評価値の点数とが対応付けられている。
リクエスト信号には、信号部分として、ヘッダ(Header)と、ボディ(Body)があり得る。
一例として、第1行目の欄では、リクエスト信号のヘッダについて、条件A1が満たされる場合には、+1の点数を評価値とするということが規定されている。
他の例として、ある行目の欄では、リクエスト信号のボディについて、条件B1が満たされる場合には、+7の点数を評価値とするということが規定されている。
また、他の欄についても、リクエスト信号のヘッダあるいはボディについて条件が規定されている。
リクエスト信号に関する通信条件情報の具体例を示す。
例えば、「リクエスト信号のヘッダに関して、Accept−Encodingヘッダが無いという通信条件が満たされた場合には、加点する点数として1点(+1点)を付与する」という条件が用いられてもよい。
例えば、「リクエスト信号のヘッダに関して、Accept−Encodingヘッダの値が標準化通りではないという通信条件が満たされた場合には、加点する点数として3点(+3点)を付与する」という条件が用いられてもよい。
例えば、「リクエスト信号のヘッダに関して、User−Agentヘッダが無いという通信条件が満たされた場合には、加点する点数として1点(+1点)を付与する」という条件が用いられてもよい。
例えば、「リクエスト信号のヘッダに関して、User−Agentヘッダの値が標準化通りではないという通信条件が満たされた場合には、加点する点数として2点(+2点)を付与する」という条件が用いられてもよい。
例えば、「リクエスト信号のボディに関して、当該ボディのデータがContent−Typeと一致しないという通信条件が満たされた場合には、加点する点数として7点(+7点)を付与する」という条件が用いられてもよい。
このように、リクエスト信号に関する通信条件情報1011では、リクエスト信号に関して所定の通信が発生した場合に、当該所定の通信に対応する点数が付与されることが定義されている。
<レスポンス信号に関する条件情報>
図4は、本発明の実施形態に係るレスポンス信号に関する条件の一例を示す図である。
図4には、レスポンス信号に関する通信条件情報1021の一例を示してある。レスポンス信号に関する通信条件情報1021は、例えば、あらかじめ定義されて、記憶部113に記憶されてもよい。
図4の例における通信条件情報1021では、信号部分と、条件と、評価値の点数とが対応付けられている。
レスポンス信号には、信号部分として、ヘッダ(Header)と、ボディ(Body)があり得る。
一例として、第1行目の欄では、レスポンス信号のヘッダについて、条件C1が満たされる場合には、+1の点数を評価値とするということが規定されている。
他の例として、ある行目の欄では、レスポンス信号のボディについて、条件D1が満たされる場合には、+7の点数を評価値とするということが規定されている。
また、他の欄についても、レスポンス信号のヘッダあるいはボディについて条件が規定されている。
レスポンス信号に関する通信条件情報の具体例を示す。
例えば、「レスポンス信号のヘッダに関して、Content−Typeヘッダが無いという通信条件が満たされた場合には、加点する点数として1点(+1点)を付与する」という条件が用いられてもよい。
例えば、「レスポンス信号のヘッダに関して、Content−Typeヘッダの値が標準化通りではないという通信条件が満たされた場合には、加点する点数として2点(+2点)を付与する」という条件が用いられてもよい。
例えば、「レスポンス信号のボディに関して、当該ボディのデータがContent−Typeと一致していないという通信条件が満たされた場合には、加点する点数として7点(+7点)を付与する」という条件が用いられてもよい。
このように、レスポンス信号に関する通信条件情報1021では、レスポンス信号に関して所定の通信が発生した場合に、当該所定の通信に対応する点数が付与されることが定義されている。
<状態と信号に関する条件情報>
図5は、本発明の実施形態に係る状態と信号に関する条件の一例を示す図である。
図5には、状態と信号に関する通信条件情報1031の一例を示してある。状態と信号に関する通信条件情報1031は、例えば、あらかじめ定義されて、記憶部113に記憶されてもよい。
ここで、信号としては、リクエスト信号と、レスポンス信号がある。
図5の例における通信条件情報1031では、条件と、評価値の点数とが対応付けられている。条件として、通信状態に関する条件(状態条件)と、信号に関する条件(信号条件)が含まれている。
一例として、第1行目の欄では、状態条件として状態E1であるという条件が満たされ、信号条件として条件F1が満たされた場合には、+7の点数を評価値とするということが規定されている。
また、他の欄についても、状態および信号について条件が規定されている。
状態と信号に関する条件情報の具体例を示す。
例えば、状態に関する条件(状態条件)として、-i(iは0以上の整数)番目の通信(リクエスト信号およびレスポンス信号の組み合わせを1単位とした通信)においてPDFファイルの情報を取得する通信が行われたという状態の条件が用いられる。また、信号に関する条件(信号条件)として、i+1番目〜i+L(Lは1以上の整数)番目の通信(リクエスト信号およびレスポンス信号の組み合わせを1単位とした通信)においてHTTPのヘッダがあらかじめ想定されたものとは相違したという条件が用いられる。そして、「これら両方の条件(状態条件および信号条件)が満たされた場合に、加点する点数として7点(+7点)を付与する」という条件が用いられてもよい。
ここで、説明の便宜上、「-xxxx」という表記は、該当する端末装置11−1〜11−nの通信において、i番目に[-]の通信を受信した状態を記憶しておき、i+1番目〜i+L番目の通信(リクエスト信号およびレスポンス信号の組み合わせを1単位とした通信)の判定に当該状態を使用することを意味している。
また、本例では、Lは一定の時間に受信された通信(リクエスト信号およびレスポンス信号の組み合わせを1単位とした通信)の数を表している。
このように、状態と信号に関する通信条件情報1031では、所定の通信状態が発生して、当該通信状態の保持期間(当該通信状態が発生したことを記憶しておく期間)が満了する前に、当該通信状態に対応する所定の通信が発生した場合に、これら(当該通信状態および当該通信の組み合わせ)に対応する点数が付与されることが定義されている。
ここで、本実施形態では、状態条件における通信状態(例えば、図5の例における状態E1〜E3)として、異常とみなされる通信の予兆となる特定の通信(異常通信の予兆となる特定通信)が行われた状態が用いられる。そして、当該通信状態が発生した後に、当該通信状態の保持期間が満了する前に、その予兆に連なる通信(前記した異常とみなされる通信)が発生した場合(例えば、図5の例における条件F1〜F3が満たされた場合)には、異常な通信であるとみなして、評価値計数部135により、対応する評価値の点数を加算する。つまり、図5の例では、異常通信の予兆となる特定通信が発生して、その後に、当該特定通信の保持期間が満了する前に、当該特定通信に対応する通信が発生した場合に、点数が付与される。
<状態の判定に関する条件情報>
図6は、本発明の実施形態に係る状態の判定に関する条件の一例を示す図である。
図6には、状態の判定に関する状態判定条件情報1041の一例を示してある。状態判定条件情報1041は、例えば、あらかじめ定義されて、記憶部113に記憶されてもよい。
図6の例における状態判定条件情報1041では、条件と、状態とが対応付けられている。
一例として、第1行目の欄では、条件G1が満たされた場合には、状態E1とするということが規定されている。
また、他の欄についても、状態の判定に関する条件が規定されている。
状態の判定に関する条件情報の具体例を示す。
例えば、図5に関する説明の場合と同様に、通信(リクエスト信号およびレスポンス信号の組み合わせを1単位とする通信)においてPDFファイルの情報を取得する通信が行われたという状態を判定するための条件と、その条件が満たされた場合にその状態(通信状態)を示す情報を保持するための通信状態情報が用いられる。
[通信システムにおいて行われる通信]
図7は、本発明の実施形態に係る通信システム1において行われる通信の一例を示す図である。
図7の例では、端末装置11−1、中継装置12、サーバ装置13−1により行われる通信の一例を示す。なお、他の端末装置11−2〜11−nにより行われる通信についても同様であり、また、他のサーバ装置13−2〜13−mにより行われる通信についても同様である。
ここで、本実施形態では、端末装置11−1とサーバ装置13−1との通信(リクエスト信号およびレスポンス信号の組み合わせを1単位とした通信)に連続番号を付して説明する。図7の例では、#N−1(N−1番目)の通信と、#N(N番目)の通信を示してある。Nは1以上の整数とし、連続番号は0以上の整数とする。
また、本実施形態では、HTTPの通信が行われ、リクエスト信号およびレスポンス信号はそれぞれHTTPの信号である。リクエスト信号およびレスポンス信号には、それぞれ、ヘッダが含まれ、また、ボディが含まれ得る。
なお、ヘッダのメソッドによっては、ボディが含まれないリクエスト信号もあり得る。また、要求メソッドあるいは結果によっては、ボディが含まれないレスポンス信号もあり得る。
通信#N−1(N−1番目の通信)の概要を説明する。
図7の例では、通信#N−1においては、それぞれの信号にヘッダおよびボディが含まれるとし、ヘッダとボディを区別せずに信号を示してある(図示を簡易化しただけであり、実際には通信#Nと同様にヘッダとボディが区別される。)。
また、図7の例では、中継装置12により通信#N−1が停止させられない場合を示してある。
(処理T1)
端末装置11−1は、リクエスト信号を中継装置12に送信する。当該リクエスト信号には、ヘッダおよびボディが含まれる。
(処理T2)
中継装置12は、当該リクエスト信号を受信して、受信されたリクエスト信号をサーバ装置13−1に送信する。
(処理T3)
サーバ装置13−1は、当該リクエスト信号を受信したことに応じて、レスポンス信号を中継装置12に送信する。当該レスポンス信号には、ヘッダおよびボディが含まれる。
(処理T4)
中継装置12は、当該レスポンス信号を受信して、受信されたレスポンス信号を端末装置11−1に送信する。
通信#N(N番目の通信)の概要を説明する。
図7の例では、通信#Nにおいては、それぞれの信号にヘッダおよびボディが含まれるとし、ヘッダとボディを区別して信号を示してある。
また、図7の例では、中継装置12により通信#Nが停止させられない場合を示してある。
なお、図7の例では、通信#Nと通信#N−1とは、それぞれの信号の内容は異なり得るが、同様な信号(リクエスト信号およびレスポンス信号)のやり取りが行われる通信である。
(処理T11)
端末装置11−1は、リクエスト信号のヘッダを中継装置12に送信する。
(処理T12)
中継装置12は、当該リクエスト信号のヘッダを受信して、受信されたリクエスト信号のヘッダをサーバ装置13−1に送信する。
(処理T13)
端末装置11−1は、リクエスト信号のボディを中継装置12に送信する。
このとき、端末装置11−1は、リクエスト信号のボディを複数回に分けて中継装置12に送信してもよく、図7の例では、(処理T111)〜(処理T113)を示してある。
(処理T14)
中継装置12は、当該リクエスト信号のボディを受信して、受信されたリクエスト信号のボディをサーバ装置13−1に送信する。
このとき、中継装置12は、リクエスト信号のボディを複数回に分けてサーバ装置13−1に送信してもよく、図7の例では、(処理T114)〜(処理T116)を示してある。本例では、(処理T111)〜(処理T113)のそれぞれと、(処理T114)〜(処理T116)のそれぞれとが、対応する。
(処理T21)
サーバ装置13−1は、リクエスト信号を受信したことに応じて、レスポンス信号のヘッダを中継装置12に送信する。
(処理T22)
中継装置12は、当該レスポンス信号のヘッダを受信して、受信されたレスポンス信号のヘッダを端末装置11−1に送信する。
(処理T23)
サーバ装置13−1は、レスポンス信号のボディを中継装置12に送信する。
このとき、サーバ装置13−1は、レスポンス信号のボディを複数回に分けて中継装置12に送信してもよく、図7の例では、(処理T121)〜(処理T123)を示してある。
(処理T24)
中継装置12は、当該レスポンス信号のボディを受信して、受信されたレスポンス信号のボディを端末装置11−1に送信する。
このとき、中継装置12は、レスポンス信号のボディを複数回に分けて端末装置11−1に送信してもよく、図7の例では、(処理T124)〜(処理T126)を示してある。本例では、(処理T121)〜(処理T123)のそれぞれと、(処理T124)〜(処理T126)のそれぞれとが、対応する。
[中継装置において行われる処理]
図8〜図11は、本発明の実施形態に係る中継装置12において行われる処理の手順の一例を示すフローチャートである。
本実施形態では、図7の例における通信#Nの処理が中継装置12により行われる場合について説明する。
なお、図7の例では中継装置12により通信#Nが停止させられない場合を示したが、図8〜図11の例では中継装置12により通信#Nが停止させられる場合がある。
図8〜図11の例では、端末装置11−1、中継装置12、サーバ装置13−1により行われる通信の一例を示す。なお、他の端末装置11−2〜11−nにより行われる通信についても同様であり、また、他のサーバ装置13−2〜13−mにより行われる通信についても同様である。中継装置12において、複数の端末装置11−1〜11−nはそれぞれの識別情報に基づいて識別され、複数のサーバ装置13−1〜13−mはそれぞれの識別情報に基づいて識別される。本実施形態では、ある装置と他の装置とが通信する場合に、それぞれの装置が自己(当該装置)の識別情報を相手の装置に送信し、それぞれの装置が受信された相手の識別情報を記憶して保持する。
(ステップS1)
中継装置12では、評価値計数部135が、評価値を初期値(本実施形態では、0)にリセットする。そして、(ステップS2)の処理へ移行する。
ここで、本実施形態では、通信#Nの開始時のタイミングに、評価値を初期値にリセットする。具体的には、評価値は、通信#N−1の開始時のタイミングでリセットされ、また、通信#Nの開始時のタイミングでリセットされ、また、通信#N+1(N+1番目の通信)の開始時のタイミングでリセットされ、また、他の連続番号の通信においても同様である。
なお、評価値を初期値にリセットするタイミングとしては、必ずしも1つの単位の通信(例えば、通信#Nなど)ごとのタイミングでなくてもよく、任意の他のタイミングが用いられてもよく、その場合には、(ステップS1)の処理は設けられず、当該他のタイミングで評価値を初期値にリセットする処理が行われる。
(ステップS2)
図7の例における(処理T11)のように、中継装置12では、端末装置11−1から送信されたリクエスト信号のヘッダが受信される。
中継装置12では、受信されたリクエスト信号のヘッダに関する判定と評価値の加算を行う。具体的には、通信情報取得部131が当該リクエスト信号のヘッダの情報を取得し、通信条件情報取得部132がリクエスト信号(ここでは、ヘッダ)に関する通信条件情報1011を取得し、通信情報判定部134が、当該リクエスト信号のヘッダの情報について解析を行って当該ヘッダの構成要素別に評価を行うことで、評価値の点数を判定する。そして、評価値計数部135が判定された評価値の点数を現在の合計値(この時点では、0)に加算する。
そして、(ステップS3)の処理へ移行する。
(ステップS3)
中継装置12では、受信されたリクエスト信号のヘッダおよび状態に関する判定と評価値の加算を行う。具体的には、通信情報取得部131が当該リクエスト信号のヘッダの情報を取得し、通信条件情報取得部132が状態と信号に関する通信条件情報1031を取得し、通信情報判定部134が当該リクエスト信号のヘッダの情報および状態(通信状態情報)について解析を行って評価値の点数を判定する。そして、評価値計数部135が判定された評価値の点数を現在の合計値に加算する。そして、(ステップS4)の処理へ移行する。
なお、通信情報取得部131により当該リクエスト信号のヘッダの情報を取得する処理および通信情報判定部134により当該ヘッダの情報を解析する処理は、(ステップS2)の処理で行われているため、(ステップS3)の処理では省略されてもよい。
(ステップS4)
中継装置12では、評価値判定部137は、評価条件情報(本実施形態では、所定の閾値)に基づいて、現在の合計値が所定の閾値を超えたか否かを判定する。
この判定の結果、評価値判定部137が現在の合計値が所定の閾値を超えたこと(または、「所定の閾値以上であること」でもよい。以下も同様。)を判定した場合には(ステップS4:YES)、(ステップS7)の処理へ移行する。
一方、この判定の結果、評価値判定部137が現在の合計値が前記所定の閾値以下であること(または、「前記所定の閾値未満であること」でもよい。以下も同様。)を判定した場合には(ステップS4:NO)、(ステップS5)の処理へ移行する。
(ステップS5)
中継装置12では、(ステップS4)の処理において現在の合計値が所定の閾値以下である場合には、図7の例における(処理T12)のように、通信制御部140は、受信されたリクエスト信号のヘッダをサーバ装置13−1に送信(転送)する。そして、(ステップS6)の処理へ移行する。
(ステップS6)
中継装置12では、状態判定部139は、状態判定条件情報に基づいて、通信の状況がいずれかの状態判定条件を満たしたか否かを判定する。
この判定の結果、状態判定部139が通信の状況がいずれかの状態判定条件を満たしたことを判定した場合には(ステップS6:YES)、(ステップS8)の処理へ移行する。
一方、この判定の結果、状態判定部139が通信の状況がいずれの状態判定条件も満たしていないことを判定した場合には(ステップS6:NO)、(ステップS21)の処理へ移行する。
(ステップS7)
中継装置12では、(ステップS4)の処理において現在の合計値が所定の閾値を超えた場合には、通信制御部140は、端末装置11−1とサーバ装置13−1との通信を停止させる。本実施形態では、通信制御部140は、端末装置11−1とサーバ装置13−1との通信を中継することを停止することで、当該通信を停止させる。そして、(ステップS66)の処理へ移行する。
ここで、本実施形態では、中継装置12において、評価値判定部137は、端末装置11−1について合計値が所定の閾値を超えた場合には、当該端末装置11−1がマルウェアに感染したと判定している。この判定は、推定的であってもよい。
(ステップS8)
中継装置12では、(ステップS6)の処理において通信の状況がいずれかの状態判定条件を満たした場合には、状態判定部139は、当該状態判定条件に対応する状態を示す情報(通信状態情報)を記憶部113に記憶させて保持する。そして、(ステップS21)の処理へ移行する。
この場合、状態判定部139は、保持させた通信状態情報と対応付けて、当該通信状態情報をリセットする条件の情報(通信状態情報のリセット条件情報)を記憶部113に記憶させる。
また、状態判定部139は、複数の端末装置11−1〜11−nが存在する場合、それぞれの端末装置11−1〜11−nの通信状態情報に当該それぞれの端末装置11−1〜11−nの識別情報を対応付けて記憶部113に記憶することで、それぞれの端末装置11−1〜11−nごとに通信状態情報を特定することを可能とする。
(ステップS21)
図7の例における(処理T13)のように、中継装置12では、端末装置11−1から送信されたリクエスト信号のボディが受信される。
中継装置12では、受信されたリクエスト信号のボディに関する判定と評価値の加算を行う。具体的には、通信情報取得部131が当該リクエスト信号のボディの情報を取得し、通信条件情報取得部132がリクエスト信号(ここでは、ボディ)に関する通信条件情報1011を取得し、通信情報判定部134が、当該リクエスト信号のボディの情報について解析を行って当該ボディの評価を行うことで、評価値の点数を判定する。そして、評価値計数部135が判定された評価値の点数を現在の合計値に加算する。
そして、(ステップS22)の処理へ移行する。
(ステップS22)
中継装置12では、受信されたリクエスト信号のボディおよび状態に関する判定と評価値の加算を行う。具体的には、通信情報取得部131が当該リクエスト信号のボディの情報を取得し、通信条件情報取得部132が状態と信号に関する通信条件情報1031を取得し、通信情報判定部134が当該リクエスト信号のボディの情報および状態(通信状態情報)について解析を行って評価値の点数を判定する。そして、評価値計数部135が判定された評価値の点数を現在の合計値に加算する。そして、(ステップS23)の処理へ移行する。
なお、通信情報取得部131により当該リクエスト信号のボディの情報を取得する処理および通信情報判定部134により当該ボディの情報を解析する処理は、(ステップS21)の処理で行われているため、(ステップS22)の処理では省略されてもよい。
(ステップS23)
中継装置12では、評価値判定部137は、評価条件情報(本実施形態では、所定の閾値)に基づいて、現在の合計値が所定の閾値を超えたか否かを判定する。
この判定の結果、評価値判定部137が現在の合計値が所定の閾値を超えたことを判定した場合には(ステップS23:YES)、(ステップS26)の処理へ移行する。
一方、この判定の結果、評価値判定部137が現在の合計値が所定の閾値以下であることを判定した場合には(ステップS23:NO)、(ステップS24)の処理へ移行する。
(ステップS24)
中継装置12では、(ステップS23)の処理において現在の合計値が所定の閾値以下である場合には、図7の例における(処理T14)のように、通信制御部140は、受信されたリクエスト信号のボディをサーバ装置13−1に送信(転送)する。そして、(ステップS25)の処理へ移行する。
(ステップS25)
中継装置12では、状態判定部139は、状態判定条件情報に基づいて、通信の状況がいずれかの状態判定条件を満たしたか否かを判定する。
この判定の結果、状態判定部139が通信の状況がいずれかの状態判定条件を満たしたことを判定した場合には(ステップS25:YES)、(ステップS27)の処理へ移行する。
一方、この判定の結果、状態判定部139が通信の状況がいずれの状態判定条件も満たしていないことを判定した場合には(ステップS25:NO)、(ステップS41)の処理へ移行する。
(ステップS26)
中継装置12では、(ステップS23)の処理において現在の合計値が所定の閾値を超えた場合には、通信制御部140は、端末装置11−1とサーバ装置13−1との通信を停止させる。本実施形態では、通信制御部140は、端末装置11−1とサーバ装置13−1との通信を中継することを停止することで、当該通信を停止させる。そして、(ステップS66)の処理へ移行する。
ここで、本実施形態では、中継装置12において、評価値判定部137は、端末装置11−1について合計値が所定の閾値を超えた場合には、当該端末装置11−1がマルウェアに感染したと判定している。この判定は、推定的であってもよい。
(ステップS27)
中継装置12では、(ステップS25)の処理において通信の状況がいずれかの状態判定条件を満たした場合には、状態判定部139は、当該状態判定条件に対応する状態を示す情報(通信状態情報)を記憶部113に記憶させて保持する。そして、(ステップS41)の処理へ移行する。
この場合、状態判定部139は、保持させた通信状態情報と対応付けて、当該通信状態情報をリセットする条件の情報(通信状態情報のリセット条件情報)を記憶部113に記憶させる。
また、状態判定部139は、複数の端末装置11−1〜11−nが存在する場合、それぞれの端末装置11−1〜11−nの通信状態情報に当該それぞれの端末装置11−1〜11−nの識別情報を対応付けて記憶部113に記憶することで、それぞれの端末装置11−1〜11−nごとに通信状態情報を特定することを可能とする。
なお、図7の例のように、リクエスト信号のボディが複数回通信される場合には、例えば、それぞれの回について(ステップS21)〜(ステップS27)の処理が行われてもよく、あるいは、すべての回の通信が完了した後に、まとめて、(ステップS21)〜(ステップS27)の処理が行われてもよい。なお、それぞれの回について処理が行われる場合には、該当するステップを組み合わせた処理がそれぞれの回ごとに繰り返して行われる。
(ステップS41)
図7の例における(処理T21)のように、中継装置12では、サーバ装置13−1から送信されたレスポンス信号のヘッダが受信される。
中継装置12では、受信されたレスポンス信号のヘッダに関する判定と評価値の加算を行う。具体的には、通信情報取得部131が当該レスポンス信号のヘッダの情報を取得し、通信条件情報取得部132がレスポンス信号(ここでは、ヘッダ)に関する通信条件情報1021を取得し、通信情報判定部134が、当該レスポンス信号のヘッダの情報について解析を行って当該ヘッダの構成要素別に評価を行うことで、評価値の点数を判定する。そして、評価値計数部135が判定された評価値の点数を現在の合計値に加算する。
そして、(ステップS42)の処理へ移行する。
(ステップS42)
中継装置12では、受信されたレスポンス信号のヘッダおよび状態に関する判定と評価値の加算を行う。具体的には、通信情報取得部131が当該レスポンス信号のヘッダの情報を取得し、通信条件情報取得部132が状態と信号に関する通信条件情報1031を取得し、通信情報判定部134が当該レスポンス信号のヘッダの情報および状態(通信状態情報)について解析を行って評価値の点数を判定する。そして、評価値計数部135が判定された評価値の点数を現在の合計値に加算する。そして、(ステップS43)の処理へ移行する。
なお、通信情報取得部131により当該レスポンス信号のヘッダの情報を取得する処理および通信情報判定部134により当該ヘッダの情報を解析する処理は、(ステップS41)の処理で行われているため、(ステップS42)の処理では省略されてもよい。
(ステップS43)
中継装置12では、評価値判定部137は、評価条件情報(本実施形態では、所定の閾値)に基づいて、現在の合計値が所定の閾値を超えたか否かを判定する。
この判定の結果、評価値判定部137が現在の合計値が所定の閾値を超えたことを判定した場合には(ステップS43:YES)、(ステップS46)の処理へ移行する。
一方、この判定の結果、評価値判定部137が現在の合計値が所定の閾値以下であることを判定した場合には(ステップS43:NO)、(ステップS44)の処理へ移行する。
(ステップS44)
中継装置12では、(ステップS43)の処理において現在の合計値が所定の閾値以下である場合には、図7の例における(処理T22)のように、通信制御部140は、受信されたレスポンス信号のヘッダを端末装置11−1に送信(転送)する。そして、(ステップS45)の処理へ移行する。
(ステップS45)
中継装置12では、状態判定部139は、状態判定条件情報に基づいて、通信の状況がいずれかの状態判定条件を満たしたか否かを判定する。
この判定の結果、状態判定部139が通信の状況がいずれかの状態判定条件を満たしたことを判定した場合には(ステップS45:YES)、(ステップS47)の処理へ移行する。
一方、この判定の結果、状態判定部139が通信の状況がいずれの状態判定条件も満たしていないことを判定した場合には(ステップS45:NO)、(ステップS61)の処理へ移行する。
(ステップS46)
中継装置12では、(ステップS43)の処理において現在の合計値が所定の閾値を超えた場合には、通信制御部140は、端末装置11−1とサーバ装置13−1との通信を停止させる。本実施形態では、通信制御部140は、端末装置11−1とサーバ装置13−1との通信を中継することを停止することで、当該通信を停止させる。そして、(ステップS66)の処理へ移行する。
ここで、本実施形態では、中継装置12において、評価値判定部137は、端末装置11−1について合計値が所定の閾値を超えた場合には、当該端末装置11−1がマルウェアに感染したと判定している。この判定は、推定的であってもよい。
(ステップS47)
中継装置12では、(ステップS45)の処理において通信の状況がいずれかの状態判定条件を満たした場合には、状態判定部139は、当該状態判定条件に対応する状態を示す情報(通信状態情報)を記憶部113に記憶させて保持する。そして、(ステップS61)の処理へ移行する。
この場合、状態判定部139は、保持させた通信状態情報と対応付けて、当該通信状態情報をリセットする条件の情報(通信状態情報のリセット条件情報)を記憶部113に記憶させる。
また、状態判定部139は、複数の端末装置11−1〜11−nが存在する場合、それぞれの端末装置11−1〜11−nの通信状態情報に当該それぞれの端末装置11−1〜11−nの識別情報を対応付けて記憶部113に記憶することで、それぞれの端末装置11−1〜11−nごとに通信状態情報を特定することを可能とする。
(ステップS61)
図7の例における(処理T23)のように、中継装置12では、サーバ装置13−1から送信されたレスポンス信号のボディが受信される。
中継装置12では、受信されたレスポンス信号のボディに関する判定と評価値の加算を行う。具体的には、通信情報取得部131が当該レスポンス信号のボディの情報を取得し、通信条件情報取得部132がレスポンス信号(ここでは、ボディ)に関する通信条件情報1021を取得し、通信情報判定部134が、当該レスポンス信号のボディの情報について解析を行って当該ボディの評価を行うことで、評価値の点数を判定する。そして、評価値計数部135が判定された評価値の点数を現在の合計値に加算する。
そして、(ステップS62)の処理へ移行する。
(ステップS62)
中継装置12では、受信されたレスポンス信号のボディおよび状態に関する判定と評価値の加算を行う。具体的には、通信情報取得部131が当該レスポンス信号のボディの情報を取得し、通信条件情報取得部132が状態と信号に関する通信条件情報1031を取得し、通信情報判定部134が当該レスポンス信号のボディの情報および状態(通信状態情報)について解析を行って評価値の点数を判定する。そして、評価値計数部135が判定された評価値の点数を現在の合計値に加算する。そして、(ステップS63)の処理へ移行する。
なお、通信情報取得部131により当該レスポンス信号のボディの情報を取得する処理および通信情報判定部134により当該ボディの情報を解析する処理は、(ステップS61)の処理で行われているため、(ステップS62)の処理では省略されてもよい。
(ステップS63)
中継装置12では、評価値判定部137は、評価条件情報(本実施形態では、所定の閾値)に基づいて、現在の合計値が所定の閾値を超えたか否かを判定する。
この判定の結果、評価値判定部137が現在の合計値が所定の閾値を超えたことを判定した場合には(ステップS63:YES)、(ステップS67)の処理へ移行する。
一方、この判定の結果、評価値判定部137が現在の合計値が所定の閾値以下であることを判定した場合には(ステップS63:NO)、(ステップS64)の処理へ移行する。
(ステップS64)
中継装置12では、(ステップS63)の処理において現在の合計値が所定の閾値以下である場合には、図7の例における(処理T24)のように、通信制御部140は、受信されたレスポンス信号のボディを端末装置11−1に送信(転送)する。そして、(ステップS65)の処理へ移行する。
(ステップS65)
中継装置12では、状態判定部139は、状態判定条件情報に基づいて、通信の状況がいずれかの状態判定条件を満たしたか否かを判定する。
この判定の結果、状態判定部139が通信の状況がいずれかの状態判定条件を満たしたことを判定した場合には(ステップS65:YES)、(ステップS68)の処理へ移行する。
一方、この判定の結果、状態判定部139が通信の状況がいずれの状態判定条件も満たしていないことを判定した場合には(ステップS65:NO)、(ステップS66)の処理へ移行する。
ここで、本実施形態では、(ステップS65)の処理および(ステップS68)の処理を行う構成としたが、例えば、(ステップS64)の処理の後には必ず通信状態情報がリセットされる(本実施形態では、例えば、消去される、または、無意味な値とされる)場合には、(ステップS65)の処理および(ステップS68)の処理は行われなくてもよい。
(ステップS66)
中継装置12では、状態判定部139は、記憶部113に記憶された通信状態情報について終了条件(本実施形態では、通信状態情報のリセット条件情報)が満たされたか否かを判定する。本実施形態では、状態判定部139は、記憶部113に記憶された通信状態情報について、当該通信状態情報と対応付けて保持されたリセット条件情報(通信状態情報のリセット条件情報)が満たされたか否かを判定する。
この判定の結果、状態判定部139は、通信状態情報と対応付けられたリセット条件情報が満たされたことを判定した場合には(ステップS66:YES)、(ステップS69)の処理へ移行する。
一方、状態判定部139は、通信状態情報と対応付けられたリセット条件情報が満たされていないことを判定した場合には(ステップS66:NO)、本フローの処理が終了させられる。
ここで、通信状態情報をリセットする条件(リセット条件)としては、任意の条件が用いられてもよい。
一例として、通信状態情報のリセット条件として、通信状態情報が設定(記憶)されてから所定の期間以上の時間が経過したという条件が用いられてもよい。例えば、通信状態情報が設定(記憶)されてから所定の期間が経過する前に発生した通信(単位ごとの通信)については、当該通信状態情報が有効である(つまり、当該通信状態情報がリセットされていない状態である)とされてもよい。
他の例として、通信状態情報のリセット条件として、連続番号の通信(通信#N−1、通信#N、通信#N+1など)ごとを単位として、所定の数の単位の通信が経過したという条件が用いられてもよい。具体例として、5番目の通信で所定の通信状態情報が記憶されて、リセット条件が「現在の通信単位以降に3回分の通信単位が経過すること」である場合には、8番目(=5番目+3回分)の通信が終了した時点で当該リセット条件が満たされて、当該通信状態情報がリセットされる。
また、例えば、1つの通信状態情報について、2種類以上の異なるリセット条件が設定されてもよい。この場合、例えば、設定された2種類以上の異なるリセット条件のうちの任意の1つの条件が満たされたときに通信状態情報がリセットされてもよく、あるいは、設定された2種類以上の異なるリセット条件のすべての条件が満たされたときに通信状態情報がリセットされてもよい。
(ステップS67)
中継装置12では、(ステップS63)の処理において現在の合計値が所定の閾値を超えた場合には、通信制御部140は、端末装置11−1とサーバ装置13−1との通信を停止させる。本実施形態では、通信制御部140は、端末装置11−1とサーバ装置13−1との通信を中継することを停止することで、当該通信を停止させる。そして、(ステップS66)の処理へ移行する。
ここで、本実施形態では、中継装置12において、評価値判定部137は、端末装置11−1について合計値が所定の閾値を超えた場合には、当該端末装置11−1がマルウェアに感染したと判定している。この判定は、推定的であってもよい。
(ステップS68)
中継装置12では、(ステップS65)の処理において通信の状況がいずれかの状態判定条件を満たした場合には、状態判定部139は、当該状態判定条件に対応する状態を示す情報(通信状態情報)を記憶部113に記憶させて保持する。そして、(ステップS66)の処理へ移行する。
この場合、状態判定部139は、保持させた通信状態情報と対応付けて、当該通信状態情報をリセットする条件の情報(通信状態情報のリセット条件情報)を記憶部113に記憶させる。
また、状態判定部139は、複数の端末装置11−1〜11−nが存在する場合、それぞれの端末装置11−1〜11−nの通信状態情報に当該それぞれの端末装置11−1〜11−nの識別情報を対応付けて記憶部113に記憶することで、それぞれの端末装置11−1〜11−nごとに通信状態情報を特定することを可能とする。
(ステップS69)
中継装置12では、状態判定部139は、通信状態情報と対応付けられたリセット条件情報が満たされた場合には、記憶部113に記憶された当該通信状態情報をリセットする。そして、本フローの処理が終了させられる。
なお、図7の例のように、レスポンス信号のボディが複数回通信される場合には、例えば、それぞれの回について(ステップS61)〜(ステップS65)、(ステップS67)、(ステップS68)の処理が行われてもよく、あるいは、すべての回の通信が完了した後に、まとめて、(ステップS61)〜(ステップS65)、(ステップS67)、(ステップS68)の処理が行われてもよい。なお、それぞれの回について処理が行われる場合には、該当するステップを組み合わせた処理がそれぞれの回ごとに繰り返して行われる。
ここで、本実施形態では、図8〜図11の例における処理フローにおいて、評価値計数部135は、1つの単位の通信(例えば、通信#Nなど)における一連の処理(本実施形態では、リクエスト信号およびレスポンス信号の処理)を通して、同一の判定項目(同一の判定条件)については、二重(あるいは、三重以上)に点数の加算が判定されても、二重(あるいは、三重以上)の点数の加算をせずに、これらのうちの最初の1回だけ点数を加算する。同一の判定項目(同一の判定条件)であるか否かは、例えば、あらかじめ、記憶部113に設定されて記憶されてもよい。
他の構成例として、評価値計数部135は、1つの単位の通信における一連の処理を通して、同一の判定項目(同一の判定条件)について、二重(あるいは、三重以上)に点数の加算を行ってもよい。
また、図8〜図11の例における処理フローでは、リクエスト信号のヘッダ、リクエスト信号のボディ、レスポンス信号のヘッダ、レスポンス信号のボディのそれぞれについて、通信条件情報に基づく判定と評価値の加算の処理(図8〜図11の例では、ステップS2、ステップS21、ステップS41、ステップS61)と、状態と信号に関する通信条件情報に基づく判定と評価値の加算の処理(図8〜図11の例では、ステップS3、ステップS22、ステップS42、ステップS62)との両方が行われる。
他の構成例として、状態と信号に関する通信条件情報に基づく判定と評価値の加算の処理(図8〜図11の例では、ステップS3、ステップS22、ステップS42、ステップS62)は、リクエスト信号のヘッダ、リクエスト信号のボディ、レスポンス信号のヘッダ、レスポンス信号のボディのうちの任意の1つ、または任意の2つ、または任意の3つで行われてもよい。例えば、状態と信号に関する通信条件情報に基づく判定と評価値の加算の処理(図8〜図11の例では、ステップS3、ステップS22、ステップS42、ステップS62)は、ヘッダ(リクエスト信号のヘッダおよびレスポンス信号のヘッダ)とボディ(リクエスト信号のボディおよびレスポンス信号のボディ)のうちの任意の一方で行われてもよく、あるいは、リクエスト信号(ヘッダおよびボディ)とレスポンス信号(ヘッダおよびボディ)のうちの任意の一方で行われてもよい。
また、図8〜図11の例における処理フローでは、リクエスト信号について得られた点数(合計点)をそのまま維持して、当該リクエスト信号に続くレスポンス信号についての点数をさらに加算する構成である。
また、図8〜図11の例における処理フローでは、リクエスト信号とレスポンス信号のそれぞれにおいて、ヘッダについて得られた点数をそのまま維持して、当該ヘッダに続くボディについての点数をさらに加算する構成である。
[実施形態のまとめ]
以上のように、本実施形態に係る通信システム1では、中継装置12において、端末装置11−1〜11−nにより行われるHTTPの通信(リクエスト信号およびレスポンス信号の通信)ごとに、異常に関する判定を行うことで、当該端末装置11−1〜11−nによる不正な通信(あるいは、不審な通信)を検知(判定)することができる。
また、本実施形態に係る通信システム1では、中継装置12において、一つ一つの通信が所定の通信条件を満たすか否かだけではなく、複数の通信の前後関係を考慮した条件(状態と信号に関する通信条件)が満たされるか否かを監視することで、例えば、一つ一つの通信だけからは判定することができない不正な通信を検知(判定)することができ、監視の精度を向上させることができ、セキュリティを向上させることができる。
また、本実施形態に係る通信システム1では、中継装置12において、それぞれの端末装置11−1〜11−nごとの情報を管理して、それぞれの端末装置11−1〜11−nごとに監視を行うことが可能である。
このように、本実施形態に係る通信システム1では、端末装置11−1〜11−nがマルウェアに感染したことを精度良く判定することが可能である。なお、この判定は、推定的であってもよい。
また、本実施形態に係る通信システム1では、中継装置12において、ある端末装置11−1〜11−nがマルウェアに感染したことが判定された場合には、当該端末装置11−1〜11−nによる通信を遮断すること、あるいは、この判定の結果に関する警告を所定の装置に通知することなどを行うことで、この判定の結果に対する適切な処理を実行することができる。
なお、本実施形態では、通信システム1における中継装置12について説明したが、同様な要旨を有するシステム、方法あるいはプログラムなどを実施することも可能である。
<構成例>
一構成例として、端末装置(図1の例では、端末装置11−1〜11−n)とネットワーク(図1の例では、ネットワーク21)との間に設けられる中継装置(図1の例では、中継装置12)であって、端末装置からネットワークに対して送信されるHTTPのリクエスト信号に基づく第1の評価値(リクエスト信号に関する評価値)と、HTTPのリクエスト信号に応じてネットワークから端末装置に対して送信されるHTTPのレスポンス信号に基づく第2の評価値(レスポンス信号に関する評価値)と、端末装置により行われた過去の通信に関する状態および当該状態が発生した後におけるHTTPのリクエスト信号あるいはHTTPのレスポンス信号に基づく第3の評価値(状態と信号に関する評価値)とを合計した結果である合計値(評価値の合計値)に基づいて判定を行う評価値判定部(図2の例では、評価値判定部137)を備える。
一構成例として、中継装置において、第1の評価値、第2の評価値、および第3の評価値として、点数を計数し、計数されたこれらの点数を合計して合計値を計数する評価値計数部(図2の例では、評価値計数部135)を備え、評価値判定部は、合計値が所定の閾値を超えたか否かに基づいて、端末装置についてマルウェアの感染に関する判定を行う。
一構成例として、中継装置において、評価値計数部は、第1の評価値と第2の評価値と第3の評価値とを合計した結果である合計値を、リクエスト信号およびレスポンス信号の通信(リクエスト信号およびレスポンス信号の組み合わせを1単位とする通信)を単位として、当該単位ごとにリセットする。
一構成例として、中継装置において、端末装置により行われた過去の通信に関する状態は、当該状態が発生した後に、所定の期間が経過した後に、リセットされる。
一構成例として、中継装置において、第1の評価値は、リクエスト信号のヘッダとボディとのそれぞれについて求められ、第2の評価値は、レスポンス信号のヘッダとボディとのそれぞれについて求められる。
一構成例として、中継装置において、評価値判定部により行われた判定の結果に基づいて端末装置に関する通信の制御を行う通信制御部(図2の例では、通信制御部140)を備える。
一構成例として、端末装置とネットワークとの間に設けられる中継装置により行われる中継方法であって、中継装置は、端末装置からネットワークに対して送信されるHTTPのリクエスト信号に基づく第1の評価値と、HTTPのリクエスト信号に応じてネットワークから端末装置に対して送信されるHTTPのレスポンス信号に基づく第2の評価値と、端末装置により行われた過去の通信に関する状態および当該状態が発生した後におけるHTTPのリクエスト信号あるいはHTTPのレスポンス信号に基づく第3の評価値とを合計した結果である合計値に基づいて判定を行う。
一構成例として、端末装置とネットワークとの間に設けられる中継装置を構成するコンピュータに、端末装置からネットワークに対して送信されるHTTPのリクエスト信号に基づく第1の評価値と、HTTPのリクエスト信号に応じてネットワークから端末装置に対して送信されるHTTPのレスポンス信号に基づく第2の評価値と、端末装置により行われた過去の通信に関する状態および当該状態が発生した後におけるHTTPのリクエスト信号あるいはHTTPのレスポンス信号に基づく第3の評価値とを合計した結果である合計値に基づいて判定を行う機能、を実現させるためのプログラムである。
以上の実施形態に係る各種の装置(例えば、中継装置12、端末装置11−1〜11−n、サーバ装置13−1〜13−mなど)の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体(記憶媒体)に記録(記憶)して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、処理を行うことができる。
なお、ここでいう「コンピュータシステム」とは、オペレーティングシステムあるいは周辺機器等のハードウェアを含むものであってもよい。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM(Read Only Memory)、フラッシュメモリ等の書き込み可能な不揮発性メモリ、DVD(Digital Versatile Disc)等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
さらに、「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークあるいは電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(例えば、DRAM)のように、一定時間プログラムを保持しているものも含む。
また、上記のプログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)あるいは電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
また、上記のプログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、上記のプログラムは、前述した機能をコンピュータシステムに既に記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
なお、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態には限定されない。本発明の精神及び範囲から逸脱することなく様々に変更したり代替態様を採用したりすることが可能なことは、当業者に明らかである。
1…通信システム、11−1〜11−n…端末装置、12…中継装置、13−1〜13−m…サーバ装置、21…ネットワーク、111…入力部、112…出力部、113…記憶部、114…通信部、115…制御部、131…通信情報取得部、132…通信条件情報取得部、133…状態情報取得部、134…通信情報判定部、135…評価値計数部、136…評価条件情報取得部、137…評価値判定部、138…状態判定条件情報取得部、139…状態判定部、140…通信制御部、1011、1021、1031…通信条件情報、1041…状態判定条件情報

Claims (6)

  1. 端末装置とネットワークとの間に設けられる中継装置であって、
    前記端末装置から前記ネットワークに対して送信されるHTTPのリクエスト信号に基づく第1の評価値と、前記HTTPのリクエスト信号に応じて前記ネットワークから前記端末装置に対して送信されるHTTPのレスポンス信号に基づく第2の評価値と、前記端末装置により行われた過去の通信に関する状態および当該状態が発生した後における前記HTTPのリクエスト信号あるいは前記HTTPのレスポンス信号に基づく第3の評価値として、点数を計数し、計数されたこれらの点数を合計して合計値を計数し、また、前記合計値を、前記リクエスト信号および前記レスポンス信号の通信を単位として、当該単位ごとにリセットする評価値計数部と、
    前記合計値が所定の閾値を超えたか否かに基づいて、前記端末装置についてマルウェアの感染に関する判定を行う評価値判定部と、
    を備える中継装置。
  2. 前記端末装置により行われた過去の通信に関する状態は、当該状態が発生した後に、所定の期間が経過した後に、リセットされる、
    請求項に記載の中継装置。
  3. 前記第1の評価値は、前記リクエスト信号のヘッダとボディとのそれぞれについて求められ、
    前記第2の評価値は、前記レスポンス信号のヘッダとボディとのそれぞれについて求められる、
    請求項1または請求項のいずれか1項に記載の中継装置。
  4. 前記評価値判定部により行われた判定の結果に基づいて前記端末装置に関する通信の制御を行う通信制御部を備える、
    請求項1から請求項のいずれか1項に記載の中継装置。
  5. 端末装置とネットワークとの間に設けられる中継装置により行われる中継方法であって、
    前記中継装置は、前記端末装置から前記ネットワークに対して送信されるHTTPのリクエスト信号に基づく第1の評価値と、前記HTTPのリクエスト信号に応じて前記ネットワークから前記端末装置に対して送信されるHTTPのレスポンス信号に基づく第2の評価値と、前記端末装置により行われた過去の通信に関する状態および当該状態が発生した後における前記HTTPのリクエスト信号あるいは前記HTTPのレスポンス信号に基づく第3の評価値として、点数を計数し、計数されたこれらの点数を合計して合計値を計数し、また、前記合計値を、前記リクエスト信号および前記レスポンス信号の通信を単位として、当該単位ごとにリセットし、
    前記中継装置は、前記合計値が所定の閾値を超えたか否かに基づいて、前記端末装置についてマルウェアの感染に関する判定を行う、
    中継方法。
  6. 端末装置とネットワークとの間に設けられる中継装置を構成するコンピュータに、
    前記端末装置から前記ネットワークに対して送信されるHTTPのリクエスト信号に基づく第1の評価値と、前記HTTPのリクエスト信号に応じて前記ネットワークから前記端末装置に対して送信されるHTTPのレスポンス信号に基づく第2の評価値と、前記端末装置により行われた過去の通信に関する状態および当該状態が発生した後における前記HTTPのリクエスト信号あるいは前記HTTPのレスポンス信号に基づく第3の評価値として、点数を計数し、計数されたこれらの点数を合計して合計値を計数し、また、前記合計値を、前記リクエスト信号および前記レスポンス信号の通信を単位として、当該単位ごとにリセットする機能
    前記合計値が所定の閾値を超えたか否かに基づいて、前記端末装置についてマルウェアの感染に関する判定を行う機能と、
    を実現させるためのプログラム。
JP2017061352A 2017-03-27 2017-03-27 中継装置、中継方法およびプログラム Active JP6207784B1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017061352A JP6207784B1 (ja) 2017-03-27 2017-03-27 中継装置、中継方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017061352A JP6207784B1 (ja) 2017-03-27 2017-03-27 中継装置、中継方法およびプログラム

Publications (2)

Publication Number Publication Date
JP6207784B1 true JP6207784B1 (ja) 2017-10-04
JP2018163582A JP2018163582A (ja) 2018-10-18

Family

ID=59997788

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017061352A Active JP6207784B1 (ja) 2017-03-27 2017-03-27 中継装置、中継方法およびプログラム

Country Status (1)

Country Link
JP (1) JP6207784B1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020045417A1 (ja) 2018-08-31 2020-03-05 Agc株式会社 光学ガラスおよび光学部品

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015107862A1 (ja) * 2014-01-14 2015-07-23 株式会社Pfu 情報処理装置、方法およびプログラム
JP2016157311A (ja) * 2015-02-25 2016-09-01 富士通株式会社 ネットワーク監視装置、ネットワーク監視方法およびネットワーク監視プログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015107862A1 (ja) * 2014-01-14 2015-07-23 株式会社Pfu 情報処理装置、方法およびプログラム
JP2016157311A (ja) * 2015-02-25 2016-09-01 富士通株式会社 ネットワーク監視装置、ネットワーク監視方法およびネットワーク監視プログラム

Also Published As

Publication number Publication date
JP2018163582A (ja) 2018-10-18

Similar Documents

Publication Publication Date Title
US10248910B2 (en) Detection mitigation and remediation of cyberattacks employing an advanced cyber-decision platform
US20180307832A1 (en) Information processing device, information processing method, and computer readable medium
US20160014148A1 (en) Web anomaly detection apparatus and method
KR102104610B1 (ko) 네트워크 프로토콜의 취약점을 탐지하는 퍼징 방법 및 장치
JP6165224B2 (ja) アプリケーション層ログ分析を基礎とする情報セキュリティー管理システム及びその方法
CN110324416B (zh) 下载路径跟踪方法、装置、服务器、终端及介质
WO2017107119A1 (en) System to monitor and control sensor devices
KR102182045B1 (ko) 제어 장치 및 제어 장치 시스템
CN110351281A (zh) 一种通用数据帧解析方法、装置及设备
US20190384771A1 (en) Extracting device, extracting method and storage medium, and abnormality detecting device and abnormality detecting method
WO2020010726A1 (zh) 混合应用程序的注册登录方法、系统及计算机设备
CN114465823A (zh) 工业互联网终端加密流量数据安全检测方法、装置及设备
CN107277019A (zh) 数据明文获取方法、装置、电子终端及可读存储介质
US20150163053A1 (en) Relay apparatus, method, and system
EP3647982B1 (en) Cyber attack evaluation method and cyber attack evaluation device
JP6207784B1 (ja) 中継装置、中継方法およびプログラム
CN111371889A (zh) 消息处理方法、装置、物联网系统和存储介质
CN106502887A (zh) 一种稳定性测试方法、测试控制器及系统
JP7326903B2 (ja) 情報処理装置及びプログラム
CN115361450B (zh) 请求信息处理方法、装置、电子设备、介质和程序产品
JP6993575B2 (ja) 情報処理プログラム、情報処理装置及び情報処理方法
CN112446984A (zh) 智能门锁控制方法及装置
CN112136119A (zh) 数据处理系统、数据处理方法以及程序
US11176011B2 (en) Apparatus and method for transmitting fuzzing data for one-way protocol software fuzzing
CN116074217B (zh) 网络检测方法、系统、存储介质及电子设备

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170710

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170808

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170905

R150 Certificate of patent or registration of utility model

Ref document number: 6207784

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250