(57)【特許請求の範囲】
【請求項１】
設備を識別するための設備ＩＤを含む異常検知結果を取得することで、前記設備ＩＤに対応する設備に異常が発生したことを検知する異常検知部と、
前記異常検知部から送信された前記異常検知結果に含まれる前記設備ＩＤに基づいて、前記設備ＩＤと前記設備に発生した異常に対して調整を行った時刻を示す調整時刻とを関連付けた調整履歴データから、前記設備ＩＤに対応する前記設備の調整頻度を求め、前記調整頻度が前記設備に対してあらかじめ設定された許容回数を超過している場合に、前記設備が攻撃を受けたと判定する攻撃判定部と
を備えた攻撃検知装置。
【請求項２】
前記調整履歴データを記憶する記憶部
をさらに備えた請求項１に記載の攻撃検知装置。
【請求項３】
前記攻撃判定部は、
前記異常検知部から前記異常検知結果を取得することで、前記異常検知結果に含まれている前記設備ＩＤに対応する前記設備を特定し、特定した前記設備に関して調整が必要であることの報知を行い、
前記報知に応じて前記異常が発生した前記設備に対する調整が行われた時刻を前記調整時刻として取得し、
前記設備ＩＤと前記調整時刻とを関連付けた新たなデータを前記記憶部に記憶させることで前記調整履歴データを更新する
請求項２に記載の攻撃検知装置。
【請求項４】
前記記憶部には、前記設備ＩＤごとの前記調整頻度を求めるための時間幅と前記許容回数とを含む許容範囲データがさらに記憶されており、
前記攻撃判定部は、前記時間幅に対する調整頻度を求め、前記調整頻度が前記許容回数を超過している場合に、前記設備が攻撃を受けたと判定する
請求項２または３に記載の攻撃検知装置。
【請求項５】
前記設備ＩＤに関連付けて前記記憶部に記憶されている前記時間幅および前記許容回数を、前記攻撃判定部による判定結果の履歴に基づいて学習し、学習結果に基づいて前記許容範囲データを更新する学習部
をさらに備えた請求項４に記載の攻撃検知装置。
【請求項６】
コンピュータが、
設備を識別するための設備ＩＤを含む異常検知結果を取得することで、前記設備ＩＤに対応する設備に異常が発生したことを検知し、前記異常検知結果を送信する異常検知ステップと、
前記異常検知ステップにおいて送信された前記異常検知結果に含まれる前記設備ＩＤに基づいて、前記設備ＩＤと前記設備に発生した異常に対して調整を行った時刻を示す調整時刻とを関連付けた調整履歴データから、前記設備ＩＤに対応する前記設備の調整頻度を求め、前記調整頻度が前記設備に対してあらかじめ設定された許容回数を超過している場合に、前記設備が攻撃を受けたと判定する攻撃判定ステップと
を実行する攻撃検知方法。
【請求項７】
コンピュータに、
設備を識別するための設備ＩＤを含む異常検知結果を取得することで、前記設備ＩＤに対応する設備に異常が発生したことを検知し、前記異常検知結果を送信する異常検知ステップと、
前記異常検知ステップにおいて送信された前記異常検知結果に含まれる前記設備ＩＤに基づいて、前記設備ＩＤと前記設備に発生した異常に対して調整を行った時刻を示す調整時刻とを関連付けた調整履歴データから、前記設備ＩＤに対応する前記設備の調整頻度を求め、前記調整頻度が前記設備に対してあらかじめ設定された許容回数を超過している場合に、前記設備が攻撃を受けたと判定する攻撃判定ステップと
を実行させるための攻撃検知プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、工場、プラント等の設備がサイバー攻撃を受けたことを検知する攻撃検知装置、攻撃検知方法、および攻撃検知プログラムに関する。
【背景技術】
【０００２】
工場、プラント等の設備の正常状態または故障状態が既知の場合に、過去のログと現在の挙動とを比較して、比較結果に基づく外れ度合いを用いて、設備の異常を検知する方法がある（例えば、特許文献１、２参照）。【０００３】
さらに、事前に設備の正常状態が定義できない場合に、過去のログから適応的に設備の正常状態を推定する方法がある（例えば、特許文献３参照）。【０００４】
これらの従来の方法は、工場、プラント等の設備の異常を検知する場合には有効である。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第６１４８３１６号公報
【特許文献２】特開２０１８−０７３２５８号公報
【特許文献３】特開平０８−０１４９５５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記の従来の方法のいずれにおいても、検知した異常が、設備自身の故障あるいは劣化に起因しているか、または外部からのサイバー攻撃に起因しているかを判定することは困難であった。【０００７】
本発明は、かかる課題を解決するためになされたものであり、検知した設備異常がサイバー攻撃に起因しているか否かを判定することが可能な攻撃検知装置、攻撃検知方法、および攻撃検知プログラムを得ることを目的とする。
【課題を解決するための手段】
【０００８】
本発明に係る攻撃検知装置は、設備を識別するための設備ＩＤを含む異常検知結果を取得することで、前記設備ＩＤに対応する設備に異常が発生したことを検知する異常検知部と、前記異常検知部から送信された前記異常検知結果に含まれる前記設備ＩＤに基づいて、前記設備ＩＤと前記設備に発生した異常に対して調整を行った時刻を示す調整時刻とを関連付けた調整履歴データから、前記設備ＩＤに対応する前記設備の調整頻度を求め、前記調整頻度が前記設備に対してあらかじめ設定された許容回数を超過している場合に、前記設備が攻撃を受けたと判定する攻撃判定部とを備えたものである。【０００９】
また、本発明に係る攻撃検知方法は、設備を識別するための設備ＩＤを含む異常検知結果を取得することで、前記設備ＩＤに対応する設備に異常が発生したことを検知し、前記異常検知結果を送信する異常検知ステップと、前記異常検知ステップにおいて送信された前記異常検知結果に含まれる前記設備ＩＤに基づいて、前記設備ＩＤと前記設備に発生した異常に対して調整を行った時刻を示す調整時刻とを関連付けた調整履歴データから、前記設備ＩＤに対応する前記設備の調整頻度を求め、前記調整頻度が前記設備に対してあらかじめ設定された許容回数を超過している場合に、前記設備が攻撃を受けたと判定する攻撃判定ステップとを備えたものである。【００１０】
また、本発明に係る攻撃検知プログラムは、コンピュータに、設備を識別するための設備ＩＤを含む異常検知結果を取得することで、前記設備ＩＤに対応する設備に異常が発生したことを検知し、前記異常検知結果を送信する異常検知ステップと、前記異常検知ステップにおいて送信された前記異常検知結果に含まれる前記設備ＩＤに基づいて、前記設備ＩＤと前記設備に発生した異常に対して調整を行った時刻を示す調整時刻とを関連付けた調整履歴データから、前記設備ＩＤに対応する前記設備の調整頻度を求め、前記調整頻度が前記設備に対してあらかじめ設定された許容回数を超過している場合に、前記設備が攻撃を受けたと判定する攻撃判定ステップとを実行させるためのものである。
【発明の効果】
【００１１】
本発明に係る攻撃検知装置、攻撃検知方法、および攻撃検知プログラムによれば、検知した設備異常がサイバー攻撃に起因しているか否かを判定することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施の形態１に係る検知サーバの構成図である。
【図２】本発明の実施の形態１における記憶部に格納される調整履歴データのデータ構成を示した図である。
【図３】本発明の実施の形態１に係る検知サーバと異常検知装置との接続構成を示した図である。
【図４】本発明の実施の形態１に係る検知サーバおよび異常検知装置のそれぞれに対応するハードウェア構成例を示した図である。
【図５】本発明の実施の形態１に係る攻撃検知装置において実行される一連の攻撃検知処理を示すフローチャートである。
【図６】本発明の実施の形態１における記憶部に記憶される情報の一例を示した図である。
【図７】本発明の実施の形態１において、調整履歴データをグラフとして示した図である。
【図８】本発明の実施の形態２に係る検知サーバの構成図である。
【図９】本発明の実施の形態２における記憶部に格納される調整履歴データおよび許容範囲データのそれぞれのデータ構成を示した図である。
【図１０】本発明の実施の形態２に係る攻撃検知装置において実行される一連の攻撃検知処理を示すフローチャートである。
【図１１】本発明の実施の形態２に係る攻撃検知装置において実行される、ウィンドウ幅および許容回数に関する一連の学習処理を示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下、本発明の攻撃検知装置、攻撃検知方法、および攻撃検知プログラムの好適な実施の形態につき、図面を用いて説明する。なお、以降の実施の形態では、ある一定期間内に検知された設備ごとの異常履歴から設備ごとの調整頻度を求め、調整頻度が許容回数を超過するか否かを判別することで、サイバー攻撃を検知可能とする技術について、詳細に説明する。なお、以下の説明では、サイバー攻撃のことを単に「攻撃」と称す。
【００１４】
実施の形態１．
図１は、本発明の実施の形態１に係る検知サーバ１０１の構成図である。検知サーバ１０１は、攻撃検知装置の例に相当する。図１に示す検知サーバ１０１は、異常検知部１１１、攻撃判定部１１２、および記憶部１２０を備えて構成されている。また、記憶部１２０には、調整履歴データ１２１が格納されている。
【００１５】
図２に、本発明の実施の形態１における記憶部１２０に格納される調整履歴データ１２１のデータ構成の一例を示す。図２に示すように、調整履歴データ１２１は、調整時刻２１１、設備ＩＤ２１２、および調整内容２１３の各項目が互いに関連付けられて構成されている。なお、調整履歴データ１２１は、図２の構成には限定されず、調整時刻２１１と設備ＩＤ２１２との２項目のみを関連付ける構成としてもよい。
【００１６】
図３は、本発明の実施の形態１における検知サーバ１０１と異常検知装置３０１との接続構成を示した図である。図３に示すように、検知サーバ１０１と異常検知装置３０１とは、有線接続または無線接続され、通信を行う。異常検知装置３０１は、例えば、工場に設置されており、工場内の設備で発生した異常を検知する機能を備えている。異常検知装置３０１は、設備の異常を検知する異常検知部３０２を備えている。
【００１７】
検知サーバ１０１に対して、複数の異常検知装置３０１が接続される構成であってもかまわない。また、複数階層からなるネットワークとして構成された複数の異常検知装置３０１と検知サーバ１０１とが接続されていてもよい。また、異常検知装置３０１は、検知サーバ１０１に内包されていてもよい。
【００１８】
検知サーバ１０１および異常検知装置３０１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）を備えたコンピュータから構成されている。検知サーバ１０１内の構成要素である異常検知部１１１および攻撃判定部１１２の各部の機能は、ＣＰＵがプログラムを実行することにより実現される。同様に、異常検知装置３０１内の構成要素である異常検知部３０２の機能も、ＣＰＵがプログラムを実行することにより実現される。
【００１９】
また、構成要素の処理を実行するためのプログラムは、記憶媒体に記憶させ、記憶媒体からＣＰＵに読み取られるように構成することができる。
【００２０】
図４は、本発明の実施の形態１に係る検知サーバ１０１および異常検知装置３０１のそれぞれに対応するハードウェア構成例を示した図である。演算装置４０１、外部記憶装置４０２、主記憶装置４０３、および通信装置４０４が、バス４０５を介して相互接続されている。
【００２１】
演算装置４０１は、プログラムを実行するＣＰＵである。外部記憶装置４０２は、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ハードディスク等である。主記憶装置４０３は、通常、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）である。通信装置４０４は、通常、イーサネット（登録商標）に対応した通信カードである。
【００２２】
プログラムは、通常は、外部記憶装置４０２に記憶されており、主記憶装置４０３にロードされた状態で、順次、演算装置４０１に読み込まれ、処理を実行する。プログラムは、図１に示す「異常検知部１１１」および「攻撃判定部１１２」としての機能を実現する。
【００２３】
また、図１に示す記憶部１２０は、例えば、外部記憶装置４０２により実現される。さらに、外部記憶装置４０２には、オペレーティングシステム（以下、ＯＳと称す）も記憶されており、ＯＳの少なくとも一部が、主記憶装置４０３にロードされる。演算装置４０１は、ＯＳを実行しながら、図１に示す「異常検知部１１１」および「攻撃判定部１１２」の機能を実現するプログラムを実行する。
【００２４】
また、実施の形態１の説明において、処理結果を示す、情報、データ、信号値、および変数値は、主記憶装置４０３にファイルとして記憶されている。
【００２５】
なお、図４の構成は、あくまでも検知サーバ１０１および異常検知装置３０１のハードウェア構成の一例を示すものである。従って、検知サーバ１０１および異常検知装置３０１のハードウェア構成は、図４の記載に限らず、他の構成であってもよい。例えば、表示ディスプレイ等の出力装置、あるいはマウス・キーボード等の入力装置が、バス４０５に接続されている構成であってもよい。
【００２６】
また、検知サーバ１０１は、各実施の形態の中のフローチャートに示す手順により、本発明の各実施の形態に係る情報処理方法を実現可能である。
【００２７】
次に、図１〜図３に基づいて、検知サーバ１０１の動作を説明する。なお、各動作の詳細については、フローチャートを用いて後述する。
【００２８】
異常検知部１１１は、異常検知装置３０１から送信された異常検知結果を取得する。異常検知結果の取得方法は、異常検知時刻、および設備ＩＤが含まれる内容を取得できれば、どのような方法でもかまわない。
【００２９】
攻撃判定部１１２は、記憶部１２０に記憶されている調整履歴データ１２１を用いて、設備ごとに設定された時間幅での調整頻度を求める。さらに、攻撃判定部１１２は、調整頻度が、設備ごとに設定された許容回数を超過しているか否かを判別することで、攻撃を受けたことを検知する。ここで、許容回数に関しては、事前にしきい値を設定しておいてもよいし、過去の調整履歴から適応的に設定してもよい。許容回数の決定方法については、限定されるものではない。
【００３０】
次に、本実施の形態１で用いる調整履歴データ１２１のデータ構造について、図２を用いて説明する。図２の調整履歴データ１２１は、調整履歴を格納する形式の一例を示している。
【００３１】
図２において、調整時刻２１１は、設備ＩＤに対応する設備に関して、当該設備に発生した異常に対する調整が行われた時刻を識別するための情報である。調整時刻２１１は、日付および時刻として認識できれば、どのような形式のデータでもかまわない。
【００３２】
設備ＩＤ２１２は、異常が発生して調整が行われた設備を識別するための一意な識別子である。
【００３３】
調整内容２１３は、具体的に実施された調整の概要を示すデータである。
【００３４】
図５は、本発明の実施の形態１に係る攻撃検知装置において実行される一連の攻撃検知処理を示すフローチャートである。以下、図５に示すフローチャートに基づいて、検知サーバ１０１における異常検知部１１１および攻撃判定部１１２による攻撃検知処理について説明する。ここで、設備の異常に関しては、事前に異常検知装置３０１によって検知されているものとする。
【００３５】
ステップＳ５０１において、異常検知部１１１は、異常検知装置３０１によって検知された異常検知結果を取得する。
【００３６】
ステップＳ５０２において、攻撃判定部１１２は、ステップＳ５０１において異常が検知された設備の設備ＩＤに基づいて、調整履歴データ１２１を参照し、設定された時間幅での直近の調整頻度を取得する。
【００３７】
ステップＳ５０３において、攻撃判定部１１２は、ステップＳ５０２で取得した直近の調整頻度と、調整頻度の許容回数とを比較する。そして、攻撃判定部１１２は、ステップＳ５０２で取得した直近の調整頻度が許容回数を超えている場合にはステップＳ５０４に進み、超えていない場合にはステップＳ５０５に進む。
【００３８】
ステップＳ５０４に進んだ場合には、攻撃判定部１１２は、異常が検出された設備が攻撃を受けた可能性があると判定し、設備の詳細な調査を依頼するための報知を行う。詳細な調査の依頼方法としては、画面表示することによる人への通知、自動的なメッセージ送信等、設備の詳細な調査を開始させることを報知可能な方法であれば、どのような方法でもかまわない。
【００３９】
一方、ステップＳ５０５に進んだ場合には、攻撃判定部１１２は、ステップＳ５０１で検知された設備の異常に対処する調整が必要であることを依頼するための報知を行い、調整時刻を含む調整結果を調整履歴データ１２１として記録する。調整の依頼方法としては、調整を依頼するメッセージを画面表示することによる人への通知、調整を依頼するメッセージの自動的な送信等、設備の調整を開始させることを報知可能な方法であれば、どのような方法でもかまわない。
【００４０】
なお、ステップＳ５０４およびステップＳ５０５のいずれの場合においても、攻撃判定部１１２は、自身が行った上記報知に応じて、異常が発生した設備に対する調整が行われた場合に、当該調整が行われた時刻を調整時刻として取得する。また、攻撃判定部１１２は、取得した調整時刻と設備ＩＤとを関連付けた新たなデータを、記憶部１２０に記憶させることで、調整履歴データ１２１を更新する。
【００４１】
図６は、本発明の実施の形態１における記憶部１２０に記憶される調整履歴データ１２１の一例を、調整履歴データ６１０として示した図である。以下、図６を用いて、攻撃検知の具体例について説明する。
【００４２】
まず、図６に示す調整履歴データ６１０の例について説明する。図６では、調整履歴データ６１０として、すでに１０個の調整履歴が格納されている。調整履歴データ６１０の各行の内容は、時刻６１１、設備ＩＤ６１２、および調整内容６１３で構成されている。
【００４３】
図７は、本発明の実施の形態１において、調整履歴データ６１０をグラフ７１０として示した図である。グラフ７１０を用いて、調整頻度について説明する。グラフ７１０の縦軸７１１は、製造設備の種別を示しており、設備ＩＤ６１２と対応する。グラフ７１０の横軸７１２は、時間経過を示しており、時刻６１１と対応する。調整履歴データ６１０の各行に含まれる時刻６１１および設備ＩＤ６１２は、グラフ７１０に示す点７２１と対応する。
【００４４】
攻撃判定部１１２は、図６に示す調整履歴データ６１０に基づいて、図７に示すグラフ７１０において調整頻度が頻出している箇所７２２を特定する。調整頻度が頻出している箇所７２２における調整頻度が許容回数を超えている場合、攻撃判定部１１２は、攻撃を受けた可能性があると判定する。ここで、許容回数は、設備ＩＤ６１２によらず共通の値でもよいし、設備ＩＤ６１２ごとに異なる値でもかまわない。
【００４５】
このように、本実施の形態１に係る攻撃検知装置の攻撃判定部１１２は、異常検知部１１１が取得した異常検知結果を起点として、攻撃検知処理を開始する。そして、攻撃判定部１１２は、記憶部１２０内に格納された調整履歴データ１２１を用いて、調整頻度が頻出している箇所において、設定された時間幅での調整頻度を求める。さらに、攻撃判定部１１２は、求めた調整頻度と、許容回数とを比較することにより、攻撃を受けた可能性があるか否かを検知する。すなわち、攻撃判定部１１２は、設備異常が検知された頻度に基づいて、サイバー攻撃の有無を判定することができる。
【００４６】
従来は、既知の正常状態と異なる異常の検知にとどまっていた。しかしながら、本実施の形態１に係る攻撃検知装置が実行する攻撃検知処理を用いることにより、異常検知の原因が攻撃であるか否かを検知できるという効果が得られる。
【００４７】
実施の形態２．
本実施の形態２では、攻撃検知装置が、ウィンドウ幅および許容回数を学習し、学習結果により更新されたウィンドウ幅および許容回数を用いることで、適応的に攻撃を検知することが可能な検知サーバを実現する場合について説明する。
【００４８】
図８は、本発明の実施の形態２に係る検知サーバ８０１の構成図である。検知サーバ８０１は、攻撃検知装置の例に相当する。図８に示す検知サーバ８０１は、異常検知部８１１、攻撃判定部８１２、学習部としての許容範囲学習部８１３、および記憶部８２０を備えて構成されている。図８の検知サーバ８０１は、先の実施の形態１における検知サーバ１０１に対して、許容範囲学習部８１３と、記憶部８２０内の許容範囲データ８２２とがさらに追加された構成となっている。そこで、新たに追加されたこれらの構成を中心に、以下に説明する。
【００４９】
図９は、本発明の実施の形態２に係る記憶部８２０に格納される調整履歴データ８２１および許容範囲データ８２２のそれぞれのデータ構成を示した図である。調整履歴データ８２１は、調整時刻９２１、設備ＩＤ９１２、および調整内容９１３を有しており、先の実施の形態１における調整履歴データ１２１と同一の構成であるため、説明を省略する。図９に示すように、許容範囲データ８２２は、設備ＩＤ９２１、ウィンドウ幅９２２、許容回数９２３、適用開始時刻９２４、および適用終了時刻９２５の各項目が互いに関連付けられて構成されている。
【００５０】
以下、図８に基づいて、検知サーバ８０１による学習機能の動作について説明する。なお、各動作の詳細については、フローチャートを用いて後述する。また、異常検知部８１１および攻撃判定部８１２の動作は、先の実施の形態１に示す異常検知部１１１および攻撃判定部１１２の動作と同様のため、説明を省略する。
【００５１】
許容範囲学習部８１３は、攻撃判定部８１２による攻撃判定結果に対して、人または機械で調査した結果に基づいて、許容範囲データ８２２へのフィードバックを行う。許容範囲データ８２２へのフィードバックのタイミングは、調査後に反映されるものでもよいし、定期的に反映されるものでもかまわない。
【００５２】
次に、本実施の形態２で用いるデータ構造について、図９を用いて説明する。図９の調整履歴データ８２１は、実施の形態１に示す調整履歴データ１２１と同様のため、説明を省略する。
【００５３】
図９の許容範囲データ８２２は、許容範囲を格納する形式の一例を示している。
【００５４】
設備ＩＤ９２１は、調整が行われた設備を識別するための一意な識別子である。
【００５５】
ウィンドウ幅９２２は、攻撃判定を行う際に調整履歴の頻度を数えるために用いられる時間幅に相当するウィンドウ幅である。
【００５６】
許容回数９２３は、ウィンドウ幅９２２における調整履歴の頻度の上限許容値に相当する。
【００５７】
適用開始時刻９２４は、設備ＩＤ９２１に対するウィンドウ幅９２２および許容回数９２３の適用を開始する時刻である。適用開始時刻９２４の格納形式は、日時および時刻として認識できる形式であれば、どのような形式のデータでもかまわない。
【００５８】
適用終了時刻９２５は、設備ＩＤ９２１に対するウィンドウ幅９２２および許容回数９２３の適用を終了する時刻である。適用終了時刻９２５は、期限が明確でない場合には、設定が省略されることで、適用開始時刻９２４以降のすべての時刻が学習を行うための対象となる。また、適用終了時刻９２５の格納形式は、日時および時刻として認識できる形式であり、かつ、期限が明確でない場合を判別可能な形式であれば、どのような形式のデータでもかまわない。
【００５９】
図１０は、本発明の実施の形態２に係る攻撃検知装置において実行される一連の攻撃検知処理を示すフローチャートである。以下、図１０に示すフローチャートに基づいて、検知サーバ８０１における異常検知部８１１および攻撃判定部８１２による攻撃検知処理について説明する。ここで、設備の異常に関しては、事前に異常検知装置３０１によって検知されているものとする。
【００６０】
図１０に示すフローチャートは、先の実施の形態１における図５に示したフローチャートに対して、学習された許容回数を用いた判定処理を追加したものである。
【００６１】
ステップＳ１００１において、異常検知部８１１は、異常検知装置３０１によって検知された異常検知結果を取得する。
【００６２】
ステップＳ１００２において、攻撃判定部８１２は、ステップＳ１００１において異常が検知された設備の設備ＩＤに基づいて、許容範囲データ８２２を参照し、異常検知の時刻が適用開始時刻以降かつ適用終了時刻以内、または適用開始時刻以降かつ適用終了時刻なしに該当する行におけるウィンドウ幅および許容回数を取得する。
【００６３】
ステップＳ１００３において、攻撃判定部８１２は、ステップＳ１００１において異常が検知された設備の設備ＩＤに基づいて、調整履歴データ８２１を参照し、直近の調整頻度を取得する。ここで、攻撃判定部８１２は、ステップＳ１００２で取得したウィンドウ幅を用いて、当該ウィンドウ幅が示す時間幅に含まれる当該設備の直近の調整頻度を数える。具体的には、ウィンドウ幅が３時間の場合、攻撃判定部８１２は、直近の３時間以内に行われた調整の実施回数を、調整頻度としてカウントする。
【００６４】
ステップＳ１００４において、攻撃判定部８１２は、ステップＳ１００２で取得した許容回数と、ステップＳ１００３で取得した直近の調整頻度とを比較する。そして、攻撃判定部８１２は、直近の調整頻度が許容回数を超えている場合には、ステップＳ１００５に進み、超えていない場合はステップＳ１００６に進む。
【００６５】
ステップＳ１００５に進んだ場合には、攻撃判定部８１２は、異常が検知された設備が攻撃を受けた可能性があると判定し、設備の詳細な調査を依頼するための報知を行う。詳細な調査の依頼方法としては、画面表示することによる人への通知、自動的なメッセージ送信等、設備の詳細な調査を開始させることを報知可能な方法であれば、どのような方法でもかまわない。
【００６６】
一方、ステップＳ１００６に進んだ場合には、攻撃判定部８１２は、ステップＳ１００１で検知された設備の異常に対処する調整が必要であることを依頼するための報知を行い、調整結果を調整履歴データ８２１として記録する。調整の依頼方法としては、調整を依頼するメッセージを画面表示することによる人への通知、調整を依頼するメッセージの自動的な送信等、設備の調整を開始させることを報知可能な方法であれば、どのような方法でもかまわない。
【００６７】
図１１は、本発明の実施の形態２における攻撃検知装置において実行される、ウィンドウ幅および許容回数に関する一連の学習処理を示すフローチャートである。
【００６８】
ステップＳ１１０１において、許容範囲学習部８１３は、学習対象とする製造設備の設備ＩＤを取得する。許容範囲学習部８１３が設備ＩＤを取得する方法は、人手で入力する場合でも、機械的な調査の結果を反映する場合でもよく、設備ＩＤを認識可能な方法であれば、どのような方法でもかまわない。
【００６９】
ステップＳ１１０２において、許容範囲学習部８１３は、ステップＳ１１０１において取得した設備ＩＤに基づいて、許容範囲データ８２２を参照し、最新の適用開始時刻に対応する行に設定されたウィンドウ幅および許容回数を取得する。
【００７０】
ステップＳ１１０３において、許容範囲学習部８１３は、攻撃判定部８１２による判定結果に基づいて、ステップＳ１１０２で取得したウィンドウ幅および許容回数を学習して、当該ウィンドウ幅および許容回数の見直しを行う。具体的な見直し方法について、例えば、新しい設備が導入された場合に当初はウィンドウ幅および許容数を小さくしておき、実際の調整頻度に応じてウィンドウ幅および許容数を変更する、製造する製品の種類が大きく変わった場合に実際の調整頻度に応じてウィンドウ幅および許容数を変更する、設備の劣化傾向に応じて許容数を増加させるといった見直し方法が考えられる。許容範囲学習部８１３による見直しの方法は、過去の履歴に基づく統計的な方法、機械学習による方法等、ウィンドウ幅および許容回数を定量化可能な方法であれば、どのような方法でもかまわない。
【００７１】
ステップＳ１１０４において、許容範囲学習部８１３は、ステップＳ１１０２において参照した行の適用終了時刻を、ステップＳ１１０３で見直したウィンドウ幅および許容回数の適用を開始する時刻に更新する。さらに、許容範囲学習部８１３は、その時刻を適用開始時刻とし、Ｓ１１０３で見直したウィンドウ幅および許容回数を用いて、許容範囲データ８２２に新たな行を追加する。
【００７２】
ここで、新たに追加する行における適用終了時刻は、「なし」とし、設備ＩＤは、ステップＳ１１０１において取得した設備ＩＤとする。このような一連処理を行うことで、学習対象の設備に関して、ウィンドウ幅および許容回数の見直しが実行された新たな行を追加することができる。
【００７３】
このように、本実施の形態２では、検知サーバ８０１が、記憶部１２０内の許容範囲データ８２２を、設備の実際の振る舞いに応じて、許容範囲学習部８１３に学習させることにより、それぞれの設備ごとに、適切なウィンドウ幅および許容回数に逐次更新することができる。この結果、攻撃判定の精度を、より高めることができる。
【００７４】
これにより、実施の形態１で得られる効果に加えて、製造する製品が大きく変化した場合、劣化により徐々に調整頻度が変化する場合などにおいても、高精度で攻撃検知できるという効果が得られる。
【００７５】
なお、上記の実施の形態１では、検知サーバ１０１が記憶部１２０を備えているとして説明した。しかしながら、それに限らず、記憶部１２０は、検知サーバ１０１の構成要素ではなく、外部装置の構成要素として、検知サーバ１０１の外部に設けられていてもよい。その場合の構成例としては、例えば、検知サーバ１０１の外部に設置されたサーバ等の外部装置に、記憶部１２０を設けておく。そして、検知サーバ１０１が、当該外部装置から、当該外部装置の記憶部１２０に蓄積された調整履歴データ１２１を取得して、設備の攻撃の有無を判定するようにしてもよい。また、実施の形態２の検知サーバ８０１の記憶部８２０についても同様である。すなわち、記憶部８２０は、検知サーバ８０１の構成要素ではなく、外部装置の構成要素として、検知サーバ８０１の外部に設けられていてもよい。その場合の検知サーバ８０１および記憶部８２０の構成例としては、検知サーバ１０１および記憶部１２０と同様にすればよいため、ここでは、その説明を省略する。
【符号の説明】
【００７６】
１０１  検知サーバ（攻撃検知装置）、１１１  異常検知部、１１２  攻撃判定部、１２０  記憶部、１２１  調整履歴データ、３０１  異常検知装置、３０２  異常検知部、４０１  演算装置、４０２  外部記憶装置、４０３  主記憶装置、４０４  通信装置、４０５  バス、８０１  検知サーバ（攻撃検知装置）、８１１  異常検知部、８１２  攻撃判定部、８１３  許容範囲学習部（学習部）、８２０  記憶部、８２１  調整履歴データ、８２２  許容範囲データ。
【図１】
0006862615.tif 000002
【図２】
0006862615.tif 000003
【図３】
0006862615.tif 000004
【図４】
0006862615.tif 000005
【図５】
0006862615.tif 000006
【図６】
0006862615.tif 000007
【図７】
0006862615.tif 000008
【図８】
0006862615.tif 000009
【図９】
0006862615.tif 000010
【図１０】
0006862615.tif 000011
【図１１】
0006862615.tif 000012