(57)【要約】  相関値算出部（２０２）は、内部仕様が不明な検査対象機器（２１０）に入力された入力データと、入力データに対する検査対象機器（２１０）の出力データとの間の相関値を算出する。状態遷移判定部（２０３）は、複数の入力データと複数の入力データに対する複数の出力データとに対して相関値算出部（２０２）により算出された複数の相関値を時系列に解析して検査対象機器（２１０）で状態遷移が発生したか否かを判定する。
2019229883.tif 000002
【特許請求の範囲】
【請求項１】
内部仕様が不明な検査対象機器に入力された入力データと、前記入力データに対する前記検査対象機器の出力データとの間の相関値を算出する相関値算出部と、
複数の入力データと前記複数の入力データに対する複数の出力データとに対して前記相関値算出部により算出された複数の相関値を時系列に解析して前記検査対象機器で状態遷移が発生したか否かを判定する状態遷移判定部とを有する検査装置。
【請求項２】
前記状態遷移判定部は、
相関値の時間推移において閾値以上の変化が発生しているか否かを検査し、前記相関値の時間推移において前記閾値以上の変化が発生していると判定した場合に、前記検査対象機器で状態遷移が発生したと判定する請求項１に記載の検査装置。
【請求項３】
前記検査装置は、更に、
前記閾値以上の変化が発生した相関値に対応する入力データを、状態遷移の発生条件に指定する遷移条件指定部を有する請求項２に記載の検査装置。
【請求項４】
前記検査装置は、更に、
前記状態遷移判定部により前記検査対象機器で状態遷移が発生したと判定された場合に、前記検査対象機器で状態遷移が発生した旨を記憶する状態遷移記憶部を有する請求項２に記載の検査装置。
【請求項５】
前記状態遷移判定部は、
相関値の時間推移において閾値以上の変化が発生しているか否かを判定し、
前記検査装置は、更に、
前記状態遷移判定部により相関値の時間推移において前記閾値以上の変化が発生していると判定された場合に、前記状態遷移判定部により判定された前記閾値以上の変化に類似する変化が過去に発生しているか否かを判定する状態重複判定部を有する請求項１に記載の検査装置。
【請求項６】
前記状態重複判定部は、
前記閾値以上の変化に類似する変化が過去に発生している場合に、前記検査対象機器で過去に発生した状態遷移が前記検査対象機器で再度発生したと判定する請求項５に記載の検査装置。
【請求項７】
前記状態遷移判定部は、
前記状態重複判定部により前記検査対象機器で過去に発生した状態遷移が前記検査対象機器で再度発生したと判定されていない場合に、前記検査対象機器で状態遷移が発生したと判定する請求項６に記載の検査装置。
【請求項８】
前記検査装置は、更に、
前記遷移条件指定部により状態遷移の発生条件に指定された入力データを解析して、前記検査対象機器で状態遷移を発生させやすい入力データを推定する入力データ生成部を有する請求項３に記載の検査装置。
【請求項９】
コンピュータが、内部仕様が不明な検査対象機器に入力された入力データと、前記入力データに対する前記検査対象機器の出力データとの間の相関値を算出し、
前記コンピュータが、複数の入力データと前記複数の入力データに対する複数の出力データとに対して算出された複数の相関値を時系列に解析して前記検査対象機器で状態遷移が発生したか否かを判定する検査方法。
【請求項１０】
内部仕様が不明な検査対象機器に入力された入力データと、前記入力データに対する前記検査対象機器の出力データとの間の相関値を算出する相関値算出処理と、
複数の入力データと前記複数の入力データに対する複数の出力データとに対して前記相関値算出処理により算出された複数の相関値を時系列に解析して前記検査対象機器で状態遷移が発生したか否かを判定する状態遷移判定処理とをコンピュータに実行させる検査プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、検査装置、検査方法及び検査プログラムに関する。
【背景技術】
【０００２】
制御機器（例えば車載機器）に対するセキュリティ検査では、制御機器の仕様に記述されていない異常な通信パケット又は異常な入力データ（例えばフォーマット違反の通信パケット又は入力データ）を制御機器に与える。そして、制御機器の挙動を監視し、制御機器に脆弱性が残っていないかどうかを確認する。フォーマット違反のような異常な通信パケットを検査対象機器に送信し、挙動を監視し、脆弱性の有無を確認することはファジングと呼ばれている。盲目的かつ全探索的にファジングを行うことは現実的でないため、検査対象機器の仕様がある程度分かっている状態で、入力データを変化させながらファジングを行うのが一般的である。【０００３】
一方で、仕様が不明（ブラックボックス）な検査対象機器に適当な入力データを与えて、検査対象機器の挙動から検査対象機器の内部動作を推定し、検査対象機器に脆弱性がないかどうかを調べることをペネトレーションテスト又は侵入テストという。ペネトレーションテストは、試験者が職人技的に検査対象機器の内部動作を推定しながら、どのような通信パケット、入力データ又はパラメータを検査対象機器に与えれば脆弱性を発見できるかを推測しながら行う。この職人技を持った試験者はペンテスターと呼ばれ、専門の技術及び能力を必要とする。【０００４】
特許文献１では、仕様書に記述された状態遷移モデルを全パラメータによって動作させ、セキュリティ上行われるべきでない動作を容易に検証するシステムが開示されている。しかしながら、特許文献１のシステムでは、検査対象の仕様が明らかであることが前提である。【０００５】
特許文献２では、車載機器などの入出力信号を時系列データとして記憶し、入出力信号に一定の閾値以上の時間変化が発生した時にログを取得する方式が開示されている。【０００６】
特許文献３では、車載ＥＣＵ（Ｅｎｇｉｎｅ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）に対してセキュリティ評価を行う手法が開示されている。より具体的には、特許文献３では、車載ＥＣＵにデバッガを接続して車載ＥＣＵの状態を監視しつつ、車載ネットワーク通信の順序違反又はフォーマット違反が行われた時の挙動から脆弱性を発見する方法が開示されている。【０００７】
特許文献４でも、車載ＥＣＵに対してセキュリティ評価を行う手法が開示されている。特許文献４では、車載ＥＣＵにデバッガ等を接続する他、メータなどの表示機をカメラで監視する。また、特許文献４では、異常なデータの通信又は入力を行った際の挙動又は通信順序違反の通信又は入力を行った際の挙動から、車載ＥＣＵに含まれる脆弱性を発見する。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００９−７５８８６号公報
【特許文献２】特開２０１３−１４８９６６号公報
【特許文献３】特開２０１７−１１２５９８号公報
【特許文献４】特開２０１７−２１４０４９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
ペネトレーションテストを行う場合には、検査対象機器の仕様がある程度わかることが必要である。しかし、ペネトレーションテストはブラックボックステストであり、検査対象機器の仕様が分からない第三者がセキュリティの脆弱性を発見するテストである。そのため、ペネトレーションテストでは、検査対象機器の仕様が不明な場合は特別な技能や能力を持ったペンテスターが必要である。
検査対象機器の状態遷移において脆弱性が発見されやすいため、状態遷移及び遷移条件を推定する必要がある。しかしながら、ブラックボックスシステムの状態遷移を推定する方式は、いずれの特許文献にも開示されていない。このため、ペンテスターのような職人技的な技能を持つ者がいないと、ブラックボックスシステムの状態遷移を推定することができないという課題がある。【００１０】
本発明は上記のような課題を解決することを主な目的の一つとしている。より具体的には、本発明は、ブラックボックスシステムの状態遷移を推定することができる構成を得ることを主な目的とする。
【課題を解決するための手段】
【００１１】
本発明に係る検査装置は、
内部仕様が不明な検査対象機器に入力された入力データと、前記入力データに対する前記検査対象機器の出力データとの間の相関値を算出する相関値算出部と、
複数の入力データと前記複数の入力データに対する複数の出力データとに対して前記相関値算出部により算出された複数の相関値を時系列に解析して前記検査対象機器で状態遷移が発生したか否かを判定する状態遷移判定部とを有する。
【発明の効果】
【００１２】
本発明によれば、入力データと出力データとの間の相関値に基づき、ブラックボックスシステムの状態遷移を推定することができる。
【図面の簡単な説明】
【００１３】
【図１】実施の形態１に係るシステム構成例を示す図。
【図２】実施の形態１に係る検査装置のハードウェア構成例を示す図。
【図３】実施の形態１に係る検査装置の機能構成例を示す図。
【図４】実施の形態１に係る入力データの値と出力データの値との関係及び入力データの値と相関値との関係を示す図。
【図５】実施の形態１に係る検査装置の動作例を示すフローチャート。
【図６】実施の形態２に係る検査装置の機能構成例を示す図。
【図７】実施の形態２に係る検査装置の動作例を示すフローチャート。
【発明を実施するための形態】
【００１４】
以下、本発明の実施の形態について、図を用いて説明する。以下の実施の形態の説明及び図面において、同一の符号を付したものは、同一の部分又は相当する部分を示す。
【００１５】
実施の形態１．
＊＊＊構成の説明＊＊＊
図１は、本実施の形態に係るシステム構成例を示す。
本実施の形態では、検査装置１００と検査対象機器２１０とが接続されている。検査対象機器２１０は仕様が不明なブラックボックスシステムである。検査装置１００は、検査対象機器２１０で状態遷移が発生したか否かを判定し、ペネトレーションテストを行う。より具体的には、検査装置１００は、検査対象機器２１０への入力データと検査対象機器２１０からの出力データとの相関値を解析して、検査対象機器２１０で状態遷移が発生したか否かを判定する。
なお、検査対象機器２１０で行われる動作は、検査方法及び検査プログラムに相当する。
【００１６】
検査対象機器２１０は、コンピュータである。
検査対象機器２１０は、処理部２１１、入力部２１２及び出力部２１３を備える。
入力部２１２は、検査装置１００からの入力データを受信する。
処理部２１１は、入力データに対する処理（演算）を行う。
出力部２１３は、処理部２１１の処理結果である出力データを検査装置１００に送信する。
【００１７】
次に、図２を参照して、検査装置１００のハードウェア構成例を説明する。
【００１８】
検査装置１００は、コンピュータである。
検査装置１００は、ハードウェアとして、プロセッサ１０１、メモリ１０２、出力インターフェース１０３、入力インターフェース１０４、補助記憶装置１０５及び表示器インターフェース１０６を備える。
プロセッサ１０１は、プログラムを実行し、演算処理を行う。
メモリ１０２は、プロセッサ１０１で実行されるプログラムを一時的に記憶する。また、メモリ１０２は、プロセッサ１０１の演算結果を記憶する。
出力インターフェース１０３及び入力インターフェース１０４は、検査対象機器２１０との通信路とのインターフェースとして機能する。出力インターフェース１０３は、検査対象機器２１０への入力データを通信路に送信し、入力インターフェース１０４は、検査対象機器２１０からの出力データを通信路から受信する。
補助記憶装置１０５は、プロセッサ１０１で実行されるプログラムを記憶する。また、補助記憶装置１０５は、プロセッサ１０１が参照するデータ等を記憶する。
表示器インターフェース１０６は、検査装置１００に接続されている表示器とのインターフェースとして機能する。
【００１９】
図３は、本実施の形態に係る検査装置１００の機能構成例を示す。
【００２０】
検査装置１００は、入力データ生成部２０１、相関値算出部２０２、状態遷移判定部２０３、状態遷移記憶部２０４、遷移条件指定部２０５、出力部２０６及び入力部２０７を備える。
入力データ生成部２０１、相関値算出部２０２、状態遷移判定部２０３、遷移条件指定部２０５、出力部２０６及び入力部２０７はプログラムにより実現される。
入力データ生成部２０１、相関値算出部２０２、状態遷移判定部２０３、遷移条件指定部２０５、出力部２０６及び入力部２０７を実現するプログラムは、補助記憶装置１０５で記憶されている。入力データ生成部２０１、相関値算出部２０２、状態遷移判定部２０３、遷移条件指定部２０５、出力部２０６及び入力部２０７を実現するプログラムは補助記憶装置１０５からメモリ１０２にロードされ、プロセッサ１０１により実行される。
図２では、プロセッサ１０１が入力データ生成部２０１、相関値算出部２０２、状態遷移判定部２０３、遷移条件指定部２０５、出力部２０６及び入力部２０７を実現するプログラムを実行している状態を示している。
一方、状態遷移記憶部２０４は、メモリ１０２又は補助記憶装置１０５で実現される。
【００２１】
入力データ生成部２０１は、検査対象機器２１０への入力データを生成する。
【００２２】
出力部２０６は、入力データ生成部２０１により生成された入力データを検査対象機器２１０に送信する。
【００２３】
入力部２０７は、入力データ生成部２０１からの出力データを受信する。
【００２４】
相関値算出部２０２は、入力データ生成部２０１から入力データを取得し、当該入力データに対応する出力データを入力部２０７から取得する。そして、相関値算出部２０２は、入力データと出力データとの間の相関値を算出する。
なお、相関値算出部２０２により行われる処理は、相関値算出処理に相当する。
【００２５】
状態遷移判定部２０３は、複数の入力データと複数の入力データに対する複数の出力データとに対して相関値算出部２０２により算出された複数の相関値を時系列に解析して検査対象機器２１０で状態遷移が発生したか否かを判定する。より具体的には、状態遷移判定部２０３は、相関値の時間推移において閾値以上の変化が発生した場合に、検査対象機器２１０で状態遷移が発生したと判定する。
例えば、入力データが図４の（ａ）に示す仕様である場合に、検査対象機器２１０は、（制御値×制御モードの値）の計算を行い、計算結果を出力データとして出力するものとする。
図４の（ｂ）は、入力データの値と出力データの値との関係を示す。図４の（ｃ）は、入力データの値と相関値との関係を示す。
図４の例では、図４の（ｂ）に示すように、入力データの値はインクリメントされる。
入力データの値が「０ｘ０１００」になった際に、入力データの値と出力データの値との関係が変化する。つまり、図４の（ｃ）に示すように、入力データの値が「０ｘ０１００」になった際に、閾値以上の相関値の変化が発生する。このように、相関値の時間推移において閾値以上の変化が発生した場合に、状態遷移判定部２０３は検査対象機器２１０で状態遷移が発生したと判定する。
なお、状態遷移判定部２０３により行われる処理は、状態遷移判定処理に相当する。
【００２６】
状態遷移記憶部２０４は、状態遷移判定部２０３により検査対象機器２１０で状態遷移が発生したと判定された場合に、検査対象機器２１０で状態遷移が発生した旨を記憶する。
【００２７】
遷移条件指定部２０５は、閾値以上の変化が発生した相関値に対応する入力データを、状態遷移の発生条件に指定する。図４の例では、「０ｘ０１００」の入力データを、状態遷移の発生条件に指定する。
【００２８】
＊＊＊動作の説明＊＊＊
次に、本実施の形態に係る検査装置１００の動作例を説明する。
【００２９】
検査装置１００は、検査対象機器２１０の内部仕様が不明な状態で検査対象機器２１０の状態推定を行う。但し、検査装置１００は、検査対象機器２１０の入出力の通信規格、例えば使用するプロトコル（ＣＡＮ（Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）など）は知ることができる。また、検査装置１００は、検査対象機器２１０からの出力データのＯＮ／ＯＦＦの電圧レベルは測定することができる。
検査装置１００は、入出力の規格やアナログ／デジタルの種別は問わず、検査対象機器２１０の全ての入力データ及び出力データを解析の対象とする。
また、検査対象機器２１０にデバッガ類は接続できず、検査装置１００は、検査対象機器２１０の内部メモリ及びレジスタの状態を知ることができない。
【００３０】
図５は、検査装置１００の動作例を示す。
【００３１】
先ず、ステップＳ１０１において、入力データ生成部２０１が検査対象機器２１０への入力データを生成する。
入力データの生成方法は特に限定しないが、入力データ生成部２０１は例えば乱数によって入力データを生成してもよい。また、入力データ生成部２０１は、図４に示すように、インクリメンタルに入力データの値を変化させてもよい。更に、通信フォーマットが分かっている場合には、入力データ生成部２０１は、値を変化させる部分をランダムに変化させて入力データを生成してもよい。
【００３２】
次に、ステップＳ１０２において、出力部２０６が入力データを検査対象機器２１０に送信する。
【００３３】
検査対象機器２１０では、入力部２１２が入力データを受信する。次に、処理部２１１が入力データに対する処理を行う。そして、出力部２１３が処理部２１１の処理結果である出力データを送信する。
【００３４】
検査装置１００では、ステップＳ１０３において、入力部２０７が検査対象機器２１０からの出力データを受信する。
【００３５】
次に、ステップＳ１０４において、相関値算出部２０２が、相関値を算出する。
すなわち、相関値算出部２０２は、入力部２１２から入力データを取得し、入力部２０７から出力データを取得する。そして、相関値算出部２０２は、取得した入力データと出力データとの間の相関値を算出する。
相関値の算出方法は限定しないが、相関値算出部２０２は、例えば相関関数により相関値を算出する。相関値算出部２０２により算出された相関値は時系列にメモリ１０２又は補助記憶装置１０５で記憶される。
【００３６】
次に、ステップＳ１０５において、状態遷移判定部２０３が、相関値の時間推移に閾値以上の変化が発生したか否かを判定する。
すなわち、状態遷移判定部２０３は、メモリ１０２又は補助記憶装置１０５に時系列に記憶されている相関値の推移を時系列に算出する。具体的には、状態遷移判定部２０３は、微分の計算を行うことで相関値の時間推移を算出する。相関値の時間推移に予め設定されている閾値以上の変化があれば、状態遷移判定部２０３は、検査対象機器２１０において状態遷移が発生したと判定する（ステップＳ１０６）。
一方で、相関値の時間推移に閾値以上の変化がなければ、処理がステップＳ１０１に戻り、入力データ生成部２０１が新たな入力データの生成を行う。
【００３７】
ステップＳ１０６において状態遷移判定部２０３により状態遷移が発生したと判定された場合は、状態遷移記憶部２０４は検査対象機器２１０において状態遷移が発生した旨を記憶する。具体的には、状態遷移記憶部２０４は、状態遷移図の１つの状態ができた旨を記憶する。
【００３８】
次に、ステップＳ１０７において、遷移条件指定部２０５が状態遷移の発生条件を指定する。
具体的には、遷移条件指定部２０５は、閾値以上の変化が発生した相関値に対応する入力データを、状態遷移の発生条件に指定する。例えば、遷移条件指定部２０５は、図４の「０ｘ０１００」の入力データを状態遷移の発生条件に指定する。
【００３９】
その後、処理がステップＳ１０１に戻り、入力データ生成部２０１が新たな入力データの生成を行う。
【００４０】
検査装置１００は、以上のステップＳ１０１〜Ｓ１０８の動作をユーザから停止指示があるまで繰り返す。
【００４１】
＊＊＊実施の形態の効果の説明＊＊＊
本実施の形態によれば、入力データと出力データとの間の相関値に基づき、ブラックボックスシステムの状態遷移を推定することができる。このため、本実施の形態によれば、ペンテスターのような専門的な知識を有する者がいなくても、仕様が不明なブラックボックスシステムの状態遷移を推定することが可能である。そして、推定した状態遷移に着目してペネトレーションテストを行うことで、ペネトレーションテストを効率的に行うことができる。
【００４２】
実施の形態２．
実施の形態１によれば、状態遷移が発生したと判定される度に、状態遷移が発生した旨が記憶される。しかし、実施の形態１では、検査対象機器２１０において過去に発生している状態遷移が再度発生した場合には、同じ状態遷移について重複した内容が記憶される。例えば、検査対象機器２１０の状態が状態Ａ→状態Ｂ→状態Ｃ→状態Ｂと遷移する場合を想定する。検査装置１００では、１回目の状態Ｂへの状態遷移と２回目の状態Ｂへの状態遷移を区別しないため、状態Ｂへの状態遷移が重複して記憶されることになる。
本実施の形態では、このような重複した状態遷移の発生を検出し、重複した記憶を防止する構成を説明する。
【００４３】
＊＊＊構成の説明＊＊＊
図６は、本実施の形態に係る検査装置１００の機能構成例を示す。
図６では、図３の構成と比べて、状態重複判定部２０８が追加されている。
状態遷移記憶部２０４は、状態遷移判定部２０３により検査対象機器２１０で状態遷移が発生したと判定された場合に、実施の形態１と同様に、状態遷移が発生した旨を記憶する。本実施の形態では、状態遷移記憶部２０４は、更に、状態遷移判定部２０３が状態遷移が発生したと判定した際の相関値の変化（閾値以上の相関値の変化）を記憶する。
状態重複判定部２０８は、状態遷移判定部２０３により相関値の時間推移において閾値以上の変化が発生していると判定された場合に、判定された閾値以上の変化に類似する変化が過去に発生しているか否かを判定する。つまり、状態重複判定部２０８は、状態遷移判定部２０３により判定された閾値以上の変化に類似する変化が状態遷移記憶部２０４で記憶されているか否かを判定する。当該閾値以上の変化に類似する変化が過去に発生している場合に、状態重複判定部２０８は、検査対象機器２１０で過去に発生した状態遷移と同じ状態遷移が検査対象機器２１０で再度発生したと判定する。
検査対象機器２１０で過去に発生した状態遷移と同じ状態遷移が検査対象機器２１０で再度発生したと状態重複判定部２０８により判定された場合は、状態遷移判定部２０３は検査対象機器２１０で状態遷移が発生したと判定しない。また、状態遷移記憶部２０４は状態遷移が発生した旨を記憶しない。
一方、検査対象機器２１０で過去に発生した状態遷移と同じ状態遷移が検査対象機器２１０で再度発生したと状態重複判定部２０８により判定されていない場合は、状態遷移判定部２０３は検査対象機器２１０で状態遷移が発生したと判定する。また、状態遷移記憶部２０４は状態遷移が発生した旨を記憶する。また、状態遷移記憶部２０４は、状態遷移判定部２０３が状態遷移が発生したと判定した際の相関値の変化（閾値以上の相関値の変化）を記憶する。
【００４４】
以下では、主に実施の形態１との差異を説明する。
以下で説明していない事項は、実施の形態１と同様である。
【００４５】
＊＊＊動作の説明＊＊＊
図７は、本実施の形態に係る検査装置１００の動作例を示す。
【００４６】
ステップＳ１０１〜Ｓ１０５は実施の形態１で説明したものと同じものであるため、説明を省略する。
ステップＳ２０１では、状態重複判定部２０８は、状態遷移判定部２０３により判定された閾値以上の変化に類似する変化が過去に発生しているか否かを判定する。つまり、状態重複判定部２０８は、状態遷移判定部２０３により判定された閾値以上の変化に類似する変化が状態遷移記憶部２０４で記憶されているか否かを判定する。なお、「類似の幅」については、システム管理者が予め決定しておく。
【００４７】
当該閾値以上の変化に類似する変化が過去に発生している場合は、状態重複判定部２０８は、検査対象機器２１０で過去に発生した状態遷移と同じ状態遷移が検査対象機器２１０で再度発生したと判定する。
そして、処理がステップＳ１０１に戻り、入力データ生成部２０１が新たな入力データを生成する。
つまり、類似する変化が過去に発生している場合は、状態遷移判定部２０３は検査対象機器２１０で状態遷移が発生していると判定しない。また、状態遷移記憶部２０４は検査対象機器２１０で状態遷移が発生した旨を記憶しない。
【００４８】
一方、当該閾値以上の変化に類似する変化が過去に発生していない場合は、処理がステップＳ１０６に進み、状態遷移判定部２０３が検査対象機器２１０で状態遷移が発生したと判定する。
ステップＳ１０６及びステップＳ１０８の動作は実施の形態１で説明したものと同じであるため、説明を省略する。
本実施の形態では、ステップＳ１０７では、状態遷移記憶部２０４は状態遷移が発生した旨を記憶し、また、状態遷移判定部２０３が状態遷移が発生したと判定した際の相関値の変化（閾値以上の相関値の変化）を記憶する。
【００４９】
＊＊＊実施の形態の効果の説明＊＊＊
本実施の形態によれば、重複した状態遷移の発生を検出し、重複した記憶を防止することができる。このため、本実施の形態によれば、効率的にペネトレーションテストを行うことができる。
【００５０】
実施の形態３．
実施の形態１及び２では、入力データと状態遷移の発生との関係が考慮されていないので、効果的な入力データを生成することができない。「効果的な入力データ」とは、状態遷移を発生させやすい入力データである。
本実施の形態では、入力データ生成部２０１は、遷移条件指定部２０５により状態遷移の発生条件に指定された入力データを解析して、検査対象機器２１０で状態遷移を発生させやすい入力データを推定する。本実施の形態に係る入力データ生成部２０１は、例えば遺伝的アルゴリズムの評価関数を、相関値の時系列変化の大きさと定義して、入力データを生成する。このようにすることで、入力データ生成部２０１は、効果的な入力データを生成することができる。
【００５１】
以上、本発明の実施の形態について説明したが、これらの実施の形態のうち、２つ以上を組み合わせて実施しても構わない。
あるいは、これらの実施の形態のうち、１つを部分的に実施しても構わない。
あるいは、これらの実施の形態のうち、２つ以上を部分的に組み合わせて実施しても構わない。
なお、本発明は、これらの実施の形態に限定されるものではなく、必要に応じて種々の変更が可能である。
【００５２】
＊＊＊ハードウェア構成の説明＊＊＊
最後に、検査装置１００のハードウェア構成の補足説明を行う。
図２に示すプロセッサ１０１は、プロセッシングを行うＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）である。
プロセッサ１０１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）等である。
図２に示すメモリ１０２は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）である。
図２に示す補助記憶装置１０５は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、フラッシュメモリ、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）等である。
図２に示す出力インターフェース１０３及び入力インターフェース１０４は、データの通信処理を実行する電子回路である。
出力インターフェース１０３及び入力インターフェース１０４は、例えば、通信チップ又はＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）である。
【００５３】
また、補助記憶装置１０５には、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）も記憶されている。
そして、ＯＳの少なくとも一部がプロセッサ１０１により実行される。
プロセッサ１０１はＯＳの少なくとも一部を実行しながら、入力データ生成部２０１、相関値算出部２０２、状態遷移判定部２０３、遷移条件指定部２０５、出力部２０６及び入力部２０７の機能を実現するプログラムを実行する。
プロセッサ１０１がＯＳを実行することで、タスク管理、メモリ管理、ファイル管理、通信制御等が行われる。
また、入力データ生成部２０１、相関値算出部２０２、状態遷移判定部２０３、遷移条件指定部２０５、出力部２０６及び入力部２０７の処理の結果を示す情報、データ、信号値及び変数値の少なくともいずれかが、メモリ１０２、補助記憶装置１０５、プロセッサ１０１内のレジスタ及びキャッシュメモリの少なくともいずれかに記憶される。
また、入力データ生成部２０１、相関値算出部２０２、状態遷移判定部２０３、遷移条件指定部２０５、出力部２０６及び入力部２０７の機能を実現するプログラムは、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ（登録商標）ディスク、ＤＶＤ等の可搬記録媒体に格納されていてもよい。
【００５４】
また、入力データ生成部２０１、相関値算出部２０２、状態遷移判定部２０３、遷移条件指定部２０５、出力部２０６及び入力部２０７の「部」を、「回路」又は「工程」又は「手順」又は「処理」に読み替えてもよい。
また、検査装置１００は、処理回路により実現されてもよい。処理回路は、例えば、ロジックＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、ＧＡ（Ｇａｔｅ  Ａｒｒａｙ）、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、ＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）である。
なお、本明細書では、プロセッサ１０１と、メモリ１０２と、プロセッサ１０１とメモリ１０２の組合せと、処理回路との上位概念を、「プロセッシングサーキットリー」という。
つまり、プロセッサ１０１と、メモリ１０２と、プロセッサ１０１とメモリ１０２の組合せと、処理回路とは、それぞれ「プロセッシングサーキットリー」の具体例である。
【符号の説明】
【００５５】
１００  検査装置、１０１  プロセッサ、１０２  メモリ、１０３  出力インターフェース、１０４  入力インターフェース、１０５  補助記憶装置、１０６  表示器インターフェース、２０１  入力データ生成部、２０２  相関値算出部、２０３  状態遷移判定部、２０４  状態遷移記憶部、２０５  遷移条件指定部、２０６  出力部、２０７  入力部、２０８  状態重複判定部、２１０  検査対象機器、２１１  処理部、２１２  入力部、２１３  出力部。
【図１】
2019229883.tif 000003
【図２】
2019229883.tif 000004
【図３】
2019229883.tif 000005
【図４】
2019229883.tif 000006
【図５】
2019229883.tif 000007
【図６】
2019229883.tif 000008
【図７】
2019229883.tif 000009
【手続補正書】
【提出日】平成30年10月24日(2018.10.24)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
内部仕様が不明な検査対象機器に入力された入力データの値と、前記入力データに対する前記検査対象機器の出力データの値との間の相関値を算出する相関値算出部と、
複数の入力データと前記複数の入力データに対する複数の出力データとに対して前記相関値算出部により算出された複数の相関値を時系列に解析して前記検査対象機器で状態遷移が発生したか否かを判定する状態遷移判定部とを有する検査装置。
【請求項２】
前記状態遷移判定部は、
相関値の時間推移において閾値以上の変化が発生しているか否かを検査し、前記相関値の時間推移において前記閾値以上の変化が発生していると判定した場合に、前記検査対象機器で状態遷移が発生したと判定する請求項１に記載の検査装置。
【請求項３】
前記検査装置は、更に、
前記閾値以上の変化が発生した相関値に対応する入力データを、状態遷移の発生条件に指定する遷移条件指定部を有する請求項２に記載の検査装置。
【請求項４】
前記検査装置は、更に、
前記状態遷移判定部により前記検査対象機器で状態遷移が発生したと判定された場合に、前記検査対象機器で状態遷移が発生した旨を記憶する状態遷移記憶部を有する請求項２に記載の検査装置。
【請求項５】
前記状態遷移判定部は、
相関値の時間推移において閾値以上の変化が発生しているか否かを判定し、
前記検査装置は、更に、
前記状態遷移判定部により相関値の時間推移において前記閾値以上の変化が発生していると判定された場合に、前記状態遷移判定部により判定された前記閾値以上の変化に類似する変化が過去に発生しているか否かを判定する状態重複判定部を有する請求項１に記載の検査装置。
【請求項６】
前記状態重複判定部は、
前記閾値以上の変化に類似する変化が過去に発生している場合に、前記検査対象機器で過去に発生した状態遷移が前記検査対象機器で再度発生したと判定する請求項５に記載の検査装置。
【請求項７】
前記状態遷移判定部は、
前記状態重複判定部により前記検査対象機器で過去に発生した状態遷移が前記検査対象機器で再度発生したと判定されていない場合に、前記検査対象機器で状態遷移が発生したと判定する請求項６に記載の検査装置。
【請求項８】
前記検査装置は、更に、
前記遷移条件指定部により状態遷移の発生条件に指定された入力データを解析して、前記検査対象機器で状態遷移を発生させやすい入力データを推定する入力データ生成部を有する請求項３に記載の検査装置。
【請求項９】
コンピュータが、内部仕様が不明な検査対象機器に入力された入力データの値と、前記入力データに対する前記検査対象機器の出力データの値との間の相関値を算出し、
前記コンピュータが、複数の入力データと前記複数の入力データに対する複数の出力データとに対して算出された複数の相関値を時系列に解析して前記検査対象機器で状態遷移が発生したか否かを判定する検査方法。
【請求項１０】
内部仕様が不明な検査対象機器に入力された入力データの値と、前記入力データに対する前記検査対象機器の出力データの値との間の相関値を算出する相関値算出処理と、
複数の入力データと前記複数の入力データに対する複数の出力データとに対して前記相関値算出処理により算出された複数の相関値を時系列に解析して前記検査対象機器で状態遷移が発生したか否かを判定する状態遷移判定処理とをコンピュータに実行させる検査プログラム。
【手続補正書】
【提出日】平成31年1月15日(2019.1.15)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
内部仕様が不明な検査対象機器に入力された入力データと、前記入力データに対する前記検査対象機器の出力データとの間の相関値を算出する相関値算出部と、
複数の入力データと前記複数の入力データに対する複数の出力データとに対して前記相関値算出部により算出された複数の相関値を時系列に解析し、相関値の時間推移において閾値以上の変化が発生しているか否かを検査し、前記相関値の時間推移において前記閾値以上の変化が発生していると判定した場合に、前記検査対象機器の内部状態で状態遷移が発生したと判定する状態遷移判定部とを有する検査装置。
【請求項２】
前記検査装置は、更に、
前記閾値以上の変化が発生した相関値に対応する入力データを、状態遷移の発生条件に指定する遷移条件指定部を有する請求項１に記載の検査装置。
【請求項３】
前記検査装置は、更に、
前記状態遷移判定部により前記検査対象機器の内部状態で状態遷移が発生したと判定された場合に、前記検査対象機器の内部状態で状態遷移が発生した旨を記憶する状態遷移記憶部を有する請求項１に記載の検査装置。
【請求項４】
前記検査装置は、更に、
前記状態遷移判定部により相関値の時間推移において前記閾値以上の変化が発生していると判定された場合に、前記状態遷移判定部により判定された前記閾値以上の変化に類似する変化が過去に発生しているか否かを判定する状態重複判定部を有する請求項１に記載の検査装置。
【請求項５】
前記状態重複判定部は、
前記閾値以上の変化に類似する変化が過去に発生している場合に、前記検査対象機器で過去に発生した状態遷移が前記検査対象機器で再度発生したと判定する請求項４に記載の検査装置。
【請求項６】
前記状態遷移判定部は、
前記状態重複判定部により前記検査対象機器で過去に発生した状態遷移が前記検査対象機器で再度発生したと判定されていない場合に、前記検査対象機器で状態遷移が発生したと判定する請求項５に記載の検査装置。
【請求項７】
前記検査装置は、更に、
前記遷移条件指定部により状態遷移の発生条件に指定された入力データを解析して、前記検査対象機器で状態遷移を発生させやすい入力データを推定する入力データ生成部を有する請求項２に記載の検査装置。
【請求項８】
コンピュータが、内部仕様が不明な検査対象機器に入力された入力データと、前記入力データに対する前記検査対象機器の出力データとの間の相関値を算出し、
前記コンピュータが、複数の入力データと前記複数の入力データに対する複数の出力データとに対して算出された複数の相関値を時系列に解析し、相関値の時間推移において閾値以上の変化が発生しているか否かを検査し、前記相関値の時間推移において前記閾値以上の変化が発生していると判定した場合に、前記検査対象機器の内部状態で状態遷移が発生したと判定する検査方法。
【請求項９】
内部仕様が不明な検査対象機器に入力された入力データと、前記入力データに対する前記検査対象機器の出力データとの間の相関値を算出する相関値算出処理と、
複数の入力データと前記複数の入力データに対する複数の出力データとに対して前記相関値算出処理により算出された複数の相関値を時系列に解析し、相関値の時間推移において閾値以上の変化が発生しているか否かを検査し、前記相関値の時間推移において前記閾値以上の変化が発生していると判定した場合に、前記検査対象機器の内部状態で状態遷移が発生したと判定する状態遷移判定処理とをコンピュータに実行させる検査プログラム。
【国際調査報告】
2019229883.tif 000010
2019229883.tif 000011
2019229883.tif 000012
2019229883.tif 000013