(57)【要約】【課題】機器のセキュリティ上の脆弱性を検査する検査システムにおいて、効果的な検査を容易かつ確実に実行することを目的とする。【解決手段】検証対象機器１１１，１１２の検査を指示する検査指示を送信する検証装置（指示）１０３と、検証装置（指示）１０３から検査指示を受信すると、検証対象機器１１１，１１２に対して攻撃を実行することにより検査を実行する検証装置（実行）１０６と、攻撃が実行されている検証対象機器１１１，１１２の挙動を示すフィードバック情報を取得する機能試験評価装置１１３とを備え、機能試験評価装置１１３の機能試験評価処理部１１４は、取得したフィードバック情報を検証装置（指示）１０３に送信し、検証装置（指示）１０３の攻撃パターン動的指示部１０５は、フィードバック情報に基づいて攻撃の手法の変更を示す変更内容を生成し、検証装置（実行）１０６に送信する。【選択図】図１
2015114833.tif 000002
【特許請求の範囲】
【請求項１】
機器を検査する検査システムにおいて、
前記機器に対して実行する攻撃の手法を示す攻撃手法情報を処理装置により生成し、生成した前記攻撃手法情報を送信する攻撃生成部と、
前記攻撃生成部から送信された前記攻撃手法情報を受信し、受信した前記攻撃手法情報に基づいて、前記機器に対して前記攻撃を処理装置により実行する攻撃実行部と、
前記攻撃実行部により前記攻撃が実行されている前記機器の挙動を示す機器挙動情報を処理装置により取得し、取得した前記機器挙動情報を送信する機器挙動取得部と、
前記機器挙動取得部から送信された前記機器挙動情報を受信し、受信した前記機器挙動情報に基づいて、前記攻撃手法情報の変更内容を処理装置により生成し、生成した前記変更内容を攻撃変更指示として送信する攻撃変更部と
を備え、
前記攻撃生成部は、
前記攻撃変更部から送信された前記攻撃変更指示を受信し、受信した前記攻撃変更指示に基づいて、前記攻撃手法情報を処理装置により変更し、変更した前記攻撃手法情報を前記攻撃実行部に送信する
ことを特徴とする検査システム。
【請求項２】
前記検査システムは、さらに、
前記機器に対して実行される攻撃と、前記機器挙動情報と、前記機器に対して前記攻撃が実行されている状態で前記機器が前記機器挙動情報により示される挙動を示した場合の前記攻撃の手法の変更方法とを対応付けた変更情報を記憶装置に記憶する変更情報記憶部を備え、
前記攻撃変更部は、
前記変更情報記憶部により記憶された前記変更情報から、前記機器挙動情報が示す前記機器の挙動に対応する変更情報を抽出し、抽出した前記変更情報に基づいて、前記攻撃変更指示を生成する
ことを特徴とする請求項１に記載の検査システム。
【請求項３】
前記検査システムは、さらに、
前記機器に対して実行される攻撃と、前記攻撃が実行されている際の前記機器の正常な挙動とを対応付けた挙動定義情報を記憶装置に記憶する挙動定義情報記憶部を備え、
前記機器挙動取得部は、
前記挙動定義情報記憶部により記憶されている前記挙動定義情報に基づいて、前記機器挙動情報が示す前記機器の挙動が正常状態であるか否かを処理装置により判定し、前記機器の挙動が正常状態でない場合に前記機器挙動情報を送信する
ことを特徴とする請求項１または２に記載の検査システム。
【請求項４】
機器を検査する検査システムにおいて、
前記機器の検査を指示する検査指示を送信する検査指示装置と、
前記検査指示装置から前記検査指示を受信すると、前記機器の検査を実行する検査実行装置と、
前記検査実行装置により前記検査が実行されている前記機器の挙動を示す機器挙動情報を取得する機器情報取得装置と
を備え、
前記検査実行装置は、
前記検査指示装置から前記検査指示を受信すると、前記機器に対して実行する攻撃の手法を示す攻撃手法情報を生成し、生成した前記攻撃手法情報を送信する攻撃生成部と、
前記攻撃生成部から送信された前記攻撃手法情報を受信し、受信した前記攻撃手法情報に基づいて、前記機器に対して前記攻撃を実行する攻撃実行部と
を備え、
前記機器情報取得装置は、
前記機器挙動情報を取得し、取得した前記機器挙動情報を送信する機器挙動取得部を
備え、
前記検査指示装置は、
前記機器挙動取得部から送信された前記機器挙動情報を受信し、受信した前記機器挙動情報に基づいて、前記攻撃手法情報の変更内容を生成し、生成した前記変更内容を攻撃変更指示として送信する攻撃変更部を備え、
前記検査実行装置の前記攻撃生成部は、
前記検査指示装置の前記攻撃変更部から送信された前記攻撃変更指示を受信し、受信した前記攻撃変更指示に基づいて、前記攻撃手法情報を変更し、変更した前記攻撃手法情報を前記攻撃実行部に送信する
ことを特徴とする検査システム。
【請求項５】
機器の挙動を示す機器挙動情報を取得する機器情報取得装置において、
前記機器に対して攻撃を実行することにより前記機器の脆弱性の検査を指示する検査指示を送信する検査指示装置から前記検査指示を受信する検査実行装置であって、前記検査指示を受信すると前記機器に対して攻撃を実行する検査実行装置により前記攻撃が実行されている前記機器の挙動を示す機器挙動情報を取得し、取得した前記機器挙動情報を前記検査指示装置に送信する機器挙動取得部を備え、
前記検査指示装置は、
前記機器挙動取得部から送信された前記機器挙動情報を受信し、受信した前記機器挙動情報に基づいて、前記攻撃の手法を変更する変更内容を生成し、生成した前記変更内容を攻撃変更指示として前記検査実行装置に送信し、
前記検査実行装置は、
前記検査指示装置から送信された前記攻撃変更指示を受信し、受信した前記攻撃変更指示に基づいて、前記攻撃の手法を変更し、変更した前記攻撃の手法を用いて、前記機器に対して前記攻撃を実行することを特徴とする機器情報取得装置。
【請求項６】
機器に対して攻撃を実行することにより、前記機器の脆弱性の検査を指示する検査指示を送信する検査指示装置において、
前記検査指示を受信すると前記機器に対して前記攻撃を実行する検査実行装置によって前記攻撃が実行されている前記機器の挙動を示す機器挙動情報を取得する機器情報取得装置から、前記機器挙動情報を受信し、受信した前記機器挙動情報に基づいて、前記攻撃の手法を変更する変更内容を生成し、生成した前記変更内容を攻撃変更指示として前記検査実行装置に送信する攻撃変更部を備え、
前記検査実行装置は、
前記攻撃変更部から送信された前記攻撃変更指示を受信し、受信した前記攻撃変更指示に基づいて、前記攻撃の手法を変更し、変更した前記攻撃の手法を用いて、前記機器に対して前記攻撃を実行することを特徴とする検査指示装置。
【請求項７】
機器に対して攻撃を実行する検査実行装置において、
前記機器に対して前記攻撃を実行することにより前記機器の脆弱性の検査を指示する検査指示を送信する検査指示装置から前記検査指示を受信すると、前記機器に対して実行する攻撃の手法を示す攻撃手法情報を生成し、生成した前記攻撃手法情報を送信する攻撃生成部と、
前記攻撃生成部から送信された前記攻撃手法情報を受信し、受信した前記攻撃手法情報に基づいて、前記機器に対して前記攻撃を実行する攻撃実行部と
を備え、
前記攻撃生成部は、
前記攻撃が実行されている前記機器の挙動を示す機器挙動情報を取得する機器情報取得装置から前記機器挙動情報を受信し、受信した前記機器挙動情報に基づいて、前記攻撃手法情報の変更内容を生成し、生成した前記変更内容を攻撃変更指示として送信する検査指示装置から前記攻撃変更指示を受信し、受信した前記攻撃変更指示に基づいて、前記攻撃手法情報を変更し、変更した前記攻撃手法情報を前記攻撃実行部に送信することを特徴とする検査実行装置。
【請求項８】
機器に対して攻撃を実行する検査実行装置において、
前記機器に対して前記攻撃を実行することにより前記機器の脆弱性の検査を指示する検査指示を受け付ける検査指示受付部と、
前記検査指示受付部が前記検査指示を受け付けると、前記機器に対して実行する攻撃の手法を示す攻撃手法情報を生成し、生成した前記攻撃手法情報を送信する攻撃生成部と、
前記攻撃生成部から送信された前記攻撃手法情報を受信し、受信した前記攻撃手法情報に基づいて、前記機器に対して前記攻撃を実行する攻撃実行部と
前記攻撃実行部により前記攻撃が実行されている前記機器の挙動を示す機器挙動情報を取得する機器情報取得装置から前記機器挙動情報を受信し、受信した前記機器挙動情報に基づいて、前記攻撃手法情報の変更内容を攻撃変更指示として生成する攻撃変更部と
を備え、
前記攻撃生成部は、
前記攻撃変更部から前記攻撃変更指示を受信し、受信した前記攻撃変更指示に基づいて、前記攻撃手法情報を変更し、変更した前記攻撃手法情報を前記攻撃実行部に送信することを特徴とする検査実行装置。
【請求項９】
機器を検査する検査システムの機器検査方法において、
攻撃生成部が、前記機器に対して実行する攻撃の手法を示す攻撃手法情報を生成し、生成した前記攻撃手法情報を送信する攻撃生成工程と、
攻撃実行部が、前記攻撃生成工程により送信された前記攻撃手法情報を受信し、受信した前記攻撃手法情報に基づいて、前記機器に対して前記攻撃を実行する攻撃実行工程と、
機器挙動取得部が、前記攻撃実行工程により前記攻撃が実行されている前記機器の挙動を示す機器挙動情報を取得し、取得した前記機器挙動情報を送信する機器挙動取得工程と、
攻撃変更部が、前記機器挙動取得工程により送信された前記機器挙動情報を受信し、受信した前記機器挙動情報に基づいて、前記攻撃手法情報の変更内容を生成し、生成した前記変更内容を攻撃変更指示として送信する攻撃変更工程と
を備え、
前記攻撃生成工程は、さらに、
前記攻撃生成部が、前記攻撃変更工程により送信された前記攻撃変更指示を受信し、受信した前記攻撃変更指示に基づいて、前記攻撃手法情報を変更し、変更した前記攻撃手法情報を前記攻撃実行部に送信する
ことを特徴とする機器検査方法。
【請求項１０】
機器の挙動を示す機器挙動情報を取得する機器情報取得装置のプログラムにおいて、
機器挙動取得部が、前記機器に対して攻撃を実行することにより前記機器の脆弱性の検査を指示する検査指示を送信する検査指示装置から前記検査指示を受信する検査実行装置であって、前記検査指示を受信すると前記機器に対して攻撃を実行する検査実行装置により前記攻撃が実行されている前記機器の挙動を示す機器挙動情報を取得し、取得した前記機器挙動情報を前記検査指示装置に送信する機器挙動取得処理をコンピュータである前記機器情報取得装置に実行させることを特徴とするプログラム。
【請求項１１】
機器に対して攻撃を実行することにより、前記機器の脆弱性の検査を指示する検査指示を送信する検査指示装置のプログラムにおいて、
攻撃変更部が、前記検査指示を受信すると前記機器に対して前記攻撃を実行する検査実行装置によって前記攻撃が実行されている前記機器の挙動を示す機器挙動情報を取得する機器情報取得装置から、前記機器挙動情報を受信し、受信した前記機器挙動情報に基づいて、前記攻撃の手法を変更する変更内容を処理装置により生成し、生成した前記変更内容を攻撃変更指示として前記検査実行装置に送信する攻撃変更処理をコンピュータである前記検査指示装置に実行させることを特徴とするプログラム。
【請求項１２】
機器に対して攻撃を実行する検査実行装置のプログラムにおいて、
攻撃生成部が、前記機器に対して前記攻撃を実行することにより前記機器の脆弱性の検査を指示する検査指示を送信する検査指示装置から前記検査指示を受信すると、前記機器に対して実行する攻撃の手法を示す攻撃手法情報を生成し、生成した前記攻撃手法情報を送信する攻撃生成処理と、
攻撃実行部が、前記攻撃生成処理により送信された前記攻撃手法情報を受信し、受信した前記攻撃手法情報に基づいて、前記機器に対して前記攻撃を実行する攻撃実行処理と、
前記攻撃生成部が、前記攻撃が実行されている前記機器の挙動を示す機器挙動情報を取得する機器情報取得装置から前記機器挙動情報を受信し、受信した前記機器挙動情報に基づいて、前記攻撃手法情報の変更内容を生成し、生成した前記変更内容を攻撃変更指示として送信する検査指示装置から前記攻撃変更指示を受信し、受信した前記攻撃変更指示に基づいて、前記攻撃手法情報を変更し、変更した前記攻撃手法情報を前記攻撃実行部に送信する変更攻撃出力処理とをコンピュータである前記検査実行装置に実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機器についてのセキュリティ上の脆弱性の有無を検証する検査システム、機器情報取得装置、検査指示装置、検査実行装置、機器検査方法及びプログラムに関する。
【背景技術】
【０００２】
従来から、インターネットを利用した商用サービスの発展に伴い、この商用サービスの提供者が利用するサーバや、顧客が利用する汎用ＰＣ（Ｐｅｒｓｏｎａｌ・Ｃｏｍｐｕｔｅｒ）等に対するセキュリティ攻撃による被害が増加している。これらのセキュリティ攻撃の多くは、サーバやＰＣ上で動作するシステム、例えばＯＳ（Ｏｐｅｒａｔｉｎｇ・Ｓｙｓｔｅｍ）やアプリケーションソフトウェアのセキュリティ上の不具合（以降、脆弱性と呼ぶ）を悪用したものである。セキュリティ攻撃に対する対策が適切でなく脆弱性を包含するシステムが運用状態にあると、顧客のクレジットカード番号や個人情報などプライバシー情報の漏洩や、サービス提供の不能といった問題を引き起こす危険性がある。
【０００３】
さらに近年、サーバや汎用ＰＣだけでなく、産業用機器や車載機器などに利用される組込み機器を対象としたセキュリティ攻撃が発生している。このセキュリティ攻撃が成功してしまった場合、従来のプライバシー情報の漏洩やサービス提供の不能といった問題のみならず、事故を引き起こすことにより人体に直接影響が出る危険性も指摘されている。
よって、予め脆弱性を検証し、脆弱性の無いシステムや機器を提供することが、セキュリティやセーフティの観点から重要となっている。
【０００４】
従来から、サーバや汎用ＰＣを対象とした脆弱性を検査するためのシステムは公開されている。例えば、Ｔｅｎａｂｌｅ・Ｎｅｔｗｏｒｋ・Ｓｅｃｕｒｉｔｙ社のＮＥＳＳＵＳや、ＲＡＩＰＤ社のＭＥＴＡＳＰＬＯＩＴなどのような脆弱性検査ツールを用いることで、検査対象に対する脆弱性の検査が行われる場合があった。しかし、脆弱性の検査を行う場合、検査者自身がセキュリティに対する高度の専門知識を持つことが要求されるため、検査結果が検査者個人の能力に強く依存することや、検査者の専門知識習得に時間的または金銭的コストがかかることが問題であった。さらに、検査者の手作業による脆弱性検査の場合、人為的ミスによる検査漏れの問題があった。
【０００５】
検査者個人の知識や能力に依存せず、かつ人為的ミスによる検査漏れを防ぐ品質の高い検査を目的とした先行技術（特許文献１）がある。特許文献１では、以下の手段を組み合わせ、パラメータ名と検査項目の対応表を持つことにより、設定されたパラメータに対して実行すべき検査項目を特定する手法が示されている。
・パラメータ名と検査項目との対応関係を定義した設定ファイルを記憶する記憶手段。
・検査対象となるパラメータが指定されるとこの指定されたパラメータのパラメータ名に基づいて前記記憶手段に記憶された設定ファイルを参照し、前記指定されたパラメータに対して実行すべき検査項目を特定する特定手段。
・特定した検査項目に該当する検査処理を前記パラメータに対して実行する実行手段。
【０００６】
また、特許文献１と同様の目的を持った別の先行技術（特許文献２）がある。特許文献２では、以下の構成要素を組み合わせることで、Ｗｅｂアプリケーションのセキュリティ対策において、設定ファイルと検査プログラムを検査項目毎にそれぞれ記憶するライブラリを備えて検査を実施する手法が示されている。
・個別のパラメータ毎に、検査項目に対する検査の要否を対応付けて記憶する設定ファイル。
・所定の攻撃に対する検査等を行う検査プログラムを、検査項目毎にそれぞれ記憶するライブラリ。
・Ｗｅｂアプリケーションにリクエストが入力されたとき、上記設定ファイルを参照して、上記リクエストの引数として渡されるパラメータに基づいて、検査を要する検査項目を特定し、当該特定した検査項目の検査プログラムを上記ライブラリから呼び出して実行する入力値検査手段。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００５−１３４９９５号公報
【特許文献２】特開２００７−０４７８８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
特許文献１及び特許文献２に記載された検査方式では、設定ファイルを検査者が選択するという行為を前提に脆弱性検査が行われる。このため、セキュリティ上やセーフティ上の検査を行う場合、検査者は、特定の検査対象に対して何を検査すれば脆弱性の無いシステムを構築できるかを理解していなければならない。したがって、特許文献１及び特許文献２に記載された検査方式では、検査者のセキュリティに対する専門知識に依存するという課題がある。
【０００９】
本発明は、例えば、コンピュータのセキュリティ上の対策等の有無を検査する検査システムにおいて、セキュリティに関する専門知識が少ない非セキュリティ専門家であっても、効果的な検査を容易かつ確実に実行することができるという効果を奏する。
【課題を解決するための手段】
【００１０】
本発明に係る検査システムは、機器を検査する検査システムにおいて、
前記機器に対して実行する攻撃の手法を示す攻撃手法情報を処理装置により生成し、生成した前記攻撃手法情報を送信する攻撃生成部と、
前記攻撃生成部から送信された前記攻撃手法情報を受信し、受信した前記攻撃手法情報に基づいて、前記機器に対して前記攻撃を処理装置により実行する攻撃実行部と、
前記攻撃実行部により前記攻撃が実行されている前記機器の挙動を示す機器挙動情報を処理装置により取得し、取得した前記機器挙動情報を送信する機器挙動取得部と、
前記機器挙動取得部から送信された前記機器挙動情報を受信し、受信した前記機器挙動情報に基づいて、前記攻撃手法情報の変更内容を処理装置により生成し、生成した前記変更内容を攻撃変更指示として送信する攻撃変更部と
を備え、
前記攻撃生成部は、
前記攻撃変更部から送信された前記攻撃変更指示を受信し、受信した前記攻撃変更指示に基づいて、前記攻撃手法情報を処理装置により変更し、変更した前記攻撃手法情報を前記攻撃実行部に送信することを特徴とする。
【発明の効果】
【００１１】
本実施の形態に係る検査システムによれば、機器挙動取得部が、攻撃実行部により攻撃が実行されている機器の挙動を示す機器挙動情報を取得し、攻撃変更部が、機器挙動取得部により取得された機器挙動情報に基づいて、攻撃手法情報の変更内容を生成し、生成した変更内容を攻撃変更指示として送信し、攻撃生成部が、攻撃変更部から送信された攻撃変更指示に基づいて、攻撃手法情報を変更し、変更した攻撃手法情報を攻撃実行装置に送信するので、効果的な検査を容易かつ確実に実行することができるという効果を奏する。
【図面の簡単な説明】
【００１２】
【図１】実施の形態１に係る検証システムのブロック構成を示す図である。
【図２】実施の形態１に係る検証装置（指示）、検証装置（実行）、機能試験評価装置のハードウェア構成の一例を示す図である。
【図３】実施の形態１に係る検証装置（指示）の内部構成の一例を示す図である。
【図４】実施の形態１に係る動的変更指示基準ファイル（変更情報）の構成の一例を示す図である。
【図５】実施の形態１に係るフィードバック情報（機器挙動情報）の構成の一例を示す図である。
【図６】実施の形態１に係る入出力処理部の入出力処理（工程）の動作を示すフローチャートである。
【図７】実施の形態１に係る攻撃パターン動的指示部のフィードバック読込時処理（工程）の動作の一例を示すフローチャートである。
【図８】実施の形態１に係る攻撃パターン動的指示部の動的指示処理（工程）の一例を示すフローチャートである。
【図９】実施の形態１に係る検証装置（実行）の内部構成図の一例を示す図である。
【図１０】実施の形態１に係る検証装置（実行）の攻撃方法選択部の攻撃方法選択処理（工程）の動作の一例を示すフローチャートである。
【図１１】実施の形態１に係る検証装置（実行）の攻撃パターン生成部及び攻撃パターン実行部の攻撃パターン生成実行処理（工程）の動作の一例を示す図である。
【図１２】実施の形態１に係る検証装置（実行）の実行評価部の実行評価処理（工程）の動作の一例を示す図である。
【図１３】実施の形態１に係る機能試験評価装置の内部構成の一例を示す図である。
【図１４】実施の形態１に係る機能試験評価装置の機能試験評価処理部の機能試験評価処理（工程）の動作の一例を示すフローチャートである。
【図１５】実施の形態２に係る検証システムのブロック構成を示す図である。
【発明を実施するための形態】
【００１３】
実施の形態１．
図１は、本実施の形態に係る検証システム５００のブロック構成を示す図である。
図１を用いて、機器の攻撃に対する脆弱性を検査する検証システム５００（検査システム）のブロック構成について説明する。
【００１４】
図１に示すように、検証システム５００は、検証装置（指示）１０３、検証装置（実行）１０６、機能試験評価装置１１３を備える。検証装置（指示）１０３と、検証装置（実行）１０６と、機能試験評価装置１１３とは、ネットワーク２００を介して接続されている。
ネットワーク２００は、例えば、公衆ネットワーク網またはローカルネットワークである。
検証装置（指示）１０３と検証装置（実行）１０６とは、ローカルで動作する。
機能試験評価装置１１３は、リモートもしくはローカルで動作する。
検証装置（実行）１０６には、検査対象の機器である検証対象機器１１１，１１２が接続されている。検証対象機器１１１，１１２は、例えば、組み込み機器である。以下において、検証対象機器１１１，１１２を単に機器と呼ぶ場合もある。
【００１５】
検証装置（指示）１０３（検査指示装置）は、入出力処理部１０４、攻撃パターン動的指示部１０５（攻撃変更部）を備える。また、検証装置（指示）１０３には、入力装置１０１と、出力装置１０２とが接続されている。
検証装置（指示）１０３の入出力処理部１０４は、ユーザ（検査者）により入力装置１０１から入力された、検証対象機器１１１，１１２に関する情報、検証自体に関する情報等を読み込む。この検証対象機器１１１，１１２に関する情報、検証自体に関する情報を、以下の説明において検証関連情報ともいう場合がある。
【００１６】
この検証関連情報とは、例えば、検証対象機器１１１，１１２の開発コード名称、検証実施項目の量（サンプルとして数項目程度、前回検査で失敗となった項目のみ、全機能、など）などの情報である。また、検証関連情報は、機器に対して攻撃を実行することにより、機器の脆弱性の検査を行う指示を表す検査指示（検査指示情報）の一例である。
【００１７】
入出力処理部１０４は、入力した検証関連情報をファイル形式または通信パケットに変換して検証装置（実行）１０６に送信する。
また、入出力処理部１０４は、検証装置（実行）１０６で実行された各攻撃パターンの実行結果から得られる脆弱性の判定結果や、攻撃パターン動的指示部１０５で書き換えられた攻撃パターン優先順位などの攻撃変更結果を出力装置１０２に出力する。
【００１８】
検証装置（実行）１０６（検査実行装置）は、攻撃方法選択部１０７、攻撃パターン生成部１０８、攻撃パターン実行部１０９、実行評価部１１０、選択規則１０６１、生成規則１０６２、評価基準１０６３を備える。
【００１９】
検証装置（実行）１０６の攻撃方法選択部１０７は、検証装置（指示）１０３から受信した検証対象機器１１１，１１２や検証自体に関する情報（検証関連情報）を読み込む。攻撃方法選択部１０７は、読み込んだ検証関連情報を選択規則１０６１と照合し、攻撃方法を決定し、決定した攻撃方法を攻撃パターン生成部１０８に出力する。
【００２０】
攻撃パターン生成部１０８は、検証装置（指示）１０３から受信した検証関連情報と、攻撃方法選択部１０７の決定結果である攻撃方法とを入力する。攻撃パターン生成部１０８は、入力した検証関連情報と、決定結果である攻撃方法とを、生成規則１０６２と照合し、攻撃の手法を示す攻撃手法情報である攻撃パターンをひとつ、あるいは複数生成する。攻撃パターン生成部１０８は、生成した攻撃パターンを攻撃パターン実行部１０９に出力して実行させる。
攻撃パターン生成部１０８は、検証装置（指示）１０３からの検査指示を受信すると、機器に対して実行する攻撃の手法を示す攻撃パターン（攻撃手法情報）を生成し、生成した攻撃パターンを送信する攻撃生成部の一例である。
【００２１】
攻撃パターン実行部１０９は、攻撃パターン生成部１０８から入力した攻撃パターンにしたがって、検証対象機器１１１，１１２に対して、攻撃を実行する。攻撃パターン実行部１０９は、単一または複数の実行処理手段を備え、入力した攻撃パターンにしたがって、検証対象機器１１１，１１２に対して攻撃パターンを実行する。
攻撃パターン実行部１０９は、攻撃パターン生成部１０８から攻撃パターンを受信し、受信した攻撃パターンに基づいて、機器に対して攻撃を実行する攻撃実行部の一例である。
【００２２】
実行評価部１１０は、各攻撃パターン実行後、攻撃パターン実行時に検証対象機器１１１，１１２から送信されたレスポンスを受信する。あるいは、実行評価部１１０は、リアルタイムで、攻撃パターン実行時に検証対象機器１１１，１１２から送信されるレスポンスを受信する。あるいは、実行評価部１１０は、攻撃パターン実行後に、検証対象機器１１１，１１２に対してポーリングを行い、検証対象機器１１１，１１２からレスポンスを受信するとしても構わない。
実行評価部１１０は、受信したレスポンスを、評価基準１０６３と照合することにより、各攻撃パターンに対して脆弱性があるか無いかの判定を行い、判定結果を検証装置（指示）１０３に伝送する。
【００２３】
機能試験評価装置１１３は、機能試験評価処理部１１４を備える。機能試験評価装置１１３は、検証対象機器１１１と、検証対象機器１１２とのいずれか、あるいは検証対象機器１１１と、検証対象機器１１２との両方に接続されている。
図１では、機能試験評価装置１１３は、検証対象機器１１２に接続されている場合を示している。
【００２４】
機能試験評価処理部１１４は、各攻撃パターン実行時の検証対象機器１１２の挙動を確認し、挙動の変化に関する情報（機器挙動情報）を検証装置（指示）１０３に伝送する。この挙動の変化に関する情報（機器挙動情報）をフィードバック情報ともいう。
機能試験評価処理部１１４は、攻撃パターン実行部１０９により攻撃が実行されている機器の挙動を示す機器挙動情報を取得し、取得した機器挙動情報を検証装置（指示）１０３に送信する機器挙動取得部の一例である。
機能試験評価装置１１３は、機能試験評価処理部１１４（機器挙動取得部）を備える機器情報取得装置の一例である。
【００２５】
検証装置（指示）１０３の攻撃パターン動的指示部１０５は、機能試験評価装置１１３の機能試験評価処理部１１４から送信されたフィードバック情報を読み込む。攻撃パターン動的指示部１０５は、フィードバック情報を解析し、攻撃が成功した場合や挙動に全く変化の無いと判断した場合は、そのまま終了して攻撃パターン生成部１０８が生成した通りの攻撃パターンを継続する。しかし、攻撃パターン動的指示部１０５は、挙動に変化があったと判断した場合には、その攻撃が検証に有効である可能性が高いため、関連する攻撃パターンを実行するよう検証装置（実行）１０６に割込み処理を行う。
【００２６】
攻撃パターン動的指示部１０５は、機能試験評価処理部１１４からから送信されたフィードバック情報（機器挙動情報）を受信し、受信したフィードバック情報に基づいて、攻撃パターン（攻撃手法情報）の変更内容を生成する攻撃変更部の一例である。
また、攻撃パターン生成部１０８は、攻撃パターン動的指示部１０５から送信された攻撃変更指示を受信し、受信した攻撃変更指示に基づいて、攻撃パターンを変更し、変更した攻撃パターンを攻撃パターン実行部１０９に送信する攻撃生成部の一例である。
【００２７】
図２は、本実施の形態に係る検証装置（指示）１０３、検証装置（実行）１０６、機能試験評価装置１１３のハードウェア構成の一例を示す図である。
図２を用いて、検証装置（指示）１０３、検証装置（実行）１０６、機能試験評価装置１１３のハードウェア構成例について説明する。
【００２８】
検証装置（指示）１０３、検証装置（実行）１０６、機能試験評価装置１１３はコンピュータを備え、検証装置（指示）１０３、検証装置（実行）１０６、機能試験評価装置１１３の各要素をプログラムで実現することができる。
【００２９】
検証装置（指示）１０３、検証装置（実行）１０６、機能試験評価装置１１３のハードウェア構成としては、バスに、演算装置９０１、外部記憶装置９０２、主記憶装置９０３、通信装置９０４、入出力装置９０５が接続されている。
【００３０】
演算装置９０１は、プログラムを実行するＣＰＵ（Ｃｅｎｔｒａｌ・Ｐｒｏｃｅｓｓｉｎｇ・Ｕｎｉｔ）である。
外部記憶装置９０２は、例えばＲＯＭ（Ｒｅａｄ・Ｏｎｌｙ・Ｍｅｍｏｒｙ）やフラッシュメモリ、ハードディスク装置である。ハードディスク１２０は、外部記憶装置９０２の一例である。
主記憶装置９０３は、ＲＡＭ（Ｒａｎｄｏｍ・Ａｃｃｅｓｓ・Ｍｅｍｏｒｙ）である。
【００３１】
通信装置９０４は、例えば通信ボード等であり、ＬＡＮ（Ｌｏｃａｌ・Ａｒｅａ・Ｎｅｔｗｏｒｋ）等に接続されている。通信装置９０４は、ＬＡＮに限らず、ＩＰ−ＶＰＮ（Ｉｎｔｅｒｎｅｔ・Ｐｒｏｔｏｃｏｌ・Ｖｉｒｔｕａｌ・Ｐｒｉｖａｔｅ・Ｎｅｔｗｏｒｋ）、広域ＬＡＮ、ＡＴＭ（Ａｓｙｎｃｈｒｏｎｏｕｓ・Ｔｒａｎｓｆｅｒ・Ｍｏｄｅ）ネットワークといったＷＡＮ（Ｗｉｄｅ・Ａｒｅａ・Ｎｅｔｗｏｒｋ）、あるいは、インターネットに接続されていても構わない。ＬＡＮ、ＷＡＮ、インターネットは、ネットワークの一例である。
【００３２】
入出力装置９０５は、例えばマウス、キーボード、ディスプレイ装置等である。マウスの代わりに、タッチパネル、タッチパッド、トラックボール、ペンタブレット、あるいは、その他のポインティングデバイスが用いられても構わない。ディスプレイ装置は、ＬＣＤ（Ｌｉｑｕｉｄ・Ｃｒｙｓｔａｌ・Ｄｉｓｐｌａｙ）、ＣＲＴ（Ｃａｔｈｏｄｅ・Ｒａｙ・Ｔｕｂｅ）、あるいは、その他の表示装置でも構わない。ディスプレイ１３０は、表示装置の一例である。
【００３３】
プログラムは、通常は外部記憶装置９０２に記憶されており、主記憶装置９０３にロードされた状態で、順次演算装置９０１に読み込まれ、実行される。
プログラムは、図１に示す「〜部」として説明している機能を実現するプログラムである。
更に、外部記憶装置９０２にはオペレーティングシステム（ＯＳ）も記憶されており、ＯＳの少なくとも一部が主記憶装置９０３にロードされ、演算装置９０１はＯＳを実行しながら、図１に示す「〜部」の機能を実現するプログラムを実行する。
また、アプリケーションプログラムも外部記憶装置９０２に記憶されており、主記憶装置９０３にロードされた状態で、順次演算装置９０１により実行される。
また、「〜テーブル」等の情報も外部記憶装置９０２に記憶されている。
【００３４】
また、本実施の形態の説明において、「〜の判断」、「〜の判定」、「〜の抽出」、「〜の検知」、「〜の設定」、「〜の登録」、「〜の選択」、「〜の生成」、「〜の入力」、「〜の出力」等として説明している処理の結果を示す情報やデータや信号値や変数値が主記憶装置９０３にファイルとして記憶されている。
また、検証装置（指示）１０３、検証装置（実行）１０６、機能試験評価装置１１３が受信したデータが主記憶装置９０３に記憶される。
また、暗号鍵・復号鍵や乱数値やパラメータが、主記憶装置９０３にファイルとして記憶されても構わない。
【００３５】
なお、図２の構成は、あくまでも検証装置（指示）１０３、検証装置（実行）１０６、機能試験評価装置１１３のハードウェア構成の一例を示すものであり、検証装置（指示）１０３、検証装置（実行）１０６、機能試験評価装置１１３のハードウェア構成は図２に記載の構成に限らず、他の構成であっても構わない。
【００３６】
図３は、本実施の形態に係る検証装置（指示）１０３の内部構成の一例を示す図である。
検証装置（指示）１０３は、入出力処理部１０４、攻撃パターン動的指示部１０５に加え、設定情報ファイル２０１、動的変更指示基準ファイル２０２を、例えば、内部の記憶装置に記憶する。
【００３７】
検証装置（指示）１０３の入出力処理部１０４は、ユーザにより入力装置１０１から指定されたユーザ操作や、設定情報ファイル２０１を読み込む。
ユーザ操作には、例えば、実行開始指示、実行停止指示、実行再開指示、ＳＴＯＰ指示（終了指示、ソフトウェア終了指示ともいう）などがある。
設定情報ファイル２０１には、検証関連情報が含まれる。ユーザは、検証関連情報を、入力装置１０１を用いて直接入力しても構わない。あるいは、検証関連情報を含むファイルを予め作成しておき、ユーザが検査時に予め作成しておいたファイルを入力装置１０１から指定しても構わない。
【００３８】
入出力処理部１０４は、設定情報ファイル２０１が指定された場合には、その設定情報ファイル２０１を読み込み記憶装置に記憶する。また、同時に、入力装置１０１から、検証に関するその他の情報が与えられた場合には、設定情報ファイル２０１にこれらの情報も付加して記憶する。これにより、次回以降も、設定情報ファイル２０１を参照することで、入力装置１０１からユーザにより指定された検証関連情報、あるいは検証に関するその他の情報を参照することができる。
【００３９】
入出力処理部１０４は、設定情報ファイル２０１（直接入力された情報がある場合にはその情報も含む設定情報ファイル２０１）を、ファイル形式または通信パケットに変換して検証装置（実行）１０６へ伝送する。また、入出力処理部１０４は、ユーザ操作（実行開始指示、実行停止指示、実行再開指示、ＳＴＯＰ指示など）を受け付け、ファイル形式または通信パケットに変換して検証装置（実行）１０６へ伝送する。ここで、入力装置１０１とは、キーボード、マウス、ダッチパネルなど、ＧＵＩ（Ｇｒａｐｈｉｃａｌ・Ｕｓｅｒ・Ｉｎｔｅｒｆａｃｅ）やＣＵＩ（Ｃｈａｒａｃｔｅｒ−ｂａｓｅｄ・Ｕｓｅｒ・Ｉｎｔｅｒｆａｃｅ）を介してユーザが入力できる手段であれば何でも良い。
【００４０】
また、入出力処理部１０４は、検証装置（実行）１０６から伝送された判定結果等を受信し、出力装置１０２に出力する。出力装置１０２は、例えば、モニタなどの表示装置である。
【００４１】
攻撃パターン動的指示部１０５は、機能試験評価装置１１３からフィードバック情報を受信する。攻撃パターン動的指示部１０５は、受信したフィードバック情報に基づいて動的変更指示基準ファイル２０２を参照し、攻撃パターンを変更するかどうかを判定する。
攻撃パターン動的指示部１０５は、攻撃パターンを変更すると判定した場合には、攻撃変更結果を入出力処理部１０４に出力し、入出力処理部１０４は検証装置（実行）１０６へ伝送する。攻撃パターン動的指示部１０５は、攻撃変更結果を、入出力処理部１０４を介さずに、直接検証装置（実行）１０６へ伝送しても構わない。
【００４２】
図４は、本実施の形態に係る動的変更指示基準ファイル２０２（変更情報）の構成の一例を示す図である。
図５は、本実施の形態に係るフィードバック情報（機器挙動情報）の構成の一例を示す図である。
動的変更指示基準ファイル２０２は、機器の挙動（機器挙動情報）と、「機器に対して実行される攻撃」及び「攻撃が実行されている状態での機器がその挙動を示した場合の攻撃の手法の変更方法」とを対応付けた変更情報の一例である。動的変更指示基準ファイル２０２（変更情報）は、変更情報記憶部により記憶装置に記憶される。
また、「機器に対して実行される攻撃」及び「攻撃が実行されている状態での機器がその挙動を示した場合の攻撃の手法の変更方法」を含む情報を有効攻撃ともいう。
【００４３】
図４に示すように、例えば、機器の挙動「ＣＰＵ負荷率の上昇」に対して、攻撃とその手法の変更方法（有効攻撃）として「ＳＳＬセッション確立の繰り返し攻撃の繰り返し数の増加」、「ＦｕｚｚｉｎｇのＦｕｚｚデータの変更」、「ＤｏＳ通信レートの増加」などが記憶されている。
【００４４】
図５に示すように、例えば、フィードバック情報には、攻撃を示す攻撃種別と、機器の挙動とが設定される。図５では、攻撃種別「ＳＳＬセッション確立の繰り返し攻撃ｎ回」が実行されている場合に、機器の挙動「ＣＰＵ負荷率が○○％に上昇」が生じたことを示している。また、攻撃種別「通信レートｒのＤｏｓ攻撃」が実行されている場合に、機器の挙動「１００ｍｓｅｃ毎の定周期フレーム送信機能が不合格」が生じたことを示している。
【００４５】
攻撃パターン動的指示部１０５は、動的変更指示基準ファイル２０２から、フィードバック情報（機器挙動情報）に含まれる機器の挙動に対応する有効攻撃を抽出し、抽出した有効攻撃に基づいて、攻撃パターンの変更内容を攻撃変更指示として生成する。
【００４６】
図６は、本実施の形態に係る入出力処理部１０４の入出力処理（工程）の動作を示すフローチャートである。
図６を用いて、検証システム５００の機器検査方法における入出力処理部１０４の動作（入出力処理（工程））について説明する。
ユーザは、検証対象機器の検証を開始する場合、入力装置１０１から、設定情報ファイル２０１（検証関連情報）を指定し、実行開始指示のユーザ操作を入力する。
【００４７】
Ｓ１０１において、入出力処理部１０４は、設定情報ファイル２０１を読み込む。設定情報ファイル２０１（検証関連情報）には、検証対象を特定する情報（検証対象機器１１１，１１２の開発コード名称等）、攻撃パターン実行粒度（例えば、検証実施項目の量（サンプルとして数項目程度、前回検査で失敗となった項目のみ、全機能、など））が含まれる。
【００４８】
Ｓ１０２において、入出力処理部１０４は、ユーザにより入力装置１０１から入力される実行開始指示をトリガとして、設定情報ファイル２０１を検証装置（実行）１０６に送信し、Ｓ１０３に進む。
【００４９】
Ｓ１０３で、入出力処理部１０４は、入力装置１０１からのユーザ操作（実行停止指示、実行再開指示、ＳＴＯＰ指示）、検証装置（実行）１０６からの判定結果（ログ）、または機能試験評価装置１１３からのフィードバック情報の受信待ち状態に入る。
入出力処理部１０４は、入力装置１０１からのユーザ操作、検証装置（実行）１０６からの判定結果（ログ）、または機能試験評価装置１１３からのフィードバック情報のいずれかを受信すると、Ｓ１０４に進む。
【００５０】
入出力処理部１０４が受信した情報が、ユーザ操作（実行停止指示、実行再開指示）の場合（Ｓ１０４でＹＥＳ）、Ｓ１０５に進む。
入出力処理部１０４が受信した情報が、ユーザ操作（実行停止指示、実行再開指示）以外の場合（Ｓ１０４でＮＯ）、Ｓ１０６に進む。
Ｓ１０５において、入出力処理部１０４は、受信したユーザ操作（実行停止指示、実行再開指示）を検証装置（実行）１０６に送信し、Ｓ１０３に処理を戻し、待ち状態に入る。
【００５１】
入出力処理部１０４が受信した情報が、ユーザ操作（ＳＴＯＰ指示）の場合（Ｓ１０６でＹＥＳ）、Ｓ１０７に進む。
入出力処理部１０４が受信した情報が、ユーザ操作（ＳＴＯＰ指示）以外の場合（Ｓ１０６でＮＯ）、Ｓ１０８に進む。
Ｓ１０７において、入出力処理部１０４は、受信したユーザ操作（ＳＴＯＰ指示）を検証装置（実行）１０６に送信し、処理を終了する。
ユーザ操作（ＳＴＯＰ指示）とは、ユーザによるソフトウェアなどの強制終了を意味する。
【００５２】
入出力処理部１０４が受信した情報が、検証装置（実行）１０６からの判定結果（ログ）、または機能試験評価装置１１３からのフィードバック情報の場合（Ｓ１０８でＹＥＳ）、Ｓ１０９に進む。
【００５３】
Ｓ１０９において、入出力処理部１０４は、検証装置（実行）１０６からの判定結果（ログ）、または機能試験評価装置１１３からのフィードバック情報を受信すると、ログ読込時処理、またはフィードバック読込時処理を実行する。
【００５４】
入出力処理部１０４のログ読込時処理について説明する。
入出力処理部１０４は、検証装置（実行）１０６からの判定結果（ログ）を受信すると、受信した判定結果（ログ）に基づいて、実行ステータス、検証合否、ログの内容などを表示装置に表示する。
【００５５】
次に、入出力処理部１０４のフィードバック読込時処理について説明する。
入出力処理部１０４は、フィードバック情報を受信すると、攻撃パターン動的指示部１０５に対し、受信したフィードバック情報を出力する。フィードバック情報とは、例えば、攻撃パターン実行時の検証対象機器１１２の挙動の変化などに関する情報である。
【００５６】
攻撃パターン動的指示部１０５は、攻撃が成功した場合、挙動に全く変化の無い場合は現在の攻撃パターンのままで検証することを指示する変更なし指示を入出力処理部１０４に出力する。しかし、攻撃パターン動的指示部１０５は、挙動に変化があった場合には、その攻撃が検証に有効である可能性が高いため、関連する攻撃パターンに変更して検証する指示である攻撃変更指示を入出力処理部１０４に出力する。
入出力処理部１０４は、攻撃パターン動的指示部１０５から変更なし指示を入力した場合は、フィードバック情報を表示装置に表示する。
入出力処理部１０４は、攻撃パターン動的指示部１０５から攻撃変更指示を入力した場合は、入力した攻撃変更指示とフィードバック情報とを表示装置に表示するとともに、攻撃変更指示を検証装置（実行）１０６に送信し、検証装置（実行）１０６に対して割り込み指示処理を実行する。この割り込み指示処理の詳細については、後述する。
なお、攻撃パターン動的指示部１０５は、入出力処理部１０４を介さずに、直接、攻撃変更指示を検証装置（実行）１０６に送信し、検証装置（実行）１０６に対して割り込み指示処理を実行するとしてもよい。
【００５７】
Ｓ１１０において、入出力処理部１０４は、すべての攻撃パターンでログを受信したかどうかを判定する。すべての攻撃パターンでログを受信した場合（Ｓ１１０でＹＥＳ）、処理を終了する。ログを受信していない攻撃パターンがある場合（Ｓ１１０でＮＯ）、処理をＳ１０３に戻し、待ち状態に入る。
すべての攻撃パターンでログを受信したかどうかを判定は、例えば、ログに終了フラグなどを設けることにより実現することができる。
【００５８】
図７は、本実施の形態に係る攻撃パターン動的指示部１０５のフィードバック読込時処理（工程）の動作の一例を示すフローチャートである。
図７を用いて、機器検査方法における攻撃パターン動的指示部１０５が入出力処理部１０４からフィードバック情報を読み込んだ時の動作（フィードバック読込時処理（工程））について説明する。
【００５９】
Ｓ２０１において、攻撃パターン動的指示部１０５は、読み込んだフィードバック情報が、次攻撃パターンの変更規則に合致するか否かを処理装置により判定する。
フィードバック情報には、例えば、攻撃種別と、当該攻撃種別の攻撃を実行した時の検証対象機器の挙動とが対応付けられている。
また、変更規則とは、例えば、動的変更指示基準ファイル２０２である。動的変更指示基準ファイル２０２とは、機器の挙動と、その挙動の場合に重点的に実行すべき攻撃の攻撃種別（有効攻撃）とを定義した情報である。攻撃パターン動的指示部１０５は、読み込んだフィードバック情報に含まれる検証対象機器の挙動と攻撃種別とが、動的変更指示基準ファイル２０２の機器の挙動と攻撃種別（有効攻撃）とに合致するか否かを処理装置により判定する。
【００６０】
読み込んだフィードバック情報が次攻撃パターンの変更規則に合致する場合（Ｓ２０１でＹＥＳ）、Ｓ２０２に進む。
読み込んだフィードバック情報が次攻撃パターンの変更規則に合致しない場合（Ｓ２０１でＮＯ）、攻撃パターン動的指示部１０５は、次攻撃パターンに変更がないことを指示する変更なし指示を生成し入出力処理部１０４に出力する（Ｓ２０１ａ）。そして、Ｓ２０６に処理を進める。
【００６１】
＜動的指示処理（工程）＞
Ｓ２０２〜Ｓ２０５において、攻撃パターン動的指示部１０５は、フィードバック情報が変更規則に合致した場合全てについて、動的指示処理（攻撃変更処理（工程））（Ｓ２０３）を実行する。
フィードバック情報が変更規則に合致した場合（Ｓ２０２）、攻撃パターン動的指示部１０５は、動的に攻撃パターンを変更するために、合致した変更規則に応じて次攻撃パターンを変更する指示（攻撃変更指示）を生成し、変更指示リストに追加する（Ｓ２０３）。
変更指示リストへの追加が完了すると（Ｓ２０４）、攻撃パターン動的指示部１０５は、その変更指示リストを検証装置（実行）１０６に送信する（Ｓ２０５）。
【００６２】
Ｓ２０６では、攻撃パターン動的指示部１０５は、生成した変更なし指示（Ｓ２０１ａにて生成）、あるいは、生成した変更指示リスト（Ｓ２０４にて生成）を入出力処理部１０４に出力し、処理を終了する。
【００６３】
図８は、本実施の形態に係る攻撃パターン動的指示部１０５の動的指示処理（工程）（攻撃変更処理（工程））の一例を示すフローチャートである。
図８を用いて、機器検査方法における攻撃パターン動的指示部１０５の動的指示処理（攻撃変更処理（工程））について、具体例を用いて説明する。
【００６４】
まず、攻撃パターン動的指示部１０５の動的指示処理を説明するための前提条件について述べる。
変更規則１０３１の一例である動的変更指示基準ファイル２０２には、機器の挙動として、例えば、「ＣＰＵ負荷率の上昇」が設定されているものとする。動的変更指示基準ファイル２０２では、機器の挙動に対応付けて、対応する機器において当該挙動が起こった場合に重点的に行うべき攻撃（有効攻撃）が定義されている。ここでは、図４に示すように、例えば、機器の挙動「ＣＰＵ負荷率の上昇」に対して、有効攻撃「ＳＳＬセッション確立の繰り返し攻撃」、「Ｆｕｚｚｉｎｇ」、「ＤｏＳ」の３種類の有効攻撃が設定されているものとする。これら攻撃はセキュリティ上の脆弱性を発見するための攻撃であれば、他の攻撃でも構わない。
【００６５】
機能試験評価装置１１３の機能試験評価処理部１１４は、検証対象機器１１１，１１２のＣＰＵ負荷率を計測し、現在実行中の攻撃パターンとＣＰＵ負荷率の結果とをフィードバック情報として検証装置（指示）１０３（攻撃パターン動的指示部１０５）に送信しているものとする。
さらに、初回の攻撃パターン生成時は、各攻撃の種類について数パターン程度の攻撃を一通り繰り返し、次に別の攻撃パターンで各攻撃を繰り返すという順序で生成するような、攻撃の種類の幅を優先する幅優先探索のような攻撃順序を生成したと仮定する。
【００６６】
次に、攻撃パターン動的指示部１０５の動的指示処理の動作を述べる。
Ｓ３０１において、攻撃パターン動的指示部１０５は、フィードバック情報の機器の挙動と、対応する攻撃とを読み込み、攻撃がＳＳＬセッション確立の繰り返し攻撃か否か処理装置により判定する。
攻撃種別がＳＳＬセッション確立の繰り返し攻撃の場合（Ｓ３０１でＹＥＳ）、Ｓ３０２に進む。
攻撃種別がＳＳＬセッション確立の繰り返し攻撃でない場合（Ｓ３０１でＮＯ）、Ｓ３０３に進む。
【００６７】
Ｓ３０２において、攻撃パターン動的指示部１０５は、ＳＳＬセッション確立の繰り返し攻撃を重点的に実施する攻撃パターンに変更する攻撃変更指示を生成する。ＳＳＬセッション確立の繰り返し攻撃を重点的に実施する攻撃パターンとは、例えば、ＳＳＬセッション確立の繰り返し数ｎが、ｎ＋１０，ｎ＋２０，ｎ＋３０，・・・となるような攻撃パターンである。
【００６８】
Ｓ３０３において、攻撃パターン動的指示部１０５は、フィードバック情報の攻撃種別がＦｕｚｚｉｎｇか否か処理装置により判定する。
攻撃種別がＦｕｚｚｉｎｇの場合（Ｓ３０３でＹＥＳ）、Ｓ３０４に進む。
攻撃種別がＦｕｚｚｉｎｇでない場合（Ｓ３０３でＮＯ）、Ｓ３０５に進む。
【００６９】
Ｓ３０４において、攻撃パターン動的指示部１０５は、Ｆｕｚｚｉｎｇを重点的に実施する攻撃パターンに変更する攻撃変更指示を生成する。Ｆｕｚｚｉｎｇを重点的に実施する攻撃パターンとは、例えば、予め定義されたＦｕｚｚデータを全通り実施する攻撃パターンである。
【００７０】
Ｓ３０５において、攻撃パターン動的指示部１０５は、Ｄｏｓを重点的に実施する攻撃パターンに変更する攻撃変更指示を生成する。Ｄｏｓを重点的に実施する攻撃パターンとは、例えば、Ｄｏｓ攻撃の通信レートｒが、ｒ＊１０，ｒ＊１００，ｒ＊１０００，・・・となるような攻撃パターンである。
【００７１】
このように、攻撃パターン動的指示部１０５は、動的指示処理に入った場合、フィードバック情報の機器の挙動（本事例では、ＣＰＵ負荷率の上昇）に対応するのは、どの攻撃であったかを検索する。この攻撃を対象攻撃とする。そして、対象攻撃が判明すると、それまでの攻撃パターン（例えば、各種類の攻撃を２パターンずつ実行（幅優先探索））から、対象攻撃（すなわち、ＣＰＵ負荷率を上昇させた攻撃）を重点的に実施する深さ優先探索のような攻撃手法に変更する攻撃変更指示を生成する（Ｓ３０１〜Ｓ３０５）。
Ｓ３０６において、攻撃パターン動的指示部１０５は、生成した攻撃変更指示を変更指示リストに追加する。
【００７２】
図９に、本実施の形態に係る検証装置（実行）１０６の内部構成図の一例を示す図である。
図９を用いて、検証装置（実行）１０６の内部構成の一例について説明する。
検証装置（実行）１０６は、図１で説明した選択規則１０６１の一例として方法選択定義ファイル６０１を備える。また、検証装置（実行）１０６は、生成規則１０６２の一例として生成規則定義ファイル６０２を備える。また、検証装置（実行）１０６は、評価基準１０６３の一例として評価基準定義ファイル６０３を備える。
【００７３】
検証装置（指示）１０３から設定情報ファイル２０１が送信されると、攻撃方法選択部１０７は、送信された設定情報ファイル２０１を読み込む。攻撃方法選択部１０７は、読み込んだ設定情報ファイル２０１の内容に基づいて、方法選択定義ファイル６０１を参照し、単一または複数の実行処理手段のうち、どの手段を用いて攻撃パターン（検査項目）を作成するかを処理装置により決定する。攻撃方法選択部１０７は、どの手段を用いて攻撃パターン（検査項目）を作成するかの決定結果（攻撃決定結果）を攻撃パターン生成部１０８へ出力する。攻撃決定結果には、手段を示す攻撃（攻撃種別）が含まれる。
【００７４】
攻撃パターン生成部１０８は、攻撃決定結果を入力し、入力した攻撃決定結果に基づいて、生成規則定義ファイル６０２を参照し、攻撃パターンを生成する。攻撃パターン生成部１０８は、攻撃パターン実行部１０９に、生成した攻撃パターンを実行させる。
具体的には、攻撃パターン生成部１０８は、攻撃決定結果を入力し、入力した攻撃決定結果に基づいて、生成規則定義ファイル６０２を参照し、攻撃パターンに応じて単一または複数の実行処理手段を実行させるスクリプトファイルを生成し（すなわち、単一または複数の実行処理手段の入力形式に合わせたスクリプトファイルを生成し）、順次実行させる。
攻撃パターン実行部１０９は、攻撃パターン生成部１０８により生成されたスクリプトファイルを順次入力し実行する。
【００７５】
実行評価部１１０は、攻撃パターン実行部１０９からの結果を元に、評価基準定義ファイル６０３と照合して各攻撃パターンの実行結果の合否を判定し、判定結果を検証装置（指示）１０３へ送信する。または、実行評価部１１０は、各攻撃パターン実行完了後にポーリングなどを検証対象機器１１１，１１２に送信してＡＣＫを受信し、受信したＡＣＫを元に、評価基準定義ファイル６０３と照合して各攻撃パターンの実行結果の合否を判定し、判定結果を検証装置（指示）１０３へ送信する。
【００７６】
図１０に、本実施の形態に係る検証装置（実行）１０６の攻撃方法選択部１０７の攻撃方法選択処理（工程）の動作の一例を示すフローチャートである。
図１０を用いて、機器検査方法における攻撃方法選択部１０７の攻撃方法選択処理（工程）について説明する。
【００７７】
Ｓ４０１において、攻撃方法選択部１０７は、入力が、検証装置（指示）１０３からの設定情報ファイル２０１であるか否かを判定する。設定情報ファイル２０１は、検査指示（検査指示情報）の一例であり、攻撃方法選択部１０７は、検査指示受付部の一例である。
入力が設定情報ファイル２０１の場合（Ｓ４０１でＹＥＳ）、Ｓ４０２に進む。
入力が設定情報ファイル２０１でない場合（Ｓ４０１でＮＯ）、Ｓ４０３に進む。
Ｓ４０３において、入力がＳＴＯＰ指示（ソフトウェア終了指示）の場合（Ｓ４０３でＹＥＳ）、現在実行している攻撃パターン終了後にソフトウェアを終了する。
Ｓ４０３において、入力がＳＴＯＰ指示（ソフトウェア終了指示）以外の場合（Ｓ４０３でＮＯ）、入力した指示にしたがって処理を実行し、Ｓ４０１に戻る。
【００７８】
Ｓ４０２において、攻撃方法選択部１０７は、設定情報ファイル２０１の内容に基づいて、方法選択定義ファイル６０１内を処理装置により検索する。例えば、攻撃方法選択部１０７は、設定情報ファイル２０１に含まれる検証対象機器の開発コード名称に基づいて、方法選択定義ファイル６０１内を処理装置により検索し、開発コード名称に対応する攻撃を抽出する。
【００７９】
ここで、方法選択定義ファイル６０１による攻撃の選択とは、例えば検証対象機器１１１，１１２にＥｔｈｅｒポートが備え付けられておりＴＣＰ／ＩＰ通信を行う場合はＴＣＰ／ＩＰ通信向けの攻撃方法を選択し、シリアルポートが備え付けられておりＣＡＮ通信を行う場合はＣＡＮ通信向けの攻撃方法を選択する、などのことある。例えば、方法選択定義ファイル６０１には、検証対象機器１１１，１１２の開発コード名称に対応して、ＴＣＰ／ＩＰ通信向けの攻撃や、ＣＡＮ通信向けの攻撃等が対応付けられている。
【００８０】
例えば、検証対象機器１１２の開発コード名称がＡＢＣ１０２である場合、ＡＢＣ１０２に対して、攻撃Ｘ、攻撃Ｙが対応付けられているとする。
なお、方法選択定義ファイル６０１は予め生成されたファイルであってもよく、データベースなど、呼び出し参照ができる関係の仕組みであればどのような構成で実現してもよい。
【００８１】
Ｓ４０４において、攻撃方法選択部１０７は、抽出した攻撃に基づいて、利用する攻撃（実行処理）のリストを作成し、攻撃決定結果とする。ここでは、攻撃決定結果には、「攻撃Ｘ、攻撃Ｙ」と記される。
Ｓ４０５において、攻撃方法選択部１０７は、作成した攻撃決定結果（攻撃（実行処理）のリスト）を攻撃パターン生成部１０８に送信し、入力待ち状態（Ｓ４０１）に戻る。
【００８２】
図１１は、本実施の形態に係る検証装置（実行）１０６の攻撃パターン生成部１０８及び攻撃パターン実行部１０９の攻撃パターン生成実行処理（工程）の動作の一例を示す図である。
図１１を用いて、機器検査方法における攻撃パターン生成部１０８及び攻撃パターン実行部１０９の攻撃パターン生成実行処理（工程）（攻撃パターン生成処理（工程）、攻撃パターン実行処理（工程））について説明する。
【００８３】
Ｓ５０１において、攻撃パターン生成部１０８は、攻撃方法選択部１０７からの攻撃決定結果、あるいは、攻撃パターン動的指示部１０５（検証装置（指示）１０３）からの攻撃変更指示であるかを判定する。
入力が、攻撃方法選択部１０７からの攻撃決定結果、あるいは、攻撃パターン動的指示部１０５からの攻撃変更指示である場合（Ｓ５０１でＹＥＳ）、Ｓ５０２に進む。
入力が、攻撃方法選択部１０７からの攻撃決定結果でも、攻撃パターン動的指示部１０５からの攻撃変更指示でもない場合（Ｓ５０１でＮＯ）、Ｓ５０６に進む。
Ｓ５０６において、入力がＳＴＯＰ指示（ソフトウェア終了指示）の場合（Ｓ５０６でＹＥＳ）、現在実行している攻撃パターン終了後にソフトウェアを終了する。
Ｓ５０６において、入力がソフトウェア終了指示以外の場合（Ｓ５０６でＮＯ）、入力した指示に応じた処理を実行し、Ｓ５０１に戻る。
【００８４】
Ｓ５０２において、攻撃パターン動的指示部１０５又は攻撃方法選択部１０７からの入力があった場合、攻撃パターン生成部１０８は、検証装置（指示）１０３から受信した設定情報ファイル２０１と、攻撃方法選択部１０７からの攻撃決定結果、あるいは、攻撃パターン動的指示部１０５からの攻撃変更指示とを元に生成規則定義ファイル６０２を検索する。
Ｓ５０３において、攻撃パターン生成部１０８は、検索結果を元に攻撃パターンを作成する。攻撃パターン生成部１０８は、作成した攻撃パターンを、攻撃パターンリストに追加する。
【００８５】
Ｓ５０４において、攻撃パターン生成部１０８は、生成規則定義ファイル６０２の全検索を完了するまで、攻撃パターンを作成し、攻撃パターンリストに追加する処理を行う。
Ｓ５０５において、攻撃パターン生成部１０８は、生成した攻撃パターンリストを順次攻撃パターン実行部１０９に実行させる。
【００８６】
生成規則定義ファイル６０２とは、攻撃方法と実際の攻撃パターン生成の仕組みとを記載したテーブルのことである。例えば、攻撃方法としてＤｏＳサンプル：ＳＹＮフラッディングとＰｉｎｇ・ｏｆ・Ｄｅａｔｈの２種類、粒度サンプル：ｗｅｌｌ−ｋｎｏｗｎポートのみと与えられたとき、などのように攻撃の種類や粒度に応じて規則を定義しておく。
これにより、攻撃パターン生成部１０８は、ＤｏＳサンプル＋粒度サンプルの定義を参照し、ＳＹＮフラッディングとＰｉｎｇ・ｏｆ・Ｄｅａｔｈ攻撃とを、ｗｅｌｌ−ｋｎｏｗｎポート毎に実行する命令を受け取り、攻撃パターンとなるスクリプトファイルを生成する。
【００８７】
別の生成規則定義ファイル６０２の例として、検証対象機器１１１，１１２の固定の仕様を定義しておくことで、攻撃パターンを確定することができる。
例えば、ソフトウェアＡは暗号・認証プロトコルにＴＬＳ１．１、暗号アルゴリズムにＡＥＳを利用することが仕様で定められている場合、生成規則定義ファイル６０２には、ソフトウェアＡ：ＴＬＳ１．１、ＡＥＳと記載しておく。これにより、攻撃パターン生成部１０８は、ソフトウェアＡについて検証を指示された場合、ＴＬＳ１．１、ＡＥＳに関する攻撃パターンを生成することができる。
なお、生成規則定義ファイル６０２はファイルであってもよく、データベースなど、呼び出し参照ができる関係の仕組みであれば、どのような構成で実現してもよい。
【００８８】
上述したように、Ｓ５０５において、攻撃パターン実行部１０９は、攻撃パターン生成部１０８により生成されたスクリプトファイルを入力し実行する。
ここで、攻撃パターン実行部１０９が実行する単一または複数の実行処理手段とは、例えば、検証したい内容がＤｏＳ攻撃であればｈｐｉｎｇ３やｆｒａｇｍｅｎｔａｔｉｏｎ６など、検証したい内容がＳＱＬインジェクションであればｓｑｌｎｉｎｊａなど、検証したい内容がｆｕｚｚｉｎｇであればＰｅａｃｈやｓｆｕｚｚなど、のような市販やフリーの既存ソフトウェア群でも良く、またはスクリプトを入力して実行させるような自作ツールであってもよい。
【００８９】
図１２は、本実施の形態に係る検証装置（実行）１０６の実行評価部１１０の実行評価処理（工程）の動作の一例を示す図である。
図１２を用いて、機器検査方法における実行評価部１１０の実行評価処理（工程）について説明する。
【００９０】
Ｓ６０１において、実行評価部１１０は、各攻撃パターンの実行待ち状態である。実行評価部１１０は、各攻撃パターンの実行完了後に動作する。例えば、特定の攻撃パターンでは、検証対象機器１１１，１１２から特定のエラーメッセージを実行結果として受信することが攻撃パターン実行完了を示す場合がある。また、例えば、一定時間攻撃を続ける攻撃パターンの場合は、実行評価部１１０は、一定時間をカウントした後に動作する。
【００９１】
実行評価部１１０は、検証対象機器１１１，１１２から実行結果が返信された場合（Ｓ６０２でＹＥＳ）、Ｓ６０３に進む。
実行評価部１１０は、検証対象機器１１１，１１２から実行結果が返信されていない場合（Ｓ６０２でＮＯ）、Ｓ６０４に進む。
【００９２】
Ｓ６０３において、実行評価部１１０は、受信した実行結果を評価基準定義ファイル６０３と照合し、処理装置により検証結果の合否を判定する。そして、実行評価部１１０は、合否の判定結果に基づいて、合格あるいは不合格の検証結果を生成する。
【００９３】
例えば、ＳＳＬセッション確立プロトコルにて偽の証明書発行機関（ＣＡ）から発行されたデジタル証明書を利用した攻撃の場合は、実行評価部１１０は、デジタル証明書が間違っているというＳＳＬプロトコルの規定に沿ったエラーメッセージを検証対象機器１１１，１１２から受信すれば、検証対象機器１１１，１１２のＳＳＬは正しく起動しているため合格、そうでなければ不合格という判定を行う。ここで、評価基準定義ファイル６０３には、攻撃パターン：ＳＳＬセッション確立プロトコルにて偽の証明書発行機関（ＣＡ）から発行されたデジタル証明書を利用した攻撃、合否判定基準：デジタル証明書が間違っているというＳＳＬプロトコルの規定に沿ったエラーメッセージを検証対象機器１１１，１１２から受信、という、攻撃パターンと合否判定基準のテーブルが記載されている。これはファイルであってもよく、データベースなど、呼び出し参照ができる関係の仕組みであればどのような構成で実現しても構わない。
【００９４】
また、検証対象機器あるいは実行処理手段からの結果が無い場合（Ｓ６０２でＮＯ）とは、例えばＤｏＳやＦｕｚｚｉｎｇなど一方的にコマンドを送信するような攻撃の場合である。
このような場合、実行評価部１１０は、例えば、評価基準定義ファイル６０３に基づいて、攻撃パターン実行後に検証対象機器１１１，１１２にポーリング（ｐｉｎｇコマンド送信、適当なデータフレーム送信、などのような、本来ＡＣＫが返信されるプロトコルであれば何でも良い）を送信する（Ｓ６０４）。
例えば、評価基準定義ファイル６０３には、攻撃パターン：実行処理手段からの結果が無い場合、合否判定基準：ポーリング送信後、一定時間内にＡＣＫを受信、と記載されているものとする。
【００９５】
Ｓ６０６において、実行評価部１１０は、一定時間内にＡＣＫを検証装置（実行）１０６が受信したか否かを判定する。
一定時間内にＡＣＫを検証装置（実行）１０６が受信した場合（Ｓ６０６でＹＥＳ）、実行評価部１１０は、検証結果は合格と判定し、合格の検証結果を生成する（Ｓ６０７）。
一定時間内にＡＣＫを検証装置（実行）１０６が受信しない場合（Ｓ６０６でＮＯ）、実行評価部１１０は、検証結果は不合格と判定し、不合格の検証結果を生成する（Ｓ６０８）。
【００９６】
検証結果が生成されると（Ｓ６０３，Ｓ６０７，Ｓ６０８）、Ｓ６０５において、実行評価部１１０は、生成した検証結果を検証装置（指示）１０３に送信し、Ｓ６０１に戻り、次の攻撃パターン実行待ち状態となる。
【００９７】
図１３は、本実施の形態に係る機能試験評価装置１１３の内部構成の一例を示す図である。
機能試験評価装置１１３は、機能試験評価処理部１１４、機能試験評価定義ファイル１００１を備える。
【００９８】
機能試験評価処理部１１４は、攻撃パターン実行時の検証対象機器１１１，１１２本来の機能を評価する。例えば、定周期のプロトコルを実行している場合は、機能試験評価処理部１１４は、検証対象機器１１１，１１２が乱れ無く定周期でパケット／フレームを送信し続けているかを評価する。
この場合、機能試験評価定義ファイル１００１には、乱れ無く定周期でパケット／フレームを送信し続けているという評価定義が記載されている。評価を完了すれば、機能試験評価処理部１１４は、実行している攻撃の種別、評価結果、評価した時刻などをフィードバック情報として、検証装置（指示）１０３へ送信する。
【００９９】
機能試験評価定義ファイル１００１は、機器に対して実行される攻撃と、その攻撃が実行されている際の機器の正常な挙動とを対応付けた挙動定義情報の一例である。機能試験評価定義ファイル１００１（挙動定義情報）は、挙動定義情報記憶部により記憶装置に記憶される。
【０１００】
図１４は、本実施の形態に係る機能試験評価装置１１３の機能試験評価処理部１１４の機能試験評価処理（工程）の動作の一例を示すフローチャートである。
図１４を用いて、機器検査方法における機能試験評価処理部１１４の機能試験評価処理（工程）（機器挙動取得処理（工程））について説明する。
【０１０１】
Ｓ７０１において、機能試験評価処理部１１４は、動作開始後、検証対象機器１１１，１１２からのパケット／フレーム受信を待つ検証対象機器１１１，１１２の動作待ち状態に入る。
【０１０２】
ここでは、具体例として、例えば検証対象機器１１１，１１２は１００ｍｓｅｃ毎の定周期でフレームを送信する機能があると仮定する。このとき、検証対象機器１１１，１１２にテストプログラムとして、定周期毎に１インクリメントする動作を実行させておくとする。
機能試験評価処理部１１４は、検証対象機器１１１，１１２からフレームを受信すると、Ｓ７０２に進む。
【０１０３】
Ｓ７０２において、機能試験評価処理部１１４は、検証対象機器１１１，１１２から受信したフレームの受信結果を機能試験評価定義ファイル１００１と照合する。機能試験評価処理部１１４は、機能試験評価定義ファイル１００１と照合した結果に基づいて、評価の合否の判定を行う。
例えば、開始後１００ｍｓｅｃ後に１の値が受信されれば合格の評価結果、１００ｍｓｅｃ後では無かった場合や、１以外の数を受信した場合は、攻撃パターンによって検証対象機器１１１，１１２の正常動作が乱れたと考え不合格の評価結果とする。
【０１０４】
Ｓ７０３において、機能試験評価処理部１１４は、評価結果をフィードバック情報として検証装置（指示）１０３に送信する。例えば、機能試験評価処理部１１４は、不合格の評価結果であると判定した場合のみ評価結果を検証装置（指示）１０３に送信し、合格の評価結果であると判定した場合には送信しなくてもよい。フィードバック情報には、不合格となった機器の挙動と、そのときの攻撃パターンを示す攻撃種別とが含まれる。
具体的には、図５に示すように、フィードバック情報には、機器の挙動「１００ｍｓｅｃ毎の定周期フレーム送信機能が不合格」、そのときの攻撃種別「通信レートｒのＤｏｓ攻撃」などと記載されている。
【０１０５】
機能試験評価処理部１１４は、機能試験評価定義ファイル１００１に基づいて、機器挙動情報が示す機器の挙動が正常状態であるか否かを処理装置により判定し、機器の挙動が正常状態でない場合にフィードバック情報を送信する機器挙動取得部の一例である。
【０１０６】
次に評価結果（フィードバック情報）を検証装置（指示）１０３に送信した後、全攻撃パターンが終了すれば（Ｓ７０４でＹＥＳ）、処理を終了する。終了していない攻撃パターンがあれば（Ｓ７０４でＮＯ）、次の合否判定基準を１インクリメントして検証対象機器１１１，１１２の動作待ち状態に戻る。
【０１０７】
以上のように、本実施の形態に係る検証システム５００は、検証対象機器のセキュリティ上の脆弱性を検査するための各攻撃パターンを、静的または動的に作成、実行する。さらに、検査項目実行時の検証対象機器の挙動を元に、次の攻撃パターンを動的に作成または変更し、実行して検証対象機器の脆弱性の有無を出力する脆弱性検証装置である。
【０１０８】
また、検証システム５００の検証装置（指示）１０３は、入力装置１０１から入力された、検証対象に関するセキュリティ関連情報を除く検証対象の情報を読み込み、検証対象に関する情報を検証装置（実行）１０６に伝送する入出力処理部１０４を備える。また、検証装置（指示）１０３は、機能試験評価装置１１３から出力される検証対象の挙動（フィードバック情報）を元に、次の検査項目を動的に組み替え、検証装置（実行）１０６に伝送する攻撃パターン動的指示部１０５を備える。
【０１０９】
また、検証システム５００の検証装置（実行）１０６は、検証装置（指示）１０３から受信した検証対象機器に関する情報を元に、どのツールを用いた検査を実行するか判定し、攻撃パターン生成部１０８に結果を伝送する攻撃方法選択部１０７と、攻撃方法選択部１０７から入力された情報と、検証装置（指示）１０３から受信した検証対象機器に関する情報とを元に各攻撃パターンを静的に生成し、順次攻撃パターン実行部１０９に実行させる攻撃パターン生成部１０８と、各攻撃パターン実行後に検査結果を判定し、検証装置（指示）１０３に判定結果を伝送する実行評価部１１０とを備える。
【０１１０】
機能試験評価装置１１３は、検証対象の本来の機能を測定し、攻撃実行中でも検証対象本来の仕様通りの挙動を実行しているかを評価し、結果を検証装置（指示）１０３に伝達する機能試験評価処理部１１４を備える。
【０１１１】
以上のように、本実施の形態に係る検証システムによれば、検証装置（指示）１０３と検証装置（実行）１０６により自動で検査すべき機能やツール群を選択し、検査項目（＝攻撃パターン）を自動で実行することができるため、検査すべき機能と検査に必要なツール群を、セキュリティやツール群に関する専門家で無くとも選択、実行できる。
さらに、検証対象にとって必要な機能のみを検証装置（指示）１０３と検証装置（実行）１０６により自動で選択することで、必要な検査のみを現実時間で終了させることができる。
さらに、機能試験評価装置１１３から出力される検証対象の挙動を元に、次の検査項目を動的に組み替え、検証装置（実行）１０６に伝送する攻撃パターン動的指示部１０５の動作により、検証対象が組込み機器の場合に適した検査を自動で実行することができ、かつ、検査を現実時間で終了させることができる。
【０１１２】
実施の形態２．
本実施の形態では、主に、実施の形態１と異なる点について説明する。
本実施の形態では、実施の形態１で説明した検証システム５００とは、異なる構成を有する検証システム５００ａについて説明する。
【０１１３】
図１５は、本実施の形態に係る検証システム５００ａのブロック構成を示す図である。
図１５は、実施の形態１で説明した図１に対応し、同様の機能を有する構成部には、同一の符号を付し、その説明を省略する場合がある。
【０１１４】
図１５に示すように、検証システム５００ａには、ローカルで動作する検証装置（指示）１０３が存在しない。検証システム５００ａでは、実施の形態１で説明した検証装置（指示）１０３の機能を、検証装置（実行）１０６ａに組み込む構成としている。
【０１１５】
検証システム５００ａは、検証装置（実行）１０６ａを備える。検証装置（実行）１０６ａには、攻撃パターン動的指示部１０５、動的変更指示基準ファイル２０２が組み込まれている。また、検証装置（実行）１０６には、入力装置１０１と出力装置１０２とが接続されている。したがって、設定情報ファイル２０１，動的変更指示基準ファイル２０２も、検証装置（実行）１０６ａ内に記憶される。
【０１１６】
このように、検証システム５００ａを構成することにより、検証装置（実行）１０６ａ内に保存している設定情報ファイル２０１を選択し、実施の形態１と同等の機能を有する。
以上のように、本実施の形態に係る検証システム５００ａによれば、検証装置（指示）１０３を物理的に取り除くことで、システム構築にかかるコストを削減することができるとともに、システムの物理的な規模を小さくすることができる。
【０１１７】
上記実施の形態１，２の説明では、「入出力処理部」、「攻撃パターン動的指示部」、「攻撃方法選択部」、「攻撃パターン生成部」、「攻撃パターン実行部」、「実行評価部」、「機能試験評価処理部」がそれぞれ独立した機能ブロックとして検証装置（指示）１０３、検証装置（実行）１０６，機能試験評価装置１１３を構成している。しかし、これに限られるわけではなく、例えば、「入出力処理部」と「攻撃パターン動的指示部」とをひとつの機能ブロックで実現し、「攻撃方法選択部」と「攻撃パターン生成部」と「攻撃パターン実行部」とをひとつの機能ブロックで実現しても良い。あるいは、これらの機能ブロックを、他のどのような組み合わせで検証装置（指示）１０３、検証装置（実行）１０６，機能試験評価装置１１３を構成しても構わない。
なお、以上の実施の形態は、本質的に好ましい例示であって、本発明、その適用物や用途の範囲を制限することを意図するものではなく、必要に応じて種々の変更が可能である。
【０１１８】
以上、本発明の実施の形態について説明したが、これらの実施の形態のうち、２つ以上を組み合わせて実施しても構わない。あるいは、これらの実施の形態のうち、１つを部分的に実施しても構わない。あるいは、これらの実施の形態のうち、２つ以上を部分的に組み合わせて実施しても構わない。なお、本発明は、これらの実施の形態に限定されるものではなく、必要に応じて種々の変更が可能である。
【符号の説明】
【０１１９】
１０１  入力装置、１０２  出力装置、１０３  検証装置（指示）、１０４  入出力処理部、１０５  攻撃パターン動的指示部、１０６，１０６ａ  検証装置（実行）、１０７  攻撃方法選択部、１０８  攻撃パターン生成部、１０９  攻撃パターン実行部、１１０  実行評価部、１１１，１１２  検証対象機器、１１３  機能試験評価装置、１１４  機能試験評価処理部、２０１  設定情報ファイル、２０２  動的変更指示基準ファイル、５００，５００ａ  検証システム、６０１  方法選択定義ファイル、６０２  生成規則定義ファイル、６０３  評価基準定義ファイル、９０１  演算装置、９０２  外部記憶装置、９０３  主記憶装置、９０４  通信装置、９０５  入出力装置、１００１  機能試験評価定義ファイル、１０６１  選択規則、１０６２  生成規則、１０６３  評価基準。
【図１】
2015114833.tif 000003
【図２】
2015114833.tif 000004
【図３】
2015114833.tif 000005
【図４】
2015114833.tif 000006
【図５】
2015114833.tif 000007
【図６】
2015114833.tif 000008
【図７】
2015114833.tif 000009
【図８】
2015114833.tif 000010
【図９】
2015114833.tif 000011
【図１０】
2015114833.tif 000012
【図１１】
2015114833.tif 000013
【図１２】
2015114833.tif 000014
【図１３】
2015114833.tif 000015
【図１４】
2015114833.tif 000016
【図１５】
2015114833.tif 000017