(57)【要約】【課題】機器の移動を考慮して効率よく正常動作時の特徴を学習する。【解決手段】記憶部１４が、機器についてネットワーク上の収容位置で抽出された正常動作時の特徴を表す学習結果と機器識別情報とを対応づけた学習結果情報１４ｂを記憶し、判定部１５ｂが、機器から取得される動作時の特徴から導出される情報が、学習結果と異なる場合に異常と判定し、学習部１５ｃが、機器の収容位置の変更を検知した場合に、該機器の正常動作時の特徴を抽出して現在の収容位置における学習結果を導出し、学習結果情報１４ｂに追加し、同一の機器に対応して異なる収容位置における過去の学習結果が学習結果情報１４ｂに所定数以上含まれる場合に、該学習結果同士の類似度合いが所定の閾値以上であれば、該機器の正常動作時の特徴を抽出し学習結果を導出するかわりに、過去の学習結果のうちのいずれかを現在の収容位置における学習結果とする。【選択図】図６
2019009680.tif 000002
【特許請求の範囲】
【請求項１】
機器についてネットワーク上の収容位置で抽出された正常動作時の特徴を表す学習結果と、前記機器を識別する機器識別情報とを対応づけた学習結果情報を記憶する記憶部と、
前記機器から取得される動作時の特徴から導出される情報が、前記学習結果と異なる場合に異常と判定する判定部と、
前記機器の収容位置の変更を検知した場合に、該機器の正常動作時の特徴を抽出して現在の収容位置における学習結果を導出し、前記学習結果情報に追加する学習部と、を備え、
前記学習部は、同一の機器に対応して異なる収容位置における過去の学習結果が前記学習結果情報に所定数以上含まれる場合に、該学習結果同士の類似度合いが所定の閾値以上であれば、該機器の正常動作時の特徴を抽出し学習結果を導出して前記学習結果情報に追加するかわりに、前記過去の学習結果のうちのいずれかを現在の収容位置における学習結果として前記学習結果情報に追加することを特徴とする検知装置。
【請求項２】
前記記憶部は、さらに、前記機器識別情報と対応する機器のネットワーク上の収容位置とを対応づけた収容位置情報を記憶し、
前記学習部は、さらに、前記収容位置情報の前記収容位置に対応する前記機器識別情報の変更を検知した場合に、前記学習結果情報の変更前の機器に対応する学習結果を変更後の機器に対応づけることを特徴とする請求項１に記載の検知装置。
【請求項３】
前記学習結果は、機械学習により学習された機器の正常動作時の特徴を表すモデルであり、
前記判定部は、機器の動作時の特徴を前記モデルに代入して算出されるアノマリスコアを用いて、正常か異常かを判定することを特徴とする請求項１または２に記載の検知装置。
【請求項４】
前記学習結果は、統計情報を用いて学習された機器の正常動作時のパターンを示すホワイトリストであり、
前記判定部は、機器の動作時のパターンがホワイトリストと合致しない場合に異常と判定することを特徴とする請求項１または２に記載の検知装置。
【請求項５】
前記学習結果は、抽出された機器の正常動作時の特徴であり、
前記判定部は、機器の動作時の特徴が前記学習結果のいずれにも該当しない場合に、異常と判定することを特徴とする請求項１または２に記載の検知装置。
【請求項６】
検知装置で実行される検知方法であって、
前記検知装置は、機器についてネットワーク上の収容位置で抽出された正常動作時の特徴を表す学習結果と、前記機器を識別する機器識別情報とを対応づけた学習結果情報を記憶する記憶部を備え、
前記機器から取得される動作時の特徴から導出される情報が、前記学習結果と異なる場合に異常と判定する判定工程と、
前記機器の収容位置の変更を検知した場合に、該機器の正常動作時の特徴を抽出して現在の収容位置における学習結果を導出し、前記学習結果情報に追加する学習工程と、を含み、
前記学習工程において、同一の機器に対応して異なる収容位置における過去の学習結果が前記学習結果情報に所定数以上含まれる場合に、該学習結果同士の類似度合いが所定の閾値以上であれば、該機器の正常動作時の特徴を抽出し学習結果を導出して前記学習結果情報に追加するかわりに、前記過去の学習結果のうちのいずれかを現在の収容位置における学習結果として前記学習結果情報に追加することを特徴とする検知方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、検知装置および検知方法に関する。
【背景技術】
【０００２】
近年、様々な分野でＰＣやサーバに加えタイプの異なるいわゆるＩｏＴ機器が利用されている。一般に、ＩｏＴ機器は、いったんシステムに導入されると、十分なセキュリティ対策が講じられないままに長期間使用される場合が多い。このようなＩｏＴ機器は、攻撃者による分析および未知の攻撃のターゲットとなりやすい。また、ＩｏＴ機器は、特殊なＯＳで構成されたり、ＣＰＵやメモリ等のリソースが不十分だったりして、ウイルス検知ソフトの導入が困難な場合が多い。
【０００３】
そこで、ウイルス検知ソフトを用いずに、機器の正常動作時の特徴を用いて異常を検知する技術が提案されている。例えば、機器の動作中に計測されたシステムコール回数を、導入時等に計測されて予め決められた正常時の基準値と比較して、基準値の範囲内であれば正常と判定し、範囲外であれば異常と判定する（特許文献１参照）。また、機器の導入時に流通するトラフィック等を測定して正常なトラフィック等を学習し、学習したトラフィック等と異なるトラフィック等を異常と検知するルータが知られている。なお、正常動作時の特徴は、機器ごとに管理される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−２３４８４９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来の技術では、機器の取り替えや移動が考慮されていない。すなわち、機器のライフサイクルに応じて故障時に交換された場合や、機器構成が変更され機器の動作環境が変わった場合には、正常動作時の特徴を学習し直したり、正常動作時の特徴の学習結果を引き継いだりする必要がある。
【０００６】
例えば、ＩｏＴ機器は、様々な方法で使用されるため、収容位置が他のネットワークに変更され使用方法が変化すれば、過去の学習で収集・抽出された正常動作時の特徴を活用することができない。しかしながら、モバイル機器等のように移動しながら使用される機器は、収容位置が他のネットワークに変更された都度、学習をし直していては、変更後の収容位置において学習が完了しないために異常検知を開始できない。また、機器の故障に伴って機器を交換する場合には交換前の学習結果を引き継げば、直ちに異常検知を開始できる。
【０００７】
本発明は、上記に鑑みてなされたものであって、機器の移動を考慮して効率よく正常動作時の特徴を学習することを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するために、本発明に係る検知装置は、機器についてネットワーク上の収容位置で抽出された正常動作時の特徴を表す学習結果と、前記機器を識別する機器識別情報とを対応づけた学習結果情報を記憶する記憶部と、前記機器から取得される動作時の特徴から導出される情報が、前記学習結果と異なる場合に異常と判定する判定部と、前記機器の収容位置の変更を検知した場合に、該機器の正常動作時の特徴を抽出して現在の収容位置における学習結果を導出し、前記学習結果情報に追加する学習部と、を備え、前記学習部は、同一の機器に対応して異なる収容位置における過去の学習結果が前記学習結果情報に所定数以上含まれる場合に、該学習結果同士の類似度合いが所定の閾値以上であれば、該機器の正常動作時の特徴を抽出し学習結果を導出して前記学習結果情報に追加するかわりに、前記過去の学習結果のうちのいずれかを現在の収容位置における学習結果として前記学習結果情報に追加することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、機器の移動を考慮して効率よく正常動作時の特徴を学習することができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、本発明の一実施形態に係る検知装置を含むシステムの概略構成を例示する模式図である。
【図２】図２は、検知装置の処理概要を説明するための説明図である。
【図３】図３は、検知装置の処理概要を説明するための説明図である。
【図４】図４は、検知装置の処理概要を説明するための説明図である。
【図５】図５は、検知装置の処理概要を説明するための説明図である。
【図６】図６は、検知装置の額略構成を例示する模式図である。
【図７】図７は、収容位置情報のデータ構成を例示する図である。
【図８】図８は、学習結果情報のデータ構成を例示する図である。
【図９】図９は、移動処理手順を示すフローチャートである。
【図１０】図１０は、交換処理手順を示すフローチャートである。
【図１１】図１１は、検知プログラムを実行するコンピュータの一例を示す図である。
【発明を実施するための形態】
【００１１】
以下、図面を参照して、本発明の一実施形態を詳細に説明する。なお、この実施形態により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付して示している。
【００１２】
［システムの構成］
図１は、本実施形態の検知装置を含むシステムの概略構成を例示する模式図である。図１に例示するように、異常検知対象の機器１は、ＬＡＮ（Local  Area  Network）やＷＡＮ（Wide  Area  Network）やインターネット等のネットワーク３を介して、サーバ２と通信する。
【００１３】
検知装置１０は、ルータ機能を備え、複数のＬＡＮ３に接続される機器１とサーバ２との間の通信を仲介する。また、検知装置１０は、機器１のサーバ２との間の通信の特徴や動作ログを含む機器１の特徴を抽出して、機器１の異常を検知する。
【００１４】
ここで、図２〜図５は、検知装置１０の処理概要を説明するための説明図である。まず、図２は、機器１の正常動作時の特徴の種類を網羅して学習する過程を示している。図２に示すように、検知装置１０は、機器１の正常動作時の特徴を、機械学習技術を用いて抽出したり、通信元や通信先やトラヒック量などの統計情報を用いて作成したりして学習し、学習結果として管理している。そして、検知装置１０は、機器１の判定する動作時の特徴を学習結果と比較し、学習結果と異なる場合に異常と判定することができる。
【００１５】
例えば、図３は、教師なし機械学習により学習された学習結果を用いた異常検知について示している。図３に示すように、機械学習により学習された学習結果は、機器１の正常動作時の特徴を特徴ベクトルに変換して作成されたモデルで表される。この場合に、確認したい機器１の動作時の特徴を特徴ベクトルに変換し、作成されたモデルに代入して算出されるアノマリスコア等を用いて、正常か異常かが判定される。
【００１６】
また、図４は、統計情報を用いて学習された学習結果を用いた異常検知について示している。図４に示すように、統計情報を用いて学習された学習結果は、機器１の正常動作時のパターンを示すホワイトリストで表される。例えば、正常通信から抽出された発ＩＰアドレス、着ＩＰアドレス、着ポート、プロトコル、またはトラヒック量等を用いて統計処理を行うことにより、ホワイトリストが作成される。ホワイトリストは、例えば、発ＩＰアドレス、着ＩＰアドレス、着ポート、プロトコル、またはトラヒック量の最大値、最小値等の組み合わせで表される。この場合に、確認したい機器１の動作時の発ＩＰアドレス、着ＩＰアドレス、着ポート、プロトコル、またはトラヒック量等を抽出し、ホワイトリストと合致するか否かで、正常か異常かが判定される。
【００１７】
ここで、検知装置１０は、正常動作時の特徴が追加された場合に、その正常動作時の特徴を追加して学習した学習内容を管理する。また、検知装置１０は、機器１のネットワーク３上の収容位置が変更された場合に、機器の正常動作時の特徴を学習し直す。例えば、機器１としてのネットワークカメラの収容位置が変更され被写体が変化した場合に、正常動作時の特徴が変化し得る。図５に例示するように、例えば病院のベッド等の静止的な被写体と、交差点の交通等の動的な被写体とでは、正常動作時のトラヒック量が異なるため、正常動作時の特徴が異なる。このように、機器１の移動に伴って使用方法が変化した場合には、機器１の正常動作時の特徴を学習し直す必要がある。
【００１８】
また、モバイル端末のように、移動しながら使用される機器１については、収容位置が変わって使用方法が変化することは、正常通信等の正常動作時の特徴として捉える必要がある。一方、本実施形態の検知装置１０は、モバイル端末のうち、移動が多く、移動に伴い新たに正常動作時の特徴が変化しない機器１について、他のＬＡＮ３等の異なる収容位置での過去の学習結果を活用する。
【００１９】
また、本実施形態の検知装置１０は、同一の収容位置の機器１が故障等のために交換された場合に、交換前の機器１に対応する学習結果を活用する。
【００２０】
［検知装置の構成］
図６は、検知装置の概略構成を例示する模式図である。図６に例示するように、検知装置１０は、パソコン等の汎用コンピュータで実現され、入力部１１、出力部１２、通信制御部１３、記憶部１４、および制御部１５を備える。
【００２１】
入力部１１は、キーボードやマウス等の入力デバイスを用いて実現され、操作者による入力操作に対応して、制御部１５に対して処理開始などの各種指示情報を入力する。出力部１２は、液晶ディスプレイなどの表示装置、プリンター等の印刷装置等によって実現される。
【００２２】
通信制御部１３は、ＮＩＣ（Network  Interface  Card）等で実現され、ネットワーク３を介したサーバ２等の外部の装置と制御部１５との通信を制御する。
【００２３】
記憶部１４は、ＲＡＭ（Random  Access  Memory）、フラッシュメモリ（Flash  Memory）等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現され、後述する分類処理により特定される正常な状態のモデルのパラメータ等が記憶される。なお、記憶部１４は、通信制御部１３を介して制御部１５と通信する構成でもよい。
【００２４】
本実施形態において、記憶部１４は、収容位置情報１４ａおよび学習結果情報１４ｂを記憶する。収容位置情報１４ａは、機器１を識別する機器識別情報と、対応する機器１のネットワーク上の収容位置とを対応づけた情報である。図７は、収容位置情報１４ａのデータ構成を例示する図である。図７には、ＭＡＣアドレス等の機器識別情報を示す物理アドレスと、ＩＰアドレス等の機器１のネットワーク上の収容位置を示す論理アドレスとの対応づけが例示されている。例えば、物理アドレス「ａａ」の機器１は、現在、論理アドレス「０１」の収容位置にあることがわかる。
【００２５】
学習結果情報１４ｂは、機器１についてネットワーク上の収容位置で抽出された正常動作時の特徴を表す学習結果と機器を識別する機器識別情報とを対応づけた情報である。図８は、学習結果情報１４ｂのデータ構成を例示する図である。図８に示す例では、機器１の機器識別情報を表す物理アドレスと、各機器１について、ネットワーク上の収容位置を示す論理アドレスごとの図２に例示した学習結果とが対応づけされている。例えば、物理アドレス「ａａ」の機器１について、論理アドレス「０１」の収容位置における学習結果「学習結果０１」と、論理アドレス「０２」の収容位置における学習結果「学習結果０２」とが含まれている。
【００２６】
図６の説明に戻る。制御部１５は、ＣＰＵ（Central  Processing  Unit）等を用いて実現され、メモリに記憶された処理プログラムを実行する。これにより、制御部１５は、図１に例示するように、ルータ機能部１５ａ、判定部１５ｂ、および学習部１５ｃとして機能する。なお、これらの機能部は、それぞれ、あるいは一部が異なるハードウェアに実装されてもよい。
【００２７】
ルータ機能部１５ａは、ＬＡＮ３に接続される機器１とサーバ２との間の通信を仲介する。また、ルータ機能部１５ａは、収容位置情報１４ａを管理している。例えば、ルータ機能部１５ａは、ＬＡＮ３に接続される機器１の収容位置を示すＩＰアドレスと、機器識別情報を表すＭＡＣアドレスとの対応表を、収容位置情報１４ａとして管理している。
【００２８】
その際、ルータ機能部１５ａは、機器１にＩＰアドレスを払い出す際のＤＨＣＰ（Dynamic  Host  Configuration  Protocol）のＭＡＣアドレス管理テーブル、無線ＬＡＮのＭＡＣアドレスフィルタリング等のＵＰｎＰ（Universal  Plug  and  Play）を用いたアクセスコントロールリスト、あるいはＡＲＰ（Address  Resolution  Protocol）テーブル等を利用する。すなわち、ルータ機能部１５ａは、これらの技術において管理されている機器１の移動やオペレータ等による変更を契機に、収容位置情報１４ａを変更する。
【００２９】
判定部１５ｂは、機器１から取得される動作時の特徴から導出される情報が、学習結果と異なる場合に異常と判定する。具体的には、上述したように、例えば、学習結果が機械学習により学習された機器１の正常動作時の特徴を表すモデルである場合には、判定部１５ｂは、確認したい動作時の特徴を特徴ベクトルに変換し、モデルに代入して算出されるアノマリスコアが所定の閾値以上の場合に、異常と判定する。
【００３０】
あるいは、学習結果が統計情報を用いて学習されたホワイトリストである場合には、判定部１５ｂは、確認したい機器１の動作時の発ＩＰアドレス、着ＩＰアドレス、着ポート、プロトコル、またはトラヒック量等を抽出し、ホワイトリストと合致するか否かで、正常か異常かを判定する。すなわち、判定部１５ｂは、判定対象の通信のパターンを学習結果に含まれる通信のパターンと対比して、いずれのパターンとも異なる場合に異常な通信と判定する。
【００３１】
なお、学習結果は、機器１の正常動作時の特徴のリストであってもよい。この場合には、判定部１５ｂは、確認したい機器１の動作時の特徴が学習結果に示される正常動作時の特徴のいずれとも異なる場合に、異常と判定する。
【００３２】
学習部１５ｃは、機器１の正常動作時の特徴を抽出して現在の収容位置における学習結果を導出し、学習結果情報１４ｂに保存する。すなわち、学習部１５ｃは、機器１の正常動作時の通信や動作ログ等の情報を取得して、これらの情報から抽出した正常動作時の特徴を用いて、この機器１の現在の収容位置における学習結果を導出する。正常動作時の特徴の抽出には、例えば、機械学習や通信の送信先に関する統計情報等が適用される。また、学習部１５ｃは、学習結果情報１４ｂに各学習結果を抽出した収容位置を対応付けて保存する。
【００３３】
また、学習部１５ｃは、機器１の収容位置の変更を検知した場合に、該機器１の正常動作時の特徴を抽出して、変更後の現在の収容位置における学習結果を導出して学習結果情報１４ｂに追加する。
【００３４】
具体的には、学習部１５ｃは、機器１の収容位置の変更すなわち移動を検知した場合に、変更後の収容位置において正常動作時の特徴を抽出し直すことにより新しい学習結果を導出して、収容位置と対応づけて学習結果情報１４ｂに追加する。したがって、機器１の移動に応じて学習結果が追加される。
【００３５】
なお、機器１の移動は、例えば、ルータ機能部１５ａが管理しており、機器１の収容位置が変化した場合、学習部１５ｃに通知する。これにより、学習部１５ｃは機器１の移動を検知する。
【００３６】
また、学習部１５ｃは、同一の機器１に対応して異なる収容位置における過去の学習結果が学習結果情報１４ｂに所定数以上含まれる場合に、該学習結果同士の類似度合いが所定の閾値以上であれば、該機器１から正常動作時の特徴を抽出し学習結果を導出して学習結果情報１４ｂに追加するかわりに、過去の学習結果のうちのいずれかを、現在の収容位置における学習結果として学習結果情報１４ｂに追加する。
【００３７】
すなわち、学習部１５ｃは、モバイル端末のように移動しながら使用するために移動の回数が多い機器１について、移動に伴い使用方法が変わらない場合には、他のＬＡＮ３等の異なる収容位置における過去の学習結果を活用する。
【００３８】
具体的には、学習部１５ｃは、学習結果情報１４ｂを参照し、同一の機器１について、異なる収容位置で抽出された所定数Ｎ以上の学習結果が含まれる場合には、この機器１は移動の回数が多いものとして、他の収容位置における過去の学習結果の活用を検討する。例えば、学習部１５ｃは、異なる収容位置に対応して導出された過去の学習結果が相互に類似している場合に、移動により機器１の使用方法が変わらないものとして、過去の学習結果を活用する。
【００３９】
そこで、学習部１５ｃは、Ｎ以上の収容位置が異なる過去の学習結果同士の類似度合いを算出する。例えば、正常通信のパターンで表される学習結果について、学習部１５ｃは、２つの学習結果の組み合わせごとに、正常通信のパターンが一致する数が多いものほど高くなるスコアを類似度合いとして算出する。学習部１５ｃは、算出したスコアのすべてが所定の閾値以上の場合に、学習結果同士が類似していると判定する。その場合に、学習部１５ｃは、例えば、類似度合いを表すスコアが最も高い学習結果のうちの一方を、活用する学習結果として選定する。また、学習部１５ｃは、選定した学習結果を、現在の収容位置での学習結果として学習結果情報１４ｂに追加して活用する。これにより、ここで選定された学習結果が以降の移動においても引き続き活用されることになる。
【００４０】
なお、学習部１５ｃは、過去の学習結果同士の類似度合いが所定の閾値未満の場合には、機器１の正常動作時の特徴の抽出が完了していないものとして、正常動作時の特徴を抽出し、学習結果として学習結果情報１４ｂに追加する。この場合に、学習部１５ｃは、ここで抽出した正常動作時の特徴を、過去の学習結果のいずれかあるいは過去の学習結果のすべてを併合したものに追加してもよい。この場合に、正常動作時の特徴を抽出する学習を収束するまで繰り返すことが容易になる。
【００４１】
また、学習部１５ｃは、収容位置情報１４ａの収容位置に対応する機器１の機器識別情報の変更を検知した場合に、学習結果情報１４ｂの変更前の機器１に対応する学習結果を現在の機器１に対応づける。
【００４２】
具体的には、学習部１５ｃは、故障等により同一の収容位置の機器１が変更されたことを検知した場合に、学習結果情報１４ｂを参照し、変更前の機器１に対応する学習結果を現在の機器１に対応づける変更を行う。機器１の変更は、例えば、ルータ機能部１５ａが管理しており、収容位置情報１４ａの変更があった場合に、学習部１５ｃに通知する。これにより、学習部１５ｃは機器１の変更を検知する。このように、検知装置１０は、機器１が交換された場合に、旧機器１の学習結果を活用することができる。
【００４３】
［分類処理］
次に、図９および図１０を参照して、本実施形態に係る検知装置１０による検知処理について説明する。検知処理は、移動処理と交換処理とを含む。
【００４４】
まず、図９は、移動処理手順を示すフローチャートである。図９のフローチャートは、例えば、ある収容位置において、新規にＬＡＮ３に接続された機器１が検知されたタイミングで開始される（ステップＳ１）。
【００４５】
学習部１５ｃは、学習結果情報１４ｂを参照し、この機器１の他のＬＡＮ３での利用実績の有無、すなわち、過去の学習結果の有無を確認する（ステップＳ２）。学習結果情報１４ｂにこの機器１に対応する過去の学習結果が含まれていない場合には（ステップＳ２，０）、学習部１５ｃは、新規の機器１として、この収容位置における正常動作時の特徴を抽出して、学習結果を導出する（ステップＳ３）。これにより、一連の移動処理が終了する。
【００４６】
一方、学習結果情報１４ｂに含まれるこの機器１に対応する過去の学習結果が所定数Ｎ未満の場合には（ステップＳ２，Ｎ未満）、学習部１５ｃは、機器１の収容替えすなわち収容位置が変更されたと判定する。この場合に、学習部１５ｃは、この収容位置における正常動作時の特徴を抽出して、学習結果を導出する（ステップＳ４）。これにより、一連の移動処理が終了する。
【００４７】
また、学習結果情報１４ｂに含まれるこの機器１に対応する過去の学習結果が所定数Ｎ以上の場合には（ステップＳ２，Ｎ以上）、学習部１５ｃは、過去の学習結果同士が類似しているか否かを確認する（ステップＳ５）。
【００４８】
過去の学習結果同士が類似している場合には（ステップＳ５、Ｙｅｓ）、学習部１５ｃは、移動による使用方法に変化はないものとし、現在の収容位置における学習結果として過去と同一の学習結果を活用する（ステップＳ６）。
【００４９】
一方、過去の学習結果同士が類似していない場合には（ステップＳ５、Ｎｏ）、学習部１５ｃは、正常動作時の特徴の抽出を繰り返し、過去の収容位置において収集された正常動作時の特徴に追加する（ステップＳ７）。これにより、一連の移動処理が終了する。この場合に、正常動作時の特徴の抽出が早期に完了するため、学習が早期に完了する。
【００５０】
次に、図１０は、交換処理手順を示すフローチャートである。図１０のフローチャートは、ある収容位置の機器ＡＡが機器ＢＢに交換されたことを学習部１５ｃが検知したタイミングで開始される（ステップＳ１１）。例えば、故障した機器ＡＡが機器ＢＢに交換された場合に、オペレータによるＤＨＣＰのＭＡＣアドレスや無線ＬＡＮのアクセス可能ＭＡＣアドレスの操作入力を実施する。すなわち、交換前のＭＡＣアドレスを削除し、交換後のＭＡＣアドレスに変更する。この変更等を契機に、ルータ機能部１５ａが、収容位置情報１４ａを変更し、機器ＡＡから機器ＢＢへの交換を学習部１５ｃに通知する。これにより、学習部１５ｃが、この収容位置における機器ＡＡから機器ＢＢへの交換を検知する。
【００５１】
この場合に、学習部１５ｃは、学習結果情報１４ｂを参照して、機器ＡＡのこの収容位置における学習結果を抽出し、これを機器ＢＢの物理アドレスに対応づけて保存する。その後、判定部１５ｂが、機器ＢＢについて、機器ＡＡの学習結果を利用して異常検知を開始する（ステップＳ１２）。これにより、一連の交換処理が終了する。
【００５２】
以上、説明したように、本実施形態の検知装置１０において、記憶部１４が、機器１についてネットワーク上の収容位置で抽出された正常動作時の特徴を表す学習結果と、機器１を識別する機器識別情報とを対応づけた学習結果情報１４ｂを記憶する。また、判定部１５ｂが、機器から取得される動作時の特徴から導出される情報が、学習結果と異なる場合に異常と判定する。
【００５３】
また、学習部１５ｃは、機器１の収容位置の変更を検知した場合に、該機器１の正常動作時の特徴を抽出して現在の収容位置における学習結果を導出して学習結果情報１４ｂに追加する。この学習部１５ｃは、同一の機器１に対応して異なる収容位置における過去の学習結果が学習結果情報１４ｂに所定数以上含まれる場合に、該学習結果同士の類似度合いが所定の閾値以上であれば、該機器１の正常動作時の特徴を抽出し学習結果を導出して学習結果情報１４ｂに追加するかわりに、過去の学習結果のうちのいずれかを現在の収容位置における学習結果として学習結果情報１４ｂに追加する。
【００５４】
これにより、検知装置１０は、モバイル端末のような移動により使用方法が変わらない機器１について、収容位置が変わっても正常動作時の特徴を学習し直すことなく、過去の学習結果を活用する。また、オペレータの介在が必要なくオペレータの作業負荷を低減させることができる。このように、検知装置１０によれば、機器１の移動を考慮して効率よく正常動作時の特徴を学習することが可能となる。
【００５５】
また、記憶部１４は、さらに、機器識別情報と対応する機器のネットワーク上の収容位置とを対応づけた収容位置情報１４ａを記憶する。そして、収容位置情報１４ａの収容位置に対応する機器識別情報が変更された場合に、学習部１５ｃが、学習結果情報１４ｂの変更前の機器に対応する学習結果を変更後の機器に対応づける。
【００５６】
これにより検知装置１０は、故障等により交換された機器１について、交換前の機器の学習結果を活用して容易に異常検知を行うことが可能となる。オペレータは機器１の交換に伴ってＤＨＣＰのＭＡＣアドレスや無線ＬＡＮのアクセス可能ＭＡＣアドレスの変更等を行うだけで足り、オペレータの作業負荷を低減させることができる。このように、検知装置１０によれば、機器の取り換えを考慮して効率よく正常動作時の特徴を学習することが可能となる。
【００５７】
［プログラム］
上記実施形態に係る検知装置１０が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。一実施形態として、検知装置１０は、パッケージソフトウェアやオンラインソフトウェアとして上記の検知処理を実行する検知プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の検知プログラムを情報処理装置に実行させることにより、情報処理装置を検知装置１０として機能させることができる。ここで言う情報処理装置には、デスクトップ型またはノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やＰＨＳ（Personal  Handyphone  System）などの移動体通信端末、さらには、ＰＤＡ（Personal  Digital  Assistants）などのスレート端末などがその範疇に含まれる。
【００５８】
また、検知装置１０は、ユーザが使用する端末装置をクライアントとし、当該クライアントに上記の検知処理に関するサービスを提供するサーバ装置として実装することもできる。例えば、検知装置１０は、機器１の動作時の特徴量を入力とし、正常か異常かの判定結果を出力する検知処理サービスを提供するサーバ装置として実装される。この場合、検知装置１０は、Ｗｅｂサーバとして実装することとしてもよいし、アウトソーシングによって上記の検知処理に関するサービスを提供するクラウドとして実装することとしてもかまわない。以下に、検知装置１０と同様の機能を実現する検知プログラムを実行するコンピュータの一例を説明する。
【００５９】
図１１は、検知プログラムを実行するコンピュータの一例を示す図である。コンピュータ１０００は、例えば、メモリ１０１０と、ＣＰＵ１０２０と、ハードディスクドライブインタフェース１０３０と、ディスクドライブインタフェース１０４０と、シリアルポートインタフェース１０５０と、ビデオアダプタ１０６０と、ネットワークインタフェース１０７０とを有する。これらの各部は、バス１０８０によって接続される。
【００６０】
メモリ１０１０は、ＲＯＭ（Read  Only  Memory）１０１１およびＲＡＭ１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、ハードディスクドライブ１０３１に接続される。ディスクドライブインタフェース１０４０は、ディスクドライブ１０４１に接続される。ディスクドライブ１０４１には、例えば、磁気ディスクや光ディスク等の着脱可能な記憶媒体が挿入される。シリアルポートインタフェース１０５０には、例えば、マウス１０５１およびキーボード１０５２が接続される。ビデオアダプタ１０６０には、例えば、ディスプレイ１０６１が接続される。
【００６１】
ここで、ハードディスクドライブ１０３１は、例えば、ＯＳ１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３およびプログラムデータ１０９４を記憶する。上記実施形態で説明した各テーブルは、例えばハードディスクドライブ１０３１やメモリ１０１０に記憶される。
【００６２】
また、検知プログラムは、例えば、コンピュータ１０００によって実行される指令が記述されたプログラムモジュール１０９３として、ハードディスクドライブ１０３１に記憶される。具体的には、上記実施形態で説明した検知装置１０が実行する各処理が記述されたプログラムモジュール１０９３が、ハードディスクドライブ１０３１に記憶される。
【００６３】
また、検知プログラムによる情報処理に用いられるデータは、プログラムデータ１０９４として、例えば、ハードディスクドライブ１０３１に記憶される。そして、ＣＰＵ１０２０が、ハードディスクドライブ１０３１に記憶されたプログラムモジュール１０９３やプログラムデータ１０９４を必要に応じてＲＡＭ１０１２に読み出して、上述した各手順を実行する。
【００６４】
なお、検知プログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ハードディスクドライブ１０３１に記憶される場合に限られず、例えば、着脱可能な記憶媒体に記憶されて、ディスクドライブ１０４１等を介してＣＰＵ１０２０によって読み出されてもよい。あるいは、検知プログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ＬＡＮやＷＡＮ等のネットワークを介して接続された他のコンピュータに記憶され、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【００６５】
以上、本発明者によってなされた発明を適用した実施形態について説明したが、本実施形態による本発明の開示の一部をなす記述および図面により本発明は限定されることはない。すなわち、本実施形態に基づいて当業者等によりなされる他の実施形態、実施例および運用技術等は全て本発明の範疇に含まれる。
【符号の説明】
【００６６】
１０  検知装置
１１  入力部
１２  出力部
１３  通信制御部
１４  記憶部
１４ａ  収容位置情報
１４ｂ  学習結果情報
１５  制御部
１５ａ  ルータ機能部
１５ｂ  判定部
１５ｃ  学習部
【図１】
2019009680.tif 000003
【図２】
2019009680.tif 000004
【図３】
2019009680.tif 000005
【図４】
2019009680.tif 000006
【図５】
2019009680.tif 000007
【図６】
2019009680.tif 000008
【図７】
2019009680.tif 000009
【図８】
2019009680.tif 000010
【図９】
2019009680.tif 000011
【図１０】
2019009680.tif 000012
【図１１】
2019009680.tif 000013