(57)【特許請求の範囲】
【請求項１】
コンピュータにより実行される仮想マシンにより仮想的に実現された情報処理装置に対する不正アクセスを検出する検出部と、
外部ネットワークから前記情報処理装置への正当アクセスを転送する正規ネットワークと、
前記外部ネットワークから前記情報処理装置への不正アクセスを転送するハニーポッドネットワークと、
不正アクセスが検出されていない前記情報処理装置を前記正規ネットワークに接続し、不正アクセスが検出された前記情報処理装置を前記ハニーポッドネットワークに接続する制御部と、
を備え、
前記制御部は、前記検出部が前記不正アクセスを検出したことに応じて、前記情報処理装置を、前記不正アクセスを通常動作から切り離すデコイモードへと遷移させる
システム。
【請求項２】
前記コンピュータは、前記情報処理装置を仮想的に実現する第１の前記仮想マシンおよび第２の前記仮想マシンを実行し、
前記制御部は、
正常に動作している場合において、前記第１の仮想マシンにより実現される前記情報処理装置を正常モードで動作させ、前記第２の仮想マシンにより実現される前記情報処理装置を処理の実行を待機しているスタンバイモードで動作させ、
前記第１の仮想マシンにより実現される前記情報処理装置に対する不正アクセスを検出した場合、前記第１の仮想マシンにより実現される前記情報処理装置を前記正常モードから前記デコイモードに遷移させ、前記第２の仮想マシンにより実現される前記情報処理装置を前記スタンバイモードから前記正常モードに遷移させる
請求項１に記載のシステム。
【請求項３】
前記制御部は、前記デコイモードで動作する前記情報処理装置を実現する前記第１の仮想マシンを、前記正常モードで動作する前記情報処理装置を実現する前記第２の仮想マシンを実行するコンピュータとは異なるコンピュータにより実行させる
請求項２に記載のシステム。
【請求項４】
前記制御部は、
前記情報処理装置に対して不正アクセスの可能性がある場合、前記第１の仮想マシンにより実現される前記情報処理装置を、正常モードから、入力ポートに通常動作におけるデータを入力して出力ポートを通常動作から切り離し可能な状態で動作するプロービングモードに遷移させ、
前記プロービングモードで動作する前記情報処理装置に対する不正アクセスを検出した場合、前記第１の仮想マシンにより実現される前記情報処理装置を前記プロービングモードから前記デコイモードに遷移させる
請求項２または３に記載のシステム。
【請求項５】
前記制御部は、前記プロービングモードで動作する前記情報処理装置を実現する前記第１の仮想マシンを、前記正常モードで動作する前記情報処理装置を実現する前記第２の仮想マシンを実行するコンピュータと同一のコンピュータにより実行させる
請求項４に記載のシステム。
【請求項６】
前記制御部は、前記プロービングモードで動作する前記情報処理装置の振る舞いを収集し、収集した振る舞いを前記デコイモードで動作する前記情報処理装置に実行させる
請求項４または５に記載のシステム。
【請求項７】
前記デコイモードで動作する前記情報処理装置に対する不正アクセスの情報を収集する収集部を更に備える
請求項１から６の何れか１項に記載のシステム。
【請求項８】
前記制御部は、前記不正アクセスについて予め定められた種類の情報を収集できた場合には、前記デコイモードで動作する前記情報処理装置の実行を停止する
請求項７に記載のシステム。
【請求項９】
前記情報処理装置は、機器を制御する装置であって、前記機器を予め定められたタイミング毎に基準状態とし、
前記制御部は、前記第１の仮想マシンにより実現される前記情報処理装置に対する不正アクセスを検出した場合であって、前記機器が基準状態となったタイミングにおいて、前記第１の仮想マシンにより実現される前記情報処理装置を前記正常モードから他のモードに遷移させ、前記第２の仮想マシンにより実現される前記情報処理装置を前記スタンバイモードから前記正常モードに遷移させる
請求項２に記載のシステム。
【請求項１０】
情報処理装置を備えるシステムへの不正アクセスに対する防御をする方法であって、
前記システムは、
外部ネットワークから前記情報処理装置への正当アクセスを転送する正規ネットワークと、
前記外部ネットワークから前記情報処理装置への不正アクセスを転送するハニーポッドネットワークと、
を備え、
コンピュータにより実行される仮想マシンにより仮想的に実現された情報処理装置に対する不正アクセスを検出する検出ステップと、
不正アクセスが検出されていない前記情報処理装置を前記正規ネットワークに接続し、不正アクセスが検出された前記情報処理装置を前記ハニーポッドネットワークに接続する制御ステップと
を備え、
前記制御ステップでは、前記検出ステップにおいて前記不正アクセスを検出したことに応じて、前記情報処理装置を、前記不正アクセスを通常動作から切り離すデコイモードへと遷移させる
方法。
【請求項１１】
コンピュータを、請求項１から９の何れか１項に記載のシステムとして機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、不正アクセスに対する防御をするシステム、方法およびプログラムに関する。
【背景技術】
【０００２】
不正アクセスに対する防御をするコンピューティングシステムが知られている。特許文献１には、アプリケーションへの攻撃をモニタするハニーポットを用いたシステムが記載されている。
特許文献１  特表２００８−５３７２６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００３】
ところで、ハニーポッドは実際に不正アクセスがされるまでは必要とならない。また、不正アクセスがされた場合、不正アクセス者をハニーポッドによって、より長い期間だませることが好ましい。また、不正アクセスを検出した場合には、不正アクセスをより早く隔離できることが好ましい。
【課題を解決するための手段】
【０００４】
上記課題を解決するために、本発明の第１の態様においては、コンピュータにより実行される仮想マシンにより仮想的に実現された情報処理装置に対する不正アクセスを検出する検出部と、外部ネットワークから前記情報処理装置への正当アクセスを転送する正規ネットワークと、前記外部ネットワークから前記情報処理装置への不正アクセスを転送するハニーポッドネットワークと、不正アクセスが検出されていない前記情報処理装置を前記正規ネットワークに接続し、不正アクセスが検出された前記情報処理装置を前記ハニーポッドネットワークに接続する制御部と、を備え、前記制御部は、前記検出部が前記不正アクセスを検出したことに応じて、前記情報処理装置を、前記不正アクセスを通常動作から切り離すデコイモードへと遷移させるシステム、方法、および、プログラムを提供する。
【０００５】
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【０００６】
【図１】本実施形態に係るコンピューティングシステム１０の構成を示す。
【図２】不正アクセスが無い場合における、コンピューティングシステム１０の構成を示す。
【図３】不正アクセスが無い場合の構成から不正アクセスの可能性がある場合の構成へと遷移するコンピューティングシステム１０の状態を示す。
【図４】不正アクセスの可能性がある場合の構成から、不正アクセスが検出された場合の構成へと遷移するコンピューティングシステム１０の状態を示す。
【図５】不正アクセスが検出された場合における、コンピューティングシステム１０の構成を示す。
【図６】情報処理装置２０のモード遷移のフローを示す。
【図７】本実施形態の変形例に係るコンピューティングシステム１０において、不正アクセスがある場合における、コンピューティングシステム１０の構成を示す。
【図８】本実施形態に係るコンピュータ１９００のハードウエア構成の一例を示す。
【発明を実施するための形態】
【０００７】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【０００８】
図１は、本実施形態に係るコンピューティングシステム１０の構成を示す。本実施形態に係るコンピューティングシステム１０は、一例として、工業システムおよびインフラストラクチャ（交通およびエネルギ等）システムの各オブジェクトの管理および制御をするＩＣＳ（Industrial Control Systems）である。また、本実施形態に係るコンピューティングシステム１０は、一例として、オフィス内または家庭内のネットワークに接続された様々なデバイス（例えば電話機およびコピー機、等々）を管理するシステムであってもよい。また、コンピューティングシステム１０は、企業等内のネットワークに接続された複数のコンピュータを管理するシステムであってもよいし、データセンタ等のネットワークに接続された多数のサーバを管理するシステムであってもよい。
【０００９】
コンピューティングシステム１０は、複数のコンピュータ４０と、複数の機器２２と、正規ネットワーク３２と、ハニーポッドネットワーク３４と、ゲートウェイ３６とを備える。
【００１０】
複数のコンピュータ４０のそれぞれは、複数の情報処理装置２０のそれぞれを実現する。本実施形態において、複数の情報処理装置２０のそれぞれは、コンピュータ４０が実行する仮想マシンにより仮想的に実現される。複数の情報処理装置２０のそれぞれは、プログラムを実行してデータ処理および機器２２の制御等を行う。
【００１１】
また、より具体的には、複数の情報処理装置２０のそれぞれは、一例として、プログラムの実行に応じて機器２２を制御するＰＬＣ（Programmable Logic Controller）である。また、情報処理装置２０は、機器２２の制御をせずにデータ処理のみを実行する構成（例えばコンピュータ単体）であってもよい。
【００１２】
複数の機器２２のそれぞれは、何れかの情報処理装置２０により制御される。複数の機器２２のそれぞれは、一例として、ＩＣＳにおける制御対象である。また、複数の機器２２のそれぞれは、一例として、オフィス内または家庭内に設けられるデバイス（例えば電話機およびコピー機、等々）であってもよい。
【００１３】
正規ネットワーク３２は、不正アクセスがされていない情報処理装置２０が接続される。正規ネットワーク３２は、外部ネットワークから情報処理装置２０への正当アクセスを転送する。また、正規ネットワーク３２は、当該コンピューティングシステム１０内に設けられた複数の情報処理装置２０の間で行われるアクセスを転送する。
【００１４】
ハニーポッドネットワーク３４は、不正アクセスがされた情報処理装置２０が接続される。ハニーポッドネットワーク３４は、外部ネットワークから情報処理装置２０への不正アクセスを転送する。
【００１５】
ゲートウェイ３６は、外部ネットワークから当該コンピューティングシステム１０内の情報処理装置２０へのアクセスの経路を制御する。また、ゲートウェイ３６は、当該コンピューティングシステム１０内の情報処理装置２０から外部ネットワーク上の指定されたコンピュータへのアクセスの経路を制御する。
【００１６】
図２は、不正アクセスが無い場合における、コンピューティングシステム１０の構成を示す。本実施形態において、情報処理装置２０は、コンピュータ４０により実行される複数の仮想マシン４２により実現される。本例においては、コンピュータ４０は、それぞれが情報処理装置２０を仮想的に実現する第１の仮想マシン４２−１および第２の仮想マシン４２−２を実行する。また、この場合において、コンピュータ４０は、第１の仮想マシン４２−１および第２の仮想マシン４２−２を管理する仮想マシンマネージャ４４（ＶＭＭ）を実行する。
【００１７】
また、コンピューティングシステム１０は、検出部２４と、制御部２６とを備える。本実施形態において、検出部２４および制御部２６は、コンピュータ４０内に実現され、仮想マシンマネージャ４４に接続される。
【００１８】
検出部２４は、情報処理装置２０に対する不正アクセスを検出する。即ち、検出部２４は、正当利用者以外の者による、ネットワークを介した情報処理装置２０へのアクセスを検出する。検出部２４は、一例として、ネットワークを介して情報処理装置２０等内への不正に進入する行為、ネットワークを介して情報処理装置２０等内の情報を不正に取得する行為、ネットワークを介して情報処理装置２０等のデータ処理を妨害する行為、およびネットワークを介して情報処理装置２０等を破壊する行為等を検出する。
【００１９】
制御部２６は、情報処理装置２０のモードを制御する。複数の情報処理装置２０のそれぞれは、制御部２６により設定されたモードに応じた動作をする。
【００２０】
制御部２６は、複数の仮想マシン４２のそれぞれにより実現される情報処理装置２０のそれぞれのモードを、次のように制御する。まず、制御部２６は、情報処理装置２０に対して不正アクセスが無く正常に動作している場合において、第１の仮想マシン４２−１により実現される情報処理装置２０を正常モードで動作させ、第２の仮想マシン４２−２により実現される情報処理装置２０をスタンバイモードで動作させる。
【００２１】
情報処理装置２０は、正常モードにおいて、通常動作を実行する。即ち、情報処理装置２０は、正常モードにおいて、プログラムを実行し、入力ポートに入力されたデータに応じたデータ処理を実行する。そして、正常モードで動作する情報処理装置２０は、データ処理の結果に応じたデータを出力ポートから出力して、機器２２の動作を制御したり、他の情報処理装置２０へデータを送信したりする。
【００２２】
また、情報処理装置２０は、スタンバイモードにおいて、データ処理の実行を待機している。即ち、情報処理装置２０は、スタンバイモードにおいて、プログラムの実行を停止して、通常モードへの遷移指示が与えられることを待機している。
【００２３】
また、制御部２６は、情報処理装置２０に対して不正アクセスが無く正常に動作している場合において、第１の仮想マシン４２−１および第２の仮想マシン４２−２を、正規ネットワーク３２に接続されたコンピュータ４０に実行させる。そして、制御部２６は、正常モードで動作する情報処理装置２０（第１の仮想マシン４２−１により実現される情報処理装置２０）を正規ネットワーク３２上のアドレスに生成する。さらに、制御部２６は、スタンバイモードで動作する情報処理装置２０（第２の仮想マシン４２−２により実現される情報処理装置２０）を正規ネットワーク３２を介して他のコンピュータ等からアクセスできないように生成する。これにより、制御部２６は、不正アクセスが検出されていない情報処理装置２０を正規ネットワーク３２に接続して、正当アクセス者に対して情報処理装置２０へアクセスさせることができる。
【００２４】
図３は、不正アクセスが無い場合の構成から不正アクセスの可能性がある場合の構成へと遷移するコンピューティングシステム１０の状態を示す。
【００２５】
情報処理装置２０に対して不正アクセスが無く正常に動作している場合において、検出部２４は、第１の仮想マシン４２−１により実現された情報処理装置２０に対して不正アクセスがあるかどうか、および、不正アクセスの可能性があるかどうかを常時検出する。ここで、制御部２６は、第１の仮想マシン４２−１により実現された情報処理装置２０に対して不正アクセスの可能性がある場合、第１の仮想マシン４２−１により実現される情報処理装置２０を正常モードからプロービングモードに遷移させる。
【００２６】
また、情報処理装置２０は、プロービングモードにおいて、入力ポートに通常動作におけるデータを入力して、出力ポートを通常動作から切り離し可能な状態で動作を実行する。即ち、情報処理装置２０は、プロービングモードにおいて、正常モードで動作する情報処理装置２０に対して入力されるデータと同等のデータを入力ポートに入力してデータ処理を実行する。これにより、プロービングモードで動作する情報処理装置２０は、機器２２の動作を実際に制御したり、他の情報処理装置２０へデータを送信したりするが、不正アクセスと判断された場合には機器２２および他の情報処理装置２０からいつでも切り離せる状態となる。
【００２７】
また、コンピュータ４０は、機器２２と同様の動作を仮想的に実現する仮想デバイス５２を実行してもよい。この場合、プロービングモードで動作する情報処理装置２０は、出力ポートから出力したデータを仮想デバイス５２へと出力して、仮想デバイス５２の動作を制御することができる。これにより、プロービングモードで動作する情報処理装置２０は、不正アクセス者に対して機器２２が不正アクセスに応じて動作したように見せかけて、不正アクセス者をだますことができる。また、仮想デバイス５２経由で機器２２へのアクセスを実施することで、機器２２への不正なアクセスを検出しブロックすることもできる。
【００２８】
図４は、不正アクセスの可能性がある場合の構成から、不正アクセスが検出された場合の構成へと遷移するコンピューティングシステム１０の状態を示す。図５は、不正アクセスが検出された場合における、コンピューティングシステム１０の構成を示す。
【００２９】
検出部２４は、第１の仮想マシン４２−１により実現されたプロービングモードで動作する情報処理装置２０に対して、不正アクセスがあるかどうかを引き続き検出する。この結果、検出部２４が第１の仮想マシン４２−１により実現された情報処理装置２０に対して不正アクセスが無いと判断した場合には、制御部２６は、第１の仮想マシン４２−１による情報処理装置２０の実行を正常モードに戻す。一方、検出部２４が第１の仮想マシン４２−１により実現された情報処理装置２０に対して不正アクセスがあると検出された場合には、制御部２６は、第１の仮想マシン４２−１により実現された情報処理装置２０をプロービングモードからデコイモードに遷移させる。
【００３０】
また、制御部２６は、第１の仮想マシン４２−１をデコイモードに遷移させた場合には、第２の仮想マシン４２−２を正常モードで稼動させて、第１の仮想マシン４２−１と入れ替える。また、さらに、この場合、制御部２６は、第３の仮想マシン４２−３をスタンバイモードで準備する。
【００３１】
情報処理装置２０は、デコイモードにおいて、通常動作をしている他の装置から不正アクセスを切り離した動作を実行する。即ち、情報処理装置２０は、デコイモードにおいて、入力ポートに通常動作におけるデータとは異なる擬似データを入力してデータ処理を実行する。そして、情報処理装置２０は、デコイモードにおいて、データ処理の結果に応じたデータを出力ポートからは出力しない。即ち、デコイモードで動作する情報処理装置２０は、機器２２の動作を実際に制御したり、他の情報処理装置２０へデータを送信したりしない。
【００３２】
これにより、制御部２６は、不正アクセスの可能性のある情報処理装置２０を当該コンピューティングシステム１０内の情報処理装置２０および機器２２に影響を与えないように切り離すとともに、不正アクセス者に対して当該コンピューティングシステム１０内の正確な情報を与えないようにすることができる。また、制御部２６は、不正アクセス者に対して擬似データを与えて、不正アクセスが成功しているようにだますことができる。
【００３３】
また、制御部２６は、デコイモードで動作する情報処理装置２０を実現する第１の仮想マシン４２−１を、正常モードで動作する情報処理装置２０を実現する第２の仮想マシン４２−２を実行するコンピュータ４０とは異なるコンピュータ４０により実行させる。より具体的には、制御部２６は、デコイモードで動作する情報処理装置２０を実現する第１の仮想マシン４２−１を、ハニーポッドネットワーク３４に接続されたコンピュータ４０により実行させる。なお、情報処理装置２０をコンピュータ４０間で移動させる場合、それぞれのコンピュータ４０上の制御部２６は、移動させる情報処理装置２０の状態を互いに共有する。
【００３４】
また、仮想マシンの実行を停止せずに物理ホストを移動する技術は、一例として、ＶＭＷａｒｅ（商標）等の多くの仮想化技術により実用化されており、ここでは、このような技術を利用して情報処理装置２０の移動を実現する。
【００３５】
そして、制御部２６は、デコイモードで動作する情報処理装置２０（第１の仮想マシン４２−１により実現される情報処理装置２０）をハニーポッドネットワーク３４上のアドレスに生成する。即ち、制御部２６は、不正アクセスが検出された情報処理装置２０をハニーポッドネットワーク３４に接続する。更に、移動が完了したことに応じて、制御部２６は、ゲートウェイ３６に対して第１の仮想マシン４２−１に対するアクセスを、正規ネットワーク３２に代えてハニーポッドネットワーク３４に転送するように指示する。これにより、制御部２６は、不正アクセスをハニーポッドネットワーク３４内に隔離することができる。
【００３６】
また、コンピュータ４０は、機器２２と同様の動作を仮想的に実現する仮想デバイス５２を実行してもよい。この場合、デコイモードで動作する情報処理装置２０は、出力ポートから出力したデータを仮想デバイス５２へと出力して、仮想デバイス５２の動作を制御することができる。これにより、デコイモードで動作する情報処理装置２０は、不正アクセス者に対して、機器２２が不正アクセスに応じて動作したように見せてだますことができる。
【００３７】
また、制御部２６は、正常モードにおいて、第１の仮想マシン４２−１により実現された情報処理装置２０に対して不正アクセスがあった場合、第１の仮想マシン４２−１により実現される情報処理装置２０を、正常モードからデコイモードに直接遷移させてもよい。即ち、制御部２６は、プロービングモードを介さずに、第１の仮想マシン４２−１により実現される情報処理装置２０を正常モードからデコイモードに遷移させてもよい。これにより、制御部２６は、より早急に不正アクセスをハニーポッドネットワーク３４に隔離することができる。
【００３８】
図６は、情報処理装置２０のモード遷移のフローを示す。当該コンピューティングシステム１０は、２つの仮想マシン４２に限らず、３以上の仮想マシン４２により情報処理装置２０を実現してもよい。この場合において、３以上の仮想マシン４２のそれぞれにより実現される情報処理装置２０のそれぞれは、図６に示すステップＳ１１からステップＳ１８の処理を実行する。
【００３９】
まず、情報処理装置２０は、スタンバイモードで動作する（ステップＳ１１）。情報処理装置２０は、スタンバイモードにおいて、直前の順位の情報処理装置２０に対して不正アクセスの可能性が無い場合（ステップＳ１２のＮｏ）、スタンバイモードを続行する。また、情報処理装置２０は、スタンバイモードにおいて、直前の順位の情報処理装置２０に対して不正アクセスがある場合（ステップＳ１２のＹｅｓ）、正常モード（ステップＳ１３）に遷移する。
【００４０】
続いて、情報処理装置２０は、正常モードにおいて、当該情報処理装置２０に対して不正アクセスの可能性が無い場合（ステップＳ１４のＮｏ）、正常モードを続行する。また、情報処理装置２０は、正常モードにおいて、当該情報処理装置２０に対して不正アクセスの可能性がある場合（ステップＳ１４のＹｅｓ）、プロービングモード（ステップＳ１５）に遷移する。
【００４１】
続いて、情報処理装置２０は、プロービングモードにおいて、当該情報処理装置２０に対して不正アクセスが無いと判断された場合（ステップＳ１６のＮｏ）、正常モード（ステップＳ１３）に戻る。また、情報処理装置２０は、プロービングモードにおいて、当該情報処理装置２０に対して不正アクセスがあると判断された場合（ステップＳ１６のＹｅｓ）、デコイモード（ステップＳ１７）に遷移する。
【００４２】
続いて、情報処理装置２０は、デコイモードにおいて、予め定められた期間実行を継続する（ステップＳ１８）。例えば、情報処理装置２０は、不正アクセスがなくなるまで実行を継続する。そして、情報処理装置２０は、デコイモードにおいて、予め定めら得た期間経過した後、実行を停止して当該フローを抜ける（ステップＳ１８のＹｅｓ）。
【００４３】
以上のように、本実施形態に係るコンピューティングシステム１０は、不正アクセスが検出されたことに応じてコンピューティングシステム１０のモードを遷移させて、不正アクセスを通常動作をしている他の装置から切り離す。これにより、コンピューティングシステム１０によれば、不正アクセスが検出されるまでリソースを必要としないので、リソースを効率良く利用することができる。
【００４４】
また、本実施形態に係るコンピューティングシステム１０は、不正アクセスがされたリソース自体のモードを変化させて、不正アクセスを通常動作をしている他の装置から切り離す。これにより、コンピューティングシステム１０によれば、不正アクセス者をだましたまま早急に不正アクセスをハニーポッドネットワーク３４へと隔離して、不正アクセス者を長期間だますことができる。
【００４５】
なお、本実施形態に係る制御部２６は、情報処理装置２０を正常モードからプローブモードに遷移させ、その後、プローブモードからデコイモードに遷移させる。しかし、正常モードの段階において不正アクセスがあることが確実に検出できた場合には、制御部２６は、情報処理装置２０を正常モードからデコイモードに直接遷移させてもよい。これにより、制御部２６は、より早急に不正アクセスをハニーポッドネットワーク３４に隔離することができる。
【００４６】
図７は、本実施形態の変形例に係るコンピューティングシステム１０において、不正アクセスがある場合におけるコンピューティングシステム１０の構成を示す。本変形例に係るコンピューティングシステム１０は、図１から図６を参照して説明したコンピューティングシステム１０と略同一の機能および構成を備えるので、以下、略同一の機能および構成を有する要素に同一の符号を付けて、相違点のみ説明する。
【００４７】
本変形例に係るコンピューティングシステム１０は、収集部６０を更に備える。収集部６０は、デコイモードで動作する情報処理装置２０に対する不正アクセスの情報を収集する。収集部６０は、一例として、不正アクセス者を特定するための情報等の解析をする。
【００４８】
そして、制御部２６は、不正アクセスについて予め定められた種類の情報（例えば不正アクセス者に関する情報が検出できた場合）を収集できた場合には、デコイモードで動作する情報処理装置２０の実行を停止する。このような本変形例に係るコンピューティングシステム１０は、デコイモードで動作する情報処理装置２０の実行を長期間継続させなくてもよいので、リソースを有効に利用することができる。
【００４９】
また、本変形例において、情報処理装置２０は、機器２２を制御する装置である。そして、情報処理装置２０は、機器２２を予め定められたタイミング毎に機器を基準状態とするように制御する。情報処理装置２０は、一例として、機器２２の状態を、一定期間毎（例えば数１０分毎）に初期状態に戻すように制御をする。
【００５０】
そして、制御部２６は、第１の仮想マシン４２−１により実現される情報処理装置２０に対する不正アクセスを検出した場合であって、機器２２が基準状態となったタイミングにおいて、第１の仮想マシン４２−１により実現される情報処理装置２０を正常モードから他のモード（プローブモードまたはデコイモード）に遷移させ、第２の仮想マシンにより実現される情報処理装置２０をスタンバイモードから正常モードに遷移させる。例えば、制御部２６は、検出部２４が不正アクセスを検出した場合、機器２２が初期状態に戻ったタイミングにおいて、情報処理装置２０のモード遷移を実行する。これにより、本変形例に係るコンピューティングシステム１０によれば、情報処理装置２０の切り換えによる制御対象への影響を少なくすることができる。
【００５１】
また、本変形例において、制御部２６は、プロービングモードで動作する情報処理装置２０の振る舞いを収集し、収集した振る舞いをデコイモードで動作する情報処理装置２０に実行させてもよい。例えば、制御部２６は、プロービングモードで動作する情報処理装置２０に入力される入力データの振る舞い、プロービングモードで動作する情報処理装置２０が制御する仮想デバイス５２の振る舞い等を収集する。そして、制御部２６は、収集した入力データの振る舞いおよび仮想デバイス５２の振る舞いを、デコイモードで動作する情報処理装置２０へと反映する。これにより、本変形例に係るコンピューティングシステム１０によれば、より長い期間、不正アクセス者をだますことができる。
【００５２】
図８は、本実施形態に係るコンピュータ１９００のハードウェア構成の一例を示す。本実施形態に係るコンピュータ１９００は、ホスト・コントローラ２０８２により相互に接続されるＣＰＵ２０００、ＲＡＭ２０２０、グラフィック・コントローラ２０７５、及び表示装置２０８０を有するＣＰＵ周辺部と、入出力コントローラ２０８４によりホスト・コントローラ２０８２に接続される通信インターフェイス２０３０、ハードディスクドライブ２０４０、及びＣＤ−ＲＯＭドライブ２０６０を有する入出力部と、入出力コントローラ２０８４に接続されるＲＯＭ２０１０、フレキシブルディスク・ドライブ２０５０、及び入出力チップ２０７０を有するレガシー入出力部とを備える。
【００５３】
ホスト・コントローラ２０８２は、ＲＡＭ２０２０と、高い転送レートでＲＡＭ２０２０をアクセスするＣＰＵ２０００及びグラフィック・コントローラ２０７５とを接続する。ＣＰＵ２０００は、ＲＯＭ２０１０及びＲＡＭ２０２０に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィック・コントローラ２０７５は、ＣＰＵ２０００等がＲＡＭ２０２０内に設けたフレーム・バッファ上に生成する画像データを取得し、表示装置２０８０上に表示させる。これに代えて、グラフィック・コントローラ２０７５は、ＣＰＵ２０００等が生成する画像データを格納するフレーム・バッファを、内部に含んでもよい。
【００５４】
入出力コントローラ２０８４は、ホスト・コントローラ２０８２と、比較的高速な入出力装置である通信インターフェイス２０３０、ハードディスクドライブ２０４０、ＣＤ−ＲＯＭドライブ２０６０を接続する。通信インターフェイス２０３０は、ネットワークを介して他の装置と通信する。ハードディスクドライブ２０４０は、コンピュータ１９００内のＣＰＵ２０００が使用するプログラム及びデータを格納する。ＣＤ−ＲＯＭドライブ２０６０は、ＣＤ−ＲＯＭ２０９５からプログラム又はデータを読み取り、ＲＡＭ２０２０を介してハードディスクドライブ２０４０に提供する。
【００５５】
また、入出力コントローラ２０８４には、ＲＯＭ２０１０と、フレキシブルディスク・ドライブ２０５０、及び入出力チップ２０７０の比較的低速な入出力装置とが接続される。ＲＯＭ２０１０は、コンピュータ１９００が起動時に実行するブート・プログラム、及び／又は、コンピュータ１９００のハードウェアに依存するプログラム等を格納する。フレキシブルディスク・ドライブ２０５０は、フレキシブルディスク２０９０からプログラム又はデータを読み取り、ＲＡＭ２０２０を介してハードディスクドライブ２０４０に提供する。入出力チップ２０７０は、フレキシブルディスク・ドライブ２０５０を入出力コントローラ２０８４へと接続すると共に、例えばパラレル・ポート、シリアル・ポート、キーボード・ポート、マウス・ポート等を介して各種の入出力装置を入出力コントローラ２０８４へと接続する。
【００５６】
ＲＡＭ２０２０を介してハードディスクドライブ２０４０に提供されるプログラムは、フレキシブルディスク２０９０、ＣＤ−ＲＯＭ２０９５、又はＩＣカード等の記録媒体に格納されて利用者によって提供される。プログラムは、記録媒体から読み出され、ＲＡＭ２０２０を介してコンピュータ１９００内のハードディスクドライブ２０４０にインストールされ、ＣＰＵ２０００において実行される。
【００５７】
コンピュータ１９００にインストールされ、コンピュータ１９００をコンピューティングシステム１０として機能させるプログラムは、検出モジュールと、制御モジュールとを備える。これらのプログラム又はモジュールは、ＣＰＵ２０００等に働きかけて、コンピュータ１９００を、コンピューティングシステム１０としてそれぞれ機能させる。
【００５８】
これらのプログラムに記述された情報処理は、コンピュータ１９００に読込まれることにより、ソフトウェアと上述した各種のハードウェア資源とが協働した具体的手段である検出部２４および制御部２６として機能する。そして、これらの具体的手段によって、本実施形態におけるコンピューティングシステム１０の使用目的に応じた情報の演算又は加工を実現することにより、使用目的に応じた特有のコンピューティングシステム１０が構築される。
【００５９】
一例として、コンピュータ１９００と外部の装置等との間で通信を行う場合には、ＣＰＵ２０００は、ＲＡＭ２０２０上にロードされた通信プログラムを実行し、通信プログラムに記述された処理内容に基づいて、通信インターフェイス２０３０に対して通信処理を指示する。通信インターフェイス２０３０は、ＣＰＵ２０００の制御を受けて、ＲＡＭ２０２０、ハードディスクドライブ２０４０、フレキシブルディスク２０９０、又はＣＤ−ＲＯＭ２０９５等の記憶装置上に設けた送信バッファ領域等に記憶された送信データを読み出してネットワークへと送信し、もしくは、ネットワークから受信した受信データを記憶装置上に設けた受信バッファ領域等へと書き込む。このように、通信インターフェイス２０３０は、ＤＭＡ（ダイレクト・メモリ・アクセス）方式により記憶装置との間で送受信データを転送してもよく、これに代えて、ＣＰＵ２０００が転送元の記憶装置又は通信インターフェイス２０３０からデータを読み出し、転送先の通信インターフェイス２０３０又は記憶装置へとデータを書き込むことにより送受信データを転送してもよい。
【００６０】
また、ＣＰＵ２０００は、ハードディスクドライブ２０４０、ＣＤ−ＲＯＭドライブ２０６０（ＣＤ−ＲＯＭ２０９５）、フレキシブルディスク・ドライブ２０５０（フレキシブルディスク２０９０）等の外部記憶装置に格納されたファイルまたはデータベース等の中から、全部または必要な部分をＤＭＡ転送等によりＲＡＭ２０２０へと読み込ませ、ＲＡＭ２０２０上のデータに対して各種の処理を行う。そして、ＣＰＵ２０００は、処理を終えたデータを、ＤＭＡ転送等により外部記憶装置へと書き戻す。このような処理において、ＲＡＭ２０２０は、外部記憶装置の内容を一時的に保持するものとみなせるから、本実施形態においてはＲＡＭ２０２０および外部記憶装置等をメモリ、記憶部、または記憶装置等と総称する。本実施形態における各種のプログラム、データ、テーブル、データベース等の各種の情報は、このような記憶装置上に格納されて、情報処理の対象となる。なお、ＣＰＵ２０００は、ＲＡＭ２０２０の一部をキャッシュメモリに保持し、キャッシュメモリ上で読み書きを行うこともできる。このような形態においても、キャッシュメモリはＲＡＭ２０２０の機能の一部を担うから、本実施形態においては、区別して示す場合を除き、キャッシュメモリもＲＡＭ２０２０、メモリ、及び／又は記憶装置に含まれるものとする。
【００６１】
また、ＣＰＵ２０００は、ＲＡＭ２０２０から読み出したデータに対して、プログラムの命令列により指定された、本実施形態中に記載した各種の演算、情報の加工、条件判断、情報の検索・置換等を含む各種の処理を行い、ＲＡＭ２０２０へと書き戻す。例えば、ＣＰＵ２０００は、条件判断を行う場合においては、本実施形態において示した各種の変数が、他の変数または定数と比較して、大きい、小さい、以上、以下、等しい等の条件を満たすかどうかを判断し、条件が成立した場合（又は不成立であった場合）に、異なる命令列へと分岐し、またはサブルーチンを呼び出す。
【００６２】
また、ＣＰＵ２０００は、記憶装置内のファイルまたはデータベース等に格納された情報を検索することができる。例えば、第１属性の属性値に対し第２属性の属性値がそれぞれ対応付けられた複数のエントリが記憶装置に格納されている場合において、ＣＰＵ２０００は、記憶装置に格納されている複数のエントリの中から第１属性の属性値が指定された条件と一致するエントリを検索し、そのエントリに格納されている第２属性の属性値を読み出すことにより、所定の条件を満たす第１属性に対応付けられた第２属性の属性値を得ることができる。
【００６３】
以上に示したプログラム又はモジュールは、外部の記録媒体に格納されてもよい。記録媒体としては、フレキシブルディスク２０９０、ＣＤ−ＲＯＭ２０９５の他に、ＤＶＤ又はＣＤ等の光学記録媒体、ＭＯ等の光磁気記録媒体、テープ媒体、ＩＣカード等の半導体メモリ等を用いることができる。また、専用通信ネットワーク又はインターネットに接続されたサーバシステムに設けたハードディスク又はＲＡＭ等の記憶装置を記録媒体として使用し、ネットワークを介してプログラムをコンピュータ１９００に提供してもよい。
【００６４】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【００６５】
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【００６６】
１０  コンピューティングシステム
２０  情報処理装置
２２  機器
２４  検出部
２６  制御部
３２  正規ネットワーク
３４  ハニーポッドネットワーク
３６  ゲートウェイ
４０  コンピュータ
４２  仮想マシン
４４  仮想マシンマネージャ
５２  仮想デバイス
６０  収集部
１９００  コンピュータ
２０００  ＣＰＵ
２０１０  ＲＯＭ
２０２０  ＲＡＭ
２０３０  通信インターフェイス
２０４０  ハードディスクドライブ
２０５０  フレキシブルディスク・ドライブ
２０６０  ＣＤ−ＲＯＭドライブ
２０７０  入出力チップ
２０７５  グラフィック・コントローラ
２０８０  表示装置
２０８２  ホスト・コントローラ
２０８４  入出力コントローラ
２０９０  フレキシブルディスク
２０９５  ＣＤ−ＲＯＭ
【図１】
0005697206.tif 000002
【図２】
0005697206.tif 000003
【図３】
0005697206.tif 000004
【図４】
0005697206.tif 000005
【図５】
0005697206.tif 000006
【図６】
0005697206.tif 000007
【図７】
0005697206.tif 000008
【図８】
0005697206.tif 000009