(57)【要約】【課題】通信環境へ侵入する巧妙なリスクを検出し、該リスクから通信環境を防御する技術が求められている。【解決手段】システム１０は、通信環境５０における情報または通信を監視して、該通信環境５０におけるセキュリティインシデントの発生を検知するセキュリティインシデント検知部１２と、セキュリティインシデント検知部１２がセキュリティインシデントを検知したときに、通常ワークフローを試験通信環境において模擬的に実行する通常ワークフロー実行部１６と、試験通信環境において通常ワークフローを実行しているときに、該試験通信環境における情報または通信を監視する通信監視部１８とを備える。【選択図】図１
2018120296.tif 000002
【特許請求の範囲】
【請求項１】
複数の通信機器が通信ネットワークによって通信可能に接続される通信環境への侵入を検出するシステムであって、
前記通信環境における情報または通信を監視して、該通信環境におけるセキュリティインシデントの発生を検知するセキュリティインシデント検知部と、
前記セキュリティインシデント検知部が前記セキュリティインシデントを検知したときに、前記通信環境において少なくとも１つの前記通信機器が実行するように予め定められた通常ワークフローを、前記通信環境の一部または該通信環境とは別の通信環境として設けられた試験通信環境において模擬的に実行する通常ワークフロー実行部と、
前記試験通信環境において前記通常ワークフローを実行しているときに、前記試験通信環境における情報または通信を監視する通信監視部と、を備える、システム。
【請求項２】
前記セキュリティインシデント検知部が前記セキュリティインシデントを検知したときに、少なくとも２つの前記通信機器を仮想化した少なくとも２つの仮想通信機器が、前記通信ネットワークを仮想化した仮想通信ネットワークによって通信可能に接続される仮想通信環境を、前記試験通信環境として設ける試験通信環境設定部をさらに備える、請求項１に記載のシステム。
【請求項３】
前記試験通信環境が前記通信環境の一部として設けられた場合には、該通信環境のうちの前記試験通信環境以外の部分と前記試験通信環境との通信を遮断し、前記試験通信環境が前記別の通信環境として設けられた場合には、前記通信環境と前記試験通信環境との通信を遮断する通信遮断部をさらに備える、請求項１または２に記載のシステム。
【請求項４】
前記セキュリティインシデント検知部が検知した前記セキュリティインシデントを分析し、該セキュリティインシデントのリスクの度合が大きいか否かを判定するリスク判定部をさらに備え、
前記通信遮断部は、前記リスク判定部が前記リスクの度合が大きいと判定した場合に、前記試験通信環境以外の前記部分または前記通信環境と、前記試験通信環境との通信を遮断する、請求項３に記載のシステム。
【請求項５】
前記通常ワークフロー実行部は、前記通信環境で前記少なくとも１つの通信機器が前記通常ワークフローを実行するときよりも高速または低速で、前記通常ワークフローを実行する、請求項１〜４のいずれか１項に記載のシステム。
【請求項６】
前記通常ワークフロー実行部は、前記通信環境への前記侵入によって前記通信監視部が監視する前記情報または前記通信に異常が生じた後、前記通常ワークフローを継続して実行する、請求項１〜５のいずれか１項に記載のシステム。
【請求項７】
前記通信環境への前記侵入によって前記通信監視部が監視する前記情報または前記通信に異常が生じた後、前記試験通信環境に対してアンチウイルス処理を実行するアンチウイルス処理実行部をさらに備える、請求項６に記載のシステム。
【請求項８】
複数の通信機器が通信ネットワークによって通信可能に接続される通信環境への侵入を検出する方法であって、
前記通信環境における情報または通信を監視して、該通信環境におけるセキュリティインシデントの発生を検知することと、
前記セキュリティインシデントを検知したときに、前記通信環境において少なくとも１つの前記通信機器が実行するように予め定められた通常ワークフローを、前記通信環境の一部または該通信環境とは別の通信環境として設けられた試験通信環境において模擬的に実行することと、
前記試験通信環境において前記通常ワークフローを実行しているときに、前記試験通信環境における情報または通信を監視することと、を備える、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信環境への侵入を検出するシステム、および侵入検出方法に関する。
【背景技術】
【０００２】
通信環境への侵入を検出する情報セキュリティ管理システムが知られている（例えば、特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−２４２７５４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
近年、通信環境に侵入する手段（例えば、マルウェア）が巧妙化してきている。このような通信環境に対するリスクを検出し、該リスクから通信環境を防御する技術が強く求められている。
【課題を解決するための手段】
【０００５】
本開示の一態様において、複数の通信機器が通信ネットワークによって通信可能に接続される通信環境への侵入を検出するシステムは、通信環境における情報または通信を監視して、該通信環境におけるセキュリティインシデントの発生を検知するセキュリティインシデント検知部を備える。
【０００６】
このシステムは、セキュリティインシデント検知部がセキュリティインシデントを検知したときに、通常ワークフローを試験通信環境において模擬的に実行する通常ワークフロー実行部を備える。通常ワークフローは、通信環境において少なくとも１つの通信機器が実行するように予め定められる。
【０００７】
試験通信環境は、通信環境の一部または該通信環境とは別の通信環境として設けられる。このシステムは、試験通信環境において通常ワークフローを実行しているときに、試験通信環境における情報または通信を監視する通信監視部を備える。
【０００８】
本開示の他の態様において、複数の通信機器が通信ネットワークによって通信可能に接続される通信環境への侵入を検出する方法は、通信環境における情報または通信を監視して、該通信環境におけるセキュリティインシデントの発生を検知することを備える。
【０００９】
この方法は、セキュリティインシデントを検知したときに、通信環境において少なくとも１つの通信機器が実行するように予め定められた通常ワークフローを、通信環境の一部または該通信環境とは別の通信環境として設けられた試験通信環境において模擬的に実行することと、試験通信環境において通常ワークフローを実行しているときに、試験通信環境における情報または通信を監視することとを備える。
【図面の簡単な説明】
【００１０】
【図１】一実施形態に係る通信環境のブロック図である。
【図２】図１に示す通信環境の１つのセクションを構成する通信環境のブロック図である。
【図３】図１に示す通信環境において、図２に示す通信環境を仮想化して試験通信環境を設定した状態を示すブロック図である。
【図４】図１に示す通信環境の１つのセクションを構成する通信環境のブロック図である。
【図５】図１に示す通信環境において、図４に示す通信環境を仮想化して試験通信環境を設定した状態を示すブロック図である。
【図６】図１に示すシステムの動作フローの一例を表すフローチャートである。
【図７】他の実施形態に係る通信環境のブロック図である。
【図８】図７に示すシステムの動作フローの一例を表すフローチャートである。
【図９】さらに他の実施形態に係る通信環境のブロック図である。
【図１０】図９に示すシステムの動作フローの一例を表すフローチャートである。
【図１１】さらに他の実施形態に係る通信環境のブロック図である。
【図１２】図１１に示す各システムの動作フローの一例を表すフローチャートである。
【図１３】さらに他の実施形態に係る通信環境のブロック図である。
【図１４】さらに他の実施形態に係る通信環境のブロック図である。
【発明を実施するための形態】
【００１１】
以下、本開示の実施の形態を図面に基づいて詳細に説明する。なお、以下に説明する種々の実施形態において、同様の要素には同じ符号を付し、重複する説明を省略する。まず、図１を参照して、一実施形態に係るシステム１０について説明する。システム１０は、通信環境５０への侵入を検出する。通信環境５０においては、複数の通信機器５２が、通信ネットワーク５４によって、互いに通信可能に接続されている。
【００１２】
通信機器５２の各々は、例えば、サーバ、端末装置（ＰＣ、スマートフォン、タブレット等）、各種センサ（ロボットのビジョンセンサ、エンコーダ、ＩＣリーダ等）、またはストレージ装置等、通信ネットワーク５４を介して他の機器と通信可能なコンピュータである。
【００１３】
通信機器５２の少なくとも１つは、例えば、特定の目的を果たすためにデータ処理する機能、各種センサ（例えば、後述するロボットのビジョンセンサ、エンコーダ、またはＩＣリーダ等）の作動を記録する機能、または、ソフトウェアを実行する機能を有する。
【００１４】
また、通信機器５２の少なくとも１つは、ＯＳ（オペレーティングシステム）と、該ＯＳと論理的に接続された通信機器５２の作動データの記録、特定のソフトウェアを実行したログの記録、または、システムの運用状況の記録を行うツールとを具備する。
【００１５】
通信機器５２が後述するようなロボットである場合、該ツールは、ロボットを動作させるための演算処理に加えて、ロボット動作の記録（例えば、ロボットを動作させるサーボモータの回転角度、または、ロボット座標系におけるロボットハンドの座標（すなわち、ツール座標系）の記録）を行う。
【００１６】
通信ネットワーク５４は、ネットワークスイッチ（例えば、レイア２スイッチ、レイア３スイッチ等）、ルータ、通信ケーブル（例えば、光ファイバケーブル）、無線通信モジュール等を有する。
【００１７】
通信ネットワーク５４は、有線または無線で、情報を伝送する。通信ネットワーク５４は、例えば、企業のイントラネットまたはＬＡＮであって、通信環境５０の外部の通信ネットワーク（例えば、インターネット）に通信可能に接続されている。
【００１８】
システム１０は、通信ネットワーク５４に通信可能に接続され、通信環境５０を構成している。例えば、システム１０は、演算処理ユニット（例えばＣＰＵ）および記憶部を有するサーバから構成される。または、システム１０は、複数の通信機器から構成されてもよい。システム１０は、セキュリティインシデント検知部１２、試験通信環境設定部１４、通常ワークフロー実行部１６、および通信監視部１８を備える。
【００１９】
以下、図１〜図５を参照して、これらセキュリティインシデント検知部１２、試験通信環境設定部１４、通常ワークフロー実行部１６、および通信監視部１８の機能について、説明する。
【００２０】
セキュリティインシデント検知部１２は、通信環境５０に蓄積されている情報、または通信環境５０で行われる通信を監視して、該通信環境５０におけるセキュリティインシデントの発生を検知する。
【００２１】
通信環境５０に蓄積されている情報としては、通信機器５２に記憶される各種データ、通信機器５２の作動に関するデータ、通信機器５２が特定のソフトウェアを実行したときのログ、システムの運用状況のデータ等がある。
【００２２】
ここで、セキュリティインシデントとしては、後述の通常ワークフローでは行われないような通信、統計的分析により異常と判定される通信機器５２のデバイスの作動記録、異常な設定でのソフトウェアの実行、および、ソフトウェアの実行による通信機器５２の基本挙動の改変、アクセス権限を有していない者による通信機器５２への不正アクセス等がある。
【００２３】
セキュリティインシデント検知部１２は、通信機器５２に蓄積された情報（例えば、通信機器５２の作動データ、ソフトウェア実行のログ、システムの運用状況のデータ等）、または、少なくとも２つの通信機器５２の間で行われる通信を監視することによって、セキュリティインシデントを検知する。
【００２４】
一例として、セキュリティインシデント検知部１２は、個々の不正アクセスの特徴から該不正アクセスを検出するための検出用パターン（通信がパケット方式である場合はパケット内のデータの検出用パターン）を定義し、該検出用パターンと一致するデータまたはログが発生した場合に、セキュリティインシデントとして検出する。
【００２５】
他の例として、セキュリティインシデント検知部１２は、通信機器５２において、統計的に異常と判定されるデバイスの作動データの記録、ソフトウェア実行のログの記録、または、基本挙動の改変が行われた場合に、これら事象を自動的に分析する。そして、セキュリティインシデント検知部１２は、これら事象が正当なオペレータによって行われた事象ではない場合、セキュリティインシデントとして検出する。
【００２６】
例えば、通信機器５２が工作機械またはロボットであり、その動作プログラムが改変された場合において、セキュリティインシデント検知部１２は、該動作プログラムが改変されたときの通信環境５０における通信、各通信機器５２のデバイスの作動の記録、ソフトウェア実行のログ、またはそれらを組み合わせたデータの統計的な判定処理を実行し、該改変が不正であるか否かを判定する。
【００２７】
さらに他の例として、セキュリティインシデント検知部１２は、通信環境５０で行われる通信の通常状態の記録を継続して取得する一方、通常ワークフローで発生する正当な通常状態の記録から逸脱した不正通信状態を、統計学的手法を用いて予め定める。そして、セキュリティインシデント検知部１２は、実際の通信状態と不正通信状態との差を統計学的に判定し、両者に有意な差があった場合に、セキュリティインシデントとして検出する。
【００２８】
試験通信環境設定部１４は、セキュリティインシデント検知部１２がセキュリティインシデントを検知したときに、試験通信環境を設定する。一例として、試験通信環境設定部１４は、図２に示す通信環境６０を仮想化した仮想通信環境６０Ｖ（図３）を、試験通信環境６０Ｖとして設定する。
【００２９】
通信環境６０は、通信環境５０の１つのセクションを構成する通信環境であって、上位コントローラ６２、通信ネットワーク６４、ロボットコントローラ６６、通信ケーブル６８、およびロボット７０を有する。
【００３０】
通信ネットワーク６４は、ネットワークスイッチ、ルータ、通信ケーブル、または無線通信モジュール等を有し、上述の通信ネットワーク５４の１つのセクションを構成する。通信ネットワーク６４は、上位コントローラ６２とロボットコントローラ６６とを、互いに通信可能に接続する。
【００３１】
通信ケーブル６８は、上述の通信ネットワーク５４の一構成要素であって、ロボットコントローラ６６とビジョンセンサ７２、および、ロボットコントローラ６６とサーボモータ７４とを、通信可能に接続する。
【００３２】
ロボット７０は、例えば、垂直多関節型の産業用ロボットであって、予め定められた作業を行う。この作業は、ワーク（図示せず）の運搬、加工または溶接等を含む。ロボット７０は、ビジョンセンサ７２およびサーボモータ７４を有する。
【００３３】
ビジョンセンサ７２は、ロボット７０の作業時にワーク等の物体を撮像する。サーボモータ７４は、ロボット７０の可動要素（旋回胴、ロボットアーム、手首部、ロボットハンド）に内蔵され、これら可動要素を動作させる。
【００３４】
上位コントローラ６２、ロボットコントローラ６６、ビジョンセンサ７２、およびサーボモータ７４は、それぞれ、図１に示す通信機器５２を構成している。上位コントローラ６２は、演算処理ユニット(例えば、ＣＰＵ）および記憶部（例えば、ＲＯＭまたはＲＡＭ）を有し、通信ネットワーク６４を介して、ロボットコントローラ６６に指令を送信する。
【００３５】
このとき、上位コントローラ６２は、該指令を、ラダープログラムの形態で、通信機器５２の１つを構成するＰＬＣ（プログラマブルロジックコントローラ）を経由して、ロボットコントローラ６６に送信し得る。
【００３６】
例えば、上位コントローラ６２は、工場で生産する製品の生産スケジュールを管理する生産管理装置であって、生産スケジュールに従ってロボット７０を動作させるべく、ロボットコントローラ６６に作業指令を送信する。
【００３７】
ロボットコントローラ６６は、演算処理ユニット（例えばＣＰＵ）および記憶部（例えば、ＲＯＭまたはＲＡＭ）を有し、ロボット７０の各構成要素を直接的または間接的に制御する。ロボットコントローラ６６は、上位コントローラ６２からの作業指令に応じて、ロボット７０を動作させて、該ロボット７０に作業（ワークの運搬、加工、溶接等）を実行させる。
【００３８】
ロボット７０を動作させるとき、ロボットコントローラ６６は、ビジョンセンサ７２およびサーボモータ７４と通信する。具体的には、ロボットコントローラ６６は、ビジョンセンサ７２に撮像指令を送る。ビジョンセンサ７２は、ロボットコントローラ６６からの撮像指令に応じて、ワーク等の物体を撮像し、撮像した画像をロボットコントローラ６６へ送信する。
【００３９】
ロボットコントローラ６６は、ビジョンセンサ７２から受信した画像に基づいて、サーボモータ７４への指令（例えば、トルク指令または速度指令）を生成し、サーボモータ７４へ送信する。
【００４０】
サーボモータ７４は、ロボットコントローラ６６からの指令に応じて、ロボット７０の可動要素を動作させるとともに、フィードバック（例えば、フィードバック電流または負荷トルク）をロボットコントローラ６６へ送信する。このような通信を実行しつつ、ロボットコントローラ６６は、ロボット７０を動作させる。
【００４１】
ロボットコントローラ６６は、ロボット７０を動作させているときに、ロボット７０の状態を監視する通信機能を用いて、ロボット７０の関節の角度（すなわち、サーボモータ７４の回転角度）、ロボット７０に設けられたロボットハンド（図示せず）のロボット座標系における位置（すなわち、ツール座標系の位置）を、通信環境に蓄積される情報として記録する。
【００４２】
ロボット７０による作業が完了したとき、ロボットコントローラ６６は、通信ネットワーク６４を介して、上位コントローラ６２に作業完了信号を送信する。
【００４３】
このようにして、通信環境６０においては、上位コントローラ６２、ロボットコントローラ６６、ビジョンセンサ７２、およびサーボモータ７４が互いに通信しつつ、上述の一連の動作を実行する。
【００４４】
試験通信環境設定部１４は、セキュリティインシデント検知部１２がセキュリティインシデントを検知したときに、図２に示す通信環境６０を仮想化し、図３に示す仮想通信環境６０Ｖを設定する。
【００４５】
仮想通信環境６０Ｖは、仮想上位コントローラ６２Ｖ、仮想通信ネットワーク６４Ｖ、仮想ロボットコントローラ６６Ｖ、仮想通信ケーブル６８Ｖ、および仮想ロボット７０Ｖを有する。
【００４６】
仮想上位コントローラ６２Ｖは、少なくとも１つの通信機器５２のリソースを利用して構築される。例えば、仮想上位コントローラ６２Ｖは、サーバである１つの通信機器５２において、論理サーバとして構築される。この場合、該１つの通信機器５２が、仮想化の演算処理のリソースを用いて、上位コントローラ６２の機能（例えば、ロボットコントローラ６６との通信）を模擬的に実行する。
【００４７】
同様に、仮想ロボットコントローラ６６Ｖは、少なくとも１つの通信機器５２のリソースを利用して構築される。例えば、仮想ロボットコントローラ６６Ｖは、サーバである１つの通信機器５２において、論理サーバとして構築される。この場合、該１つの通信機器５２が、仮想化の演算処理のリソースを用いて、ロボットコントローラ６６の機能を模擬的に実行する。
【００４８】
具体的には、仮想ロボットコントローラ６６Ｖは、仮想上位コントローラ６２Ｖ、仮想ビジョンセンサ７２Ｖ、および仮想サーボモータ７４Ｖと通信しつつ、仮想ロボット１２を模擬的に動作させる。このときに仮想通信環境６０Ｖで行われる通信は、少なくともの１つの通信機器５２（例えば、仮想通信環境６０Ｖの仮想化のためのリソースとして用いられている通信機器５２）に記録される。
【００４９】
また、仮想ロボットコントローラ６６Ｖが仮想ロボット７０を動作させているとき、該仮想ロボット７０Ｖの関節の角度（すなわち、仮想サーボモータ７４Ｖの回転角度）、仮想ロボット７０Ｖに設けられた仮想ロボットハンド（図示せず）のロボット座標系における位置（すなわち、ツール座標系の位置）が、少なくともの１つの通信機器５２に情報として記録される。
【００５０】
仮想通信ネットワーク６４Ｖは、通信ネットワーク５４を仮想化したものであって、通信ネットワーク５４を構成するネットワークスイッチ、ルータ、通信ケーブル、および無線通信モジュールのリソースを利用して構築される。仮想通信ネットワーク６４Ｖは、仮想上位コントローラ６２Ｖと仮想ロボットコントローラ６６Ｖとを、通信可能に接続する。
【００５１】
仮想ロボット７０Ｖは、ビジョンセンサ７２を仮想化した仮想ビジョンセンサ７２Ｖと、サーボモータ７４を仮想化した仮想サーボモータ７４Ｖとを有する。仮想ビジョンセンサ７２Ｖおよび仮想サーボモータ７４Ｖの各々は、少なくとも１つの通信機器５２のリソースを利用して構築される。
【００５２】
例えば、仮想ビジョンセンサ７２Ｖおよび仮想サーボモータ７４Ｖの各々は、ＰＣである１つの通信機器５２において論理的に構築される。この場合、該１つの通信機器５２が、仮想化の演算処理のリソースを用いて、ビジョンセンサ７２およびサーボモータ７４の各々の機能（例えば、ロボットコントローラ６６との通信）を模擬的に実行する。
【００５３】
仮想通信ケーブル６８Ｖは、通信ネットワーク５４を仮想化したものであって、通信ネットワーク５４を構成する通信ケーブルのリソースを利用して構築される。仮想通信ケーブル６８Ｖは、仮想ロボットコントローラ６６Ｖと仮想ビジョンセンサ７２Ｖ、および、仮想ロボットコントローラ６６Ｖと仮想サーボモータ７４Ｖとを、通信可能に接続する。
【００５４】
このように、試験通信環境設定部１４は、図３に示すように、通信環境５０の一部として、仮想通信環境（すなわち、試験通信環境）６０Ｖを設定する。
【００５５】
他の例として、試験通信環境設定部１４は、図４に示す通信環境８０を仮想化した仮想通信環境８０Ｖ（図５）を、試験通信環境８０Ｖとして設定する。
【００５６】
通信環境８０は、通信環境５０の１つのセクションを構成する通信環境であって、情報管理サーバ８２、通信ネットワーク８４および８６、複数のＩＤリーダ８８、ならびに、複数のＰＣ９０を有する。
【００５７】
通信ネットワーク８４および８６の各々は、ネットワークスイッチ、ルータ、通信ケーブル、または無線通信モジュール等を有し、上述の通信ネットワーク５４の１つのセクションを構成する。
【００５８】
通信ネットワーク８４は、情報管理サーバ８２と複数のＩＤリーダ８８とを、互いに通信可能に接続する。一方、通信ネットワーク８６は、情報管理サーバ８２と複数のＰＣ９０とを、互いに通信可能に接続する。情報管理サーバ８２、ＩＤリーダ８８、およびＰＣ９０は、それぞれ、図１に示す通信機器５２を構成する。
【００５９】
ＩＤリーダ８８は、いわゆるＲＦＩＤ技術によって、従業員が保持するＩＤカードに内蔵されたＩＣタグと無線通信し、該ＩＣタグに記憶された従業員のＩＤ番号を取得する。ＩＤリーダ８８は、取得したＩＤ番号を、通信ネットワーク８４を介して情報管理サーバ８２へ送信する。
【００６０】
ＰＣ９０は、個々の従業員に割り当てられており、従業員は、自身に割り当てられたＰＣ９０にログインし、該ＰＣ９０を用いて、各種業務を行う。ＰＣ９０は、従業員によるログイン情報（例えば、ログインＩＤ、ログイン日時等）を、通信ネットワーク８４を介して情報管理サーバ８２へ送信する。
【００６１】
情報管理サーバ８２は、演算処理ユニット（例えば、ＣＰＵ）および記憶部（例えば、ＲＯＭまたはＲＡＭ）を有し、ＩＤリーダ８８およびＰＣ９０から送信されるＩＤ番号およびログイン情報を収集し、記憶部に記憶する。情報管理サーバ８２は、収集したＩＤ番号およびログイン情報に基づいて、従業員の労働時間または業務フロー等を管理する。
【００６２】
試験通信環境設定部１４は、セキュリティインシデント検知部１２がセキュリティインシデントを検知したときに、図４に示す通信環境８０を仮想化し、図５に示す仮想通信環境８０Ｖを設定する。
【００６３】
仮想通信環境８０Ｖは、仮想情報管理サーバ８２Ｖ、仮想通信ネットワーク８４Ｖおよび８６Ｖ、複数の仮想ＩＤリーダ８８Ｖ、ならびに、複数の仮想ＰＣ９０Ｖを有する。
【００６４】
仮想情報管理サーバ８２Ｖは、少なくとも１つの通信機器５２のリソースを利用して構築される。例えば、仮想情報管理サーバ８２Ｖは、サーバである１つの通信機器５２において論理サーバとして構築される。この場合、該１つの通信機器５２が、仮想化の演算処理のリソースを用いて、情報管理サーバ８２の機能（例えば、ＩＤ番号およびログイン情報の収集）を模擬的に実行する。
【００６５】
この動作を実行しているときに仮想通信環境８０Ｖで行われるデータ処理は、少なくともの１つの通信機器５２（例えば、仮想通信環境８０Ｖの仮想化のためのリソースとして用いられている通信機器５２）に記録される。
【００６６】
仮想ＩＤリーダ８８Ｖの各々は、少なくとも１つの通信機器５２のリソースを利用して構築される。例えば、仮想ＩＤリーダ８８Ｖは、サーバである１つの通信機器５２において論理サーバとして構築される。この場合、該１つの通信機器５２が、仮想化の演算処理のリソースを用いて、仮想ＩＤリーダ８８の機能（例えば、ＩＤ番号の取得および送信）を模擬的に実行する。
【００６７】
仮想ＰＣ９０Ｖの各々は、少なくとも１つの通信機器５２のリソースを利用して構築される。例えば、仮想ＰＣ９０Ｖは、サーバである１つの通信機器５２において、ＰＣ９０のＯＳおよびソフトウェアを仮想化することによって、構築される。この場合、該１つの通信機器５２が、仮想化の演算処理のリソースを用いて、ＰＣ９０の機能（例えば、ログイン情報の送信）を模擬的に実行する。
【００６８】
仮想通信ネットワーク８４Ｖおよび８６Ｖの各々は、通信ネットワーク５４を仮想化したものであって、通信ネットワーク５４を構成するネットワークスイッチ、ルータ、通信ケーブル、および無線通信モジュールのリソースを利用して構築される。
【００６９】
仮想通信ネットワーク８４Ｖは、仮想情報管理サーバ８２Ｖと、複数の仮想ＩＤリーダ８８Ｖとを、互いに通信可能に接続する。一方、仮想通信ネットワーク８６Ｖは、仮想情報管理サーバ８２Ｖと、複数の仮想ＰＣ９０Ｖとを、互いに通信可能に接続する。
【００７０】
このように、試験通信環境設定部１４は、図５に示すように、通信環境５０の一部として、仮想通信環境（すなわち、試験通信環境）８０Ｖを設定する。試験通信環境設定部１４は、仮想化のために使用した通信機器５２のリソースの許容量を超えない範囲で、該通信機器５２のリソースを用いて仮想通信環境６０Ｖまたは８０Ｖの構成要素をさらに仮想化してもよい。
【００７１】
この場合において、マルウェア等の攻撃目標が仮想化のために使用した通信機器５２ではないことをセキュリティインシデント検知部１２が検知していた場合、試験通信環境設定部１４は、セキュリティインシデント検知部１２の検知結果に基づいて、仮想通信環境８０Ｖをさらに仮想化するか否かを判定してもよい。
【００７２】
通常ワークフロー実行部１６は、セキュリティインシデント検知部１２がセキュリティインシデントを検知したときに、試験通信環境６０Ｖ、８０Ｖにおいて通常ワークフローを模擬的に実行する。この通常ワークフローは、通信環境５０において少なくとも１つの通信機器５２が通常業務として実行するように予め定められた動作フローである。
【００７３】
一例として、試験通信環境設定部１４が図３に示す試験通信環境６０Ｖを設定した場合、通常ワークフロー実行部１６は、該試験通信環境６０Ｖにおいて、仮想上位コントローラ６２Ｖ、仮想ロボットコントローラ６６Ｖ、仮想ビジョンセンサ７２Ｖ、および仮想サーボモータ７４Ｖに、以下のような通常ワークフローを実行させる。
【００７４】
具体的には、仮想上位コントローラ６２Ｖは、仮想ロボットコントローラ６６Ｖに仮想作業指令を送信する。仮想ロボットコントローラ６６Ｖは、仮想上位コントローラ６２Ｖからの仮想作業指令に応じて、仮想ロボット７０Ｖを模擬的に動作させて、該仮想ロボット７０Ｖに作業（ワークの運搬、加工、溶接等の動作プログラムの実行、周辺機器へのＩ／Ｏ通信指令の発信等）を模擬的に実行させる。
【００７５】
この動作を実行しているとき、仮想ロボットコントローラ６６Ｖは、仮想ビジョンセンサ７２Ｖに仮想撮像指令を送る。仮想ビジョンセンサ７２Ｖは、仮想ロボットコントローラ６６Ｖからの仮想撮像指令に応じて、物体を模擬的に撮像した仮想画像を生成し、生成した仮想画像を仮想ロボットコントローラ６６Ｖへ送信する。
【００７６】
仮想ロボットコントローラ６６Ｖは、仮想ビジョンセンサ７２Ｖから受信した仮想画像に基づいて、仮想サーボモータ７４Ｖへの指令を模擬的に生成し、該仮想サーボモータ７４Ｖへ送信する。
【００７７】
仮想サーボモータ７４Ｖは、仮想ロボットコントローラ６６Ｖからの指令に応じて模擬的に動作するとともに、仮想フィードバック（例えば、仮想フィードバック電流または仮想負荷トルク）を仮想ロボットコントローラ６６Ｖへ送信する。
【００７８】
通常ワークフロー実行部１６は、仮想上位コントローラ６２Ｖ、仮想ロボットコントローラ６６Ｖ、仮想ビジョンセンサ７２Ｖ、および仮想サーボモータ７４Ｖが構築されている、通信環境５０の通信機器５２のリソースを制御して、上述したような一連の通常ワークフローを試験通信環境６０Ｖにて模擬的に実行させる。
【００７９】
ここで、通常ワークフロー実行部１６は、通信環境５０で上位コントローラ６２、ロボットコントローラ６６、ビジョンセンサ７２、およびサーボモータ７４が、上述の通常ワークフローを実行するときよりも高速または低速で、試験通信環境６０Ｖにて該通常ワークフローを模擬的に実行する。
【００８０】
例えば、通常ワークフロー実行部１６は、試験通信環境６０Ｖにおける時間を規定する標準時間を、通信環境５０における標準時間（すなわち、実際の標準時間）よりも速く（または遅く）経過するように、設定する。
【００８１】
または、通常ワークフロー実行部１６は、試験通信環境６０Ｖにて通常ワークフローを実行するときに仮想上位コントローラ６２Ｖ、仮想ロボットコントローラ６６Ｖ、仮想ビジョンセンサ７２Ｖ、および仮想サーボモータ７４Ｖの間で行われる通信の周期を、通信環境５０にて通常ワークフローを実行するときよりも、短く（または長く）設定する。
【００８２】
このような手法により、通常ワークフロー実行部１６は、通信環境５０で通常ワークフローを実行するときよりも高速（または低速）で、試験通信環境６０Ｖにて該通常ワークフローを実行できる。
【００８３】
ここで、通常ワークフロー実行部１６は、セキュリティインシデント検知部１２が検知したセキュリティインシデントの内容を条件として、試験通信環境６０Ｖにて該通常ワークフローを実行する速度を順次変更させてもよい。
【００８４】
一例として、セキュリティインシデント検知部１２が検知したセキュリティインシデントから、ロボットコントローラ６６が特定のソフトウェア（例えば、ロボット７０の動作プログラム）を実行するときのログを盗み取る目的を持ったマルウェアの潜入が疑われる場合を想定する。
【００８５】
この場合、通常ワークフロー実行部１６は、試験通信環境６０Ｖにおいて、仮想ロボットコントローラ６６Ｖが該ソフトウェアを実行するまでの模擬的プロセスを、通信環境５０で通常ワークフローを実行するときよりも、高速で実行する。
【００８６】
次いで、通常ワークフロー実行部１６は、仮想ロボットコントローラ６６Ｖが該ソフトウェアを実行するプロセスを、通信環境５０で通常ワークフローを実行するときと同等またはそれよりも低速で、実行する。このように、通常ワークフロー実行部１６は、セキュリティインシデントの内容に応じて、試験通信環境６０Ｖにて通常ワークフローを実行する速度を可変とする。
【００８７】
また、通常ワークフロー実行部１６は、通信環境５０で通常ワークフローが実行されるときと同じデータ処理順序となるように、試験通信環境６０Ｖで通常ワークフローを実行する。
【００８８】
また、通常ワークフロー実行部１６は、通信環境５０で通常ワークフローが実行されるときと同じタイミングで、然るべきデータ処理を実行する。例えば、通信環境５０で通常ワークフローを実行するとき、標準時間１３時００分に上位コントローラ６２がデータ処理Ａを実行することが予定されていたとする。
【００８９】
この場合、通常ワークフロー実行部１６は、試験通信環境６０Ｖにおける標準時間１３時００分に仮想上位コントローラ６２Ｖにデータ処理Ａを模擬的に実行させる。このように、通常ワークフロー実行部１６は、試験通信環境６０Ｖで通常ワークフローを高速または低速で実行する場合においても、通信環境５０で通常ワークフローが実行されるときと同じ順序且つタイミングで、各種動作を実行する。
【００９０】
他の例として、試験通信環境設定部１４が図５に示す試験通信環境８０Ｖを設定した場合、通常ワークフロー実行部１６は、該試験通信環境８０Ｖにおいて、仮想情報管理サーバ８２Ｖ、仮想ＩＤリーダ８８Ｖ、および仮想ＰＣ９０Ｖに、以下のような通常ワークフローを実行させる。
【００９１】
具体的には、仮想ＩＤリーダ８８Ｖは、ＩＤカードからＩＤ番号を取得する動作を模擬的に実行し、取得した仮想ＩＤ番号を、仮想通信ネットワーク８４Ｖを介して仮想情報管理サーバ８２Ｖへ送信する。
【００９２】
また、仮想ＰＣ９０Ｖは、該仮想ＰＣ９０Ｖへのログイン動作を模擬的に実行し、仮想ログイン情報（例えば、ログインＩＤ、ログイン日時等）を、仮想通信ネットワーク８４Ｖを介して、仮想情報管理サーバ８２Ｖへ送信する。
【００９３】
仮想情報管理サーバ８２Ｖは、仮想ＩＤリーダ８８Ｖおよび仮想ＰＣ９０Ｖから送信された仮想ＩＤ番号および仮想ログイン情報を収集し、収集した仮想ＩＤ番号および仮想ログイン情報に基づいて、従業員の労働時間または業務フローを管理する動作を、模擬的に実行する。
【００９４】
通常ワークフロー実行部１６は、仮想情報管理サーバ８２Ｖ、仮想ＩＤリーダ８８Ｖ、および仮想ＰＣ９０Ｖが構築されている、通信環境５０の通信機器５２のリソースを制御して、上述したような一連の通常ワークフローを試験通信環境８０Ｖにて模擬的に実行させる。
【００９５】
ここで、通常ワークフロー実行部１６は、通信環境５０で情報管理サーバ８２、ＩＤリーダ８８、およびＰＣ９０が上述の通常ワークフローを実行するときよりも高速または低速で、試験通信環境８０Ｖにて該通常ワークフローを模擬的に実行する。
【００９６】
例えば、通常ワークフロー実行部１６は、試験通信環境８０Ｖにおける時間を規定する標準時間を、通信環境５０における標準時間よりも速く（または遅く）経過するように設定する。
【００９７】
または、通常ワークフロー実行部１６は、試験通信環境８０Ｖにて通常ワークフローを模擬的に実行するときに仮想情報管理サーバ８２Ｖ、仮想ＩＤリーダ８８Ｖ、および仮想ＰＣ９０Ｖの間で行われる通信の周期を、通信環境５０にて通常ワークフローを実行するときよりも、短く（または長く）設定する。
【００９８】
このような手法により、通常ワークフロー実行部１６は、通信環境５０で通常ワークフローを実行するときよりも高速（または低速）で、試験通信環境８０Ｖにて該通常ワークフローを実行できる。
【００９９】
通信監視部１８は、通常ワークフロー実行部１６が試験通信環境６０Ｖ、８０Ｖにおいて通常ワークフローを模擬的に実行しているときに、該試験通信環境６０Ｖ、８０Ｖにおける情報および通信を監視する。
【０１００】
具体的には、通信監視部１８は、試験通信環境６０Ｖ、８０Ｖに蓄積されている全ての情報（各種データ、ログ）、および試験通信環境６０Ｖ、８０Ｖにおいて行われている全ての通信を、システム１０の記憶部に記憶する。
【０１０１】
また、通信監視部１８は、試験通信環境６０Ｖ、８０Ｖにおける情報および通信を、例えばオペレータからの要求に応じて、表示部（図示せず）に表示する。これにより、オペレータは、試験通信環境６０Ｖ、８０Ｖで行われている通信が適正か否かを判断できる。
【０１０２】
なお、以上に述べたセキュリティインシデント検知部１２、試験通信環境設定部１４、通常ワークフロー実行部１６、および通信監視部１８の機能は、システム１０を構成するサーバ（または、少なくとも１つの通信機器）の演算処置ユニットが担うことになる。
【０１０３】
次に、図６を参照して、システム１０の動作フローの一例について、説明する。図６に示す動作フローは、システム１０の演算処置ユニットが、オペレータから通信環境５０への侵入を監視する監視指令を受け付けたときに、開始する。
【０１０４】
ステップＳ１において、セキュリティインシデント検知部１２は、通信環境５０におけるセキュリティインシデントの発生を検知する動作を開始する。
【０１０５】
一例として、セキュリティインシデント検知部１２は、通信環境５０における通信で発生したデータまたはログ等と、不正アクセスを検出するための検出用パターンとを順次比較する。他の例として、セキュリティインシデント検知部１２は、実際に通信環境５０で行われている通信状態と、予め定められた不正通信状態との差を検出する。
【０１０６】
ステップＳ２において、セキュリティインシデント検知部１２は、通信環境５０においてセキュリティインシデントが発生したか否かを判定する。
【０１０７】
一例として、セキュリティインシデント検知部１２は、検出用パターンと一致するデータまたはログが発生したか否かを判定する。他の例として、セキュリティインシデント検知部１２は、実際に通信環境５０で行われている通信状態と不正通信状態との間に有意な差が発生したか否かを判定する。
【０１０８】
セキュリティインシデント検知部１２は、検出用パターンと一致するデータまたはログが発生した場合、または、実際に通信環境５０で行われている通信状態と不正通信状態との差が発生した場合、ＹＥＳと判定し、ステップＳ３へ進む。
【０１０９】
一方、セキュリティインシデント検知部１２は、検出用パターンと一致するデータまたはログが発生していない場合、または、実際に通信環境５０で行われている通信状態と不正通信状態との差が発生していない場合、ＮＯと判定し、ステップＳ７へ進む。
【０１１０】
ステップＳ３において、試験通信環境設定部１４は、通信環境５０において試験通信環境６０Ｖ、８０Ｖを設定する。例えば、試験通信環境設定部１４は、上述したように、図３に示す仮想通信環境６０Ｖ、または図５に示す仮想通信環境８０Ｖを、試験通信環境６０Ｖまたは８０Ｖとして設定する。
【０１１１】
ステップＳ４において、通常ワークフロー実行部１６は、試験通信環境６０Ｖ、８０Ｖにおいて通常ワークフローを模擬的に実行する。例えば、通常ワークフロー実行部１６は、試験通信環境６０Ｖにおいて、仮想上位コントローラ６２Ｖ、仮想ロボットコントローラ６６Ｖ、仮想ビジョンセンサ７２Ｖ、および仮想サーボモータ７４Ｖに、上述したような一連の通常ワークフローを実行させる。
【０１１２】
または、通常ワークフロー実行部１６は、試験通信環境８０Ｖにおいて、仮想情報管理サーバ８２Ｖ、仮想ＩＤリーダ８８Ｖ、および仮想ＰＣ９０Ｖに、上述したような一連の通常ワークフローを実行させる。
【０１１３】
ステップＳ５において、通信監視部１８は、試験通信環境６０Ｖ、８０Ｖにおける情報および通信を監視する。具体的には、通信監視部１８は、試験通信環境６０Ｖ、８０Ｖに蓄積されている全ての情報、および試験通信環境６０Ｖまたは８０Ｖにおいて行われている全ての通信を、システム１０の記憶部に記憶する。そして、通信監視部１８は、試験通信環境６０Ｖまたは８０Ｖにおける情報および通信を表示部に表示する。
【０１１４】
なお、通信監視部１８は、試験通信環境６０Ｖ、８０Ｖで行われている通信と、通信環境５０で通常ワークフローを適正に実行しているときに行われるべき通信とを統計的に比較し、両者に有意な差があるか否かを判定してもよい。そして、通信監視部１８は、両者に差がある場合に、オペレータに音声または画像で警告を発信してもよい。
【０１１５】
ステップＳ６において、システム１０の演算処理ユニットは、オペレータから動作終了指令を受け付けたか否かを判定する。システム１０の演算処理ユニットは、動作終了指令を受け付けた場合、ＹＥＳと判定し、図６に示すフローを終了する。一方、システム１０の演算処理ユニットは、動作終了指令を受け付けていない場合、ＮＯと判定し、ステップＳ６をループする。
【０１１６】
こうして、ステップＳ６でＹＥＳと判定されるまで、通常ワークフロー実行部１６は、試験通信環境６０Ｖ、８０Ｖにて通常ワークフローを継続して実行し、通信監視部１８は、試験通信環境６０Ｖ、８０Ｖにおける通信を継続して監視する。
【０１１７】
これにより、例えば潜伏期間を有するマルウェアのようなリスクが通信環境５０に進入した場合に、該リスクを検知し、分析することが可能となる。この作用効果について、以下に説明する。
【０１１８】
以下、通信環境５０で行われる通常ワークフローの情報または通信を攻撃する（例えば、通信妨害する、または情報を漏洩もしくは改ざんする）ようにプログラムされた、潜伏期間を有するマルウェアが、通信環境５０に進入した場合を想定する。このようなマルウェアは、潜伏期間に活動することがないので、該潜伏期間に該マルウェアを検出することは、非常に困難である。
【０１１９】
そこで、本実施形態においては、このようなマルウェアを敢えて活動させるために、通常ワークフロー実行部１６が、通信環境５０で通常業務として実行されるべき通常ワークフローを試験通信環境６０Ｖ、８０Ｖにて模擬的に実行する（ステップＳ４）。
【０１２０】
そうすると、通信環境５０に進入して潜伏していたマルウェアは、試験通信環境６０Ｖ、８０Ｖで行われている通常ワークフローの通信または情報を攻撃対象であると誤認し、試験通信環境６０Ｖ、８０Ｖで活動を開始する。そして、マルウェアは、試験通信環境６０Ｖ、８０Ｖで行われている通常ワークフローの通信または情報を攻撃し始める。
【０１２１】
例えば、マルウェアは、試験通信環境６０Ｖで通常ワークフローを実行しているときに、仮想ビジョンセンサ７２Ｖから仮想ロボットコントローラ６６Ｖへの仮想画像の送信を妨害しようと試みる。
【０１２２】
または、マルウェアは、試験通信環境８０Ｖで通常ワークフローを実行しているときに、仮想ＩＤリーダ８８Ｖから仮想情報管理サーバ８２Ｖへ送信されるＩＤ番号を盗み取り、通信環境５０の外部の通信ネットワークへ漏洩しようと試みる。
【０１２３】
一方、通信監視部１８は、試験通信環境６０Ｖ、８０Ｖにおける情報および通信を監視しているので、オペレータは、通信監視部１８を通して、試験通信環境６０Ｖ、８０Ｖにおける情報および通信を監視できる。したがって、オペレータは、試験通信環境６０Ｖ、８０Ｖで活動するマルウェアの挙動を、詳細に分析できる。
【０１２４】
ここで、本実施形態においては、通常ワークフロー実行部１６は、マルウェアの活動によって試験通信環境６０Ｖ、８０Ｖで行われている通常ワークフローの通信または情報に異常が生じた後も、該通常ワークフローを継続して実行する。これにより、マルウェアを、その目的を達成するまで活動させることができる。
【０１２５】
なお、通常ワークフロー実行部１６は、マルウェアによる通信または情報の異常がシステム１０で発生する可能性がある場合、または、通信環境５０の通常業務を阻害する可能性がある場合は、該異常が生じたときに、試験通信環境６０Ｖ、８０Ｖで行われている通常ワークフローを停止させてもよい。
【０１２６】
こうして、オペレータは、マルウェアの目的および挙動を詳細に分析することができ、該分析結果から、該マルウェアの出所を突き止め易くなり、また、該マルウェアに対する防御策を有利に構築することができる。
【０１２７】
なお、システム１０の記憶部は、マルウェアによってもたらされる情報または通信の異常の具体的な事象（統計的分析により異常と判定されるような情報または通信の発生、通信の停止または停滞、情報の削除または改ざん等）を、シミュレーション等の手法によって予め記憶してもよい。
【０１２８】
そして、通常ワークフロー実行部１６は、試験通信環境６０Ｖ、８０Ｖでマルウェアが情報または通信を攻撃するのに応じて、このような事象を、該試験通信環境６０Ｖ、８０Ｖにて発生させてもよい。この構成によれば、マルウェアをさらに巧妙に欺くことができ、該マルウェアを、その目的を達成するまで、より確実に活動させることができる。
【０１２９】
このように試験通信環境６０Ｖ、８０Ｖでマルウェアにその目的を達成させることができれば、このときのマルウェアの挙動内容は、攻撃者の目的や立場を精度良く推定するための有益な傍証となる。
【０１３０】
また、通信環境５０を管理するオペレータは、マルウェアの目的が達成された段階で、該マルウェアが通信環境５０の通常業務に対して致命的なリスクとなるか否かを判断し、該致命的なリスクとなると判断した場合、通常ワークフローを停止させる等の処置を決定できる。
【０１３１】
また、試験通信環境６０Ｖ、８０Ｖで通常ワークフローを実行するにつれてマルウェアの目的（すなわち、特定の情報または通信の攻撃）が判明した場合、通常ワークフロー実行部１６は、攻撃対象となっている情報または通信に関連するプロセスのみを試験通信環境６０Ｖ、８０Ｖで継続して実行し、それ以外のプロセスを停止させてもよい。
【０１３２】
例えば、マルウェアが、試験通信環境６０Ｖで通常ワークフローを実行しているときに、仮想ビジョンセンサ７２Ｖから仮想ロボットコントローラ６６Ｖへの仮想画像の送信を妨害する目的を持っていることが判明したとする。
【０１３３】
この場合、通常ワークフロー実行部１６は、試験通信環境６０Ｖで行う通常ワークフローのうち、仮想ロボットコントローラ６６Ｖと仮想ビジョンセンサ７２Ｖとの通信を行うプロセスのみ実行し、その他のプロセスを停止する。
【０１３４】
または、マルウェアが、試験通信環境８０Ｖで通常ワークフローを実行しているときに、仮想ＩＤリーダ８８Ｖから仮想情報管理サーバ８２Ｖへ送信されるＩＤ番号を盗み取る目的を持っていることが判明したとする。
【０１３５】
この場合、通常ワークフロー実行部１６は、試験通信環境８０Ｖで行う通常ワークフローのうち、仮想情報管理サーバ８２Ｖと仮想ＩＤリーダ８８Ｖとの通信、または、仮想情報管理サーバ８２ＶにＩＤ番号を記録するプロセスのみ実行し、その他のプロセスを停止する。
【０１３６】
この構成によれば、マルウェアを、その目的を達成するまで活動させることができるとともに、試験通信環境６０Ｖ、８０Ｖで通常ワークフローを実行するときの情報処理量を削減し、これにより、該通常ワークフローの実行時に通信環境５０のリソースに掛かる負担を軽減できる。
【０１３７】
なお、マルウェアの活動によって試験通信環境６０Ｖ、８０Ｖの通信がダウンした場合の安全策として、システム１０は、該試験通信環境６０Ｖ、８０Ｖの通信を回復させる機能を有していてもよい。
【０１３８】
再度、図６を参照して、ステップＳ２でＮＯと判定された場合、ステップＳ７において、システム１０の演算処理ユニットは、上述のステップＳ６と同様に、オペレータから動作終了指令を受け付けたか否かを判定する。
【０１３９】
システム１０のＣＰＵは、動作終了指令を受け付けた場合、ＹＥＳと判定し、図６に示すフローを終了する。一方、システム１０の演算処理ユニットは、動作終了指令を受け付けていない場合、ＮＯと判定し、ステップＳ２へ戻る。
【０１４０】
上述したように、本実施形態においては、通常ワークフロー実行部１６が試験通信環境６０Ｖ、８０Ｖで通常ワークフローを模擬的に実行し（ステップＳ４）、通信監視部１８が試験通信環境６０Ｖ、８０Ｖにおける情報および通信を監視する（ステップＳ５）。これにより、潜伏期間を有するマルウェアのような巧妙なリスクを確実に検出し、その目的および挙動を詳細に分析することができる。
【０１４１】
また、本実施形態においては、試験通信環境設定部１４は、セキュリティインシデントが検知されたときに、通信環境６０または８０を仮想化した仮想通信環境６０Ｖまたは８０Ｖを、試験通信環境６０Ｖまたは８０Ｖとして設定している。
【０１４２】
この構成によれば、通信環境５０のリソースを利用しつつ、試験通信環境６０Ｖまたは８０Ｖを設けることができる。また、セキュリティインシデントが検知されたときに、通信環境５０で余剰となっているリソースを、試験通信環境６０Ｖまたは８０Ｖとして迅速に利用することができる。
【０１４３】
また、本実施形態においては、通常ワークフロー実行部１６は、上述したように、通信環境５０で通常ワークフローを実行するときよりも高速または低速で、試験通信環境６０Ｖで該通常ワークフローを実行している。
【０１４４】
試験通信環境６０Ｖ、８０Ｖにおいて通常ワークフローをより高速で実行した場合、潜伏しているマルウェアを早期に始動させ、また、該マルウェアがその目的を達成するまでの期間も短縮できる。したがって、マルウェア等のリスクの分析を、より迅速に行うことができる。
【０１４５】
一方、試験通信環境６０Ｖ、８０Ｖにおいて通常ワークフローをより低速で実行した場合、試験通信環境６０Ｖ、８０Ｖで通常ワークフローを実行するときの通信速度を抑えることができるので、該通常ワークフローの実行時に通信環境５０のリソースに掛かる負担を軽減できる。
【０１４６】
次に、図７を参照して、他の実施形態に係るシステム２０について説明する。システム２０は、上述のシステム１０と同様に、通信ネットワーク５４に通信可能に接続され、通信環境５０を構成する。例えば、システム２０は、演算処理ユニット（例えば、ＣＰＵ）および記憶部を有するサーバから構成される。システム２０は、上述のシステム１０と、リスク判定部２２および通信遮断部２４をさらに備える点で、相違する。
【０１４７】
リスク判定部２２は、セキュリティインシデント検知部１２が検知したセキュリティインシデントを分析し、該セキュリティインシデントのリスクの度合が大きいか否かを判定する。
【０１４８】
例えば、リスク判定部２２は、通信環境５０の外部に設けられたセキュリティインシデントデータベースにアクセスし、セキュリティインシデントに関する最新の情報を入手する。セキュリティインシデントデータベースには、通信環境で発生し得るセキュリティインシデントに関する情報が蓄積され、順次アップデートされる。
【０１４９】
リスク判定部２２は、セキュリティインシデント検知部１２が検知したセキュリティインシデントの情報と、セキュリティインシデントデータベースから入手した最新の情報とを照らし合わせることによって、検知されたセキュリティインシデントを分析する。
【０１５０】
そして、リスク判定部２２は、検知されたセキュリティインシデントのリスクの度合が大きいか否かを判定する。例えば、リスク判定部２２は、検知されたセキュリティインシデント（不正アクセス等）に、悪質なマルウェアの痕跡がある場合に、セキュリティインシデントのリスクの度合が大きいと判定する。
【０１５１】
通信遮断部２４は、リスク判定部２２がリスクの度合が大きいと判定した場合に、通信環境５０のうちの試験通信環境６０Ｖ、８０Ｖ以外の部分と、試験通信環境６０Ｖ、８０Ｖとの通信を遮断する。
【０１５２】
一例として、試験通信環境設定部１４が図３に示す試験通信環境６０Ｖを設定した場合、通信遮断部２４は、試験通信環境６０Ｖ以外の通信環境５０のセクション５０Ａと、試験通信環境６０Ｖとを接続するネットワークスイッチを制御して、該セクション５０Ａと該試験通信環境６０Ｖとの通信を遮断する。
【０１５３】
他の例として、試験通信環境設定部１４が図５に示す試験通信環境８０Ｖを設定した場合、通信遮断部２４は、試験通信環境８０Ｖ以外の通信環境５０のセクション５０Ｂと、試験通信環境８０Ｖとを接続するネットワークスイッチを制御して、該セクション５０Ｂと該試験通信環境８０Ｖとの通信を遮断する。
【０１５４】
なお、以上に述べたリスク判定部２２および通信遮断部２４の機能は、システム２０の演算処理ユニットが担うことになる。
【０１５５】
次に、図８を参照して、システム２０の動作フローの一例について説明する。なお、図８に示すフローにおいて、図６に示すフローと同様のプロセスには同じステップ番号を付し、重複する説明を省略する。
【０１５６】
ステップＳ３の後、ステップＳ１１において、リスク判定部２２は、上述したように、セキュリティインシデント検知部１２が検知したセキュリティインシデントのリスクの度合が大きいか否かを判定する。
【０１５７】
リスク判定部２２は、検知したセキュリティインシデントのリスクの度合が大きい（すなわち、ＹＥＳ）と判定した場合、ステップＳ１２へ進む。一方、リスク判定部２２は、検知したセキュリティインシデントのリスクの度合が大きくない（すなわち、ＮＯ）と判定した場合、ステップＳ４へ進む。
【０１５８】
ステップＳ１２において、通信遮断部２４は、上述したように、通信環境５０のうちの試験通信環境６０Ｖ、８０Ｖ以外の部分（すなわち、セクション５０Ａ、５０Ｂ）と、試験通信環境６０Ｖ、８０Ｖとの通信を遮断する。
【０１５９】
このように、本実施形態においては、検知されたセキュリティインシデントのリスクの度合が大きいと判定された場合に、通信環境５０のセクション５０Ａ、５０Ｂと試験通信環境６０Ｖ、８０Ｖとの通信を遮断している。その上で、ステップＳ４において、通常ワークフロー実行部１６は、試験通信環境６０Ｖ、８０Ｖで通常ワークフローを模擬的に実行する。
【０１６０】
この構成によれば、仮に、試験通信環境６０Ｖ、８０Ｖで通常ワークフローを実行しているときに、リスクの度合が大きいマルウェア等が該試験通信環境６０Ｖ、８０Ｖで活動を開始したとしても、通常の業務で使用される通信環境５０のセクション５０Ａ、５０Ｂが該マルウェアによって損害を受けることを防止できる。
【０１６１】
次に、図９を参照して、さらに他の実施形態に係るシステム３０について説明する。システム３０は、上述のシステム１０と同様に、通信ネットワーク５４に通信可能に接続され、通信環境５０を構成する。例えば、システム３０は、演算処理ユニット（例えば、ＣＰＵ）および記憶部を有するサーバから構成される。システム３０は、上述のシステム１０と、アンチウイルス処理実行部３２をさらに備える点で、相違する。
【０１６２】
アンチウイルス処理実行部３２は、マルウェア等が通信環境５０へ侵入することによって通信監視部１８が監視する情報または通信に異常が生じた後に、試験通信環境６０Ｖ、８０Ｖに対してアンチウイルス処理を実行する。
【０１６３】
例えば、アンチウイルス処理実行部３２は、通信環境５０の外部に設けられたアンチウイルスソフトウェアのデータベースに定期的にアクセスし、最新のアンチウイルスソフトウェアをダウンロードする。
【０１６４】
そして、アンチウイルス処理実行部３２は、最新のアンチウイルスソフトウェアを用いて、試験通信環境６０Ｖ、８０Ｖで活動しているマルウェア等に対して、アンチウイルス処理を実行する。
【０１６５】
通信監視部１８は、アンチウイルス処理実行部３２がアンチウイルス処理を実行した後も、試験通信環境６０Ｖ、８０Ｖで行われている通常ワークフローの通信を継続して監視する。なお、アンチウイルス処理実行部３２の機能は、システム３０の演算処理ユニットが担うことになる。
【０１６６】
次に、図１０を参照して、システム３０の動作フローの一例について説明する。なお、図１０に示すフローにおいて、図６に示すフローと同様のプロセスには同じステップ番号を付し、重複する説明を省略する。
【０１６７】
ステップＳ５の後、ステップＳ２１において、通信監視部１８は、監視中の試験通信環境６０Ｖ、８０Ｖにおいて、マルウェアの活動が検知されたか否かを判定する。例えば、通信監視部１８は、試験通信環境６０Ｖ、８０Ｖで行われている通信と、通信環境５０で通常ワークフローを適正に実行しているときに行われるべき通信とを統計的に比較し、両者に有意な差があるか否かを判定する。
【０１６８】
そして、通信監視部１８は、両者に差がある場合に、マルウェアの活動が検知された（すなわち、ＹＥＳ）と判定し、ステップＳ２２へ進む。一方、通信監視部１８は、両者が実質同一である場合に、マルウェアの活動が検知されていない（すなわち、ＮＯ）と判定し、ステップＳ２３へ進む。
【０１６９】
ステップＳ２２において、アンチウイルス処理実行部３２は、上述したように、マルウェアが活動している試験通信環境６０Ｖ、８０Ｖに対してアンチウイルス処理を実行する。
【０１７０】
そして、ステップＳ６でＹＥＳと判定されるまで、通常ワークフロー実行部１６は、試験通信環境６０Ｖ、８０Ｖにて通常ワークフローを継続して実行し、通信監視部１８は、アンチウイルス処理実行後の試験通信環境６０Ｖ、８０Ｖにおける通信を継続して監視する。
【０１７１】
一方、ステップＳ２１にてＮＯと判定された場合、ステップＳ２３において、システム３０の演算処理ユニットは、上述のステップＳ６と同様に、オペレータから動作終了指令を受け付けたか否かを判定する。
【０１７２】
システム３０の演算処理ユニットは、動作終了指令を受け付けた場合、ＹＥＳと判定し、図１０に示すフローを終了する。一方、システム３０の演算処理ユニットは、動作終了指令を受け付けていない場合、ＮＯと判定し、ステップＳ２１へ戻る。
【０１７３】
以上に述べたように、本実施形態においては、アンチウイルス処理実行部３２は、マルウェア等によって試験通信環境６０Ｖ、８０Ｖに行われる通常ワークフローの通信に異常が生じた後に、該試験通信環境６０Ｖ、８０Ｖ対してアンチウイルス処理を実行している。
【０１７４】
そして、通信監視部１８は、アンチウイルス処理実行部３２がアンチウイルス処理を実行した後、試験通信環境６０Ｖ、８０Ｖで行われている通常ワークフローの通信を継続して監視する。
【０１７５】
この構成によれば、オペレータは、試験通信環境６０Ｖ、８０Ｖで活動しているマルウェアにアンチウイルス処理を実行したときの該マルウェアの挙動を監視できる。これにより、オペレータは、マルウェアの性質（目的、挙動等）を、より詳細に分析できるので、該マルウェアの出所を突き止め易くなり、また、該マルウェアに対する防御策を、より効果的に構築することができる。
【０１７６】
次に、図１１を参照して、さらに他の実施形態に係るシステム４０Ａおよび４０Ｂについて説明する。システム４０Ａおよび４０Ｂの各々は、通信ネットワーク５４に通信可能に接続されており、通信環境５０を構成している。
【０１７７】
システム４０Ａは、例えば、通信環境５０の情報セキュリティを統括する情報セキュリティマネジメントシステム(ＩＳＭＳ)であって、複数の通信機器（ＰＣ、サーバ等）と、該複数の通信機器を通信可能に接続する通信ネットワークから構成される。
【０１７８】
システム４０Ａは、セキュリティインシデント検知部１２、試験通信環境設定部１４、通常ワークフロー実行部１６、通信監視部１８、リスク判定部２２、通信遮断部２４、およびアンチウイルス処理実行部３２を備える。
【０１７９】
システム４０Ａのセキュリティインシデント検知部１２、試験通信環境設定部１４、通常ワークフロー実行部１６、通信監視部１８、リスク判定部２２、通信遮断部２４、およびアンチウイルス処理実行部３２の機能は、システム４０Ａを構成する複数の通信機器のうちの少なくとも１つが担うことになる。
【０１８０】
システム４０Ｂは、例えば、上述の上位コントローラ６２、ロボットコントローラ６６、または情報管理サーバ８２の機能を担うシステムであって、演算処理ユニット（ＣＰＵ）および記憶部（例えば、ＲＯＭまたはＲＡＭ）を有する。
【０１８１】
システム４０Ｂは、セキュリティインシデント検知部１２、試験通信環境設定部１４、通常ワークフロー実行部１６、通信監視部１８、リスク判定部２２、通信遮断部２４、およびアンチウイルス処理実行部３２を備える。
【０１８２】
システム４０Ｂのセキュリティインシデント検知部１２、試験通信環境設定部１４、通常ワークフロー実行部１６、通信監視部１８、リスク判定部２２、通信遮断部２４、およびアンチウイルス処理実行部３２の機能は、システム４０Ｂの演算処理ユニットが担うことになる。
【０１８３】
システム４０Ａおよび４０Ｂの各々は、図１２に示す動作フローを実行する。なお、図１２に示す動作フローの各ステップは、図６、図８、および図１０に示すフローと同様であるので、詳細な説明を省略する。
【０１８４】
このように、図１１に示す通信環境５０においては、システム４０Ａおよび４０Ｂの各々が、セキュリティインシデントの検知（ステップＳ１）、試験通信環境６０Ｖ、８０Ｖの設定（ステップＳ３）、リスク度合いの判定（ステップＳ１１）、通信の遮断（ステップＳ１２）、通常ワークフローの実行（ステップＳ４）、情報および通信の監視（ステップＳ５）、ならびにアンチウイルス処理の実行（ステップＳ２２）といったプロセスを実行する。
【０１８５】
なお、システム１０、２０、３０、４０Ａ、または４０Ｂは、試験通信環境設定部１４を具備しなくてもよい。図１３および図１４に、このような実施形態を示す。
【０１８６】
図１３に示すシステム１０’は、セキュリティインシデント検知部１２、通常ワークフロー実行部１６、および通信監視部１８を備え、第１通信ネットワーク５４Ａに接続されている。
【０１８７】
ここで、図１３に示す通信環境５０においては、該通信環境５０の一部として、試験通信環境１００が予め設けられている。該試験通信環境１００は、通信環境５０を構成する複数の通信機器５２の一部と、該一部の通信機器５２を通信可能に接続する第２通信ネットワーク５４Ｂとを有する。
【０１８８】
第１通信ネットワーク５４Ａおよび第２通信ネットワーク５４Ｂは、上述の通信ネットワーク５４を構成する。
【０１８９】
システム１０’の通常ワークフロー実行部１６は、セキュリティインシデント検知部１２がセキュリティインシデントを検知したときに、予め設けられた試験通信環境１００において、通常ワークフローを模擬的に実行する。
【０１９０】
一方、図１４に示すシステム１０”は、セキュリティインシデント検知部１２、通常ワークフロー実行部１６、および通信監視部１８を備え、通信ネットワーク５４に接続されている。
【０１９１】
ここで、図１４に示す実施形態においては、試験通信環境１０２が、通信環境５０とは別の通信環境として、予め設けられている。試験通信環境１０２は、複数の通信機器１０４と、該複数の通信機器１０４を通信可能に接続する通信ネットワーク１０６とを有する。
【０１９２】
通信ネットワーク１０６は、通信ネットワーク５４と通信可能に接続されている。例えば、試験通信環境１０２は、通信環境５０の外部の通信ネットワーク（例えば、インターネット）との通信が遮断される。
【０１９３】
システム１０”の通常ワークフロー実行部１６は、セキュリティインシデント検知部１２がセキュリティインシデントを検知したときに、予め設けられた試験通信環境１０２において、通常ワークフローを模擬的に実行する。
【０１９４】
システム１０’または１０”においても、上述の実施形態と同様に、試験通信環境１００または１０２で通常ワークフローを実行することによって、該試験通信環境１００または１０２でマルウェアを活動させ、その目的および挙動を分析できる。
【０１９５】
なお、試験通信環境設定部１４は、セキュリティインシデント（例えば、不正アクセス）が発生した通信環境５０のリソースを含むように、試験通信環境６０Ｖ、８０Ｖを設定してもよい。
【０１９６】
例えば、セキュリティインシデント検知部１２が第１の通信機器５２でセキュリティインシデント（不正アクセス等）が発生したことを検知したとする。この場合、試験通信環境設定部１４は、図３に示す試験通信環境６０Ｖを設定するときに、第１の通信機器５２のリソースを利用して、仮想上位コントローラ６２Ｖ、仮想ロボットコントローラ６６Ｖ、仮想ビジョンセンサ７２Ｖ、または仮想サーボモータ７４Ｖを構築する。
【０１９７】
または、試験通信環境設定部１４は、図５に示す試験通信環境８０Ｖを設定するときに、第１の通信機器５２のリソースを利用して、仮想情報管理サーバ８２Ｖ、仮想ＩＤリーダ８８Ｖ、または仮想ＰＣ９０Ｖを構築する。このように設定することによって、マルウェア等が潜伏している可能性があるリソースを、試験通信環境６０Ｖ、８０Ｖの構成要素として使用できる。
【０１９８】
また、通常ワークフロー実行部１６は、試験通信環境６０Ｖ、８０Ｖでマルウェア等が活動を開始したことを検知したときに、通常ワークフローを停止してもよい。また、通信監視部１８は、試験通信環境６０Ｖ、８０Ｖでマルウェア等が活動を開始したことを検知したときに、試験通信環境６０Ｖ、８０Ｖの通信の監視を停止してもよい。また、システム１０、２０、および３０の特徴を組み合わせることもできる。
【０１９９】
以上、実施形態を通じて本開示を説明したが、上述の実施形態は、特許請求の範囲に係る発明を限定するものではない。また、実施形態の中で説明されている特徴を組み合わせた形態も本開示の技術的範囲に含まれ得るが、これら特徴の組み合わせの全てが、発明の解決手段に必須であるとは限らない。さらに、上述の実施形態に、多様な変更または改良を加えることが可能であることも当業者に明らかである。
【０２００】
また、特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、工程、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」、「次いで」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【０２０１】
１０，２０，３０，４０Ａ，４０Ｂ    システム
１２    セキュリティインシデント検知部
１４    試験通信環境設定部
１６    通常ワークフロー実行部
１８    通信監視部
２２    リスク判定部
２４    通信遮断部
３２    アンチウイルス処理実行部
【図１】
2018120296.tif 000003
【図２】
2018120296.tif 000004
【図３】
2018120296.tif 000005
【図４】
2018120296.tif 000006
【図５】
2018120296.tif 000007
【図６】
2018120296.tif 000008
【図７】
2018120296.tif 000009
【図８】
2018120296.tif 000010
【図９】
2018120296.tif 000011
【図１０】
2018120296.tif 000012
【図１１】
2018120296.tif 000013
【図１２】
2018120296.tif 000014
【図１３】
2018120296.tif 000015
【図１４】
2018120296.tif 000016