(57)【要約】  特徴検知部（１１０）は、ＭＥＭＳセンサ（２００）によって検出されたセンサデータを時系列データの波形として扱うことにより、センサセンサデータの波形から、波形の特徴として、互い異なる６種類の検知結果（１１）から検知結果（１６）を生成する。攻撃判定部（１２０）は、検知結果（１１）から検知結果（１６）に基づいて、ＭＥＭＳセンサ（２００）への攻撃が有ったか無かったかを判定する。
2019207653.tif 000002
【特許請求の範囲】
【請求項１】
センサによって検出されたセンサデータを時系列データの波形として扱うことにより、前記センサデータの波形から、互い異なる種類の複数の基準特徴の基準特徴ごとに、前記基準特徴に対応する対応特徴を検知する特徴検知部と、
前記基準特徴ごと検知された複数の前記対応特徴に基づいて、前記センサへの攻撃が有ったか無かったかを判定する攻撃判定部と
を備える攻撃検知装置。
【請求項２】
前記特徴検知部は、
それぞれの前記対応特徴を、前記対応特徴の対応する前記基準特徴に合致する度合いを示す得点として生成し、
前記攻撃判定部は、
それぞれの前記対応特徴を示す前記得点を用いて、前記センサへの攻撃が有ったか無かったかを判定する請求項１に記載の攻撃検知装置。
【請求項３】
前記攻撃判定部は、
前記対応特徴の対応する前記基準特徴の前記種類に応じて、前記対応特徴を示す前記得点に重み付けを行い、重み付けがされた前記得点に基づいて、前記センサへの攻撃が有ったか無かったかを判定する請求項２に記載の攻撃検知装置。
【請求項４】
前記攻撃検知装置は、
前記センサデータと制御対象を制御する制御信号とに基づいて、前記制御対象の状態を示すコンテクストを判断するコンテクスト判断部を備え、
前記攻撃判定部は、
前記コンテクスト判断部の判断結果に応じて、前記対応特徴を示す前記得点に重み付けを行い、重み付けがされた前記得点に基づいて、前記センサへの攻撃が有ったか無かったかを判定する請求項２または請求項３に記載の攻撃検知装置。
【請求項５】
前記攻撃検知装置は、さらに、
判断された前記コンテクストと、判断された前記コンテクストの直前のコンテクストとを用いることにより、前記直前のコンテクストから、判断された前記コンテクストへの状態遷移の異常を検知する状態遷移検知部を備え、
前記攻撃判定部は、
前記状態遷移検知部によって前記状態遷移の異常が検知された場合、前記センサへの攻撃が有ったと判定する請求項４に記載の攻撃検知装置。
【請求項６】
前記特徴検知部は、
前記対応特徴として、前記センサデータの示す波形から、周波数の特徴を検知する請求項１から請求項５のいずれか一項に記載の攻撃検知装置。
【請求項７】
前記特徴検知部は、
前記対応特徴として、前記センサデータの示す波形から、振幅変化の特徴を検知する請求項１から請求項６のいずれか一項に記載の攻撃検知装置。
【請求項８】
前記特徴検知部は、
前記対応特徴として、前記センサデータの示す波形から、周期的な変化を検知する請求項１から請求項７のいずれか一項に記載の攻撃検知装置。
【請求項９】
前記特徴検知部は、
前記対応特徴として、前記センサデータの示す波形から、急激な変化を検知する請求項１から請求項８のいずれか一項に記載の攻撃検知装置。
【請求項１０】
前記特徴検知部は、
前記対応特徴として、前記センサデータの示す波形から、バイアスを検知する請求項１から請求項９のいずれか一項に記載の攻撃検知装置。
【請求項１１】
前記特徴検知部は、
前記対応特徴として、前記センサデータの示す波形から、正弦波の重畳の継続を検知する請求項１から請求項１０のいずれか一項に記載の攻撃検知装置。
【請求項１２】
コンピュータに、
センサによって検出されたセンサデータを時系列データの波形として扱うことにより、前記センサデータの波形から、互い異なる種類の複数の基準特徴の基準特徴ごとに、前記基準特徴に対応する対応特徴を検知する処理と、
前記基準特徴ごと検知された複数の前記対応特徴に基づいて、前記センサへの攻撃が有ったか無かったかを判定する処理と
を実行させる攻撃検知プログラム。
【請求項１３】
コンピュータが、
センサによって検出されたセンサデータを時系列データの波形として扱うことにより、前記センサデータの波形から、互い異なる種類の複数の基準特徴の基準特徴ごとに、前記基準特徴に対応する対応特徴を検知し、
前記基準特徴ごと検知された複数の前記対応特徴に基づいて、前記センサへの攻撃が有ったか無かったかを判定する攻撃検知方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、攻撃検知装置、攻撃検知方法及び攻撃検知プログラムに関する。
【背景技術】
【０００２】
ＭＥＭＳ（Ｍｉｃｒｏ  Ｅｌｅｃｔｒｏ  Ｍｅｃｈａｎｉｃａｌ  Ｓｙｓｔｅｍ）センサは、機械的な部品と電子回路とを一つに集積した構成のセンサである。
ＭＥＭＳセンサは、小型であること、精度が良いこと、コストが安いことにより、用いられることが多い。
例えば、自動運転車両またはロボットのような機器の自律制御のために、ＭＥＭＳジャイロセンサ及びＭＥＭＳ加速度センサが用いられる。【０００３】
センサを用いた計測及び制御においては、センサデータの信頼性がシステムの信頼性に直結する。そのため、センサへの攻撃は脅威となる。マルウェアを用いてセンサデータをソフトウェア的に騙す攻撃は、従来の情報セキュリティ技術で対処可能である。【０００４】
一方で、物理的な信号をセンサに照射し、物理的にセンサの状態を変動させるハードウェア的に騙す攻撃には、従来の情報セキュリティ技術だけでは対処できない。
非特許文献１、２では、超音波によりＭＥＭＳジャイロセンサとＭＥＭＳ加速度センサとを騙す攻撃方法を開示している。
音波攻撃では、ＭＥＭＳセンサがばねとおもりで構成されることに着目する。すなわち、ばねとおもりで構成される物体が共振周波数を持つという特性を利用する。
攻撃者は、ＭＥＭＳセンサが持つ共振周波数と同じ周波数の音波をＭＥＭＳセンサに対して照射する。この照射は、ＭＥＭＳセンサの機械部分を強制的に共振させ、異常なセンサデータがセンサから出力される。【０００５】
ＭＥＭＳセンサへの音波攻撃への対策としては、次の対策がある。
非特許文献１では、ハードウェアでの対策として、物理的にセンサを遮蔽すること、センサの共振周波数を変更すること、同じセンサを複数用意してセンサデータを比較することを対策方式として開示している。
非特許文献２では、ハードウェアでの対策として、センサを構成する部品を超音波攻撃の影響を受けにくい部品に変更する対策方式を開示している。さらに、非特許文献２では、ソフトウェアでの対策として、センサのサンプリング間隔を変更する対策方式を開示している。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】Ｓｏｎ，  Ｙｕｎｍｏｋ，  ｅｔ  ａｌ．  “Ｒｏｃｋｉｎｇ  ｄｒｏｎｅｓ  ｗｉｔｈ  ｉｎｔｅｎｔｉｏｎａｌ  ｓｏｕｎｄ  ｎｏｉｓｅ  ｏｎ  ｇｙｒｏｓｃｏｐｉｃ  ｓｅｎｓｏｒｓ．”  ２４ｔｈ  ＵＳＥＮＩＸ  Ｓｅｃｕｒｉｔｙ  Ｓｙｍｐｏｓｉｕｍ  （ＵＳＥＮＩＸ  Ｓｅｃｕｒｉｔｙ  １５）．  ２０１５．
【非特許文献２】Ｔｉｍｏｔｈｙ  Ｔｒｉｐｐｅｌ，  Ｏｆｉｒ  Ｗｅｉｓｓｅ，  Ｗｅｎｙｕａｎ  Ｘｕ，  Ｐｅｔｅｒ  Ｈｏｎｅｙｍａｎ，  ａｎｄ  Ｋｅｖｉｎ  Ｆｕ．  ２０１７．  ＷＡＬＮＵＴ：  Ｗａｇｉｎｇ  ｄｏｕｂｔ  ｏｎ  ｔｈｅ  ｉｎｔｅｇｒｉｔｙ  ｏｆ  ｍｅｍｓ  ａｃｃｅｌｅｒｏｍｅｔｅｒｓ  ｗｉｔｈ  ａｃｏｕｓｔｉｃ  ｉｎｊｅｃｔｉｏｎ  ａｔｔａｃｋｓ．  Ｉｎ  Ｓｅｃｕｒｉｔｙ  ａｎｄ  Ｐｒｉｖａｃｙ  （ＥｕｒｏＳ＆Ｐ），  ２０１７  ＩＥＥＥ  Ｅｕｒｏｐｅａｎ  Ｓｙｍｐｏｓｉｕｍ  ｏｎ．  ＩＥＥＥ，  ３−１８．
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ＭＥＭＳセンサに対する音波攻撃に関しては、非特許文献１、２でいくつかの対策が開示されているものの、次のような欠点がある。
まず、ハードウェアでの対策方式は、センサ自体の加工が必要であること、あるいは複数センサが必要である。このため、コストが高くなる。
また、センサを覆う方法は他のセンサに影響を及ぼす可能性があり、センサを覆う方法は計測性能に悪影響を及ぼす可能性がある。
また、ハードウェア構成が変更できない場合には、ハードウェアでの攻撃対策はできない。【０００８】
非特許文献２で開示されるソフトウェアでの対策方式は、限られたセンサにしか適用できないという課題がある。これは、この対策方式の適用には、センサの利用者がセンサのサンプリング間隔を設定できることが前提となるためである。【０００９】
本発明は、センサ自体の加工を要さず、センサの通常利用の範囲で利用可能な、センサへの攻撃を検知する攻撃検知装置の提供を目的とする。
【課題を解決するための手段】
【００１０】
本発明の攻撃検知装置は、
センサによって検出されたセンサデータを時系列データの波形として扱うことにより、前記センサデータの波形から、互い異なる種類の複数の基準特徴の基準特徴ごとに、前記基準特徴に対応する対応特徴を検知する特徴検知部と、
前記基準特徴ごと検知された複数の前記対応特徴に基づいて、前記センサへの攻撃が有ったか無かったかを判定する攻撃判定部と
を備える。
【発明の効果】
【００１１】
本発明によれば、センサ自体の加工を要さず、センサの通常利用の範囲で利用可能な、センサへの攻撃を検知する攻撃検知装置を提供できる。
【図面の簡単な説明】
【００１２】
【図１】実施の形態１の図で、攻撃検知システムの構成を示す図。
【図２】実施の形態１の図で、攻撃検知装置のハードウェア構成を示す図。
【図３】実施の形態１の図で、攻撃検知装置で検知する波形を示す図。
【図４】実施の形態１の図で、高周波検知部とローパスフィルタの関係を示す図。
【図５】実施の形態１の図で、攻撃検知システムの動作を示すシーケンス図。
【図６】実施の形態１の図で、攻撃判定部の動作を示すフローチャート。
【図７】実施の形態１の図で、攻撃検知装置の電子回路による実現を示す図。
【図８】実施の形態２の図で、攻撃検知システムの構成を示す図。
【図９】実施の形態２の図で、攻撃検知装置のハードウェア構成を示す図。
【図１０】実施の形態２の図で、状態遷移検知部が状態遷移を判断する状態遷移図。
【図１１】実施の形態２の図で、コンテクスト判断部でコンテクストを判断する基準を示すコンテクスト判断情報。
【図１２】実施の形態２の図で、攻撃検知システムの動作を示すシーケンス図。
【図１３】実施の形態２の図で、コンテクスト判断部の動作を示すフローチャート。
【図１４】実施の形態２の図で、状態遷移検知部の動作を示すフローチャート。
【図１５】実施の形態２の図で、攻撃判定部の動作を示すフローチャート。
【図１６】実施の形態２の図で、コンテクストに応じて閾値を変化させるための対応情報を示す図。
【発明を実施するための形態】
【００１３】
実施の形態１．
＊＊＊構成の説明＊＊＊
図１は、実施の形態１の攻撃検知システム１０の構成を示す。攻撃検知システム１０は、攻撃検知装置１００、ＭＥＭＳセンサ２００及びコントローラ３００を備えている。攻撃検知装置１００は、特徴検知部１１０及び攻撃判定部１２０を備えている。特徴検知部１１０は、高周波検知部１１１、振幅変化検知部１１２、周期的変化検知部１１３、急激変化検知部１１４、バイアス検知部１１５、単一正弦波検知部１１６を備えている。攻撃判定部１２０は閾値カウンタ１２２を備えている。
高周波検知部１１１、振幅変化検知部１１２、周期的変化検知部１１３、急激変化検知部１１４、バイアス検知部１１５、単一正弦波検知部１１６のそれぞれを、単に、検知部と表記する場合がある。
図１は、ＭＥＭＳセンサ２００とコントローラ３００に、攻撃検知装置１００が接続された構成を示す。
【００１４】
図２は、攻撃検知装置１００のハードウェア構成を示す。攻撃検知装置１００はコンピュータである。攻撃検知装置１００は、ハードウェアとして、プロセッサ９１０、メモリ９２０、センサデータ入力インタフェース９３０、攻撃判定結果出力インタフェース９４０を備える。プロセッサ９１０は、機能構成として、特徴検知部１１０及び攻撃判定部１２０を備える。特徴検知部１１０は、高周波検知部１１１、振幅変化検知部１１２、周期的変化検知部１１３、急激変化検知部１１４、バイアス検知部１１５及び単一正弦波検知部１１６の機能要素からなる。特徴検知部１１０及び攻撃判定部１２０の機能は、プログラムとして実現される。メモリ９２０には、特徴検知部１１０及び攻撃判定部１２０の機能を実現する攻撃検知プログラムが記憶されている。プロセッサ９１０が、特徴検知部１１０及び攻撃判定部１２０の機能を実現する攻撃検知プログラムを実行する。なお、攻撃検知プログラムは、コンピュータ読取可能な記録媒体に格納されて提供されてもよいし、プログラムプロダクトとして提供されてもよい。
【００１５】
攻撃検知装置１００に接続されるＭＥＭＳセンサ２００は複数でも良い。また、特徴検知部１１０の備える、攻撃特徴を検知する検知部の数は６つに限定されない。他の検知部を増やしてもよいし、高周波検知部１１１から単一正弦波検知部１１６の６つの検知部から一つ以上を減らしてもよい。
【００１６】
＊＊＊動作の説明＊＊＊
攻撃検知装置１００の動作を説明する。攻撃検知装置１００の動作は、攻撃検知方法に相当する。また、攻撃検知装置１００の動作は、攻撃検知プログラムの処理に相当する。
【００１７】
攻撃検知装置１００の特徴は、ＭＥＭＳセンサ２００への攻撃が行われたときに、センサデータに生じる攻撃特徴を時系列的な変化として検知することにある。
図３は、静止状態のＭＥＭＳ加速度センサ、静止状態のＭＥＭＳジャイロセンサに音波が照射されたときに、ＭＥＭＳ加速度センサ及びＭＥＭＳジャイロセンサから得られるセンサデータの種類を示す。ＭＥＭＳ加速度センサ及びＭＥＭＳジャイロセンサは、ばね及びおもりにより構成される。図３は、静止状態のＭＥＭＳ加速度センサまたはＭＥＭＳジャイロセンサに音波が照射されたときに、得られるセンサデータの８つのタイプのグラフを示している。
８つのグラフの横軸は時間であり、縦軸は信号値である。
（ａ）バイアスは、センサデータにバイアスが含まれる。
（ｂ）正弦波は、センサデータに高周波の正弦波が含まれる。
（ｃ）正弦波は、センサデータに低周波の正弦波が含まれる。
（ｄ）ＡＭ変調は、センサデータがＡＭ変調されている。
（ｅ）ＦＭ変調は、センサデータがＦＭ変調されている。
（ｆ）ＡＭ変調＆ＦＭ変調は、センサデータがＡＭ変調及びＦＭ変調されている。
（ｇ）ＡＳＫ変調は、センサデータがＡＳＫ変調されている。
（ｈ）ＰＳＫ変調は、センサデータがＰＳＫ変調されている。
【００１８】
攻撃検知装置１００は、図３に示す（ａ）バイアスから（ｈ）ＰＳＫ変調の攻撃特徴の検知を目的とする。そのために、攻撃検知装置１００は、複数の検知部からなる特徴検知部１１０と、各検知部による検知結果をもとにＭＥＭＳセンサ２００への攻撃の有無を判定する攻撃判定部１２０とを有する。ＭＥＭＳセンサ２００への攻撃を、単に攻撃という場合がある。
【００１９】
攻撃検知装置１００には、次の利点がある。攻撃検知装置１００は、高周波検知部１１１から単一正弦波検知部１１６のような、攻撃を検知する複数の検知部を有する。よって、攻撃検知装置１００は、単一の検知部だけでは検知できない攻撃特徴を相補的に検知できる。また、攻撃検知装置１００では、攻撃判定部１２０が複数の検知部の検知結果をもとに攻撃の判断を行うので、誤検知が減少する。なお、攻撃判定部１２０は、後述のように、検知結果について重み付けの総和を取り、閾値と比較することで、攻撃判定部は攻撃と判断する。
【００２０】
以下では、攻撃検知装置１００の特徴検知部１１０が有する、各検知部を説明する。センサデータの時系列データを、以下では、「波形」と呼ぶ場合がある。
【００２１】
まず、高周波検知部１１１について説明する。高周波検知部１１１によるセンサデータからの特徴検知は、ＭＥＭＳセンサ２００への攻撃時にセンサデータの時系列データの振幅の振れ方が異常に速くなることに着目する。高周波検知部１１１は、センサデータから、特徴として、高周波の特徴を検知する。
【００２２】
高周波検知部１１１による具体的な高周波の検知方法は、次の二つが考えられる。一つは、センサデータを一定の時間窓で切り出し、ローパスフィルタ通過前後の波形を比較することである。ローパスフィルタは、高周波検知部１１１がプログラムとし備えてもよい。あるいは、図４に示すように、攻撃検知装置１００がハードウェアであるローパスフィルタ９６０を備えており、高周波検知部１１１にローパスフィルタ９６０の通過前の波形とローパスフィルタ９６０の通過後の波形とが入力されてもよい。波形に高周波が含まれていない場合には、ローパスフィルタを通過しても波形はよく似ている。相関は類似度の一種である。
二つの波形の類似度を測る方法として、ピアソンの相関係数がある。二つの系列ｘｉ，ｙｉ（ｉ＝１，２，．．．，ｎ）ついて、ピアソンの相関係数は次の式で求めることができる。
【数１】
2019207653.tif 000003
ここで、
【数２】
2019207653.tif 000004
は、それぞれｘｉ，ｙｉの相加平均である。
【００２３】
高周波検知部１１１による具体的な高周波の検知方法のもう一つは、波形を時間窓で切り出し、ＦＦＴを実施することで時間領域のデータを周波数領域に変換し、高周波成分を直接検知することである。
【００２４】
高周波検知部１１１により、図３の攻撃時の波形のうち、（ｂ），（ｄ），（ｅ），（ｆ），（ｇ）を検知可能である。高周波検知部１１１によって、低い周波数の（ｃ）、一定の値に近くなる（ａ）は、検知できない。また、（ｆ），（ｈ）に関しては、搬送波の周波数によっては、高周波検知部１１１によって、高周波を検知できる場合と出来ない場合とがある。
【００２５】
次に、振幅変化検知部１１２について説明する。振幅変化検知部１１２による特徴の検知では、大きな時間幅で波形を見たときに、波形の振幅が一定に整っているように見えることに着目する。振幅変化検知部１１２は、特徴として、波形の振幅変化の一定を検知する。振幅変化検知部１１２による具体的な検知方法は、大きな時間幅で波形に包絡線を引き、その変化を観察する。これにより、振幅のピークの時間変化を見ることができる。したがって、振幅のピークの時間変化の幅が小さい場合には、振幅変化検知部１１２は、振幅変化が一定に近いことを検知できる。振幅変化検知部１１２は、図３の攻撃時の波形のうち、（ａ），（ｂ），（ｅ），（ｈ）を検知可能である。振幅変化検知部１１２は、周波数が低い（ｃ）、振幅変調を伴う（ｄ），（ｇ），（ｆ）は検知できない。また、（ｅ），（ｈ）に関しては、周波数の振る範囲（周波数偏移）やキャリア周波数次第では、検知できる場合と出来ない場合とがある。
【００２６】
周期的変化検知部１１３について説明する。周期的変化検知部１１３による特徴の検知では、攻撃時の波形が一定周期で変化することに着目する。周期的変化検知部１１３は、特徴として、波形の周期的な変化を検知する。波形の周期性をみる方法として、自己相関係数がある。系列ｘｉ（ｉ＝１，２，．．．，ｎ）について、自己相関係数は次の式で求めることができる。
【数３】
2019207653.tif 000005
ここで、ｊは系列のずらし幅である。あるずらし幅ｊについて高い自己相関係数が出ることは、あるずらし幅ｊで波形がよく似ていることを示す。すなわち、その波形は、ｊを周期とする規則的な波形とみなせる。したがって、高い自己相関係数が出た場合に、攻撃があると判断できる。
周期的変化検知部１１３により、図３の攻撃時の波形のうち、（ａ），（ｂ），（ｃ），（ｄ），（ｅ），（ｇ）を検知可能である。規則性が崩れている（ｆ），（ｈ）は、検知できない。また、（ｃ）は周波数が低いため、自己相関係数を計算する系列を決める時間窓の大きさによっては、（ｃ）は検知できない可能性がある。（ｇ）に関しても、周期の長さによっては、（ｃ）と同様に、検知できない可能性がある。
【００２７】
急激変化検知部１１４について説明する。急激変化検知部１１４による検知では、攻撃の開始と同時に、急激に波形が変化することに着目する。急激変化検知部１１４は、特徴として、波形の急激な変化を検知する。具体的な検知方法は、急激変化検知部１１４が、周波数の変化あるいは振幅の変化を記録する。振幅の変化を観察する場合、急激変化検知部１１４が、一定の時間間隔でセンサデータの値を比較する。大きな変化が観測された場合に攻撃と判断することができる。
周波数の変化を観察する場合、急激変化検知部１１４が一定の時間間隔でＦＦＴ（Ｆａｓｔ  Ｆｏｕｒｉｅｒ  Ｔｒａｎｓｆｏｒｍ）を実行してピーク周波数を取得する。急激なピーク周波数の変化があった場合に攻撃と判断することができる。急激変化検知部１１４により、図３の攻撃時の波形のうち、（ａ），（ｂ），（ｃ），（ｄ），（ｅ），（ｇ），（ｈ）を検知可能である。急激変化検知部１１４は、振幅と周波数が共に変化する（ｆ）を検知できない。
【００２８】
次に、バイアス検知部１１５について説明する。バイアス検知部１１５による検知は、特に、バイアスを出力させる攻撃に着目する。バイアス検知部１１５は、特徴として、波形からバイアスを検知する。バイアス検知部１１５による具体的な検知方法は、次の二つが考えられる。一つは、波形の平均と分散を監視する方法である。平均が０から離れており、分散が０に近い場合、波形として、ＭＥＭＳセンサ２００からばらつきの無い一定値が出力されていることが分かる。すなわち、バイアスがあることが分かる。したがって、平均と分散とをそれぞれ０と比較した結果から、バイアスの有無を判定できる。もう一つは、波形の振幅変化を監視する方法である。波形の振幅変化が小さいとき、バイアスがあることが分かる。したがって、ある時間ｔと、次の時系列ｔ＋１という二つのセンサデータがあれば、波形の振幅変化がわかる。振幅変化とある閾値との比較によって、バイアスの有無が判定できる。
バイアス検知部１１５により、図３の攻撃時の波形のうち、（ａ）を検知可能である。バイアスを持たないそのほかの波形は検知できない。
【００２９】
次に、単一正弦波検知部１１６について説明する。単一正弦波検知部１１６による検知では、強制的にＭＥＭＳセンサ２００を共振させているため、その共振周波数に則った周波数が常に重畳することに着目する。すなわち、図３に示す（ｂ），（ｃ），（ｄ），（ｇ），（ｈ）のように、規則的な正弦波が重畳し続けるという特徴がある。具体的な検知方法は、波形にＦＦＴを実施し、ある特定の周波数が重畳し続けるかどうかを監視する。例えば、ＦＦＴ後の周波数ピークの上位三つを監視することで、ある周波数が重畳し続けるかどうかが分かる。センサの監視対象の偶発的な変化により生じた周波数ピークであれば、時間経過とともに消失するので、攻撃と区別できる。単一正弦波検知部１１６により、図３の攻撃時の波形のうち、（ｂ），（ｃ），（ｄ），（ｇ），（ｈ）が検知可能である。周波数が変化する（ｅ），（ｆ）及び複数周波数から構成される（ａ）は検知できない。また、周波数の大きさによっては、（ｃ）も検知できない場合がある。
【００３０】
図５は、攻撃検知システム１０の動作を示すシーケンス図である。図５を参照して、攻撃検知システム１０の動作を説明する。図５では、各検知部は検知結果を生成し、攻撃判定部１２０に送信する。
【００３１】
特徴検知部１１０は、センサによって検出されたセンサデータを時系列データの波形として扱うことにより、センサデータの波形から、互い異なる種類の複数の基準特徴の基準特徴ごとに、基準特徴に対応する対応特徴を検知する。基準特徴とは、センサデータの波形から検知すべき特徴である。対応特徴とは、複数の異なる基準特徴のうち、一つの基準特徴に対応する特徴である。以下では、対応特徴は検知結果である。特徴検知部１１０は、それぞれの対応特徴を、対応特徴の対応する基準特徴に合致する度合いを示す得点として生成する。つまり、実施の形態１において対応特徴である検知結果とは、攻撃特徴と設定されている基準特徴に、波形がどれだけ合致するかという検知スコアである。
【００３２】
（１）特徴検知部１１０の高周波検知部１１１は、対応特徴として、センサデータの示す波形から、周波数の特徴を検知する。高周波検知部１１１では、基準特徴は高周波であり、対応特徴である検知結果１１は類似度が使用される。
（２）特徴検知部１１０の振幅変化検知部１１２は、対応特徴として、センサデータの示す波形から、振幅変化の特徴を検知する。振幅変化検知部１１２では、基準特徴は振幅変化の一定であり、対応特徴である検知結果１２は振幅のピークの時間変化の幅が使用される。
（３）特徴検知部１１０の周期的変化検知部１１３は、対応特徴として、センサデータの示す波形から、周期的な変化を検知する。周期的変化検知部１１３では、基準特徴は周期的な変化であり、対応特徴である検知結果１３は自己相関係数が使用される。
（４）特徴検知部１１０の急激変化検知部１１４は、対応特徴として、センサデータの示す波形から、急激な変化を検知する。急激変化検知部１１４では、基準特徴は急激変化であり、対応特徴である検知結果１４は自己相関係数が使用される。
（５）特徴検知部１１０のバイアス検知部１１５は、対応特徴として、センサデータの示す波形から、バイアスを検知する。バイアス検知部１１５では、基準特徴はバイアスであり、対応特徴である検知結果１５は波形の平均が使用される。
（６）特徴検知部１１０の単一正弦波検知部１１６は、対応特徴として、センサデータの示す波形から、正弦波の重畳の継続を検知する。単一正弦波検知部１１６では、基準特徴は単一正弦波の重畳であり、対応特徴である検知結果１６は、ある周波数が重畳を継続する時間である。
（７）後述のように、検知結果１１から検知結果１６は、対応する閾値と比較される。
【００３３】
ステップＳ０１において、ＭＥＭＳセンサ２００は、センサデータ２０１をコントローラ３００に送信する。コントローラ３００はセンサデータ２０１に応じた処理を行う。
【００３４】
ステップＳ０２において、ＭＥＭＳセンサ２００は、センサデータ２０１を高周波検知部１１１に送信する。高周波検知部１１１は、センサデータ２０１に高周波が含まれるかどうかを検知し、検知結果１１を攻撃判定部１２０に送信する。
【００３５】
ステップＳ０３において、ＭＥＭＳセンサ２００は、センサデータ２０１を振幅変化検知部１１２に送信する。振幅変化検知部１１２は、センサデータ２０１の振幅変化が一定かどうかを検知し、検知結果１２を攻撃判定部１２０に送信する。
【００３６】
ステップＳ０４において、ＭＥＭＳセンサ２００は、センサデータ２０１を周期的変化検知部１１３に送信する。周期的変化検知部１１３は、センサデータ２０１の時間変化が周期的かどうかを検知し、検知結果１３を攻撃判定部１２０に送信する。
【００３７】
ステップＳ０５において、ＭＥＭＳセンサ２００は、センサデータ２０１を急激変化検知部１１４に送信する。急激変化検知部１１４は、センサデータ２０１が急に変化するかどうかを検知し、検知結果１４を攻撃判定部１２０に送信する。
【００３８】
ステップＳ０６において、ＭＥＭＳセンサ２００は、センサデータ２０１をバイアス検知部１１５に送信する。バイアス検知部１１５は、センサデータ２０１にバイアスが含まれるかどうかを検知し、検知結果１５を攻撃判定部１２０に送信する。
【００３９】
ステップＳ０７において、ＭＥＭＳセンサ２００は、センサデータ２０１を単一正弦波検知部１１６に送信する。単一正弦波検知部１１６は、センサデータ２０１に単一の正弦波が重畳し続けるかどうかを検知し、検知結果１６を攻撃判定部１２０に送信する。
【００４０】
攻撃判定部１２０は、基準特徴ごと検知された複数の対応特徴に基づいて、センサへの攻撃が有ったか無かったかを判定する。攻撃判定部１２０は、それぞれの対応特徴を示す得点を用いて、センサへの攻撃が有ったか無かったかを判定する。つまり、攻撃判定部１２０は、検知結果１１から検知結果１６をもとに、後述のように閾値を用いて攻撃の有無を判定する。
ステップＳ０８において、攻撃判定部１２０は、判定結果１２１をコントローラ３００に送信する。
【００４１】
コントローラ３００は、攻撃判定部１２０から受信した判定結果１２１に応じて処理を行う。
【００４２】
図６は、攻撃判定部１２０の動作を示すフローチャートである。図６を参照して攻撃判定部１２０の動作を説明する。
ステップＳ１１において、攻撃判定部１２０は、攻撃の有無を判断するための閾値カウンタ１２２をリセットする。
ステップＳ１２において、攻撃判定部１２０は、検知結果を受信する。この検知結果は、検知結果１１から検知結果１６のいずれかである。
【００４３】
ステップＳ１３において、攻撃判定部１２０は、受信した検知結果と、受信した検知結果に対応する閾値とを比較する。
【００４４】
ここで閾値を説明する。攻撃判定部１２０は二種類の閾値を持つ。一方の閾値は検知部による検知結果と比較するため閾値である。他方の閾値は閾値カウンタ１２２の値と比較するための閾値である。一方の閾値としては、以下の閾値１から閾値６がある。
閾値１は、高周波検知部１１１による検知結果１１と比較される。
閾値２は、振幅変化検知部１１２による検知結果１２と比較される。
閾値３は、周期的変化検知部１１３による検知結果１３と比較される。
閾値４は、急激変化検知部１１４による検知結果１４と比較される。
閾値５は、バイアス検知部１１５による検知結果１５と比較される。
閾値６は、単一正弦波検知部１１６による検知結果１６と比較される。
【００４５】
ステップＳ１４において、攻撃判定部１２０は、検知結果が閾値を超えていた場合に閾値カウンタ１２２をカウントアップする。図１の構成の場合、攻撃特徴を検知する六つの検知部があるため、閾値カウンタ１２２は最小０、最大６となる。
なお、閾値カウンタ１２２がカウントアップされる条件である、検知結果が閾値を超えるとは以下の意味である。
（１）高周波成分に関する類似度を示す検知結果１１については、類似度が閾値１よりも大きい場合である。
（２）振幅一定に関するピーク時間変化幅を示す検知結果１２については、ピーク時間変化幅が閾値２よりも小さい場合である。
（３）周期的変化に関する自己相関係数を示す検知結果１３については、自己相関係数が閾値３よりも大きい場合である。
（４）急激変化に関する単位時間あたりの振幅変化を示す検知結果１４については、単位時間あたりの振幅変化が閾値４よりも大きい場合である。
（５）バイアスに関する検知結果１５につては、波形の平均値が閾値５よりも大きい場合である。
（６）単一正弦波に関する検知結果１６につては、ある周波数が重畳を継続する時間が閾値６よりも大きい場合である。
【００４６】
ステップＳ１５おいて、攻撃判定部１２０は、すべて検知結果と閾値比較を行ったかを確認する。ステップＳ１５でＮＯの場合、処理はステップＳ１３に進む。
【００４７】
ステップＳ１５でＹＥＳの場合、処理はステップＳ１６に進む。
ステップＳ１７において、攻撃判定部１２０は、攻撃の有無を判定する。攻撃判定部１２０は、閾値カウンタ１２２の値が攻撃と判断するカウンタ閾値を超えた場合に、攻撃があったと判定する。この場合、ステップＳ１７において、攻撃判定部１２０は、判定結果１２１として、コントローラ３００に異常の通知を送信する。
【００４８】
閾値カウンタ１２２がカウンタ閾値を超えなかった場合には、攻撃判定部１２０は攻撃はなかったと判定する。この場合、ステップＳ１８において、攻撃判定部１２０は、判定結果１２１として、コントローラ３００に正常の通知を送信する。
【００４９】
高周波検知部１１１について補足する。高周波検知部１１１は、ローパスフィルタ通過前後の波形の比較により高周波を検知する場合、ローパスフィルタ通過前の波形とローパスフィルタ通過後の波形との類似度を計算するために、ピアソンの相関係数の使用を述べた。ピアソンの相関係数の代わりに、次の（１）または（２）に示す類似度の計算方法を用いても良い。
（１）類似度の計算方法は、相互相関、相互情報量、または尤度を計算することである。
（２）類似度の計算方法は、ユークリッド距離、マハラノビス距離、マンハッタン距離、チェビシェフ距離またはミンコフスキー距離のような、幾何学的距離を計算することである。
【００５０】
攻撃判定部１２０は、センサで観測する対象を加味して、閾値カウンタ１２２を次のような方法で実現しても良い。それぞれの検知部に応じて重み付けを行う、あるいは、閾値自体を変化させる。攻撃判定部１２０は、対応特徴の対応する基準特徴の種類に応じて、対応特徴を示す得点に重み付けを行い、重み付けがされた得点に基づいて、センサへの攻撃が有ったか無かったかを判定する。基準特徴の種類に応じてとは、検知部の種類に応じてということを意味する。また、得点に重み付けを行うとは、検知結果の値を変更してもよいし、検知結果と対比される閾値を変更してもよいし、カウンタ閾値を変更してもよい。
例えば、規則的な動きを行うロボットアームに取り付けられたＭＥＭＳ加速度センサやＭＥＭＳジャイロセンサの場合、周期的変化検知部１１３から得られた検知結果１３と比較を行う閾値を高くすることで、重要度を下げる。
【００５１】
＊＊＊実施の形態１の効果の説明＊＊＊
ＭＥＭＳセンサ２００への攻撃が有った場合、ＭＥＭＳセンサ２００の波形には、高周波、振幅が一定、周期的変化、急激な変化、バイアス、単一の正弦波の重畳のような攻撃特徴が表れる。実施の形態１の攻撃検知装置１００では、これらの特徴を六つの検知部で検知するので、ＭＥＭＳセンサ２００への攻撃が検知できる。
また、攻撃検知装置１００は攻撃検知を行いたいセンサのセンサデータを入力するだけで良いため、センサ自体の加工は必要ない。
また、攻撃検知装置１００は、ＭＥＭＳセンサ２００に限らず、多くのセンサに利用可能である。
【００５２】
図２で攻撃検知装置１００のハードウェア構成を述べたが、ハードウェア構成の補足説明を行う。
プロセッサ９１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）またはＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）である。メモリ９２０は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、フラッシュメモリ、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）またはＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）である。センサデータ入力インタフェース９３０及び攻撃判定結果出力インタフェース９４０は、Ｉ２Ｃ（Ｉｎｔｅｒ−Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）インタフェース、ＳＰＩ（Ｓｅｒｉａｌ  Ｐｅｒｉｐｈｅｒａｌ  Ｉｎｔｅｒｆａｃｅ）またはＥｔｈｅｒｎｅｔ（登録商標）インタフェースである。
【００５３】
また、高周波検知部１１１、振幅変化検知部１１２、周期的変化検知部１１３、急激変化検知部１１４、バイアス検知部１１５、単一正弦波検知部１１６及び攻撃判定部１２０の「部」を、「回路」又は「工程」又は「手順」又は「処理」に読み替えてもよい。また、攻撃検知装置１００は、ロジックＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、ＧＡ（Ｇａｔｅ  Ａｒｒａｙ）、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、ＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）といった電子回路により実現されてもよい。
なお、プロセッサ及び上記の電子回路を総称してプロセッシングサーキットリーともいう。
【００５４】
図７は、攻撃検知装置１００が電子回路９９で実現される図である。電子回路９９によって、プロセッサ９１０として示す「部」の機能、メモリ９２０の機能、センサデータ入力インタフェース９３０の機能及び攻撃判定結果出力インタフェース９４０の機能が実現される。電子回路９９は信号線９９ａに接続している。電子回路９９は、具体的には、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ロジックＩＣ、ＧＡ（Ｇａｔｅ・Ａｒｒａｙ）、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ・Ｓｐｅｃｉｆｉｃ・Ｉｎｔｅｇｒａｔｅｄ・Ｃｉｒｃｕｉｔ）、又は、ＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ・Ｇａｔｅ・Ａｒｒａｙ）である。
【００５５】
実施の形態２．
＊＊＊構成の説明＊＊＊
図８から図１６を参照して実施の形態２の攻撃検知システム７００を説明する。
図８は、実施の形態２の攻撃検知システム７００の構成を示す。攻撃検知システム７００は、攻撃検知装置１００、制御対象５００及び制御システム６００を備える。
【００５６】
攻撃検知装置１００は、特徴検知部１１０、攻撃判定部１２０、コンテクスト判断部１３０及び状態遷移検知部１４０を備える。実施の形態２の攻撃検知装置１００は、実施の形態１の攻撃検知装置１００に対して、さらに、コンテクスト判断部１３０及び状態遷移検知部１４０を備えている。
【００５７】
制御システム６００は、ＭＥＭＳセンサ２００、コントローラ３００、アクチュエータ４０を備えている。制御システム６００は、制御対象５００をフィードバック制御する。
【００５８】
攻撃検知システム７００では、制御システム６００に対して、攻撃検知装置１００が接続する構成である。
【００５９】
図９は、攻撃検知装置１００のハードウェア構成を示す。実施の形態２の攻撃検知装置１００はコンピュータである。攻撃検知装置１００は、ハードウェアとして、プロセッサ９１０、メモリ９２０、センサデータ入力インタフェース９３０、攻撃判定結果出力インタフェース９４０及び制御信号入力インタフェース９５０を備える。また、プロセッサ９１０は、機能要素として、特徴検知部１１０、攻撃判定部１２０、コンテクスト判断部１３０及び状態遷移検知部１４０を持つ。特徴検知部１１０、攻撃判定部１２０、コンテクスト判断部１３０、状態遷移検知部１４０の機能は、攻撃検知プログラムとして実現される。メモリ９２０には、特徴検知部１１０、攻撃判定部１２０、コンテクスト判断部１３０、状態遷移検知部１４０の機能を実現する攻撃検知プログラムが記憶されている。そして、プロセッサ９１０が、特徴検知部１１０、攻撃判定部１２０、コンテクスト判断部１３０、状態遷移検知部１４０の機能を実現する攻撃検知プログラムを実行する。
【００６０】
攻撃検知装置１００に接続されるＭＥＭＳセンサ２００は複数でも良い。また、特徴検知部１１０は、実施の形態１に示すように複数の検知部により構成されていても良い。あるいは、特徴検知部１１０は、複数の検知部のいずれか、または、二つ以上の検知部により構成されていても良い。また、攻撃検知装置１００は、制御システム６００を構成するコントローラ３００の構成要素として実現されても良い。また、制御システム６００がアクチュエータを有さない場合、コンテクスト判断部１３０はセンサデータ２０１だけからコンテクストを判定しても良い。
【００６１】
＊＊＊動作の説明＊＊＊
実施の形態２の攻撃検知装置１００の動作を説明する。攻撃検知装置１００は、実施の形態１の攻撃検知装置１００に対して、さらに、コンテクスト判断部１３０、異常状態遷移検知部１４０が追加されており、制御対象５００の状態を考慮して、ＭＥＭＳセンサ２００への攻撃を検知できる。
【００６２】
コンテクストとは、制御対象５００の状態を意味する。
図１０は、状態遷移検知部が有する、状態遷移を判断するための状態遷移図である。例えば、制御対象５００が移動ロボットの場合、図１０に示すように、静止、加速、減速、等速という４つの状態が考えられる。
コンテクスト判断は、二つの効果を持つ。一つは、コンテクストに応じて特徴検知部１１０、攻撃判定部１２０の検知基準及び判定基準を変化させ、誤検知を減らすことが出来る。例えば、制御対象５００がロボットの場合、移動開始時にはセンサデータが急に変化するため、急激変化検知部１１４の検知結果である検知スコアを減少させることが考えられる。あるいは、急激変化検知部１１４の検知結果と比較を行う閾値を減少させることが考えられる。
【００６３】
コンテクスト判断のもう一つの効果は、コンテクストの異常状態を捉え、攻撃判定に用いることである。
コンテクストの異常状態を捉えるには二つの方法がある。
一つは、制御量とセンサデータとが示す制御対象５００の状態の不一致により、コンテクストの異常状態を捉える。
もう一つは、コンテクストの異常状態を、状態遷移があった場合、定義されない異常な状態遷移として捉える。
【００６４】
次に、コンテクスト判断部１３０による、コンテクストの判断方法を説明する。コンテクストは、コンテクスト判断部１３０が、制御量、センサデータの時間変化により判定する。以下では、移動ロボットを例に説明を行う。移動ロボットは、ＰＷＭ（ｐｕｌｓｅ  ｗｉｄｔｈ  ｍｏｄｕｌａｔｉｏｎ）で制御されるモータにより移動が制御され、加速度センサが搭載されていると想定する。制御量はコントローラ３００から出力される制御信号３０１からわかる。制御信号３０１はアクチュエータ４００を制御するための信号である。
図８に示すように、コンテクスト判断部１３０には、制御信号３０１とセンサデータ２０１が入力される。この場合、制御信号３０１はＰＷＭ値であり、センサデータ２０１は加速度である。
【００６５】
図１１は、コンテクスト判断部１３０がコンテクストを判断する基準を示すコンテクスト判断情報１３２である。このとき、図１１のコンテクスト判断情報１３２のように、制御量であるＰＷＭ値とセンサデータである加速度の時間変化を見ることで、図１０に示す、静止、加速、減速、等速という状態を判断できる。例えば、制御量が小さくなった場合は減速、制御量が大きくなった場合は加速、と判断できる。また、加速度が小さくなった場合は減速、加速度が大きくなった場合は加速と判断できる。ただし、制御量に変化が無い場合、どのコンテクストが適切かを判断することは出来ない。また、制御量が０のまま一定であるとき、減速か静止かまでは分かるが、そのどちらかを断定できない。その場合は、センサデータから求めたコンテクストと比較して判断する。
【００６６】
図１２は、攻撃検知装置１００の動作を示すシーケンス図である。図１２を参照して、攻撃検知装置１００の動作を説明する。
ステップＳ２１において、ＭＥＭＳセンサ２００はコントローラ３００にセンサデータ２０１を送信する。コントローラ３００は、センサデータ２０１をもとに、アクチュエータ４００をどれだけ操作するかを決定し、アクチュエータ４００を制御するための制御信号３０１をアクチュエータ４００に送信する。アクチュエータ４００は、制御対象５００に対して作用し、制御対象５００の状態が変化する。以上がフィードバック制御による制御対象５００の制御である。
【００６７】
ステップＳ２２において、ＭＥＭＳセンサ２００は、特徴検知部１１０にセンサデータ２０１を送信する。特徴検知部１１０は、センサデータ２０１に攻撃特徴が含まれるかどうかを検知し、検知結果１１０ａを攻撃判定部１２０に送信する。
【００６８】
ステップＳ２３において、ＭＥＭＳセンサ２００は、コンテクスト判断部１３０にセンサデータ２０１を送信する。
ステップＳ２４において、コントローラ３００はコンテクスト判断部１３０に、制御信号３０１を送信する。センサデータ２０１と、制御信号３０１との二つの情報をもとに、コンテクスト判断部１３０はコンテクストを判断する。コンテクスト判断部１３０は、判断した現在のコンテクスト１３１を、特徴検知部１１０、攻撃判定部１２０、状態遷移検知部１４０に送信する。
【００６９】
ステップＳ２５において、状態遷移検知部１４０はコンテクスト１３１をもとに異常状態遷移を検知し、検知結果１４１を攻撃判定部１２０に送信する。
【００７０】
攻撃判定部１２０は、特徴検知部１１０による検知結果１１０ａ，コンテクスト判断部１３０によるコンテクスト１３１，状態遷移検知部１４０による検知結果１４１をもとに、攻撃の有無を判定する。
ステップＳ２６において、攻撃判定部１２０は、判定結果１２１をコントローラ３００に送信する。コントローラ３００は、判定結果１２１に応じて、処理を行う。
【００７１】
図１３は、コンテクスト判断部１３０の動作を示すフローチャートである。図１３を参照して、コンテクスト判断部１３０の動作を説明する。コンテクスト判断部１３０は、センサデータと制御対象を制御する制御信号とに基づいて、制御対象の状態を示すコンテクストを判断する。
【００７２】
まず、図１０に示す複数のコンテクストをもとに、ステップＳ１０１において、コンテクスト判断部１３０は、制御信号３０１の示す制御量と、センサデータ２０１とから、個々にコンテクストを判断する。先の説明の通り、制御量からの判断ではコンテクストが定まらない場合がある。
【００７３】
ステップＳ１０２において、コンテクスト判断部１３０は、二つのコンテクストが一致するかを確認する。一致した場合、コンテクスト判断部１３０は、一致したコンテクストで決定する（ステップＳ１０３）。一致しない場合、コンテクスト判断部１３０は、コンテクストを不定と決定する。
【００７４】
ただし、制御量から求めたコンテクストがＡまたはＢであり、かつセンサデータ２０１から求めたコンテクストがＡのときは、コンテクストをＡと決定する。
ステップＳ１０４は、この内容を示す。
【００７５】
図１４は、異常状態遷移検知部１４０の動作を図１４に示すフローチャートで説明する。図１４を参照して状態遷移検知部１４０の動作を説明する。
【００７６】
ステップＳ２０１において、状態遷移検知部１４０はコンテクスト判断部１３０からコンテクスト１３１を受信する。
ステップＳ２０２において、状態遷移検知部１４０は、受信したコンテクスト１３１を前回に受信した直前のコンテクストと比較して状態遷移を判断する。
ステップＳ２０３において、状態遷移検知部１４０は、図１０に示す状態遷移図をもとに、直前のコンテクストからコンテクスト１３１への状態遷移が規定されない状態遷移かどうかを確認する。正常な状態遷移の場合、状態遷移検知部１４０は、正常という検知結果を攻撃判定部１２０へ送信する。異常な状態遷移の場合、状態遷移検知部１４０は、異常という検知結果を攻撃判定部１２０送信する。
【００７７】
例えば、図１０に示す状態遷移図において、静止から一定になる場合、状態遷移検知部１４０は異常状態遷移と判断できる。これは、静止状態の加速度センサへ、図３のバイアス状のセンサデータを出力させた場合に相当する。ただし、状態遷移検知部１４０は、あるコンテクストから不定への遷移は異常と判断し、不定からそれ以外のコンテクストへの遷移は正常と判断する。
【００７８】
図１５は、攻撃判定部１２０の動作を示すフローチャートで説明する。図１５を参照して、攻撃判定部１２０の動作を説明する。基本的な流れは、実施の形態１と同様である。
図１５は、状態遷移検知部１４０によって、状態遷移の異常が検知されない場合のフローチャートである。実施の形態１の図６との違いは、攻撃判定部１２０はコンテクスト１３１に応じて、攻撃判定部１２０が閾値を変更する部分である。変更される閾値とは、検知部の検知結果と比較される閾値である。図１５は図６に対して、ステップＳ３０２、ステップＳ３０３が追加されている。よって、ステップＳ３０２、ステップＳ３０３を説明する。
【００７９】
攻撃判定部１２０は閾値カウンタ１２２をリセットした後、ステップＳ３０２において、コンテクスト１３１を受信する。
【００８０】
図１６は、コンテクストと閾値の変化との対応を示す対応情報１２３である。コンテクストが決まれば、攻撃判定部１２０は、対応情報１２３によって閾値をどのように変化させればよいかがわかる。図１６の対応情報１２３では，図１０の各コンテクストと、閾値の変化との対応を示している。
攻撃判定部１２０は、コンテクスト判断部１３０の判断結果に応じて、対応特徴を示す得点に重み付けを行い、重み付けがされた得点に基づいて、センサへの攻撃が有ったか無かったかを判定する。具体的には、ステップＳ３０３において、攻撃判定部１２０は、対応情報１２３を参照して、コンテクスト１３１に応じて、閾値を変化させる。
対応情報１２３では、加速、減速、等速、静止、不定という五つのコンテクストに応じて、どのように閾値を変化させるべきかが示されている。例えば、静止状態のとき、次に動くときは大きくセンサデータが振れることが予想できるため、急な変化検知の閾値は大きくするべきである。このような考えに基づき対応情報１２３は作成されている。
このように、攻撃判定部１２０は、受信したコンテクスト１３１に応じて、閾値を変更する。
【００８１】
なお、状態遷移検知部１４０は、コンテクスト判断部１３０によって判断されたコンテクスト１３１と、コンテクスト１３１の直前のコンテクストとを用いることにより、直前のコンテクストから、コンテクスト１３１への状態遷移の異常を検知する。
攻撃判定部１２０は、状態遷移検知部１４０によって状態遷移の異常が検知された場合、センサへの攻撃が有ったと判定し、コントローラ３００に判定結果１２１として異常を通知する。あるいは、攻撃判定部１２０は、状態遷移検知部１４０によって状態遷移の異常が検知された場合には攻撃があったと判定することなく、閾値１から閾値６の全部あるいはいくつかを変更してもよい。
【００８２】
＊＊＊実施の形態２の効果の説明＊＊＊
実施の形態２では、ＭＥＭＳセンサ２００への攻撃があった場合、実施の形態１と同様に、攻撃特徴によって攻撃を検知できる。
また、攻撃検知装置１００は実施の形態１のように、センサへの加工が不要、多くのセンサで利用できるという効果のほかに、より多くの攻撃を検知でき、誤検知を減らすことが出来るという効果がある。
また、攻撃検知装置１００はコンテクスト１３１に応じて閾値を変化させるので、攻撃の誤検知を減らすことができる。
また、攻撃検知装置１００は、攻撃により異常な状態遷移が観測することで、攻撃を検知できる。
【符号の説明】
【００８３】
１，２，３，４，５，６  閾値、１０  攻撃検知システム、１１，１２，１３，１４，１５，１６  検知結果、１００  攻撃検知装置、１１０  特徴検知部、１１０ａ  検知結果、１１１  高周波検知部、１１２  振幅変化検知部、１１３  周期的変化検知部、１１４  急激変化検知部、１１５  バイアス検知部、１１６  単一正弦波検知部、１２０  攻撃判定部、１２１  判定結果、１２２  閾値カウンタ、１２３  対応情報、１３０  コンテクスト判断部、１３１  コンテクスト、１３２  コンテクスト判断情報、１４０  状態遷移検知部、１４１  検知結果、２００  ＭＥＭＳセンサ、２０１  センサデータ、３００  コントローラ、３０１  制御信号、４００  アクチュエータ、５００  制御対象、６００  制御システム、７００  攻撃検知システム、９１０  プロセッサ、９２０  メモリ、９３０  センサデータ入力インタフェース、９４０  攻撃判定結果出力インタフェース、９５０  制御信号入力インタフェース、９６０  ローパスフィルタ。
【図１】
2019207653.tif 000006
【図２】
2019207653.tif 000007
【図３】
2019207653.tif 000008
【図４】
2019207653.tif 000009
【図５】
2019207653.tif 000010
【図６】
2019207653.tif 000011
【図７】
2019207653.tif 000012
【図８】
2019207653.tif 000013
【図９】
2019207653.tif 000014
【図１０】
2019207653.tif 000015
【図１１】
2019207653.tif 000016
【図１２】
2019207653.tif 000017
【図１３】
2019207653.tif 000018
【図１４】
2019207653.tif 000019
【図１５】
2019207653.tif 000020
【図１６】
2019207653.tif 000021
【国際調査報告】
2019207653.tif 000022
2019207653.tif 000023