(57)【要約】【課題】異常原因となる通信を容易に特定できる。【解決手段】特定装置１０は、トラフィックデータから、通信元識別子と通信先識別子との組からなる通信接続パターンを抽出する前処理部１１と、通信接続パターン群の中にホワイトリストにない新規の通信接続パターンがある場合、新規の通信接続パターンを含む通信接続パターン群にＩＤを付与する照合部１３１と、ＩＤが付与された通信接続パターン群のグラフ特徴量を生成して同ＩＤを付与するグラフ特徴量生成部１４と、学習済みのモデル１６１を用いて、生成されたグラフ特徴量が正常であるか否かを判定する異常判定部１６と、異常と判定されたグラフ特徴量のＩＤと対応する新規の通信接続パターンを、新規の通信接続パターンを含む通信接続パターン群の中から検索し、異常原因となる通信として特定する特定部１３２とを有する。【選択図】図１
2019205136.tif 000002
【特許請求の範囲】
【請求項１】
トラフィックデータを取得し、該取得したトラフィックデータから、通信元のホストを識別する通信元識別子と、通信先のホストを識別する通信先識別子との組からなる通信接続パターンを抽出する前処理部と、
正常通信であるトラフィックデータの通信接続パターンを含むホワイトリストと、前記前処理部によって抽出された通信接続パターン群とを照合し、前記通信接続パターン群の中に前記ホワイトリストにない新規の通信接続パターンがある場合、該新規の通信接続パターンを含む通信接続パターン群にＩＤを付与する照合部と、
前記照合部において前記ＩＤが付与された通信接続パターン群を基にグラフ特徴量を生成し、生成したグラフ特徴量に、前記通信接続パターン群に付与されたＩＤと同ＩＤを付与する生成部と、
通信接続パターンに基づくグラフ特徴量を学習したモデルを用いて、前記生成部が生成したグラフ特徴量が正常であるか否かを判定する判定部と、
前記判定部において異常と判定されたグラフ特徴量のＩＤと対応する新規の通信接続パターンを、前記新規の通信接続パターンを含む通信接続パターン群の中から検索し、異常原因となる通信として特定する特定部と、
を有することを特徴とする特定装置。
【請求項２】
前記前処理部は、単位時間毎にトラフィックデータを抽出することを特徴とする請求項１に記載の特定装置。
【請求項３】
正常通信であるトラフィックデータの通信接続パターンを含むホワイトリストを生成するホワイトリスト生成部と、
前記正常通信であるトラフィックデータの通信接続パターン群のグラフ特徴量を前記モデルに学習させて、モデルを生成する学習部と、
をさらに有し、
前記前処理部は、前記正常通信であるトラフィックデータを取得し、該取得したトラフィックデータから前記通信接続パターンを抽出し、
前記生成部は、前記前処理部において前記正常通信であるトラフィックデータから抽出された通信接続パターン群を基にグラフ特徴量を生成することを特徴とする請求項１または２に記載の特定装置。
【請求項４】
前記トラフィックデータは、特定サブネット内のＡＲＰ（Address  Resolution  Protocol）リクエスト、または、端末間におけるＩＰ（Internet  Protocol）通信であることを特徴とする請求項１〜３のいずれか一つに記載の特定装置。
【請求項５】
特定装置が実行する特定方法であって、
トラフィックデータを取得し、該取得したトラフィックデータから、通信元のホストを識別する通信元識別子と、通信先のホストを識別する通信先識別子との組からなる通信接続パターンを抽出する前処理工程と、
正常通信であるトラフィックデータの通信接続パターンを含むホワイトリストと、前記前処理工程において抽出された通信接続パターン群とを照合し、前記通信接続パターン群の中に前記ホワイトリストにない新規の通信接続パターンがある場合、該新規の通信接続パターンを含む通信接続パターン群にＩＤを付与する照合工程と、
前記ＩＤが付与された通信接続パターン群を基にグラフ特徴量を生成し、生成したグラフ特徴量に、前記通信接続パターン群に付与されたＩＤと同ＩＤを付与する生成工程と、
前記通信接続パターンに基づくグラフ特徴量を学習したモデルを用いて、前記生成工程において生成されたグラフ特徴量が正常であるか否かを判定する判定工程と、
前記判定工程において異常と判定されたグラフ特徴量のＩＤと対応する新規の通信接続パターンを、前記新規の通信接続パターンを含む通信接続パターン群の中から検索し、異常原因となる通信として特定する特定工程と、
を含んだことを特徴とする特定方法。
【請求項６】
トラフィックデータを取得し、該取得したトラフィックデータから、通信元のホストを識別する通信元識別子と、通信先のホストを識別する通信先識別子との組からなる通信接続パターンを抽出する前処理ステップと、
正常通信であるトラフィックデータの通信接続パターンを含むホワイトリストと、前記前処理ステップにおいて抽出された通信接続パターン群とを照合し、前記通信接続パターン群の中に前記ホワイトリストにない新規の通信接続パターンがある場合、該新規の通信接続パターンを含む通信接続パターン群にＩＤを付与する照合ステップと、
前記ＩＤが付与された通信接続パターン群を基にグラフ特徴量を生成し、生成したグラフ特徴量に、前記通信接続パターン群に付与されたＩＤと同ＩＤを付与する生成ステップと、
前記通信接続パターンに基づくグラフ特徴量を学習したモデルを用いて、前記生成ステップにおいて生成されたグラフ特徴量が正常であるか否かを判定する判定ステップと、
前記判定ステップにおいて異常と判定されたグラフ特徴量のＩＤと対応する新規の通信接続パターンを、前記新規の通信接続パターンを含む通信接続パターン群の中から検索し、異常原因となる通信として特定する特定ステップと、
をコンピュータに実行させるための特定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、特定装置、特定方法及び特定プログラムに関する。
【背景技術】
【０００２】
ネットワークの異常検知技術として、ニューラルネットやSupport  Vector  Machineなど機械学習を用いた方法がある。一般的に、機械学習を用いた異常検知では、異常が発生した際の要因を特定することが難しい。
【０００３】
そこで、従来技術として、結果の解釈性が高い機械学習手法である決定木を用いて、異常検知時の要因となった特徴量の組み合わせ及び異常判定への分岐条件を特定する手法が提案されている（非特許文献１参照）。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】、渡辺健志他,  「決定木とブースティングに基づく異常値発見」，人口知能学会全国大会論文集,  vol.  16,  no.  1,  pp.  1A3.04.1-1A3.04.4,  2002年5月.
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、判定対象をグラフ特徴量として用いてネットワークトラフィックの異常を検知する場合、異常要因となったグラフ特徴量を特定できたとしても、特徴量自身の解釈が複雑であることが多く、要因となったグラフ特徴量から実ネットワーク上での異常原因通信を導出することが難しい。このため、グラフ特徴量を用いたネットワークトラフィックの異常検知時において、異常原因となる通信の特定の容易化が求められていた。
【０００６】
本発明は、上記に鑑みてなされたものであって、異常原因となる通信を容易に特定できる特定装置、特定方法及び特定プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本発明に係る特定装置は、トラフィックデータを取得し、該取得したトラフィックデータから、通信元のホストを識別する通信元識別子と、通信先のホストを識別する通信先識別子との組からなる通信接続パターンを抽出する前処理部と、正常通信であるトラフィックデータの通信接続パターンを含むホワイトリストと、前処理部によって抽出された通信接続パターン群とを照合し、通信接続パターン群の中にホワイトリストにない新規の通信接続パターンがある場合、該新規の通信接続パターンを含む通信接続パターン群にＩＤを付与する照合部と、照合部においてＩＤが付与された通信接続パターン群を基にグラフ特徴量を生成し、生成したグラフ特徴量に、通信接続パターン群に付与されたＩＤと同ＩＤを付与する生成部と、通信接続パターンに基づくグラフ特徴量を学習したモデルを用いて、生成部が生成したグラフ特徴量が正常であるか否かを判定する判定部と、判定部において異常と判定されたグラフ特徴量のＩＤと対応する新規の通信接続パターンを、新規の通信接続パターンを含む通信接続パターン群の中から検索し、異常原因となる通信として特定する特定部と、を有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、異常原因となる通信を容易に特定できる。
【図面の簡単な説明】
【０００９】
【図１】図１は、実施の形態に係る特定装置の構成の一例を示す図である。
【図２】図２は、図１に示す特定装置による異常原因となる通信の特定処理の処理手順を示すフローチャートである。
【図３】図３は、図２に示す学習処理の処理手順を示すフローチャートである。
【図４】図４は、図２に示す特定処理の処理手順を示すフローチャートである。
【図５】図５は、図１に示す特定装置の処理の流れを説明する図である。
【図６】図６は、図１に示す特定装置の処理の流れを説明する図である。
【図７】図７は、プログラムが実行されることにより、特定装置が実現されるコンピュータの一例を示す図である。
【発明を実施するための形態】
【００１０】
以下、図面を参照して、本発明の一実施形態を詳細に説明する。なお、この実施の形態により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付して示している。
【００１１】
［実施の形態］
まず、本発明の実施の形態について説明する。図１は、実施の形態に係る特定装置の構成の一例を示す図である。
【００１２】
図１に示すように、実施の形態に係る特定装置１０は、前処理部１１、ホワイトリスト生成部１２、異常通信特定部１３、グラフ特徴量生成部１４（生成部）、学習部１５及び異常判定部１６（判定部）を有する。特定装置１０は、例えば、ＲＯＭ（Read  Only  Memory）、ＲＡＭ（Random  Access  Memory）、フラッシュメモリ（Flash  Memory）、ＣＰＵ（Central  Processing  Unit）等を含むコンピュータ等に所定のプログラムが読み込まれて、ＣＰＵが所定のプログラムを実行することで実現される。
【００１３】
前処理部１１は、トラフィックデータを取得し、該取得したトラフィックデータから、通信元のホストを識別する通信元識別子と、通信先のホストを識別する通信先識別子と、の組からなる通信接続パターンを抽出する。前処理部１１は、学習時には、正常通信である学習用トラフィックデータを取得し、該取得した学習用トラフィックデータから、通信接続パターンを抽出する。前処理部１１は、通信異常の特定時に、特定対象となるトラフィックデータを取得し、該取得したトラフィックデータから通信接続パターンを抽出する。
【００１４】
ホワイトリスト生成部１２は、正常通信である学習用トラフィックデータの通信接続パターン群を含むホワイトリストを生成する。ホワイトリスト生成部１２は、学習時において、前処理部１１が学習用トラフィックデータから抽出した通信接続パターン群を基に、ホワイトリストを生成する。ホワイトリスト生成部１２は、生成したホワイトリストを、異常通信特定部１３に出力する。
【００１５】
異常通信特定部１３は、特定対象となるトラフィックデータから、異常原因となる通信を特定する。異常通信特定部１３は、照合部１３１及び特定部１３２を有する。
【００１６】
照合部１３１は、ホワイトリストと、前処理部１１によって抽出された通信接続パターン群とを照合し、通信接続パターン群の中にホワイトリストにない新規の通信接続パターンがあるか否かを判定する。照合部１３１は、通信接続パターン群の中にホワイトリストにない新規の通信接続パターンがある場合、該新規の通信接続パターンを含む通信接続パターン群にＩＤ（identification）を付与して、グラフ特徴量生成部１４に出力する。なお、照合部１３１は、少なくとも、特定対象となるトラフィックデータに対する処理が終了するまで、ＩＤと、このトラフィックデータの通信接続パターン群との対応関係を保持する。
【００１７】
特定部１３２は、新規の通信接続パターンを含む通信接続パターン群の中から、異常判定部１６において異常と判定されたグラフ特徴量のＩＤと対応する新規の通信接続パターンを検索する。そして、特定部１３２は、検索した新規の通信接続パターンに対応する通信を、異常原因となる通信として特定する。特定部１３２は、特定結果を、対処装置に出力する。
【００１８】
グラフ特徴量生成部１４は、入力された通信接続パターン群を基にグラフ特徴量を生成する。グラフ特徴量生成部１４は、学習時には、前処理部１１において学習用トラフィックデータから抽出された通信接続パターン群を基にグラフ特徴量を生成する。グラフ特徴量生成部１４は、通信異常の特定時には、照合部１３１においてＩＤが付与された通信接続パターン群を基にグラフ特徴量を生成し、生成したグラフ特徴量に、この通信接続パターン群に付与されたＩＤと同ＩＤを付与する。
【００１９】
例えば、グラフ特徴量生成部１４は、前処理部１１によって抽出された通信元のホストの識別子と通信先のホストの識別子との組からなる通信接続パターンを用いて、ホストの識別子を頂点とするとともに、ホスト識別子間の通信を辺とする通信履歴グラフを生成する。続いて、グラフ特徴量生成部１４は、通信履歴グラフから、ある頂点について、一次隣接頂点または二次隣接頂点までのグラフ構造に着目して算出される局所的なグラフ特徴量を生成する。そして、グラフ特徴量生成部１４は、通信履歴グラフから、上記の頂点について、グラフ全体の構造に着目して算出される大域的なグラフ特徴量を生成する。続いて、グラフ特徴量生成部１４は、局所的なグラフ特徴量と、大域的なグラフ特徴量とを併用して、ホスト識別子毎に特徴ベクトルを生成する。
【００２０】
学習部１５は、学習時に、グラフ特徴量生成部１４において学習用トラフィックデータの通信接続パターン群を基に生成されたグラフ特徴量を、モデルに学習させて、モデル１６１を生成する。学習部１５は、生成したモデル１６１を、異常判定部１６に出力する。
【００２１】
異常判定部１６は、モデル１６１を用いて、グラフ特徴量生成部１４が生成したグラフ特徴量が正常であるか否かを判定する。モデル１６１は、グラフ特徴量が入力されると、このグラフ特徴量が正常であるか、または、異常であるかを判定する。異常判定部１６は、異常と判定されたグラフ特徴量のＩＤを、異常通信特定部１３に出力する。
【００２２】
［特定装置の処理］
次に、特定装置１０による異常原因となる通信の特定処理について説明する。図２は、図１に示す特定装置１０による異常原因となる通信の特定処理の処理手順を示すフローチャートである。
【００２３】
図２に示すように、特定装置１０は、まず、正常通信である学習用トラフィックデータを学習する学習処理を行う（ステップＳ１）。特定装置１０は、学習処理において、学習用トラフィックデータの通信接続パターン群を含むホワイトリストを生成するとともに、学習用トラフィックデータの通信接続パターン群のグラフ特徴量を学習したモデルを生成する学習処理を実行する。
【００２４】
続いて、特定装置１０は、学習処理において生成したホワイトリストとモデルとを用いて、取得したネットワークトラフィックデータから異常原因となる通信を特定する特定処理を行う（ステップＳ２）。
【００２５】
［学習処理］
次に、図２に示す学習処理（ステップＳ１）について説明する。図３は、図２に示す学習処理の処理手順を示すフローチャートである。
【００２６】
図３に示すように、前処理部１１は、学習時には、正常通信である学習用トラフィックデータを取得し（ステップＳ１１）、該取得した学習用トラフィックデータから、通信接続パターンを抽出する（ステップＳ１２）。前処理部１１は、抽出した通信接続パターン群を、ホワイトリスト生成部１２及びグラフ特徴量生成部１４に出力する。前処理部１１は、学習用トラフィックデータから、単位時間ごとにトラフィックデータを抽出し、該抽出したトラフィックデータに含まれる通信接続パターン群を、グラフ特徴量生成部１４に出力する。以降の学習処理では、単位時間で抽出されたトラフィックデータに含まれる通信接続パターン群を一塊として、照合やグラフ特徴量の生成を行う。
【００２７】
ホワイトリスト生成部１２は、前処理部１１が学習用トラフィックデータから抽出した通信接続パターン群を基にホワイトリストを生成し（ステップＳ１３）、生成したホワイトリストを、異常通信特定部１３に出力する。
【００２８】
グラフ特徴量生成部１４は、単位時間毎のトラフィックデータに含まれる通信接続パターン群を基に、グラフ特徴量を生成する（ステップＳ１４）。グラフ特徴量生成部１４は、単位時間毎のトラフィックデータに含まれる通信接続パターン群のグラフ特徴量を、単位時間毎に生成する。続いて、学習部１５は、学習時に、グラフ特徴量生成部１４において学習用トラフィックデータの通信接続パターン群を基に生成されたグラフ特徴量を、モデルに学習させて（ステップＳ１５）、学習済みのモデル１６１を生成する（ステップＳ１６）。学習部１５は、このモデル１６１を、異常判定部１６に出力する。
【００２９】
［特定処理］
次に、図２に示す特定処理（ステップＳ２）について説明する。図４は、図２に示す特定処理の処理手順を示すフローチャートである。
【００３０】
図４に示すように、特定処理では、前処理部１１が、通信異常の特定対象となるトラフィックデータを取得し（ステップＳ２１）、該取得したトラフィックデータから通信接続パターンを抽出する（ステップＳ２２）。前処理部１１は、特定対象となるトラフィックデータから、単位時間ごとにトラフィックデータを抽出し、該単位時間毎に抽出したトラフィックデータに含まれる通信接続パターン群を、異常通信特定部１３に出力する。以降の特定処理では、単位時間で抽出されたトラフィックデータに含まれる通信接続パターン群を一塊として、照合やグラフ特徴量の生成を行う。
【００３１】
続いて、照合部１３１は、単位時間毎のトラフィックデータに含まれる通信接続パターン群と、ホワイトリストとを照合し（ステップＳ２３）、通信接続パターン群の中にホワイトリストにない新規の通信接続パターンがあるか否かを判定する（ステップＳ２４）。
【００３２】
照合部１３１は、通信接続パターン群の中にホワイトリストにない新規の通信接続パターンがないと判断した場合（ステップＳ２４：Ｎｏ）、特定対象のトラフィックデータは、正常であると判定し（ステップＳ２５）、特定処理を終了する。
【００３３】
これに対し、照合部１３１は、通信接続パターン群の中にホワイトリストにない新規の通信接続パターンがある場合（ステップＳ２４：Ｙｅｓ）、該新規の通信接続パターンを含む通信接続パターン群にＩＤを付与して（ステップＳ２６）、グラフ特徴量生成部１４に出力する。
【００３４】
グラフ特徴量生成部１４は、照合部１３１においてＩＤが付与された通信接続パターン群を基にグラフ特徴量を生成し（ステップＳ２７）、生成したグラフ特徴量に、この通信接続パターン群に付与されたＩＤと同ＩＤを付与する。
【００３５】
異常判定部１６は、モデル１６１を用いて、グラフ特徴量生成部１４が生成したグラフ特徴量が正常であるか否かを判定する（ステップＳ２８）。異常判定部１６が、グラフ特徴量生成部１４が生成したグラフ特徴量が正常であると判定した場合（ステップＳ２８：正常）、特定処理を終了する。
【００３６】
これに対し、異常判定部１６が、グラフ特徴量生成部１４が生成したグラフ特徴量が異常であると判定した場合（ステップＳ２８：異常）、このグラフ特徴量に付与されたＩＤを異常通信特定部１３に出力する（ステップＳ２９）。
【００３７】
そして、特定部１３２は、新規の通信接続パターンを含む通信接続パターン群の中から、異常判定部１６において異常と判定されたグラフ特徴量のＩＤと対応する新規の通信接続パターンを検索し、検索した新規の通信接続パターンに対応する通信を、異常原因となる通信として特定する（ステップＳ３０）。
【００３８】
［特定装置の処理の流れ］
次に、図５及び図６を参照して、上述した処理の流れについて、学習期間と異常検知期間とに分けて、より具体的に説明する。図５及び図６は、図１に示す特定装置の処理の流れを説明する図である。
【００３９】
ここで、以下の説明では、次の条件を想定する。まず、ＬＡＮ（Local  Area  Network）内に感染端末が存在し、感染端末内の悪性プログラムは、侵入拡大のため通信を発生させる。この悪性プログラムは、脆弱性のある端末を発見するため、自感染端末の所属するサブネットのＩＰ（Internet  Protocol）に対しランダムにポートスキャンを行う。この悪性プログラムによるポートスキャンは、５分間隔以上の間隔を空けて実施される。次に、ＬＡＮ環境に関し、／２４の一般的な大きさのサブネットを想定する。また、学習時には、ＬＡＮ内にポートスキャン等の攻撃は発生していないとする。
【００４０】
［学習期間における処理の流れ］
まず、前処理部１１は、正常通信である学習時のトラフィックデータを取得し（図５の（１）参照）、取得したトラフィックデータから、正常通信の通信接続パターンを抽出して（図５の（２）参照）、抽出した通信接続パターン群をホワイトリスト生成部１２に出力する（図５の（３）参照）。
【００４１】
例えば、前処理部１１は、学習期間（例えば４週間）において、特定サブネット内のＡＲＰ（Address  Resolution  Protocol）リクエストを収集し、各ＡＲＰリクエストのＳｒｃＩＰアドレスとＤｓｔＩＰアドレスとの組からなる通信接続パターンを抽出する。ここで、ＤｓｔＩＰアドレスは、ＭＡＣ（Media  Access  Control  address）アドレス解決の対象となるＩＰアドレスを指す。また、ＩＰ通信を利用する場合には、前処理部１１は、学習期間（例えば４週間)において、ＬＡＮ内端末間における全ＩＰ通信を収集し、各ＩＰ通信のＳｒｃＩＰアドレスとＤｓｔＩＰアドレスとの組からなる通信接続パターン、宛先ポート番号、プロトコル番号を抽出する。
【００４２】
続いて、ホワイトリスト生成部１２は、学習時に抽出した通信接続パターン群を記録したホワイトリストを生成し（図５の（４）参照）、異常通信特定部１３に出力する（図５の（５）参照）。
【００４３】
また、前処理部１１は、単位時間毎のトラフィックデータに含まれる通信接続パターン群をグラフ特徴量生成部１４に出力する（図５の（６）参照）。例えば、前処理部１１は、学習時に抽出した通信接続パターン群を５分毎に分割する。
【００４４】
グラフ特徴量生成部１４は、入力された通信接続パターン群を基に、グラフ特徴量を生成し（図５の（７）参照）、学習部１５に出力する（図５の（８）参照）。学習部１５は、このグラフ特徴量を用いてＩＰ毎にモデル１６１を生成または更新する（図５の（９）参照）。学習部１５は、モデル１６１を異常判定部１６に出力し（図５の（１０）参照）、学習処理を終了する。
【００４５】
［異常検知期間における処理の流れ］
次に、異常検知期間における特定装置１０の処理の流れについて説明する。特定装置１０は、各端末について学習モデルを生成し、端末毎に異常判定を行う。特定装置１０では、各端末が、学習期間において通信していない宛先に対し通信を行った場合にのみ、異常判定の対象とする。これは、特定装置１０では、学習期間と同じ宛先に対して通信しているにも関わらず異常として判定された場合、異常原因はその他の端末から発生した通信によりグラフ構造が崩れたことである可能性が高いためである。
【００４６】
まず、図６に示すように、異常検知期間においては、前処理部１１は、特定対象のトラフィックデータを取得し（図６の（１）参照）、取得したトラフィックデータから、通信接続パターンを抽出し（図６の（２）参照）、単位時間毎のトラフィックデータに含まれる通信接続パターン群を異常通信特定部１３に出力する（図６の（３）参照）。
【００４７】
例えば、前処理部１１は、特定対象のＡＲＰリクエストを収集し、収集されたＡＲＰリクエストから５分毎に通信接続パターンを抽出する。また、ＩＰ通信を利用する場合には、ＬＡＮ内の全ＩＰ通信を収集し、収集されたＩＰ通信から５分毎に通信接続パターン、宛先ポート番号、プロトコル番号を抽出する。
【００４８】
照合部１３１は、単位時間毎のトラフィックデータに含まれる通信接続パターン群とホワイトリストとを照合し（図６の（４）参照）、通信接続パターン群の中にホワイトリストにない新規の通信接続パターン群にＩＤを付与して（図６の（５）参照）、グラフ特徴量生成部１４に出力する（図６の（６）参照）。
【００４９】
例えば、ＡＲＰリクエストの場合には、照合部１３１は、５分間毎に抽出された通信接続パターン群と学習期間に生成されたホワイトリストとを照合する。照合部１３１は、ホワイトリストに含まれない新規の通信接続パターンについては、この新規の通信接続パターン及び新規通信接続パターンが含まれる通信接続パターン群を一つの組としてＩＤを付与し、ＩＤを付与した通信接続パターン群をグラフ特徴量生成部１４に出力する。
【００５０】
また、ＩＰ通信の場合には、照合部１３１は、５分間毎に抽出された通信接続パターン群と学習期間に生成したホワイトリストとを照合する。照合部１３１は、ホワイトリストに含まれない新規の通信接続パターンについては、この新規通信接続パターン及び新規通信接続パターンが含まれる通信接続パターン群、さらに宛先ポート番号及びプロトコル番号を一つの組としてＩＤを付与し、ＩＤを付与した通信接続パターン群をグラフ特徴量生成部に出力する。
【００５１】
グラフ特徴量生成部１４は、ＩＤが付与された通信接続パターン群から、同ＩＤが付与されたグラフ特徴量を生成し（図６の（７）参照）、異常判定部１６に出力する（図６の（８）参照）。
【００５２】
異常判定部１６は、モデル１６１を用いてグラフ特徴量が異常であるか否かを判定し（図６の（９）参照）、グラフ特徴量を異常と判定した場合には、異常判定されたグラフ特徴量のＩＤを異常通信特定部１３に出力する（図６の（１０）参照）。
【００５３】
特定部１３２は、異常判定部１６から入力されたＩＤに対応する新規の通信接続パターンを検索し、該当した新規通信接続パターンを異常原因通信（スキャン通信）として特定する（図６の（１１）参照）。さらに、ＩＰ通信の場合には、特定部１３２は、異常判定部１６から入力されたＩＤに対応する新規通信接続パターンを検索し、該当した新規通信接続パターンを異常原因通信（スキャン通信）として特定する。さらに、特定部１３２は、同じくＩＤから異常原因通信の宛先ポート番号とプロトコル番号とを特定することによって、スキャンに用いられたサービスやアプリケーションの特定に利用することができる。
【００５４】
［実施の形態の効果］
このように、実施の形態に係る特定装置１０は、異常原因となる通信を特定する場合には、取得したトラフィックデータから、通信元のホストを識別する通信元識別子と、通信先のホストを識別する通信先識別子との組からなる通信接続パターンを抽出する。
【００５５】
そして、特定装置１０は、ホワイトリストと、抽出された通信接続パターン群とを照合し、通信接続パターン群の中にホワイトリストにない新規の通信接続パターンがある場合、該新規の通信接続パターンを含む通信接続パターン群にＩＤを付与する。このように、実施の形態に係る特定装置１０は、ホワイトリストにない新規の通信接続パターン群が識別可能となるように、ＩＤを付与する。
【００５６】
そして、特定装置１０は、この新規の通信接続パターン群から生成したグラフ特徴量に、通信接続パターン群に付与されたＩＤと同ＩＤを付与した後に、モデルを用いて、前記生成部が生成したグラフ特徴量が正常であるか否かを判定する。このように、実施の形態に係る特定装置１０は、ホワイトリストにない新規の通信接続パターンを含む通信接続パターン群に対してのみ、グラフ特徴量生成及び判定を行うため、全ての通信接続パターンに対して処理を行う場合よりも、処理時間を短縮することができる。
【００５７】
続いて、特定装置１０は、ＩＤを付与した全新規の通信接続パターンの中から、異常と判定したグラフ特徴量のＩＤと対応する新規の通信接続パターンを検索する。このように、実施の形態に係る特定装置１０は、ホワイトリストにない新規の通信接続パターンが識別可能となるように、新規の通信接続パターンを含む通信接続パターン群にＩＤを付与しておくことによって、異常と判定したグラフ特徴量に対応する通信接続パターンを特定することができる。特定装置１０は、検索した新規の通信接続パターンに対応する通信を、異常原因となる通信として特定し、特定結果を、対処装置に出力する。
【００５８】
したがって、特定装置１０では、ホワイトリストに含まれていない通信接続パターン群に対してＩＤを付与後に、グラフ特徴量生成及び判定を行い、異常と判定したグラフ特徴量に対応する通信接続パターン群を、ＩＤを用いて、異常原因となる通信として特定する。このため、特定装置１０では、グラフ特徴量を用いたネットワークトラフィックの異常検知時において、異常原因となる通信の特定の容易異常原因となる通信を容易に特定することができる。さらに、特定装置１０によれば、異常原因となる通信を特定できることにより、異常通信を発生させたサービス或いはアプリケーションの特定や、感染拡大の可能性があるスキャン先ホストの特定も可能になる。
【００５９】
また、特定装置１０では、学習期間において、正常通信であるトラフィックデータの通信接続パターンを含むホワイトリストを生成するとともに、正常通信であるトラフィックデータの通信接続パターン群のグラフ特徴量をモデル１６１に学習させて、モデルを生成する。この結果、特定装置１０では、正常通信であるトラフィックデータの通信接続パターンを学習することによって、適切なホワイトリストと、異常判定を精度よく行えるようなモデル１６１とを得ることができる。そして、特定装置１０では、このように得られたホワイトリストとモデル１６１とを用いて、異常原因である通信を精度よく特定することができる。
【００６０】
［システム構成等］
図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部又は任意の一部が、ＣＰＵ及び当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。本実施の形態に係る特定装置１０は、コンピュータとプログラムによっても実現でき、プログラムを記録媒体に記録することも、ネットワークを通して提供することも可能である。
【００６１】
また、本実施の形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的におこなうこともでき、あるいは、手動的に行なわれるものとして説明した処理の全部又は一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【００６２】
［プログラム］
図７は、プログラムが実行されることにより、特定装置１０が実現されるコンピュータの一例を示す図である。コンピュータ１０００は、例えば、メモリ１０１０、ＣＰＵ１０２０を有する。また、コンピュータ１０００は、ハードディスクドライブインタフェース１０３０、ディスクドライブインタフェース１０４０、シリアルポートインタフェース１０５０、ビデオアダプタ１０６０、ネットワークインタフェース１０７０を有する。これらの各部は、バス１０８０によって接続される。
【００６３】
メモリ１０１０は、ＲＯＭ（Read  Only  Memory）１０１１及びＲＡＭ１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、ハードディスクドライブ１０９０に接続される。ディスクドライブインタフェース１０４０は、ディスクドライブ１１００に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ１１００に挿入される。シリアルポートインタフェース１０５０は、例えばマウス１１１０、キーボード１１２０に接続される。ビデオアダプタ１０６０は、例えばディスプレイ１１３０に接続される。
【００６４】
ハードディスクドライブ１０９０は、例えば、ＯＳ１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３、プログラムデータ１０９４を記憶する。すなわち、特定装置１０の各処理を規定するプログラムは、コンピュータ１０００により実行可能なコードが記述されたプログラムモジュール１０９３として実装される。プログラムモジュール１０９３は、例えばハードディスクドライブ１０９０に記憶される。例えば、特定装置１０における機能構成と同様の処理を実行するためのプログラムモジュール１０９３が、ハードディスクドライブ１０９０に記憶される。なお、ハードディスクドライブ１０９０は、ＳＳＤ（Solid  State  Drive）により代替されてもよい。
【００６５】
また、上述した実施形態の処理で用いられる設定データは、プログラムデータ１０９４として、例えばメモリ１０１０やハードディスクドライブ１０９０に記憶される。そして、ＣＰＵ１０２０が、メモリ１０１０やハードディスクドライブ１０９０に記憶されたプログラムモジュール１０９３やプログラムデータ１０９４を必要に応じてＲＡＭ１０１２に読み出して実行する。
【００６６】
なお、プログラムモジュール１０９３やプログラムデータ１０９４は、ハードディスクドライブ１０９０に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ１１００等を介してＣＰＵ１０２０によって読み出されてもよい。あるいは、プログラムモジュール１０９３及びプログラムデータ１０９４は、ネットワーク（ＬＡＮ、ＷＡＮ（Wide  Area  Network）等）を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール１０９３及びプログラムデータ１０９４は、他のコンピュータから、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【００６７】
以上、本発明者によってなされた発明を適用した実施形態について説明したが、本実施形態による本発明の開示の一部をなす記述及び図面により本発明は限定されることはない。すなわち、本実施形態に基づいて当業者等によりなされる他の実施形態、実施例及び運用技術等は全て本発明の範疇に含まれる。
【符号の説明】
【００６８】
１０  特定装置
１１  前処理部
１２  ホワイトリスト生成部
１３  異常通信特定部
１４  グラフ特徴量生成部
１５  学習部
１６  異常判定部
１３１  照合部
１３２  特定部
１６１  モデル
【図１】
2019205136.tif 000003
【図２】
2019205136.tif 000004
【図３】
2019205136.tif 000005
【図４】
2019205136.tif 000006
【図５】
2019205136.tif 000007
【図６】
2019205136.tif 000008
【図７】
2019205136.tif 000009