(57)【要約】【課題】ＩｏＴ機器の通信に関する情報の収集を効率良く行う。【解決手段】第１の実施形態の判定装置１０は、ＩｏＴ機器３０の通信に関する情報を収集する。また、判定装置１０は、収集された情報から、ＩｏＴ機器３０による不正通信の検知に用いられるパターンを抽出する。また、判定装置１０は、パターンの数の累積値の変化を所定の曲線を示す関数に近似することによって、変化の収束の度合いを計算する。また、判定装置１０は、収束の度合いが所定値以上であるか否かを判定する。【選択図】図１
2019213103.tif 000002
【特許請求の範囲】
【請求項１】
機器の通信に関する情報を収集する収集部と、
前記収集部によって収集された情報から、前記機器による不正通信の検知に用いられるパターンを抽出する抽出部と、
前記パターンの数の累積値の変化を所定の曲線を示す関数に近似することによって、前記変化の収束の度合いを計算する計算部と、
前記収束の度合いが所定値以上であるか否かを判定する判定部と、
を有することを特徴とする判定装置。
【請求項２】
前記収集部は、接続されている機器のうち、あらかじめ定められた特定の通信先との通信を行っている機器と、通信先の数、使用しているプロトコルの数、及び使用しているポートの数のいずれかがあらかじめ定められた数以上である機器とのいずれにも該当しない機器をＩｏＴ機器とみなし、当該ＩｏＴ機器とみなした機器の通信に関する情報を収集することを特徴とする請求項１に記載の判定装置。
【請求項３】
前記抽出部は、前記機器の通信の通信先、プロトコル、コネクションごとの通信量、通信が発生する時間帯及び通信が発生する時間間隔のいずれかを前記通信のパターンとして抽出することを特徴とする請求項１に記載の判定装置。
【請求項４】
前記計算部は、前記パターンの数の累積値の変化を、前記機器の情報の収集が開始されてから経過した時間、前記時間の対数、前記機器において発生した累積通信量、前記累積通信量の対数、又は発生したコネクション数の累計を変数とする関数に近似することによって、前記収束の度合いを計算することを特徴とする請求項１に記載の判定装置。
【請求項５】
前記判定部は、前記収束の度合いが所定値以上でないと判定した場合、さらに、前記機器の情報の収集が開始されてから所定の時間が経過したか否かを判定することを特徴とする請求項１に記載の判定装置。
【請求項６】
コンピュータによって実行される判定方法であって、
機器の通信に関する情報を収集する収集工程と、
前記収集工程によって収集された情報から、前記機器による不正通信の検知に用いられるパターンを抽出する抽出工程と、
前記パターンの数の累積値の変化を所定の曲線を示す関数に近似することによって、前記変化の収束の度合いを計算する計算工程と、
前記収束の度合いが所定値以上であるか否かを判定する判定工程と、
を含むことを特徴とする判定方法。
【請求項７】
コンピュータを、請求項１から５のいずれか１項に記載の判定装置として機能させるための判定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、判定装置、判定方法及び判定プログラムに関する。
【背景技術】
【０００２】
従来、ＩｏＴ機器等の通信機器における不正通信の検知を行うために、当該通信機器の通信に関する情報を収集し、収集した情報を解析し通信のパターンを学習する方法が知られている。また、その際に、学習のための情報を収集する方法として、あらかじめ定められた特定の期間だけ情報を収集する方法、及び、抽出可能なパターンの数があらかじめ設定された目標数に達するまで情報を収集する方法が知られている。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】入門  機械学習による異常検知  -  Rによる実践ガイド  -  ,コロナ社,井手剛著,ISBN：978-4-339-02491-3
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の情報を収集する方法には、ＩｏＴ機器の通信に関する情報の収集を効率良く行うことが困難な場合があるという問題がある。ここで、一般的に専用機として用いられるＩｏＴ機器には、Ｗｅｂサイトの閲覧等に用いられる汎用機と異なり、通信先等が限られるため、発生する通信のパターンが限定的になる傾向がある。そのため、ＩｏＴ機器の通信に関する情報を過不足なく収集することで、当該ＩｏＴ機器の通信のパターンを効率的に網羅することができると考えられる。
【０００５】
例えば、特定の期間だけ情報を収集する方法については、設定された期間が長すぎて、情報が十分に収集された後も情報の収集が続けられることや、設定された期間が短すぎて、情報が十分に収集できないことが起こり得る。
【０００６】
また、抽出可能なパターンの数があらかじめ設定された目標数に達するまで情報を収集する方法についても、十分な学習を行うのに必要なパターンの数は機器によって異なるため、多すぎず少なすぎない目標数をあらかじめ設定することは困難である。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、判定装置は、機器の通信に関する情報を収集する収集部と、前記収集部によって収集された情報から、前記機器による不正通信の検知に用いられるパターンを抽出する抽出部と、前記パターンの数の累積値の変化を所定の曲線を示す関数に近似することによって、前記変化の収束の度合いを計算する計算部と、前記収束の度合いが所定値以上であるか否かを判定する判定部と、を有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、ＩｏＴ機器の通信に関する情報の収集を効率良く行うことができる。
【図面の簡単な説明】
【０００９】
【図１】図１は、第１の実施形態に係る判定装置の構成の一例を示す図である。
【図２】図２は、曲線について説明するための図である。
【図３】図３は、曲線について説明するための図である。
【図４】図４は、時間を変数とした場合のフィッティングについて説明するための図である。
【図５】図５は、通信量を変数とした場合のフィッティングについて説明するための図である。
【図６】図６は、時間又は通信量を変数とした場合のフィッティングについて説明するための図である。
【図７】図７は、第１の実施形態に係る判定装置の処理の流れを示すフローチャートである。
【図８】図８は、第１の実施形態に係る判定装置の処理の流れを示すフローチャートである。
【図９】図９は、判定プログラムを実行するコンピュータの一例を示す図である。
【発明を実施するための形態】
【００１０】
以下に、本願に係る判定装置、判定方法及び判定プログラムの実施形態を図面に基づいて詳細に説明する。なお、本発明は、以下に説明する実施形態により限定されるものではない。
【００１１】
［第１の実施形態の構成］
まず、図１を用いて、第１の実施形態に係る判定装置の構成について説明する。図１は、第１の実施形態に係る判定装置の構成の一例を示す図である。図１に示すように、判定装置１０は、汎用機２０及びＩｏＴ機器３０と接続されている。また、判定装置１０は、ネットワーク４０を介して、サーバ５０と接続されている。
【００１２】
例えば、判定装置１０は、汎用機２０及びＩｏＴ機器３０と、ネットワーク４０とを接続するためのゲートウェイ装置である。例えば、ネットワーク４０はインターネットである。
【００１３】
ここで、汎用機２０は、サーバマシン、パーソナルコンピュータ、スマートフォン等の、通信機能を有し、汎用的な目的で使用される情報処理装置である。一方、ＩｏＴ機器３０は、専用の目的で使用される機器に通信機能を持たせたものである。例えば、ＩｏＴ機器３０は、工場等の稼働監視センサ、自動車、決済端末、監視カメラ等の種々の機器に通信機能を付加したものである。
【００１４】
次に、判定装置１０について説明する。図１に示すように、判定装置１０は、通信部１１、記憶部１２及び制御部１３を有する。判定装置１０は、接続された各機器の通信に関する情報を収集する。このとき、判定装置１０は、不正通信の検知を目的として通信に関する情報を収集する。そして、判定装置１０は、情報が十分に収集されたか否かを判定する。
【００１５】
また、判定装置１０は、収集した情報を解析し、不正通信を検知するための情報を生成し、出力することができる。さらに、判定装置１０は、生成した情報を用いて不正通信の検知を行ってもよい。例えば、判定装置１０は、収集した情報を基に通信パターンのホワイトリストを生成し、生成したホワイトリストを用いて不正通信の検知を行うことができる。
【００１６】
通信部１１は、汎用機２０及びＩｏＴ機器３０とネットワーク４０との間で送受信されるパケットのプロトコルの変換等を行い、判定装置１０をゲートウェイとして機能させる。また、通信部１１は、パケットをキャプチャし、キャプチャしたパケットを制御部１３に受け渡す。また、通信部１１は、汎用機２０及びＩｏＴ機器３０に対し、ブロック等の通信制御を行うことができる。
【００１７】
記憶部１２は、ＨＤＤ（Hard  Disk  Drive）、ＳＳＤ（Solid  State  Drive）、光ディスク等の記憶装置である。なお、記憶部１２は、ＲＡＭ（Random  Access  Memory）、フラッシュメモリ、ＮＶＳＲＡＭ（Non  Volatile  Static  Random  Access  Memory）等のデータを書き換え可能な半導体メモリであってもよい。記憶部１２は、判定装置１０で実行されるＯＳ（Operating  System）や各種プログラムを記憶する。さらに、記憶部１２は、プログラムの実行で用いられる各種情報を記憶する。
【００１８】
制御部１３は、判定装置１０全体を制御する。制御部１３は、例えば、ＣＰＵ（Central  Processing  Unit）、ＭＰＵ（Micro  Processing  Unit）等の電子回路や、ＡＳＩＣ（Application  Specific  Integrated  Circuit）、ＦＰＧＡ（Field  Programmable  Gate  Array）等の集積回路である。また、制御部１３は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、内部メモリを用いて各処理を実行する。また、制御部１３は、各種のプログラムが動作することにより各種の処理部として機能する。例えば、制御部１３は、収集部１３１、抽出部１３２、計算部１３３及び判定部１３４を有する。
【００１９】
収集部１３１は、ＩｏＴ機器３０の通信に関する情報を収集する。収集部１３１は、通信部１１でキャプチャされたパケットを読み取ることで通信に関する情報を収集することができる。
【００２０】
また、判定装置１０には、ＩｏＴ機器３０だけでなく、汎用機２０が接続されている。汎用機２０は、Ｗｅｂブラウジング等に用いられることがあり、通信先の数、使用しているプロトコルの数、及び使用しているポートの数が多くなる傾向がある。一方、ＩｏＴ機器３０は、通信の目的が限定的であることから、通信先の数、使用しているプロトコルの数、及び使用しているポートの数等が汎用機に比べて少ない傾向がある。
【００２１】
また、汎用機２０は、搭載されたＯＳ特有の通信先と通信を行う場合がある。例えば、汎用機２０にAndroid（登録商標）が搭載されている場合、汎用機２０は、ＯＳの拡張のためのストアであるGooglePlayと通信を行う場合がある（参考ＵＲＬ：https://www.android.com/intl/ja_jp/play/）。
【００２２】
そこで、本実施形態では、ＩｏＴ機器３０の通信を解析の対象とするため、収集部１３１は、接続されている機器のうち、あらかじめ定められた特定の通信先との通信を行っている機器と、通信先の数、使用しているプロトコルの数、及び使用しているポートの数のいずれかがあらかじめ定められた数以上である機器とのいずれにも該当しない機器をＩｏＴ機器３０とみなし、当該ＩｏＴ機器３０とみなした機器の通信に関する情報を収集する。
【００２３】
例えば、判定装置１０は、各ＯＳの特有の通信先の一覧をブラックリストとして記憶しておき、パケットの通信先が当該ブラックリストにヒットした場合、当該パケットに係る通信を行っている機器を汎用機２０とみなすことができる。
【００２４】
抽出部１３２は、収集部１３１によって収集された情報から、ＩｏＴ機器３０による不正通信の検知に用いられるパターンを抽出する。例えば、抽出部１３２は、ＩｏＴ機器３０の通信の通信先、プロトコル、コネクションごとの通信量、通信が発生する時間帯及び通信が発生する時間間隔のいずれかを通信のパターンとして抽出する。
【００２５】
例えば、抽出部１３２は、通信先として宛先ＩＰアドレスを通信のパターンに含めることできる。また、例えば、抽出部１３２は、プロトコルがＴＣＰであるか、又はＵＤＰであるかを示す情報を通信のパターンに含めることできる。また、例えば、抽出部１３２は、コネクション単位の通信量を通信のパターンに含めることができる。また、抽出部１３２は、時間帯ごとに所定の長さのタイムウィンドウを設定し、通信が発生した時刻を含むタイムウィンドウをパターンとして抽出してもよい。また、抽出部１３２は、通信が発生した時間の間隔をパターンとして抽出してもよい。また、通信のパターンは、いわゆるパケットの５タプルの要素のいずれか又は組み合わせであってもよい。なお、抽出部１３２は、抽出対象が通信量や時間といった連続量である場合、当該連続量を離散化した値をパターンとして抽出することができる。
【００２６】
ここで、一般的に、ＩｏＴ機器には、インターネットに接続されてすぐに可能な限りの通信を行うというよりは、デイリーやウィークリーといった実行スパンに応じて通信を行うという特徴がある。
【００２７】
このため、ＩｏＴ機器３０がインターネットに接続された直後には、判定装置１０は、ＩｏＴ機器３０の通信に関する情報を十分に収集できないことが考えられる。逆に、１週間、１か月といった所定の単位の期間が経過した後は、同じような通信が周期的に発生するだけで、判定装置１０は、情報の収集を続けたとしても、有用な情報を得にくくなることが考えられる。
【００２８】
そこで、実施形態では、収集した情報から抽出したパターンの数の累積値の変化に着目し、当該変化が収束するタイミングで判定装置１０による情報の収集を終了させることで、処理の効率化を図っている。
【００２９】
そこで、計算部１３３は、パターンの数の累積値の変化を所定の曲線を示す関数に近似することによって、変化の収束の度合いを計算する。判定部１３４によって収束の度合いが所定値以上であると判定された場合、判定装置１０は情報の収集を終了する。
【００３０】
ここで、計算部１３３は、パターンの数の累積値の変化を、図２に示すようなゴンペルツ曲線を示す関数に近似することができる。図２は、曲線について説明するための図である。なお、図２に示すように、ゴンペルツ曲線は、横軸が無限大の場合にＫに収束する。
【００３１】
例えば、図２のように、ｘをＩｏＴ機器３０の情報の収集が開始されてから経過した時間、ｙをｙ＝Ｋｂｅ-cｘとした場合、計算部１３３は、ｘ＝ｔである場合の収束率をＫｂｅ-cｔ／Ｋ＝ｂｅ-cｔと計算することができる。ただし、Ｋ、ｂ、ｃはいずれも近似処理により決定される正の数であり、０＜ｂ＜１が満たされる。
【００３２】
また、計算部１３３は、図２に示すロジスティック曲線を近似に用いてもよい。その他にも、計算部１３３は、図３に示すような種々の曲線を近似に用いることができる。図３は、曲線について説明するための図である。
【００３３】
図２の例では、横軸は時間であるが、横軸は時間の対数、通信の量、通信の量の対数等であってもよい。つまり、計算部１３３は、パターンの数の累積値の変化を、ＩｏＴ機器３０の情報の収集が開始されてから経過した時間、時間の対数、ＩｏＴ機器３０において発生した累積通信量、累積通信量の対数、又は発生したコネクション数の累計を変数とする関数に近似することによって、収束の度合いを計算する。
【００３４】
ここで、変数の設定ごとの、計算部１３３による近似処理を、図４、図５及び図６を用いて説明する。なお、各図は、計算部１３３の処理を、説明のために視覚的に表現したものである。また、プロット及びフィッティングは、関数への近似と同様の処理を意味するものである。
【００３５】
図４は、時間を変数とした場合のフィッティングについて説明するための図である。計算部１３３は、Ｓ秒ごとに時刻０から時刻Ａまで、パターン数の累積値をプロットしていくものとする。計算部１３３は、プロットされた累積値を曲線にフィッティングし、各パラメータを計算する。そして、計算部１３３は、計算したパラメータを基に時刻Ａにおける収束率を計算する。例えば、ゴンペルツ曲線にフィッティングする場合、計算部１３３は、ｙ＝Ｋｂｅ-cｘにおけるＫ、ｂ、ｃを計算し、収束率ｂｅ-cＡを計算する。
【００３６】
図５は、通信量を変数とした場合のフィッティングについて説明するための図である。計算部１３３は、通信量Ｔキロバイトごとに０キロバイトからＢキロバイトまで、パターン数の累積値をプロットしていくものとする。計算部１３３は、プロットされた累積値を曲線にフィッティングし、各パラメータを計算する。そして、計算部１３３は、計算したパラメータを基に通信量がＢキロバイトであるときの収束率を計算する。例えば、ゴンペルツ曲線にフィッティングする場合、計算部１３３は、ｙ＝Ｋｂｅ-cｘにおけるＫ、ｂ、ｃを計算し、計算部１３３は、収束率ｂｅ-cＢを計算する。
【００３７】
図６は、時間又は通信量を変数とした場合のフィッティングについて説明するための図である。計算部１３３は、所定の秒数ごとに時刻０から時刻の対数がＡになるまで、パターン数の累積値をプロットしていくものとする。計算部１３３は、プロットされた累積値を曲線にフィッティングし、各パラメータを計算する。そして、計算部１３３は、計算したパラメータを基に時刻Ａにおける収束率を計算する。例えば、ゴンペルツ曲線にフィッティングする場合、計算部１３３は、ｙ＝Ｋｂｅ-cｘにおけるＫ、ｂ、ｃを計算し、収束率ｂｅ-cＡを計算する。
【００３８】
判定部１３４は、収束の度合いが所定値以上であるか否かを判定する。例えば、判定部１３４は、収束率が０．９５以上であるか否かを判定する。そして、判定装置１０は、収束率が０．９５以上であると判定された場合、情報の収集が十分に行われたものとして、収集部１３１による情報の収集を停止する。
【００３９】
また、判定部１３４は、収束の度合いが所定値以上でないと判定した場合、さらに、ＩｏＴ機器３０の情報の収集が開始されてから所定の時間が経過したか否かを判定する。これにより、判定装置１０は、情報の収集を開始して一定期間が経過しても累積値が収束しない場合、情報の収集を中止することができる。
【００４０】
［第１の実施形態の処理］
図７及び図８は、第１の実施形態に係る判定装置の処理の流れを示すフローチャートである。まず、図７に示すように、判定装置１０は、通信をキャプチャする（ステップＳ１）。次に、判定装置１０は、キャプチャした通信に係る機器が新規機器であるか否かを判定する（ステップＳ２）。例えば、新規機器とは、新たに追加された汎用機２０又はＩｏＴ機器３０であって、それまでに判定装置１０による情報の収集及び解析の対象とされていない機器である。通信に係る機器が新規機器でない場合（ステップＳ２、Ｎｏ）、判定装置１０は処理を終了する。
【００４１】
一方、通信に係る機器が新規機器である場合（ステップＳ２、Ｙｅｓ）、判定装置１０は、当該機器が汎用機であるか否かを判定する（ステップＳ３）。判定装置１０は、機器が汎用機であると判定した場合（ステップＳ３、Ｙｅｓ）、処理を終了する。一方、判定装置１０は、機器が汎用機でないと判定した場合（ステップＳ３、Ｎｏ）、解析を実行する（ステップＳ４）。
【００４２】
ステップＳ４の処理について、図８を用いて詳細に説明する。まず、判定装置１０は、キャプチャしたパケットからデータを取得し解析用のデータとして追加する（ステップＳ４０１）。そして、判定装置１０は、解析用のデータから通信パターンを探索し抽出する（ステップＳ４０２）。
【００４３】
ここで、抽出した通信パターンの中に新規通信パターンがある場合（ステップＳ４０３、Ｙｅｓ）、又は、新規通信パターンはないが（ステップＳ４０３、Ｎｏ）、所定の条件が充足された場合（ステップＳ４０４、Ｙｅｓ）、判定装置１０は、ステップＳ４０５の処理を実行する。
【００４４】
例えば、判定装置１０は、前回ステップＳ４０５のプロットを行ってから、一定時間が経過している場合、所定の条件が充足されたと判定する。つまり、判定装置１０は、パターンの累積値が増加することなく一定時間が経過したことを示す情報についても、近似処理及び収束率の計算の対象とする。
【００４５】
一方、抽出した通信パターンの中に新規通信パターンがなく（ステップＳ４０３、Ｎｏ）、又は、所定の条件が充足されていない場合（ステップＳ４０４、Ｎｏ）、判定装置１０は、ステップＳ４０１へ戻り、次のデータを対象とした処理を実行する。
【００４６】
次に、判定装置１０は、プロット及びフィッティングを行い（ステップＳ４０５、Ｓ４０６）、収束率を計算する（ステップＳ４０７）。つまり、判定装置１０は、累積値の変化を曲線の関数へ近似し、さらにその時点での収束率を計算する。
【００４７】
ここで、収束率が閾値以上である場合（ステップＳ４０８、Ｙｅｓ）、判定装置１０は、累積値の変化が収束したものとして、それまでに抽出した通信パターンから生成される通信の特徴を出力する（ステップＳ４０９）。
【００４８】
一方、収束率が閾値以上でない場合（ステップＳ４０８、Ｎｏ）、判定装置１０は、累積値の変化が収束していないものとして、さらに、処理時間が閾値以上であるか否かを判定する（ステップＳ４１０）。処理時間が閾値以上でない場合（ステップＳ４１０、Ｎｏ）、判定装置１０は、ステップＳ４０１へ戻り、次のデータを対象とした処理を実行する。また、処理時間が閾値以上である場合（ステップＳ４１０、Ｙｅｓ）、判定装置１０は、当該通信機器についてはパターン化が不可であると判断する（ステップＳ４１１）。
【００４９】
［第１の実施形態の効果］
第１の実施形態の判定装置１０は、ＩｏＴ機器３０の通信に関する情報を収集する。また、判定装置１０は、収集された情報から、ＩｏＴ機器３０による不正通信の検知に用いられるパターンを抽出する。また、判定装置１０は、パターンの数の累積値の変化を所定の曲線を示す関数に近似することによって、変化の収束の度合いを計算する。また、判定装置１０は、収束の度合いが所定値以上であるか否かを判定する。このように、判定装置１０は、収集した情報から抽出したパターンの数が収束しているか否かを判定することができる。このため、判定装置１０は、過不足なく情報を収集することができるため、ＩｏＴ機器の通信に関する情報の収集を効率良く行うことができる。
【００５０】
また、判定装置１０は、接続されている機器のうち、あらかじめ定められた特定の通信先との通信を行っている機器と、通信先の数、使用しているプロトコルの数、及び使用しているポートの数のいずれかがあらかじめ定められた数以上である機器とのいずれにも該当しない機器をＩｏＴ機器３０とみなし、当該ＩｏＴ機器３０とみなした機器の通信に関する情報を収集することができる。これにより、判定装置１０は、汎用機２０とＩｏＴ機器３０とを区別することが可能になる。
【００５１】
また、判定装置１０は、ＩｏＴ機器３０の通信の通信先、プロトコル、コネクションごとの通信量、通信が発生する時間帯及び通信が発生する時間間隔のいずれかを通信のパターンとして抽出することができる。これにより、判定装置１０は、ある程度の情報を収集することで収束されることが予想される通信パターンを抽出することができる。
【００５２】
また、判定装置１０は、パターンの数の累積値の変化を、ＩｏＴ機器３０の情報の収集が開始されてから経過した時間、時間の対数、ＩｏＴ機器３０において発生した累積通信量、累積通信量の対数、又は発生したコネクション数の累計を変数とする関数に近似することによって、収束の度合いを計算する。これにより、判定装置１０は、ＩｏＴ機器３０の性質に合わせた方法で近似及び収束の表かを行うことができる。
【００５３】
また、判定装置１０は、収束の度合いが所定値以上でないと判定した場合、さらに、ＩｏＴ機器３０の情報の収集が開始されてから所定の時間が経過したか否かを判定する。これにより、判定装置１０は、累積値の変化が収束しないと考えられる場合、又は収束に膨大な時間がかかると考えられる場合、処理を打ち切ることができる。
【００５４】
［システム構成等］
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散及び統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散又は統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部又は任意の一部が、ＣＰＵ及び当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００５５】
また、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【００５６】
［プログラム］
一実施形態として、判定装置１０は、パッケージソフトウェアやオンラインソフトウェアとして上記の判定処理を実行する判定プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の判定プログラムを情報処理装置に実行させることにより、情報処理装置を判定装置１０として機能させることができる。ここで言う情報処理装置には、デスクトップ型又はノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やＰＨＳ（Personal  Handyphone  System）等の移動体通信端末、さらには、ＰＤＡ（Personal  Digital  Assistant）等のスレート端末等がその範疇に含まれる。
【００５７】
また、判定装置１０は、ユーザが使用する端末装置をクライアントとし、当該クライアントに上記の判定処理に関するサービスを提供する解析サーバ装置として実装することもできる。例えば、解析サーバ装置は、キャプチャしたパケットを入力とし、収束したか否かを示す情報を出力とする解析サービスを提供するサーバ装置として実装される。この場合、解析サーバ装置は、Ｗｅｂサーバとして実装することとしてもよいし、アウトソーシングによって上記の判定処理に関するサービスを提供するクラウドとして実装することとしてもかまわない。
【００５８】
図９は、判定プログラムを実行するコンピュータの一例を示す図である。コンピュータ１０００は、例えば、メモリ１０１０、ＣＰＵ１０２０を有する。また、コンピュータ１０００は、ハードディスクドライブインタフェース１０３０、ディスクドライブインタフェース１０４０、シリアルポートインタフェース１０５０、ビデオアダプタ１０６０、ネットワークインタフェース１０７０を有する。これらの各部は、バス１０８０によって接続される。
【００５９】
メモリ１０１０は、ＲＯＭ（Read  Only  Memory）１０１１及びＲＡＭ１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、ハードディスクドライブ１０９０に接続される。ディスクドライブインタフェース１０４０は、ディスクドライブ１１００に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ１１００に挿入される。シリアルポートインタフェース１０５０は、例えばマウス１１１０、キーボード１１２０に接続される。ビデオアダプタ１０６０は、例えばディスプレイ１１３０に接続される。
【００６０】
ハードディスクドライブ１０９０は、例えば、ＯＳ１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３、プログラムデータ１０９４を記憶する。すなわち、判定装置１０の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール１０９３として実装される。プログラムモジュール１０９３は、例えばハードディスクドライブ１０９０に記憶される。例えば、判定装置１０における機能構成と同様の処理を実行するためのプログラムモジュール１０９３が、ハードディスクドライブ１０９０に記憶される。なお、ハードディスクドライブ１０９０は、ＳＳＤにより代替されてもよい。
【００６１】
また、上述した実施形態の処理で用いられる設定データは、プログラムデータ１０９４として、例えばメモリ１０１０やハードディスクドライブ１０９０に記憶される。そして、ＣＰＵ１０２０は、メモリ１０１０やハードディスクドライブ１０９０に記憶されたプログラムモジュール１０９３やプログラムデータ１０９４を必要に応じてＲＡＭ１０１２に読み出して、上述した実施形態の処理を実行する。
【００６２】
なお、プログラムモジュール１０９３やプログラムデータ１０９４は、ハードディスクドライブ１０９０に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ１１００等を介してＣＰＵ１０２０によって読み出されてもよい。あるいは、プログラムモジュール１０９３及びプログラムデータ１０９４は、ネットワーク（ＬＡＮ（Local  Area  Network）、ＷＡＮ（Wide  Area  Network）等）を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール１０９３及びプログラムデータ１０９４は、他のコンピュータから、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【符号の説明】
【００６３】
１０  判定装置
１１  通信部
１２  記憶部
１３  制御部
２０  汎用機
３０  ＩｏＴ機器
４０  ネットワーク
５０  サーバ
１３１  収集部
１３２  抽出部
１３３  計算部
１３４  判定部
【図１】
2019213103.tif 000003
【図２】
2019213103.tif 000004
【図３】
2019213103.tif 000005
【図４】
2019213103.tif 000006
【図５】
2019213103.tif 000007
【図６】
2019213103.tif 000008
【図７】
2019213103.tif 000009
【図８】
2019213103.tif 000010
【図９】
2019213103.tif 000011