(57)【要約】【課題】早期に異常を検知することできる異常検知装置等を提供する。【解決手段】  異常検知装置１０１は、情報処理装置１０５がソフトウェア１０６を構成するステップを実行するのに応じて、外部へのアクセスが制限された実行環境１０２においてステップを実行する実行部１０３と、情報処理装置がステップを実行することにより生成される第２ログと、実行環境においてステップを実行することにより生成される第１ログとに基づいて、ソフトウェアが異常であるか否かを判定する判定部１０４とを有する。【選択図】  図１
2015060417.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置がソフトウェアを構成するステップを実行するのに応じて、外部へのアクセスが制限された実行環境において前記ステップを実行する実行部と、
前記情報処理装置が前記ステップを実行することにより生成される第２ログと、前記実行環境において前記ステップを実行することにより生成される第１ログとに基づいて、前記ソフトウェアが異常であるか否かを判定する判定部と
を備える異常検知装置。
【請求項２】
前記判定部は、前記第１ログと前記第２ログとが一致しないと判定する場合に、前記ソフトウェアが異常であると判定し、前記第１ログと前記第２ログとが一致すると判定する場合に、前記ソフトウェアが異常であると判定する
請求項１に記載の異常検知装置。
【請求項３】
前記第２ログが追加されるのを検知するとともに、検知した場合に、追加された情報を同期情報として前記実行部に送信する同期部
をさらに備え、
前記実行部は、前記同期情報に応じて、前記ステップを実行する
請求項１または請求項２に記載の異常検知装置。
【請求項４】
前記同期情報は、前記ステップにおける処理内容と、前記ステップにおける処理対象である情報とを含む
請求項１乃至請求項３のいずれかに記載の異常検知装置。
【請求項５】
前記実行環境を
さらに備える請求項１乃至請求項４のいずれかに記載の異常検知装置。
【請求項６】
請求項１乃至請求項５のいずれかに記載の異常検知装置と、
前記異常検知装置が異常であると検知する場合に、前記情報処理装置が実行する前記ソフトウェアを停止する停止部と
を備える保護装置。
【請求項７】
情報処理装置がソフトウェアを構成するステップを実行するのに応じて、外部へのアクセスが制限された実行環境において前記ステップを実行し、前記情報処理装置が前記ステップを実行することにより生成される第２ログと、前記実行環境において前記ステップを実行することにより生成される第１ログとに基づいて、前記ソフトウェアが異常であるか否かを判定する異常検知方法。
【請求項８】
情報処理装置がソフトウェアを構成するステップを実行するのに応じて、外部へのアクセスが制限された実行環境において前記ステップを実行する実行機能と、
前記情報処理装置が前記ステップを実行することにより生成される第２ログと、前記実行環境において前記ステップを実行することにより生成される第１ログとに基づいて、前記ソフトウェアが異常であるか否かを判定する判定機能と
をコンピュータに実現させる異常検知プログラム。
【請求項９】
前記判定機能において、前記第１ログと前記第２ログとが一致しないと判定する場合に、前記ソフトウェアが異常であると判定し、前記第１ログと前記第２ログとが一致すると判定する場合に、前記ソフトウェアが異常であると判定する
請求項８に記載の異常検知プログラム。
【請求項１０】
前記第２ログが追加されるのを検知するとともに、検知した場合に、追加された情報を同期情報として前記実行機能に通知する同期機能
をさらに備え、
前記実行機能において、前記同期情報に応じて、前記ステップを実行する
請求項８または請求項９に記載の異常検知プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、たとえば、マルウェア等を検知する異常検知装置等に関する。
【背景技術】
【０００２】
標的型攻撃は、特定の企業、または、組織を標的として狙うサイバー攻撃である。標的型攻撃の手口の多くは、マルウェア（Ｍａｌｗａｒｅ）である。近年において、その手口も多様化し、インターネットを介して接続するホスト計算機から、ソフトウェアや機械語コードをダウンロードするダウンローダを介して攻撃を行う多段型のマルウェアが増えている。このため、標的型攻撃の実態を把握することは難しい。
【０００３】
一方、サンドボックス（Ｓａｎｄｂｏｘ）は、マルウェアを検知する仕組みの一つであり、外部から受け取るソフトウェアを、外部へのアクセスが制限されたサンドボックスにおいて実行するセキュリティモデルである。すなわち、サンドボックスを用いる検知技術は、サンドボックスにおいて、外部から受け取るソフトウェアを実行することにより、該ソフトウェアがマルウェアであるか否かを判定する。
【０００４】
しかし、一部のマルウェアは、サンドボックスを検知する。この一部のマルウェアは、サンドボックスにおいて実行されていることを検知する場合には、活動を停止することができる。これにより、該マルウェアは、活動を停止することにより、サンドボックスによりマルウェアとして検知されることを回避する。
【０００５】
特許文献１、特許文献２、及び、非特許文献１は、不正な処理を行うソフトウェアを検知する装置を開示する。
【０００６】
たとえば、特許文献２が開示するマルウェアの類似性検査手法は、サンドボックスと脆弱性情報とを組み合わせることにより、不正処理を行うソフトウェアと、検査対象であるソフトウェアとの類似性を検査する。
【０００７】
また、非特許文献１が開示するマルウェア解析手法は、ソフトウェアにおける条件分岐を検出し、該条件分岐が成立する場合と成立しない場合と両方の実行結果を解析することにより、該ソフトウェアにおいて悪意ある部分を探し出す。
【０００８】
さらに、特許文献１が開示する異常検知装置は、コンピュータウィルスに感染していない端末においてプロセスが操作するファイルまたはフォルダと、監視対象である端末において該プロセスが操作するファイルまたはフォルダとを比較する。該異常検知装置は、両者が一致しない場合に、異常が発生すると判定する。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２０１０−１８２０１９号公報
【特許文献２】特開２００９−０３７５４５号公報
【非特許文献】
【００１０】
【非特許文献１】Ｍｏｓｅｒ，  Ａ．，「Ｅｘｐｌｏｒｉｎｇ＿Ｍｕｌｔｉｐｌｅ＿Ｅｘｅｃｕｔｉｏｎ＿Ｐａｔｈｓ＿ｆｏｒ＿Ｍａｌｗａｒｅ＿Ａｎａｌｙｓｉｓ」，Ｓｅｃｕｒｉｔｙ＿ａｎｄ＿Ｐｒｉｖａｃｙ，  ２００７，  ＩＥＥＥ＿Ｓｙｍｐｏｓｉｕｍ
【発明の概要】
【発明が解決しようとする課題】
【００１１】
特許文献１が開示する異常検知装置は、まず、コンピュータウィルスに感染していない端末を必要とする。コンピュータウィルスに感染していないことを保障するには、すべての記憶領域をスキャンする等、多大な労力と時間とを必要とする。
【００１２】
同様に、非特許文献１が開示するマルウェア解析手法においては、ソフトウェアにおけるすべての条件分岐を解析するため、同様に多大な労力と時間とを必要とする。
【００１３】
また、特許文献２が開示するマルウェアの類似性検査手法は、ソフトウェアを解析する。しかし、ソフトウェアを解析するためには、上記と同様に、多大な労力と時間とを必要とする。さらに、該類似性検査手法は、サンドボックスにおいて実行されていることを検知することにより活動を停止するマルウェアを検知できるとは限らない。
【００１４】
すなわち、特許文献１、特許文献２、及び、非特許文献１が開示するシステムを用いたとしても、サンドボックスを検知することにより活動を停止するマルウェア等を、早期に検知することは難しい。
【００１５】
そこで、本発明の主たる目的は、早期に異常を検知する異常検知装置等を提供することである。
【課題を解決するための手段】
【００１６】
前述の目的を達成するために、本発明に係る異常検知装置は、以下の構成を備えることを特徴とする。
【００１７】
すなわち、本発明に係る異常検知装置は、
情報処理装置がソフトウェアを構成するステップを実行するのに応じて、外部へのアクセスが制限された実行環境において前記ステップを実行する実行部と、
前記情報処理装置が前記ステップを実行することにより生成される第２ログと、前記実行環境において前記ステップを実行することにより生成される第１ログとに基づいて、前記ソフトウェアが異常であるか否かを判定する判定部と
を備えることを特徴とする。
【００１８】
また、本発明の他の見地として、本発明に係る異常検知方法は、
情報処理装置がソフトウェアを構成するステップを実行するのに応じて、外部へのアクセスが制限された実行環境において前記ステップを実行し、前記情報処理装置が前記ステップを実行することにより生成される第２ログと、前記実行環境において前記ステップを実行することにより生成される第１ログとに基づいて、前記ソフトウェアが異常であるか否かを判定することを特徴とする。
【００１９】
さらに、同目的は、係る異常検知プログラム、および、そのプログラムを記録するコンピュータ読み取り可能な記録媒体によっても実現される。
【発明の効果】
【００２０】
本発明に係る異常検知装置等によれば、早期に異常を検知することできる。
【図面の簡単な説明】
【００２１】
【図１】本発明の第１の実施形態に係る異常検知装置が有する構成を示すブロック図である。
【図２】第１の実施形態に係る異常検知装置及び情報処理装置における処理の流れを示すシーケンス図である。
【図３】ソフトウェアを構成するステップにおいて生成されるログの一例を概念的に表す図である。
【図４】ソフトウェアを構成するステップにおいて生成されるログの一例を概念的に表す図である。
【図５】本発明の第２の実施形態に係る異常検知装置が有する構成を示すブロック図である。
【図６】本発明の第３の実施形態に係る保護装置が有する構成を示すブロック図である。
【図７】本発明の第４の実施形態に係る情報処理装置が有する構成を示すブロック図である。
【図８】本発明の各実施形態に係る異常検知装置を実現可能な計算処理装置のハードウェア構成を、概略的に示すブロック図である。
【発明を実施するための形態】
【００２２】
次に、本発明を実施する実施形態について図面を参照しながら詳細に説明する。
【００２３】
＜第１の実施形態＞
本発明の第１の実施形態に係る異常検知装置１０１が有する構成と、異常検知装置１０１が行う処理とについて、図１と図２とを参照しながら詳細に説明する。図１は、本発明の第１の実施形態に係る異常検知装置１０１が有する構成を示すブロック図である。図２は、第１の実施形態に係る異常検知装置１０１及び情報処理装置１０５における処理の流れを示すシーケンス図である。
【００２４】
第１の実施形態に係る異常検知装置１０１は、実行部１０３と、判定部１０４とを有する。異常検知装置１０１は、さらに、実行環境１０２を有してもよい。
【００２５】
まず、情報処理装置１０５は、ソフトウェア１０６を構成するステップ（命令）を実行する（ステップＳ２０１）。情報処理装置１０５は、ソフトウェア１０６を構成するすべてのステップを実行してもよいし、一部のステップを実行してもよいし、抽出したステップを実行してもよい。
【００２６】
情報処理装置１０５が各ステップを実行するのに応じて、各ステップにおいて操作する対象等を表すログ（たとえば、図３）が生成される。図３は、ソフトウェア１０６を構成するステップにおいて生成されるログの一例を概念的に表す図である。説明の便宜上、情報処理装置１０５が各ステップを実行するのに応じて生成されるログを、第２ログと表す。
【００２７】
第２ログは、ステップを識別する名称と、該ステップにおいて操作する対象である対象データと関連付ける。第２ログは、さらに、該ステップを実行する日時、該ステップにおける入力、及び、該対象データのデータ形式等に関する情報を関連付けてもよい。
【００２８】
たとえば、第２ログは、日時「２０１３０６２７０９１３２５４１１」と、ステップ「Ａｄｄ  Ｆｉｌｅ」と、入力値「＿ＩＳＰＡＣＫＤＥＬ．ＩＮＩ」と、データ形式「ＶＳＤＴ＿ＡＳＣＩＩ」と、対象データ「％ＴＥＭＰ％￥｛Ａ６６ＢＢ９Ｃ５−７２７８−４７Ａ０−９５８Ｃ−２９６３４Ｅ６２５８３０｝￥」とを関連付けする。これは、情報処理装置１０５が、日時「２０１３０６２７０９１３２５４１１」において、入力値「＿ＩＳＰＡＣＫＤＥＬ．ＩＮＩ」に基づき、ステップ「Ａｄｄ  Ｆｉｌｅ」を実行する際に、データ形式「ＶＳＤＴ＿ＡＳＣＩＩ」である対象データ「％ＴＥＭＰ％￥｛Ａ６６ＢＢ９Ｃ５−７２７８−４７Ａ０−９５８Ｃ−２９６３４Ｅ６２５８３０｝￥」を操作することを表す。ログは、情報処理装置１０５が各ステップを実行するのに応じて、逐次追加される。
【００２９】
実行部１０３は、情報処理装置１０５が各ステップを実行するのに応じて、外部へのアクセスが制限されている実行環境１０２（たとえば、サンドボックス）において、該ステップを実行する（ステップＳ２０２）。
【００３０】
実行部１０３が各ステップを実行するのに応じて、該ステップにおいて操作する対象等を表すログが生成される（ステップＳ２０３）。説明の便宜上、実行部１０３が各ステップを実行するのに応じて生成されるログを、第１ログと表す。また、説明の便宜上、以降の説明においては、ログを作成する機能は、情報処理装置１０５及び実行環境１０２に依存することなく、同一の機能であるとする。第１ログは、第２ログと同様の情報を含むとする。
【００３１】
また、第１ログは、図４に示すように、第２ログに含まれる情報を含んでもよい。図４は、ソフトウェア１０６を構成するステップにおいて生成されるログの一例を概念的に表す図である。たとえば、第１ログは、ステップを識別する名称と、対象データとに加え、さらに、該ステップを実行する対象、ソフトウェア名、及び、該ソフトウェアを構成するファイルに基づき計算されるハッシュ値等を含む。
【００３２】
たとえば、図４に示すように、第１ログは、ソフトウェア名「ｉｍｐｊ．ｅｘｅ」、ハッシュ値「４２２ｄ２３１３ａｄ１ｂｄｅ４１２」と、「実環境」と、ステップ「Ａｄｄ  Ｆｉｌｅ」と、対象データ「＿ＩＳＰＡＣＫＤＥＬ．ＩＮＩ」、「ＶＳＤＴ＿ＡＳＣＩＩ」及び「％ＴＥＭＰ％￥｛Ａ６６ＢＢ９Ｃ５−７２７８−４７Ａ０−９５８Ｃ−２９６３４Ｅ６２５８３０｝￥」とを関連付けする。
【００３３】
これは、実環境（すなわち、情報処理装置１０５）が、「ｉｍｐｊ．ｅｘｅ」に従い、入力値「＿ＩＳＰＡＣＫＤＥＬ．ＩＮＩ」に基づき、ステップ「Ａｄｄ  Ｆｉｌｅ」を実行する際に、データ形式「ＶＳＤＴ＿ＡＳＣＩＩ」である対象データ「％ＴＥＭＰ％￥｛Ａ６６ＢＢ９Ｃ５−７２７８−４７Ａ０−９５８Ｃ−２９６３４Ｅ６２５８３０｝￥」を操作することを表す。すなわち、この操作は、上述した第２ログの一例（図３）と同じ操作である。
【００３４】
また、第２ログにおいては、入力値「＿ＩＳＰＡＣＫＤＥＬ．ＩＮＩ」、ステップ「Ａｄｄ  Ｆｉｌｅ」、及び、データ形式「ＶＳＤＴ＿ＡＳＣＩＩ」をそれぞれ別の項目としていたが、この例（すなわち、第１ログ）においては、対象データに含めている。
【００３５】
さらに、第１ログは、ソフトウェア名「ｉｍｐｊ．ｅｘｅ」、ハッシュ値「４２２ｄ２３１３ａｄ１ｂｄｅ４１２」と、「Ｓａｎｄｂｏｘ（サンドボックス）」と、ステップ「Ａｄｄ  Ｆｉｌｅ」と、対象データ「＿ＩＳＰＡＣＫＤＥＬ．ＩＮＩ」、「ＶＳＤＴ＿ＡＳＣＩＩ」及び「％ＴＥＭＰ％￥｛Ａ６６ＢＢ９Ｃ５−７２７８−４７Ａ０−９５８Ｃ−２９６３４Ｅ６２５８３０｝￥」とを関連付けする。
【００３６】
これは、サンドボックス（この例では、実行環境１０２）において、実行部１０３が、「ｉｍｐｊ．ｅｘｅ」に従い、入力値「＿ＩＳＰＡＣＫＤＥＬ．ＩＮＩ」に基づき、ステップ「Ａｄｄ  Ｆｉｌｅ」を実行する際に、データ形式「ＶＳＤＴ＿ＡＳＣＩＩ」である対象データ「％ＴＥＭＰ％￥｛Ａ６６ＢＢ９Ｃ５−７２７８−４７Ａ０−９５８Ｃ−２９６３４Ｅ６２５８３０｝￥」を操作することを表す。
【００３７】
次に、判定部１０４は、第１ログと、第２ログとに基づき、ソフトウェア１０６が異常なソフトウェアであるか否かを判定する（ステップＳ２０４）。
【００３８】
判定部１０４は、第１ログと第２ログとが一致しないと判定する場合に、ソフトウェア１０６が異常であると判定するとともに、第１ログと第２ログとが一致すると判定する場合に、ソフトウェア１０６が異常でないと判定する。
【００３９】
たとえば、ソフトウェア１０６が、実行環境１０２を検知することにより停止するマルウェアである場合、第２ログは、第１ログと異なる。したがって、この場合、異常検知装置１０１は、ソフトウェア１０６が異常であると判定する。さらに、異常検知装置１０１は、情報処理装置１０５がソフトウェア１０６における各ステップを実行するのに応じて、実行環境１０２において該ステップを実行する。このため、異常検知装置１０１は、ステップごとに、ソフトウェア１０６が異常であるか否かを判定することができる。
【００４０】
図４に示す例においては、上記のように、ソフトウェア名「ｉｍｐｊ．ｅｘｅ」におけるステップ「Ａｄｄ  Ｆｉｌｅ」に関する第１ログと第２ログとが一致するため、異常検知装置１０１は、ソフトウェア名「ｉｍｐｊ．ｅｘｅ」が、ステップ「Ａｄｄ  Ｆｉｌｅ」において異常でないと判定する。
【００４１】
一方、特許文献１が開示する異常検知装置は、コンピュータウィルスに感染していないことを保障する端末を必要とする。このため、特許文献１が開示する異常検知装置においては、該端末を準備するのに時間を要する。したがって、特許文献１が開示する異常検知装置は、早期に異常を検知することができない。
【００４２】
さらに、特許文献２が開示するマルウェアの類似性検査手法は、上述のように、サンドボックスにおいて実行されていることを検知することにより活動を停止するマルウェアを検知できるとは限らない。したがって特許文献２が開示するマルウェアの類似性検査手法は、早期に異常を検知することができない。
【００４３】
しかし、本実施形態に係る異常検知装置１０１は、ソフトウェア１０６を解析することなく、ステップごとに、ソフトウェア１０６が異常であるか否かを判定することができる。
【００４４】
したがって、第１の実施形態に係る異常検知装置１０１によれば、早期に異常を検知することできる。
【００４５】
さらに、情報処理装置１０５が、異常検知装置１０１及び実行環境１０２を有する場合には、情報処理装置１０５において上述した処理を行うことができる。したがって、この場合には、第１の実施形態に係る異常検知装置１０１によれば、スタンドアロン環境でもマルウェアを検知することができる。
【００４６】
＜第２の実施形態＞
次に、上述した第１の実施形態を基本とする本発明の第２の実施形態について説明する。
【００４７】
以下の説明においては、本実施形態に係る特徴的な部分を中心に説明すると共に、上述した第１の実施形態と同様な構成については、同一の参照番号を付すことにより、重複する説明を省略する。
【００４８】
図５を参照しながら、第２の実施形態に係る異常検知装置５０１が有する構成と、異常検知装置５０１が行う処理とについて説明する。図５は、本発明の第２の実施形態に係る異常検知装置５０１が有する構成を示すブロック図である。
【００４９】
第２の実施形態に係る異常検知装置５０１は、実行部５０３と、判定部１０４と、同期部５０２とを有する。異常検知装置１０１は、さらに、実行環境１０２を有してもよい。
【００５０】
同期部５０２は、図３に例示する第２ログが追加されるのを検知するとともに、検知した場合に、追加された情報を同期情報として送信する。
【００５１】
同期部５０２は、第２ログを監視することにより、該第２ログにデータが追加されることを検知する。次に、同期部５０２は、追加されたことを検知した場合に、追加された情報を同期情報として送信する。
【００５２】
たとえば、同期部５０２は、図３に例示する第２ログにおける２行目が追加されたことを検知する場合に、該第２ログにおける２行目を、同期情報として、実行部５０３に送信する。
【００５３】
実行部５０３は、該同期情報を受信するのに応じて、ソフトウェア１０６におけるステップを実行する。
【００５４】
情報処理装置１０５が処理するステップと、実行部５０３が実行環境１０２において処理するステップとは同じである。なぜなら、情報処理装置１０５と、実行部５０３とは、同期部５０２が作成する同期情報を介して同期しているためである。
【００５５】
第２の実施形態に係る異常検知装置５０１は、第１の実施形態と同様の構成を含むため、第２の実施形態は、第１の実施形態と同様の効果を享受することができる。すなわち、第２の実施形態に係る異常検知装置５０１によれば、早期に異常を検知することできる。
【００５６】
さらに、同期部５０２が追加された情報を同期情報として送信するため、判定部１０４は、第２ログを読み取る必要がなくなる。したがって、本実施形態に係る異常検知装置５０１によれば、第１の実施形態よりも読み取る処理が減るため、さらに、早期に異常を検知することできる。
【００５７】
＜第３の実施形態＞
次に、上述した第１の実施形態を基本とする本発明の第３の実施形態について説明する。
【００５８】
以下の説明においては、本実施形態に係る特徴的な部分を中心に説明すると共に、上述した第１の実施形態と同様な構成については、同一の参照番号を付すことにより、重複する説明を省略する。
【００５９】
図６を参照しながら、第３の実施形態に係る保護装置６０１が有する構成と、保護装置６０１が行う処理とについて説明する。図６は、本発明の第３の実施形態に係る保護装置６０１が有する構成を示すブロック図である。
【００６０】
保護装置６０１は、停止部６０２と、異常検知装置１０１とを有する。
【００６１】
停止部６０２は、異常検知装置１０１がソフトウェア１０６を異常であると判定する場合に、情報処理装置１０５にソフトウェア１０６を停止する指示を行う。
【００６２】
情報処理装置１０５は、該指示を受信し、受信した指示に基づきソフトウェア１０６を停止する。
【００６３】
第３の実施形態に係る保護装置６０１は、第１の実施形態に係る異常検知装置１０１と同様の構成を含むため、第３の実施形態は、第１の実施形態と同様の効果を享受することができる。すなわち、第３の実施形態に係る保護装置６０１によれば、早期に異常を検知することできる。
【００６４】
さらに、第３の実施形態に係る保護装置６０１は、ソフトウェア１０６が異常であると判定する場合に、情報処理装置１０５にソフトウェア１０６を停止する指示を行う。すなわち、保護装置６０１は、情報処理装置１０５がマルウェアを実行する処理を停止する。このため、第３の実施形態に係る保護装置６０１は、情報処理装置１０５がマルウェア等の悪質なソフトウェアに汚染される可能性を低減する。
【００６５】
＜第４の実施形態＞
次に、上述した第１の実施形態を基本とする本発明の第４の実施形態について説明する。第４の実施形態は、上述した本発明の各実施形態に係る異常検知装置を実現する一例である。
【００６６】
図７を参照しながら、第４の実施形態に係る情報処理装置７０１が有する構成と、情報処理装置７０１が行う処理とについて説明する。図７は、本発明の第４の実施形態に係る情報処理装置７０１が有する構成を示すブロック図である。
【００６７】
情報処理装置７０１は、ソフトウェア受信部７０２と、ソフトウェア格納部７０３と、ソフトウェア実行部７０４と、システムデータ部７０５と、エージェント部７２１とを有する。エージェント部７２１は、更新検査部７０６と、ログ生成部７０７と、ログ送信部７０８と、判定部７０９と、停止部７１２と、サンドボックス７１３とを有する。
【００６８】
判定部７０９は、比較部７１０と、格納部７１１とを有する。サンドボックス７１３は、ソフトウェア受信部７１４と、ソフトウェア格納部７１５と、ソフトウェア実行部７１６と、システムデータ部７１７と、ログ生成部７１８と、同期部７２０とを有する。
【００６９】
まず、情報処理装置７０１は、ソフトウェア１０６を受信する。ソフトウェア受信部７０２は、ソフトウェア１０６を受信し、受信したソフトウェア１０６をソフトウェア格納部７０３に格納する。また、ソフトウェア受信部７１４は、ソフトウェア１０６を受信し、受信したソフトウェア１０６をソフトウェア格納部７１５に格納する。
【００７０】
ソフトウェア実行部７０４は、ソフトウェア格納部７０３からソフトウェア１０６を読み取り、読み取ったソフトウェア１０６における各ステップを実行し、実行した動作に関する第２ログを、システムデータ部７０５に格納する。
【００７１】
更新検査部７０６は、システムデータ部７０５における第２ログが更新されるか否かを監視する。更新検査部７０６は、第２ログが更新される場合に、更新された情報を同期情報として同期部７２０に送信する。同期部７２０は、該同期情報を受信し、受信した該同期情報をシステムデータ部７１７に格納するとともに、ソフトウェア実行部７１６に該同期情報を送信する。
【００７２】
ログ生成部７０７は、システムデータ部７０５から第２ログを読み取り、読み取った第２ログをログ送信部７０８に送信する。ログ送信部７０８は、該第２ログを受信し、受信した第２ログを判定部７０９に送信する。
【００７３】
ソフトウェア実行部７１６は、同期部７２０が送信する同期情報を受信し、受信した同期情報に応じて、ソフトウェア１０６におけるステップを実行し、実行した動作に関する第１ログを、システムデータ部７１７に格納する。
【００７４】
ログ生成部７１８は、システムデータ部７１７から第１ログを読み取り、読み取った第１ログをログ送信部７１９に送信する。ログ送信部７１９は、該第１ログを受信し、受信した第１ログを判定部７０９に送信する。
【００７５】
判定部７０９は、第１ログ及び第２ログを受信し、受信した第１ログ及び第２ログを格納部７１１に格納する。次に、判定部７０９は、格納部７１１から第１ログ及び第２ログを読み取り、読み取った第１ログ及び第２ログを比較する。
【００７６】
判定部７０９は、第１ログ及び第２ログが一致しないと判定する場合に、停止部７１２に停止信号を送信する。停止部７１２は、該停止信号を受信し、受信した停止信号に応じて、ソフトウェア実行部７０４に停止する命令を送信する。ソフトウェア実行部７０４は、該停止する命令を受信するのに応じて、ソフトウェア１０６を停止する。
【００７７】
判定部７０９は、第１ログ及び第２ログが一致すると判定する場合には、停止部７１２に停止信号を送信しない。
【００７８】
第４の実施形態に係る情報処理装置７０１は、第１の実施形態と同様の構成を含むため、第４の実施形態は、第１の実施形態と同様の効果を享受することができる。すなわち、第４の実施形態に係る情報処理装置７０１によれば、早期に異常を検知することできる。
【００７９】
（ハードウェア構成例）
上述した本発明の各実施形態における異常検知装置を、１つの計算処理装置（情報処理装置、コンピュータ）を用いて実現するハードウェア資源の構成例について説明する。但し、係る異常検知装置は、物理的または機能的に少なくとも２つの計算処理装置を用いて実現してもよい。また、係る異常検知装置は、専用の装置として実現してもよい。
【００８０】
図８は、第１の実施形態乃至第４の実施形態に係る異常検知装置を実現可能な計算処理装置のハードウェア構成を概略的に示す図である。計算処理装置２０は、中央処理演算装置（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ、以降「ＣＰＵ」と表す）２１、メモリ２２、ディスク２３、不揮発性記録媒体２４、入力装置２５、および、出力装置２６を有する。
【００８１】
不揮発性記録媒体２４は、コンピュータが読み取り可能な、たとえば、コンパクトディスク（Ｃｏｍｐａｃｔ  Ｄｉｓｃ）、デジタルバーサタイルディスク（Ｄｉｇｉｔａｌ＿Ｖｅｒｓａｔｉｌｅ＿Ｄｉｓｃ）、ブルーレイディスク（Ｂｌｕ−ｒａｙ  Ｄｉｓｃ。登録商標）、ユニバーサルシリアルバスメモリ（ＵＳＢメモリ）、ソリッドステートドライブ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等を指しており、電源を供給しなくても係るプログラムを保持し、持ち運びを可能にする。不揮発性記録媒体２４は、上述した媒体に限定されない。また、不揮発性記録媒体２４の代わりに、通信ネットワークを介して係るプログラムを持ち運びしてもよい。
【００８２】
すなわち、ＣＰＵ２１は、ディスク２３が記憶するソフトウェア・プログラム（コンピュータ・プログラム：以下、単に「プログラム」と称する）を、実行する際にメモリ２２にコピーし、演算処理を実行する。ＣＰＵ２１は、プログラム実行に必要なデータをメモリ２２から読み取る。表示が必要な場合には、ＣＰＵ２１は、出力装置２６に出力結果を表示する。外部からプログラムを入力する場合、ＣＰＵ２１は、入力装置２５からプログラムを読み取る。ＣＰＵ２１は、上述した図１、図５、図６、あるいは、図７に示した各部が表す機能（処理）に対応するところのメモリ２２にある異常検知プログラム（図２における異常検知装置の処理）を解釈し実行する。ＣＰＵ２１は、上述した本発明の各実施形態において説明した処理を順次行う。
【００８３】
すなわち、このような場合、本発明は、係る異常検知プログラムによっても成し得ると捉えることができる。更に、係る異常検知プログラムが記録されたコンピュータ読み取り可能な不揮発性の記録媒体によっても、本発明は成し得ると捉えることができる。
【符号の説明】
【００８４】
１０１    異常検知装置
１０２    実行環境
１０３    実行部
１０４    判定部
１０５    情報処理装置
１０６    ソフトウェア
５０１    異常検知装置
５０２    同期部
５０３    実行部
６０１    保護装置
６０２    停止部
７０１    情報処理装置
７０２    ソフトウェア受信部
７０３    ソフトウェア格納部
７０４    ソフトウェア実行部
７０５    システムデータ部
７０６    更新検査部
７０７    ログ生成部
７０８    ログ送信部
７０９    判定部
７１０    比較部
７１１    格納部
７１２    停止部
７１３    サンドボックス
７１４    ソフトウェア受信部
７１５    ソフトウェア格納部
７１６    ソフトウェア実行部
７１７    システムデータ部
７１８    ログ生成部
７１９    ログ送信部
７２０    同期部
７２１    エージェント部
２０    計算処理装置
２１    ＣＰＵ
２２    メモリ
２３    ディスク
２４    不揮発性記録媒体
２５    入力装置
２６    出力装置
【図１】
2015060417.tif 000003
【図２】
2015060417.tif 000004
【図３】
2015060417.tif 000005
【図４】
2015060417.tif 000006
【図５】
2015060417.tif 000007
【図６】
2015060417.tif 000008
【図７】
2015060417.tif 000009
【図８】
2015060417.tif 000010