(57)【要約】  いくつかの実施形態において、無人航空機（「ＵＡＶ」）システムは、複数の監視ノードに関連付けることができ、各監視ノードは、ＵＡＶシステムの動作を表す一連の監視ノード値を経時的に生成する。攻撃検出コンピュータプラットフォームは、一連の現在の監視ノード値を受信し、現在の特徴ベクトルのセットを生成する。攻撃検出コンピュータプラットフォームは、（例えば、正常特徴ベクトルのセット、および被攻撃特徴ベクトルのセットを使用して作成された）少なくとも１つの決定境界を有する攻撃検出モデルにアクセスすることができる。次に、攻撃検出モデルを実行することができ、プラットフォームは、現在の特徴ベクトルのセットおよび少なくとも１つの決定境界に基づいて攻撃警告信号を送信することができる。いくつかの実施形態によれば、攻撃位置特定および／または中和機能も提供され得る。【選択図】図１
2021514504.tif 000002
【特許請求の範囲】
【請求項１】
無人航空機（「ＵＡＶ」）システムを保護するためのシステムであって、
各々が前記ＵＡＶシステムの現在の動作を表す経時的な一連の現在の監視ノード値を生成する複数の監視ノードと、
前記複数の監視ノードに結合されている攻撃検出コンピュータプラットフォームであり、
前記一連の現在の監視ノード値を受信し、現在の特徴ベクトルのセットを生成し、
正常特徴ベクトルのセットおよび被攻撃特徴ベクトルのセットを使用して作成される、少なくとも１つの決定境界を有する攻撃検出モデルにアクセスし、
前記攻撃検出モデルを実行し、前記現在の特徴ベクトルのセットおよび前記少なくとも１つの決定境界に基づいて攻撃警告信号を送信する
ための、攻撃検出コンピュータプラットフォームと
を備える、システム。
【請求項２】
前記正常特徴ベクトルのセットおよび前記被攻撃特徴ベクトルのセットのうちの少なくとも１つが、（ｉ）主成分、（ｉｉ）統計的特徴、（ｉｉｉ）ディープラーニング特徴、（ｉｖ）周波数ドメイン特徴、（ｖ）時系列分析特徴、（ｖｉ）論理的特徴、（ｖｉｉ）地理的または位置ベースの所在、および（ｖｉｉｉ）相互作用特徴のうちの少なくとも１つに関連付けられる、請求項１に記載のシステム。
【請求項３】
前記複数の監視ノードの各々からの情報が正規化され、出力が基底関数の重み付き線形結合として表される、請求項１に記載のシステム。
【請求項４】
前記監視ノードは、（ｉ）重要センサノード、（ｉｉ）アクチュエータノード、（ｉｉｉ）コントローラノード、および（ｉｖ）主要ソフトウェアノードのうちの少なくとも１つに関連付けられる、請求項１に記載のシステム。
【請求項５】
前記少なくとも１つの決定境界を含む前記攻撃検出モデルが、（ｉ）線、（ｉｉ）超平面、および（ｉｉｉ）正常空間と被攻撃空間とを分離する非線形境界のうちの少なくとも１つを含む、請求項１に記載のシステム。
【請求項６】
前記複数の監視ノードの各々について、前記ＵＡＶシステムの正常動作を表す、経時的な一連の正常監視ノード値を記憶する正常空間データソースと、
前記複数の監視ノードの各々について、前記ＵＡＶシステムの被攻撃動作を表す、経時的な一連の被攻撃ノード値を記憶する被攻撃空間データソースと、
前記正常空間データソースおよび前記被攻撃空間データソースに結合された攻撃検出モデル作成コンピュータであって、
前記一連の正常監視ノード値を受信し、前記正常特徴ベクトルのセットを生成し、
前記一連の被攻撃監視ノード値を受信し、前記被攻撃特徴ベクトルのセットを生成し、
前記正常特徴ベクトルのセットおよび前記被攻撃特徴ベクトルのセットに基づいて、前記攻撃検出モデルの前記少なくとも１つの決定境界を自動的に計算して出力する
ための、攻撃検出モデル作成コンピュータと
をさらに備える、請求項１に記載のシステム。
【請求項７】
前記一連の正常攻撃ノード値および前記一連の被攻撃攻撃ノード値のうちの少なくとも１つが高忠実度機器モデルに関連付けられている、請求項６に記載のシステム。
【請求項８】
少なくとも１つの決定境界が多次元空間内に存在し、（ｉ）動的モデル、（ｉｉ）実験データの設計、（ｉｉｉ）機械学習技法、（ｉｖ）サポートベクタマシン、（ｖ）完全実施要因プロセス、（ｖｉ）田口スクリーニング、（ｖｉｉ）中心複合方法、（ｖｉｉｉ）Ｂｏｘ−Ｂｅｈｎｋｅｎ方法、（ｉｘ）実世界動作条件、（ｘ）完全実施要因計画、（ｘｉ）スクリーニング計画、および（ｘｉｉ）中央複合計画のうちの少なくとも１つに関連付けられる、請求項６に記載のシステム。
【請求項９】
前記攻撃検出コンピュータプラットフォームはさらに、
特定の監視ノードに対して攻撃の起点を位置特定し、前記特定の監視ノードの指示とともに前記攻撃警告信号が送信される、請求項１に記載のシステム。
【請求項１０】
前記位置特定は、別の監視ノードに関連付けられた決定境界が越えられた時間と比較した、ある監視ノードに関連付けられた決定境界が越えられた時間に従って実行される、請求項９に記載のシステム。
【請求項１１】
前記攻撃検出コンピュータプラットフォームはさらに、
特定の監視ノードが対応する前記決定境界を通過したことを検出し、前記特定の監視ノードを攻撃を受けていると分類し、
前記特定の監視ノードへの前記攻撃が独立攻撃であるかまたは依存攻撃であるかを自動的に決定する、
請求項１に記載のシステム。
【請求項１２】
前記自動決定は、前記特定の監視ノードに対する前記攻撃と、別の監視ノードに対する以前に検出された攻撃との間の因果関係に少なくとも部分的に基づく、請求項１１に記載のシステム。
【請求項１３】
前記自動決定は、以前の攻撃が検出された別の監視ノードからの伝播経路の潜在的な履行に少なくとも部分的に基づく、請求項１１に記載のシステム。
【請求項１４】
前記自動決定は、潜在的な時間ウィンドウと、別の監視ノードに対する以前に検出された攻撃が検出された時間とに少なくとも部分的に基づく、請求項１１に記載のシステム。
【請求項１５】
前記潜在的な時間ウィンドウは、動的推定器モデルによる伝播時間に少なくとも部分的に基づく、請求項１４に記載のシステム。
【請求項１６】
前記伝播時間は、特徴の数、前記動的推定器モデルにおけるラグの数、および、監視ノードに関与する制御ループの時定数に基づく、請求項１５に記載のシステム。
【請求項１７】
前記複数の監視ノードおよび前記攻撃検出コンピュータプラットフォームに結合されている仮想センサであって、被攻撃監視ノードが攻撃されているという指示に応答して、
現在攻撃されていない監視ノードから受信される情報に基づいて、前記被攻撃監視ノードの一連の仮想ノード値を推定し、
前記被攻撃監視ノードからの前記一連の監視ノード値を前記仮想ノード値に置き換える、
仮想センサ
をさらに備える、請求項１に記載のシステム。
【請求項１８】
前記攻撃検出コンピュータプラットフォームはさらに、
異常な特徴値の推定される真の値を決定し、
推定される各真の値の逆変換を実行して、時系列データを含む中和された信号を生成する、
請求項１に記載のシステム。
【請求項１９】
入力信号が、産業用モノのインターネット（「ＩＩｏＴ」）に関連するセンサによって検知される時系列データに対応する、請求項１８に記載のシステム。
【請求項２０】
再生核ヒルベルト空間（「ＲＫＨＳ」）線形力学を利用した、最適化ベースのデータ駆動型プロセスを実施する弾性推定器
をさらに備える、請求項１に記載のシステム。
【請求項２１】
前記最適化プロセスは、
2021514504.tif 000041
を最小化することであり、
式中、ｅは推定誤差であり、ｙは信号空間内の測定ベクトル（例えば、センサ、アクチュエータ、および参照入力からの測定値）であり、φは、大域的特徴を有するシステムを表すために使用される大域的基底行列であり、ｘは大域的特徴ベクトルであり、Ｐは式Ｐｘ＋ｂによって記述される超平面の単位法線であり、ｂは超平面のオフセットであり、ｌ０は０次ノルムである、
請求項２０に記載のシステム。
【請求項２２】
無人航空機（「ＵＡＶ」）システムを保護するための方法であって、
前記ＵＡＶシステムのサイバー攻撃検出を実行することと、
前記ＵＡＶシステムのサイバー攻撃位置特定を実行することと、
前記ＵＡＶシステムのサイバー攻撃中和を実行することと
を含む、方法。
【請求項２３】
前記サイバー攻撃検出は、各々が、前記ＵＡＶシステムの現在の動作を表す経時的な一連の現在の監視ノード値を生成する、複数の監視ノードと関連付けられ、
前記一連の現在の監視ノード値を受信することと、
現在の特徴ベクトルのセットを生成することと、
正常特徴ベクトルのセットおよび被攻撃特徴ベクトルのセット  を使用して作成される、少なくとも１つの決定境界を有する攻撃検出モデルにアクセスすることと、
前記攻撃検出モデルを実行することと、
前記現在の特徴ベクトルのセットおよび前記少なくとも１つの決定境界に基づいて攻撃警告信号を送信することと
を含む、請求項２２に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、米国エネルギー省から授与された契約番号ＤＥＯＥ００００８３３に基づく政府支援を受けて行われた。政府は本発明に一定の権利を有する。
【背景技術】
【０００２】
無人航空機（「ＵＡＶ」）システム（例えば、調査機能を実行するドローン、ＵＡＶシステムを検査するＵＡＶ隊など）は、ますますインターネットに接続されるようになっている。その結果、これらの制御システムは、ＵＡＶシステムの運用を妨害する可能性のあるサイバー攻撃（例えば、コンピュータウイルス、悪意のあるソフトウェアなどに関連する）などの脅威に対してますます脆弱になっている。現在の方法は、主に情報技術（データを記憶、取り出し、送信、操作するコンピュータなどの「ＩＴ」）および運用技術（直接監視デバイスおよび通信バスインターフェースなどの「ＯＴ」）における攻撃検出を検討している。２０１０年にスタックスネット攻撃によって見られたように、サイバー攻撃はなおこれらの保護層を貫通して、物理的な「ドメイン」に到達する可能性がある。このような攻撃は、制御システムの性能を低下させる可能性があり、ＵＡＶの完全な停止または壊滅的な損傷を引き起こす可能性がある。現在、サイバーインシデント中に、センサ、コントローラ、アクチュエータが配置されているドメイン層における攻撃を自動的に検出するのに利用可能な方法はない。場合によっては、複数の攻撃が同時に発生する可能性がある（例えば、制御システムデバイス内部の複数のアクチュエータ、センサ、またはパラメータが、不正な当事者によって同時に悪意をもって変更される可能性がある）。ドメイン層において発生するステルス攻撃など、サイバー攻撃の一部の潜伏性の影響は容易に検出することができない場合があることに留意されたい（例えば、センサノードなどの１つの監視ノードのみが検出アルゴリズムにおいて使用されている場合）。障害および診断技術など、ＵＡＶシステムを保護する既存のアプローチは、特に、そのような複数の故障／障害診断技術はステルス攻撃を自動的に検出するように設計されていないため、複数の同時攻撃が発生した場合、これらの問題に適切に対処できない場合がある。
【０００３】
攻撃中、ＵＡＶシステム機能を維持することが重要であり得る。例えば、１つまたは複数のセンサ、アクチュエータなどがサイバー攻撃の対象である場合であっても、オペレータはドローンに動作を継続させたい場合がある。さらに、冗長構成要素（例えば、ＵＡＶシステム）ならびに／またはコントローラの任意の大きな変更および／もしくは再設計を必要とせずに、ＵＡＶシステムの保護を提供することが有利であり得る。
【発明の概要】
【０００４】
いくつかの実施形態によれば、無人航空機（「ＵＡＶ」）システムは、複数の監視ノードに関連付けることができ、各監視ノードは、ＵＡＶシステムの動作を表す一連の監視ノード値を経時的に生成する。攻撃検出コンピュータプラットフォームは、一連の現在の監視ノード値を受信し、現在の特徴ベクトルのセットを生成することができる。攻撃検出コンピュータプラットフォームは、（例えば、正常特徴ベクトルのセット、および被攻撃特徴ベクトルのセットを使用して作成された）少なくとも１つの決定境界を有する攻撃検出モデルにアクセスすることができる。次に、攻撃検出モデルを実行することができ、プラットフォームは、現在の特徴ベクトルのセットおよび少なくとも１つの決定境界に基づいて攻撃警告信号を送信することができる。いくつかの実施形態によれば、攻撃位置特定および／または中和機能も提供され得る。
【０００５】
いくつかの実施形態は、ＵＡＶシステムのサイバー攻撃検出を実行するための手段、ＵＡＶシステムのサイバー攻撃位置特定を実行するための手段、および／またはＵＡＶシステムのサイバー攻撃中和を実行するための手段を備える。
【０００６】
本明細書に開示されるいくつかの実施形態のいくつかの技術的利点は、自動的かつ正確な方法で１つまたは複数のＵＡＶをサイバー攻撃から保護するための改善されたシステムおよび方法である。
【図面の簡単な説明】
【０００７】
【図１】いくつかの実施形態によるＵＡＶシステムの高レベル概略図である。
【図２】いくつかの実施形態による、ＵＡＶシステムが危険にさらされる可能性があるいくつかの様態を示す図である。
【図３】いくつかの実施形態による、１つまたは複数のＵＡＶを保護する方法を示す図である。
【図４】いくつかの実施形態による、提供することができるシステムの高レベルブロック図である。
【図５】いくつかの実施形態によるモデル作成方法を示す図である。
【図６】いくつかの実施形態による脅威警告方法を示す図である。
【図７】いくつかの実施形態によるオフラインプロセスを示す図である。
【図８】いくつかの実施形態によるリアルタイムプロセスを示す図である。
【図９】いくつかの実施形態による、ＵＡＶエンジンに関連する例を示す図である。
【図１０】複数のドローンがシステムに関与する場合のいくつかの実施形態によるグローバル脅威保護システムの例を示す図である。
【図１１】いくつかの実施形態によるセンサ出力の３つの次元を示す図である。
【図１２】いくつかの実施形態による脅威警告システムを示す図である。
【図１３】いくつかの実施形態による、様々なパラメータの特徴ベクトルの境界および位置を示す図である。
【図１４】いくつかの実施形態による、様々なパラメータの特徴ベクトルの境界および位置を示す図である。
【図１５】いくつかの実施形態による、様々なパラメータの特徴ベクトルの境界および位置を示す図である。
【図１６】いくつかの実施形態による、経時的なパラメータ値のグラフを含む図である。
【図１７】いくつかの実施形態による、経時的なパラメータ値のグラフを含む図である。
【図１８】いくつかの実施形態による、経時的なパラメータ値のグラフを含む図である。
【図１９】いくつかの実施形態による、経時的なパラメータ値のグラフを含む図である。
【図２０】いくつかの実施形態による、経時的なパラメータ値のグラフを含む図である。
【図２１】いくつかの実施形態による、経時的なパラメータ値のグラフを含む図である。
【図２２】いくつかの実施形態による方法を示す図である。
【図２３】いくつかの実施形態によるサイバー攻撃検出システムのブロック図である。
【図２４】いくつかの実施形態による、自動攻撃位置特定システムのオフライントレーニングプロセスに関連付けられ得る方法である。
【図２５】いくつかの実施形態による特徴駆動型動的モデルおよびラグの異なるラグ数（すなわち、モデルの次数）ごとの、残差平方和（「ＲＳＳ」）とモデルパラメータの数との間の関係を示す図である。
【図２６】いくつかの実施形態による、標準状態空間構造へのＶＡＲ（ｐ）モデル変換を示す図である。
【図２７】いくつかの実施形態によるオンライン動作プロセスと関連付けられ得る方法の図である。
【図２８】いくつかの実施形態による、攻撃が独立攻撃であるか依存攻撃であるかを決定する方法を示す図である。
【図２９】いくつかの実施形態による、監視ノードのリアルタイム特徴を監視ノードのモデリング特徴と比較する攻撃の特徴時系列を示す図である。
【図３０】いくつかの実施形態による、監視ノードのリアルタイム特徴を監視ノードのモデリング特徴と比較するステルス攻撃の特徴時系列を示す図である。
【図３１】いくつかの実施形態による複数攻撃シナリオにおける攻撃位置特定の例を示す図である。
【図３２】いくつかの実施形態による、監視ノードの因果関係行列を示す図である。
【図３３】いくつかの実施形態による２つの独立攻撃に関連する攻撃依存性適合性試験の例である。
【図３４】いくつかの実施形態による、ＵＡＶシステムを保護するためのシステムの高レベルブロック図である。
【図３５】いくつかの実施形態による、ＵＡＶシステム保護方法を示す図である。
【図３６】いくつかの実施形態による、中和のための仮想センサの高レベルブロック図である。
【図３７】いくつかの実施形態による仮想センサルックアップテーブルの一部を含む図である。
【図３８】いくつかの実施形態による仮想センサ実施態様の例を示す図である。
【図３９】いくつかの実施形態による、サイバーフィジカルシステムのための特徴ベースのマルチノード仮想検知システムに関連する構成要素の高レベルブロック図である。
【図４０】いくつかの実施形態による、特徴ベースのマルチノード仮想センサのトレーニング段階プロセスのより詳細な図である。
【図４１】いくつかの実施形態による、特徴ベースのマルチノード仮想センサのアルゴリズムに関連する方法の例を示す図である。
【図４２】いくつかの実施形態による、リアルタイム測定のためのスライドウィンドウ技法を示す図である。
【図４３】いくつかの実施形態によるシステムレベルの保護ユニットの機能説明を示す図である。
【図４４】いくつかの実施形態による方法の例を示す図である。
【図４５】いくつかの実施形態による適応保護ユニットを組み込むための様々なアーキテクチャを示す図である。
【図４６】いくつかの実施形態による適応保護ユニットを組み込むための様々なアーキテクチャを示す図である。
【図４７】いくつかの実施形態による適応保護ユニットを組み込むための様々なアーキテクチャを示す図である。
【図４８】例示的な実施形態による、ＵＡＶシステムに関連するクラウドコンピューティング環境を示す図である。
【図４９】例示的な実施形態による、入力信号をフィルタリングするための脅威ニュートラライザを示す図である。
【図５０】例示的な実施形態による脅威検出のための境界および性能推定プロセスを示す図である。
【図５１】例示的な実施形態によるサイバーベースの脅威を中和する方法を示す図である。
【図５２】例示的な実施形態によるサイバーベースの脅威を中和するためのコンピューティングデバイスを示す図である。
【図５３】いくつかの実施形態による、オフライン学習およびリアルタイム実行を用いる弾性推定器を示す。
【図５４】いくつかの実施形態による、ＵＡＶシステムディスプレイを示す図である。
【図５５】いくつかの実施形態によるＵＡＶ保護プラットフォームを示す図である。
【図５６】いくつかの実施形態による表形式仮想センサデータベースの一部の図である。
【発明を実施するための形態】
【０００８】
以下の詳細な説明では、実施形態の完全な理解を提供するために、多くの特定の詳細が示されている。しかしながら、実施形態はこれらの特定の詳細なしで実施されてもよいことが、当業者によって理解されるであろう。他の例では、実施形態を不明瞭にしないように、周知の方法、手順、構成要素、および回路は詳細には説明されていない。
【０００９】
ＵＡＶシステムは、各々が個々の飛行経路を安定化させるために複数のセンサ、アクチュエータ、および／もしくはコントローラを使用する１つもしくは複数のＵＡＶ（ドローンなど）、または、目的のタスク（例えば、検査プロセス）を達成するために調整された／協調的な様式で飛行するＵＡＶのグループを含むことができる。例として、センサ、アクチュエータ、および参照入力は、慣性計測装置（「ＩＭＵ」）センサ（例えば、６つの座標、三次元運動追跡信号などを出力する）、全地球測位システム（「ＧＰＳ」）センサ受信信号（例えば、高度、緯度、経度などを出力する）、ＵＡＶ間通信センサ（例えば、位置コマンド、速度、加速度などを出力する）、カメラフィードセンサ、複数のモータ制御アクチュエータ（例えば、６つのモータの信号を出力する）、参照入力（例えば、遠隔コントロールセンターからの座標の通信）などを含んでもよい。
【００１０】
各ＵＡＶは、ネットワーク化ワイヤレス通信および制御システムを備えたサイバーフィジカルシステム（「ＣＰＳ」）の一部と見ることができる。例えば、図１は、いくつかの実施形態による、ドローン１１０ａ、１１０ｂ、１１０ｃ、オペレータデバイス１２０、および１つまたは複数の衛星を含むＵＡＶシステム１００の高レベルの概要である。システム１００のセキュリティは非常に重要であり得ることに留意されたい。各ドローン１１０ａ、１１０ｂ、１１０ｃへの情報の通信は安全かもしれないが、制御システムにおいて行われるタイムクリティカルな動作を含むネットワーク化制御システム全体は安全ではない可能性がある（その結果、悪意のある攻撃に対して脆弱である場合がある）。例えば、攻撃者は不正アクセスを取得し、妨害攻撃、なりすましセンサ読み取りを開始し、および／または、誤った信号をアクチュエータに適用して、目に見えるおよび／またはステルスの危害を引き起こす可能性がある。図２は、いくつかの実施形態による、ＵＡＶシステム２００が危険にさらされる可能性があるいくつかの様態を示す。特に、攻撃者は、ドローン２１０ａ、２１０ｂ、２１０ｃ間の通信を危険にさらし２１２、オペレータデバイス２２０とドローン２１０ａ、２１０ｂ、２１０ｃとの間の通信を危険にさらし２２２、および／または１つもしくは複数の衛星２３０とドローン２１０ａ、２１０ｂ、２１０ｃとの間の通信を危険にさらす２３２。
【００１１】
本明細書において説明する実施形態は、それらの制御システムを攻撃に対して回復力のあるものにすることにより、ＵＡＶを保護することができる。特に、システムは挙動を監視し、次いで、自己防衛手段として実質的にリアルタイムで対応策を講じて、飛行経路を保護し、任務を継続する。図３は、いくつかの実施形態による、１つまたは複数のＵＡＶを保護する方法を示す。Ｓ３１０において、システムは、（図４〜図１１に関連して説明するように）ＵＡＶシステムのサイバー攻撃検出を実施することができる。Ｓ３２０において、システムは、（図１２〜図３３に関連して説明するように）ＵＡＶシステムのサイバー攻撃位置特定を実施することができる。Ｓ３３０において、システムは、（図３４〜図５２に関連して説明するように）ＵＡＶシステムのサイバー攻撃中和を実施することができる。
【００１２】
ＵＡＶシステムはますますインターネットに接続されるようになっていることに留意されたい。その結果、ＵＡＶ制御システムは脅威に対してますます脆弱になっており、場合によっては、複数の攻撃が同時に発生する可能性がある。障害および診断技術など、ＵＡＶシステムを保護する既存のアプローチは、特に複数の同時攻撃が発生した場合、これらの脅威に適切に対処できない場合がある。したがって、ＵＡＶシステムをサイバー脅威から自動的かつ正確に保護することが望ましい。図４は、いくつかの実施形態によるシステム４００の高レベルのアーキテクチャである。システム４００は、監視ノードセンサ４１０ＭＮ１〜ＭＮＮ、「正常空間」データソース４２０、および「被攻撃空間」データソース４３０を含み得る。正常空間データソース４２０は、複数の監視ノード４１０の各々について、ＵＡＶシステムの正常動作を表す経時的な一連の正常値（例えば、モデルによって生成されるか、または、図４の破線によって示すように、実際のセンサデータから収集される）を記憶し得る。被攻撃空間データソース４３０は、監視ノード４１０の各々について、（例えば、システムがサイバー攻撃を受けているときの）ＵＡＶシステムの脅威にさらされている動作を表す一連の被攻撃値を記憶し得る。
【００１３】
正常空間データソース４１０および被攻撃空間データソース４２０からの情報は、攻撃検出モデル作成コンピュータ４６０に提供することができ、攻撃検出モデル作成コンピュータ４６０は、このデータを使用して決定境界（すなわち、脅威にさらされた挙動から正常挙動を分離する境界）を作成する。次に、決定境界は、脅威検出モデル４５５を実行する攻撃検出コンピュータ４５０によって使用することができる。脅威検出モデル４５５は、例えば、センサノード、アクチュエータノード、および／または任意の他の重要な監視ノード（例えば、センサノードＭＮ１〜ＭＮＮ）からのデータを含む監視ノード４１０からのデータのストリームを監視し、適切な場合に（例えば、オペレータへの表示のために）１つまたは複数の遠隔監視デバイス４７０に攻撃警告信号を自動的に出力することができる。本明細書において使用される場合、「自動的に」という用語は、例えば、人間がほとんどまたはまったく介入せずに実行することができる動作を指し得る。いくつかの実施形態によれば、検出される脅威に関する情報を、ＵＡＶ制御システムに送り返すことができる。
【００１４】
本明細書において使用される場合、システム４００と関連付けられるものを含むデバイス、および、本明細書において説明される任意の他のデバイスは、ローカルエリアネットワーク（「ＬＡＮ」）、メトロポリタンエリアネットワーク（「ＭＡＮ」）、広域ネットワーク（「ＷＡＮ」）、専用ネットワーク、公衆交換電話網（「ＰＳＴＮ」）、ワイヤレスアプリケーションプロトコル（「ＷＡＰ」）ネットワーク、Ｂｌｕｅｔｏｏｔｈネットワーク、ワイヤレスＬＡＮネットワーク、および／または、インターネット、イントラネットもしくはエクストラネットなどのインターネットプロトコル（「ＩＰ」）ネットワークのうちの１つまたは複数であってもよい任意の通信ネットワークを介して情報を交換することができる。本明細書において説明される任意のデバイスは、１つまたは複数のそのような通信ネットワークを介して通信することができることに留意されたい。
【００１５】
攻撃検出モデル作成コンピュータ４６０は、正常空間データソース４２０および／または被攻撃空間データソース４３０などの様々なデータストアに情報を記憶し、および／またはそこから情報を取り出すことができる。様々なデータソースは、ローカルに記憶されてもよく、または、攻撃検出モデル作成コンピュータ４６０から遠隔して存在してもよい。単一の攻撃検出モデル作成コンピュータ４６０が図４に示されているが、任意の数のそのようなデバイスが含まれてもよい。さらに、本明細書において説明される様々なデバイスは、本発明の実施形態に従って組み合わせることができる。例えば、いくつかの実施形態では、攻撃検出モデル作成コンピュータ４６０および１つまたは複数のデータソース４２０、４３０は、単一の装置を含んでもよい。攻撃検出モデル作成コンピュータ４６０の機能は、分散処理またはクラウドベースのアーキテクチャにおいて、ネットワーク化装置の集まりによって実行されてもよい。
【００１６】
ユーザは、監視デバイス４７０（例えば、パーソナルコンピュータ（「ＰＣ」）、タブレット、またはスマートフォン）の１つを介してシステム４００にアクセスして、本明細書において説明する実施形態のいずれかに従って脅威情報に関する情報を閲覧および／または管理することができる。場合によっては、対話型グラフィカルディスプレイインターフェースにより、ユーザは、特定のパラメータ（例えば、攻撃検出トリガレベル）を定義および／もしくは調整し、ならびに／または自動的に生成された推奨もしくは攻撃検出モデル作成コンピュータ４６０および／もしくは攻撃検出コンピュータ４５０からの結果を提供もしくは受信することができる。
【００１７】
例えば、図５は、図４に関して説明されたシステム４００の要素のいくつかまたはすべてによって実行され得るモデル作成方法を図示する。本明細書において説明するフローチャートは、ステップの固定順序を意味するものではなく、本発明の実施形態は、実施可能な任意の順序で実施することができる。本明細書において説明される方法のいずれかは、ハードウェア、ソフトウェア、またはこれらのアプローチの任意の組み合わせによって実行され得ることに留意されたい。例えば、コンピュータ可読記憶媒体は、機械によって実行されたときに、本明細書において説明されている実施形態のいずれかによるパフォーマンスをもたらす命令を記憶することができる。
【００１８】
Ｓ５１０において、システムは、複数の脅威ノード（例えば、監視ノード）の各々について、ＵＡＶシステムの正常動作を表す経時的な一連の正常値を取り出すことができ、正常特徴ベクトルのセットが生成され得る。同様に、Ｓ５２０において、システムは、複数の脅威ノードの各々について、ＵＡＶシステムの被攻撃動作を表す経時的な一連の被攻撃値を取り出すことができ、被攻撃特徴ベクトルのセットが生成され得る。一連の正常値および／または被攻撃値は、例えば、ＵＡＶシステム上で実験計画法（「ＤｏＥ」）を実行することによって取得することができる。Ｓ５３０において、決定境界が、正常特徴ベクトルのセットおよび被攻撃特徴ベクトルのセットに基づいて、攻撃検出モデルに対して自動的に計算され得る。いくつかの実施形態によれば、決定境界は、脅威にさらされた空間から正常空間を分離する線、超平面、非線形境界、および／または複数の決定境界に関連付けられてもよい。さらに、決定境界は、正常空間、被攻撃空間、および劣化した動作空間を分離するマルチクラス決定境界を含んでもよい。さらに、攻撃検出モデルは、決定境界、特徴マッピング関数、および／または特徴パラメータに関連付けられ得ることに留意されたい。
【００１９】
その後、決定境界を使用してサイバー攻撃を検出することができる。例えば、図６は、いくつかの実施形態による攻撃警告方法である。Ｓ６１０において、システムは、複数の監視ノードから、ＵＡＶシステムの現在の動作を表す、経時的な一連の現在値を受信することができる。次に、Ｓ６２０において、攻撃検出プラットフォームコンピュータは、受信した一連の現在値に基づいて、現在の特徴ベクトルのセットを生成することができる。Ｓ６３０において、攻撃検出モデルを実行して、現在の特徴ベクトルのセット、および、適切な場合（例えば、サイバー攻撃が検出された場合）は、決定境界に基づいて攻撃警告信号を送信することができる。いくつかの実施形態によれば、攻撃警告信号が送信されると、１つまたは複数の応答活動を実行することができる。例えば、システムは（例えば、検出された潜在的なサイバー攻撃をさらに調査するために）ＵＡＶシステムのすべてまたは一部を自動的に停止することができる。他の例として、１つまたは複数のパラメータが自動的に修正されてもよく、ソフトウェアアプリケーションがデータをキャプチャすること、および／または、考えられる原因を特定することを自動的にトリガされてもよい。
【００２０】
本明細書に記載されるいくつかの実施形態は、調整された高忠実度機器モデルおよび／または実際の「稼働中」データから事前に学習して、システムに対する単一または複数の同時の敵対的な脅威を検出することにより、制御システムの物理学を利用することができる。さらに、いくつかの実施形態によれば、すべての監視ノードデータは、先進的な特徴ベースの方法を使用して特徴に変換することができ、制御システムのリアルタイム動作を、実質的にリアルタイムで監視することができる。監視されているデータを「正常」または障害（または劣化）として分類することにより、異常を検出することができる。この決定境界は動的モデルを使用して構築することができ、脆弱性の早期検出（および場合によっては壊滅的な障害の回避）を可能にするのを助け、オペレータが制御システムを適時に正常な動作に復元することを可能にすることができる。
【００２１】
（例えば、アルゴリズムを介して）自動的に抽出され、および／または手動で入力され得る、多次元特徴ベクトルの適切なセットは、低次元ベクトル空間における測定データの良好な予測因子を含み得ることに留意されたい。いくつかの実施形態によれば、適切な決定境界は、ＤｏＥ技法に関連付けられる科学原理を介して得られるデータセットを使用して、多次元空間において構築することができる。さらに、決定境界を生成するために、複数のアルゴリズム的方法（例えば、サポートベクタマシンまたは機械学習技法）が使用されてもよい。境界は測定データ（または高忠実度モデルから生成されたデータ）によって駆動され得るため、規定の境界マージンが、多次元特徴空間に脅威ゾーンを作成するのに役立ち得る。さらに、マージンは、本質的に動的であり得、機器の過渡または定常状態モデルに基づいて適合され得、および／または、入来するデータストリームから自己学習システムのようにシステムを動作させている間に取得され得る。いくつかの実施形態によれば、教師付き学習が決定境界を教えるためのトレーニング方法を使用することができる。このタイプの教師付き学習は、システム動作に関するオペレータの知識（例えば、正常動作と異常な動作との間の差異）を考慮に入れることができる。
【００２２】
図７は、いくつかの実施形態によるオフライン境界作成プロセス７００を示す。脅威、なりすまし、攻撃ベクトル、脆弱性などに関する情報７１０を、モデル７２０ならびに／またはＤｏＥ技法を使用して作成されるトレーニングおよび評価データベース７５０に提供することができる。モデル７２０は、例えば、トレーニングおよび評価データベース７５０に記憶される特徴ベクトル７４０に組み立てられる特徴を計算するために使用される監視ノードからのデータ７３０をシミュレートすることができる。次に、トレーニングおよび評価データベース７５０内のデータを使用して、正常動作と被攻撃動作とを区別するための決定境界７６０を計算することができる。いくつかの実施形態によれば、プロセス７００は、決定境界を開発するための１つまたは複数のデータセットを形成するための、監視ノードおよび予想される攻撃ベクトルの優先順位付けを含み得る。攻撃ベクトルは、システムを脅威にさらされた／異常な空間に移動させる、ドメインレベルにおける悪意のある攻撃が作成される可能性がある、重要な入力における異常値である。さらに、モデル７２０は、データセット（例えば、脅威空間を「システム内の脅威状態のレベル対脅威ノードからの量」として記述するセット）を作成するために使用することができる高忠実度モデルを含むことができる。脅威ノードからのデータ７３０は、例えば、センサノード、アクチュエータノード、および／またはコントローラノードから６０〜８０秒の長さにわたってキャプチャされる量であってもよい（同様のデータセットが「システム内の正常動作状態のレベル対脅威ノードからの量」について取得されてもよい）。このプロセスにより、「攻撃空間」および「正常空間」のデータセットがもたらされる。特徴ベクトルを作成するために特徴エンジニアリングを使用して特徴７４０を計算するために、６０〜８０秒の長さの量を使用することができる。これらの特徴ベクトルは、次いで、（サイバー攻撃などの異常を検出するために使用される）脅威空間および正常空間のデータセットを分離する決定境界を取得するために使用することができる。
【００２３】
攻撃は多面的である可能性があるため（例えば、一度に複数の攻撃が発生する可能性がある）、ＤｏＥ実験は、（例えば、完全実施要因実験、田口スクリーニング、中心複合計画、および／またはＢｏｘ−Ｂｅｈｎｋｅｎ計画を使用して）攻撃空間をキャプチャするように設計されている可能性がある。モデルが利用可能でない場合、これらのＤｏＥ方法を使用して、実世界資産管理システムからデータを収集することもできる。実験は、例えば、同時攻撃の種々の組み合わせを使用して実行することができる。同様の実験を実行して、正常動作空間のデータセットを作成することができる。いくつかの実施形態によれば、システムは、脅威または攻撃とは対照的に、「劣化した」または欠陥のある動作を検出することができる。そのような決定は、劣化した、および／または欠陥のある動作空間のデータセットの使用を必要とする場合がある。
【００２４】
図８は、いくつかの実施形態による、ＵＡＶシステムを保護するためのリアルタイムプロセス８００を示す。８１０において、監視ノードからの現在のデータを収集することができる（例えば、６０〜８０秒のバッチにおいて）。８２０において、システムは、特徴を計算し、特徴ベクトルを形成することができる。例えば、システムは主成分分析からの重みを特徴として使用することができる。８３０において、異常検出エンジンが、特徴ベクトルの位置と決定境界とを比較して、決定を行う（および、必要に応じて警告信号を出力する）ことができる。いくつかの実施形態によれば、特徴はドメイン知識の高レベル表現であり、直感的に説明することができるため、モデル（または実際のシステム）からの監視ノードデータは、特徴に関して表現することができる。さらに、実施形態は、ベクトルとして表される複数の特徴を処理することができ、複数の検知された量の間の相互作用は、「相互作用特徴」に関して表現することができる。
【００２５】
主成分（自然基底セットによって構築された重み）および統計的特徴（例えば、時系列信号平均、分散、歪度、尖度、最大値、最小値、最大値および最小値の位置、独立成分など）を含む、多くの異なるタイプの特徴を、本明細書において説明されている実施形態のいずれかに従って利用することができることに留意されたい。他の例は、ディープラーニング特徴（例えば、実験および／または履歴データセットのマイニングによって生成される）および周波数ドメイン特徴（例えば、フーリエまたはウェーブレット変換の係数に関連付けられる）を含む。実施形態はまた、相互相関、自己相関、自己回帰の次数、移動平均モデル、モデルのパラメータ、信号の微分および積分、立ち上がり時間、整定時間、ニューラルネットワークなどのような時系列分析特徴に関連付けられてもよい。さらに他の例は、論理特徴（「はい」および「いいえ」などの意味論的抽象化を伴う）、地理的／位置の所在、および相互作用特徴（複数の脅威ノードおよび特定の場所からの信号の数学的な組み合わせ）を含む。実施形態は、任意の数の特徴を組み込むことができ、より多くの特徴により、システムが物理的プロセスおよび脅威についてさらに学習するにつれて、アプローチをより正確にすることができる。いくつかの実施形態によれば、監視ノードからの異なる値を、無単位空間に正規化することができ、これにより、簡単な方法で出力と出力の強度とを比較することが可能になり得る。
【００２６】
図９は、いくつかの実施形態による、ＵＡＶシステムに関連する例９００を示す。特に、この例は、アクチュエータおよびコントローラ攻撃を受けるコントローラおよびアクチュエータ部分９１０、ドローン状態攻撃を受けるドローン部分９２０、およびセンサ攻撃を受けるセンサ９３０を含む。ほんの一例として、センサ９３０は、高度、速度、加速度、ピッチ、ヨーなどに関連する物理および／または仮想センサを含んでもよい。アクチュエータは、例えば、モータに関連付けられ得る。ＵＡＶシステムの情報を監視することにより、脅威検出プラットフォームは、潜在的に大量の損害を引き起こす可能性のあるサイバー攻撃を（例えば、特徴ベクトルおよび決定境界を使用して）検出することが可能であり得る。
【００２７】
図１０は、複数のドローンがシステムに関与する場合のいくつかの実施形態によるグローバル脅威保護システム１０００の例である。特に、システムは３つのドローン（Ａ、Ｂ、およびＣ）を含み、脅威ノードからの値のバッチ１０１０が、一定期間（例えば、６０〜８０秒）にわたって、生成されるたびに収集される。いくつかの実施形態によれば、脅威ノードからの値のバッチ１０１０は、時間的に重複する。脅威ノードからの値１０１０は、例えば、時間（ｔ１、ｔ２など）および脅威ノードのタイプ（Ｓ１、Ｓ５など）によって配列された行列１０２０に記憶することができる。特徴エンジニアリング構成要素１０３０は、各行列１０２０内の情報を使用して、３つのドローンの各々の特徴ベクトル１０４０を作成することができる（例えば、ドローンＣの特徴ベクトル１０４０は、ＦＳＣ１、ＦＳＣ２などを含むことができる）。次に、３つの特徴ベクトル１０４０を組み合わせて、システム１０００の単一のグローバル特徴ベクトル１０５０にすることができる。相互作用特徴１０６０を適用することができ（例えば、Ａ＊Ｂ＊Ｃ、Ａ＋Ｂ＋Ｃなどに関連付けて）、異常検出エンジン１０７０は、結果を決定境界と比較し、適切な場合に脅威警告信号を出力することができる。
【００２８】
図１１は、いくつかの実施形態による脅威ノード出力の３つの次元を示す１１００。特に、グラフ１１１０は、主成分特徴（「ＰＣＦ」）に関連する次元、ｗ１、ｗ２、およびｗ３などの３つの次元において脅威ノード出力（「＋」）をプロットする。さらに、グラフ１１１０は、正常動作空間決定境界１１２０の表示を含む。単一の連続する境界１１２０が図１１に示されているが、実施形態は、複数の領域に関連付けられてもよい。ＰＣＦ情報は、縮小した次元の重みとして表されてもよいことに留意されたい。例えば、各脅威ノードからのデータは、低次元の特徴（例えば、重み）に変換されてもよい。いくつかの実施形態によれば、脅威ノードデータは以下のように正規化される：
2021514504.tif 000003
式中、Ｓは「ｋ」時点における脅威ノード量を表す。さらに、出力は以下のように基底関数の重み付き線形結合として表現することができる。
2021514504.tif 000004
式中、Ｓ０はすべての脅威の平均脅威ノード出力であり、ｗｊはｊ番目の重みであり、Ψｊはｊ番目の基底ベクトルである。いくつかの実施形態によれば、自然基底ベクトルは、脅威ノードのデータ行列の共分散を使用して取得される。基底ベクトルが分かると、以下の式を使用して重みを求めることができる（基底セットが直交していると仮定する）。
2021514504.tif 000005
重みは、特徴ベクトルにおいて使用される特徴の例であり得ることに留意されたい。
【００２９】
したがって、実施形態は、監視ノードからのリアルタイム信号を使用してマルチクラス異常動作の指示の受動的検出を可能にすることができる。さらに、検出フレームワークは、複数の地理的位置における様々なシステム（例えば、ドローン）への本発明の拡散を促進するツールの開発を可能にすることができる。いくつかの実施形態によれば、（複数のタイプの機器およびシステムにわたって）この技術によって可能にされる分散型検出システムは、調整されたデータの収集を可能にして、多面的な攻撃の検出を助ける。本明細書において説明される特徴ベースのアプローチは、新しい学習および代替のデータソースが利用可能になるときに、拡張特徴ベクトルを可能にし、および／または新しい特徴を既存のベクトルに組み込むことができることに留意されたい。その結果、システムがそれらの特性についてさらに学習すると、実施形態は比較的広範囲のサイバー脅威（例えば、ステルス、リプレイ、隠密、インジェクション攻撃など）を検出することができる。実施形態はまた、システムが有用で主要な新規の特徴を組み込み、冗長またはあまり重要でないものを除去するため、偽陽性率を低減することもできる。本明細書で説明する検出システムは、ＵＡＶシステムオペレータに早期警告を提供することができ、結果、攻撃を阻止することができ（または攻撃の影響を鈍らせることができ）、機器への損傷が軽減されることに留意されたい。
【００３０】
いくつかの実施形態によれば、システムはさらに、脅威の起点を特定の監視ノードに位置特定することができる。例えば、位置特定は、別の監視ノードに関連付けられた決定境界が越えられた時間と比較した、ある監視ノードに関連付けられた決定境界が越えられた時間に従って実行することができる。いくつかの実施形態によれば、特定の監視ノードの指示は、脅威警告信号に含まれ得る。
【００３１】
アルゴリズムのいくつかの実施形態は、高忠実度物理学モデルおよび／または（アルゴリズムが任意のシステムに配備されることを可能にする）機械動作データに基づく特徴ベースの学習技法を利用して、高次元の決定境界を確立することができる。その結果、複数の信号を使用してより正確に検出を行うことができ、誤検出を少なくして検出がより正確になる。さらに、実施形態は、制御信号に対する複数の攻撃を検出し、根本原因の攻撃がどこで発生したかを理論付けることができる。例えば、アルゴリズムは、前の信号攻撃が原因で信号が異常であるか否か、または代わりに独立して攻撃を受けているか否かを判断することができる。これは、例えば、特徴の進展を監視すること、および、攻撃と攻撃との間の時間遅延を考慮することによって実現することができる。
【００３２】
サイバー攻撃検出および位置特定アルゴリズムは、リアルタイムのＵＡＶ信号データストリームを処理し、次いで、その後に信号特有の決定境界と比較することができる特徴（複数の識別子）を計算することができる。いくつかの実施形態による、信号特有のＵＡＶサイバー攻撃検出および位置特定アルゴリズムを利用するシステム１２００のブロック図が、図１２に提供されている。特に、ドローン１２３２は、センサ１２３４に情報を提供し、これは、電子機器およびプロセッサ１２３６を有するコントローラがアクチュエータ１２３８を調整するのを助ける。脅威検出システム１２６０は、正常データ１２１０および／または脅威データ１２２０を作成するために、ドローン１２３２に関連付けられた１つまたは複数の高忠実度物理学ベースモデル１２４２を含むことができる。正常データ１２１０および脅威データ１２２０は、特徴発見構成要素１２４４によってアクセスすることができ、オフライン中に（例えば、必ずしもドローン１２３２が動作している間である必要はない）決定境界アルゴリズム１２４６によって処理することができる。決定境界アルゴリズム１２４６は、様々な監視ノードの決定境界を含む脅威モデルを生成することができる。各決定境界は、各監視ノード信号（例えば、センサ１２３４、コントローラ１２３６、および／またはアクチュエータ１２３８からの）について正常データ１２１０および脅威データ１２２０を使用してサポートベクタマシンなどのバイナリ分類アルゴリズムを実行することによって構築される高次元空間において２つのデータセットを分離することができる。
【００３３】
リアルタイム脅威検出プラットフォーム１２５０は、監視ノードからのデータのストリームと共に境界を受信することができる。プラットフォーム１２５０は、各監視ノード要素１２５２に対する特徴抽出と、信号特有の決定境界を使用して個々の信号における攻撃を検出するとともに、複数の信号への攻撃を理論付け、いずれの信号が攻撃されて、位置特定モジュール１２５６を介してシステムへの以前の攻撃に起因して異常になったかを宣言するアルゴリズムを用いた正常性決定１２５４とを含むことができる。適応要素１２５８は、異常決定指示（例えば、脅威警告信号）、コントローラ動作、および／または被攻撃監視ノードのリストなどの出力１２７０を生成することができる。
【００３４】
リアルタイム検出の間、制御信号データの連続したバッチは、プラットフォーム１２５０によって処理、正規化することができ、特徴ベクトルを抽出することができる。次に、高次元特徴空間における各信号のベクトルの位置を、対応する決定境界と比較することができる。攻撃領域内にある場合、サイバー攻撃を宣言することができる。アルゴリズムは、次いで、攻撃が元々どこで発生したかについて決定を下すことができる。攻撃は時としてアクチュエータ１２３８上で行われ、次いで、センサ１２３４のデータに現れる場合がある。攻撃がセンサ、コントローラ、またはアクチュエータに関連しているか否かを特定する（例えば、監視ノードのいずれの部分かを示す）ために、決定後モジュール（位置特定要素１２５６など）において攻撃評価が実行され得る。これは、経時的に、硬決定境界に関する特徴ベクトルの位置を個別に監視することによって行うことができる。例えば、センサ１２３４がスプーフィングされると、被攻撃センサ特徴ベクトルは、図１３〜図２１に関して説明されるように、残りのベクトルよりも早く、硬決定境界を越える。センサ１２３４が異常であると宣言され、補助機器へのコマンドが後で異常であると判定された場合、信号なりすましなどの元の攻撃がセンサ１２３４上で発生したと判定され得る。逆に、補助機器への信号が最初に異常であると決定され、次いで、センサ１２３４フィードバック信号に後に現れた場合、機器への信号が最初に攻撃されたと判定され得る。
【００３５】
いくつかの実施形態によれば、位置特定された決定境界および特定の信号特徴のリアルタイム計算を使用することにより、信号が正常動作空間（または異常空間）にあるか否かを検出することができる。さらに、アルゴリズムは、攻撃されている補助装置への信号と比較して、攻撃されているセンサを区別することができる。制御中間パラメータと制御論理（複数可）は、同様の方法を使用して分析することもできる。アルゴリズムは、異常になる信号を理論付けることができることに留意されたい。その後、信号への攻撃を識別することができる。
【００３６】
図１３は、いくつかの実施形態による、様々な監視ノードパラメータの境界および特徴ベクトルを示す１３００。特に、各パラメータについて、グラフは、値の重み１（「ｗ１」）、特徴１を表す第１の軸と、値の重み２（「ｗ２」）、特徴２を表す第２の軸とを含む。ｗ１およびｗ２の値は、例えば、入力データに対して実行される主成分分析（「ＰＣＡ」）からの出力に関連付けられ得る。ＰＣＡは、データを特徴付けるためにアルゴリズムによって使用され得る特徴の１つであり得るが、他の特徴が利用されてもよいことに留意されたい。
【００３７】
高度１３１０、速度１３２０、加速度１３３０、緯度１３４０、経度１３５０、およびモータ制御信号１３６０のグラフが与えられる。各グラフは、平均境界１３１２（実線）、最小境界１３１６（点線）、および最大境界１３１１（破線）、ならびに、各監視ノードパラメータの現在の特徴の場所に関連付けられる指示（グラフ上の「Ｘ」によって示される）を含む。図１３に示すように、現在の監視ノードの位置は、最小境界と最大境界との間にある（すなわち、「Ｘ」は点線と破線との間にある）。その結果、システムはＵＡＶシステムの動作が正常である（システムが現在攻撃を受けていることを示す脅威が検出されていない）と決定することができる。
【００３８】
図１４は、これらのパラメータの後続の境界および特徴ベクトルを示す１４００。例えば、高度の特徴ベクトルの動き１４１２を考える。特徴ベクトル１４１２は移動しているが、それは依然として最大境界および最小境界内にあり、その結果、その監視ノードの正常動作が決定され得る。これは、図１４の最初の５つのグラフに当てはまる。この例では、モータ制御信号の特徴ベクトルの動き１４６２が最大境界を超えており、その結果、その監視ノードの異常な動作が決定され得る。例えば、修正値であるモータ制御信号較正定数にとって脅威が存在する場合がある。その結果、図１４に示される中間制御信号の特徴が動き１４６２、結果、当該特徴が異常になる。アルゴリズムがこのサイバー攻撃を検出し、２つの並列動作が開始され得る。１つの動作は、攻撃されたものを発見するための信号の後処理であり得、この事例において、システムがモータ挙動を監視していた場合、それらのいずれも現在異常でないと結論付けることができる。したがって、この特徴の計算に使用された何かが攻撃されたと決定することができる。他方の動作は、さらなる攻撃を継続的に監視および検出することであり得る。そのようなアプローチは、複数の信号攻撃の検出を容易にすることができる。
【００３９】
図１４の例を所与として、モータ制御信号が攻撃されたと仮定する。これにより、他の信号を異常な状態にするような様式でシステムが応答する場合がある。これは図１５に示されており１５００、攻撃はすでに検出されており、この時点で他の信号が異常であることが示されている。特に、高度１５１２、速度１５２２、加速度１５３２、および緯度１５４２についての特徴の動きは（モータ制御信号１５６２の特徴ベクトルに加えて）すべて異常になった。経度の特徴ベクトルは異常にならなかったことに留意されたい。これらの信号１５１２、１５２２、１５３２、１５４２が本当に現在攻撃を受けているか否かを判断するために、関連する特徴ベクトル情報を含む履歴バッチをある期間にわたって保持することができる。次に、別の信号に対する攻撃が検出された場合、このバッチが試験され、モータ制御信号およびいくつかの後続の要素に対する確認された攻撃が分析される時点。
【００４０】
１つの信号の理論付けがシステムの時間遅延に関連付けられ得ることに留意されたい。すなわち、センサが攻撃された後、システムが定常状態に戻るまでに一定の時間がかかる場合がある。この遅延の後、任意の信号が異常になるのは、システム応答ではなく、攻撃が原因である可能性がある。
【００４１】
監視ノードの異常状態を検出する現在の方法は、それ自体が非常に制限されている障害検出分離および適応（「ＦＤＩＡ」）に限定される。本明細書に記載のサイバー攻撃検出および位置特定アルゴリズムは、センサの異常信号を検出することができるだけでなく、補助装置に送信される信号を検出し、中間パラメータを制御し、および／または、論理（複数可）を制御することもできる。このアルゴリズムは、複数の信号攻撃を理解することもできる。サイバー攻撃脅威を正しく識別することに伴う１つの課題は、複数のセンサがマルウェアの影響を受けた状態で発生する可能性があることである。一部の実施形態によれば、アルゴリズムは、攻撃が発生したこと、いずれのセンサ（複数可）が影響を受けたかをリアルタイムで識別し、障害応答を宣言することができる。このような結果を達成するには、許容可能な決定境界を作成するために、システムの詳細な物理的応答を知る必要がある。これは、例えば、高忠実度モデルに対してＤｏＥ実験を実行することによって、正常領域および異常領域のデータセットを構築することによって実現することができる。各センサのデータセットは、所与の脅威値（例えば、ＵＡＶ速度、高度など）の特徴ベクトルを含む場合がある。完全実施要因、田口スクリーニング、中心複合計画、およびＢｏｘ−Ｂｅｈｎｋｅｎは、攻撃空間を作成するために使用される既知の設計手法の一部である。モデルが利用可能でない場合、これらのＤｏＥ方法を使用して、実世界ＵＡＶシステムからデータを収集することもできる。実験は、同時攻撃の種々の組み合わせにおいて実行することができる。いくつかの実施形態において、システムは、サイバー攻撃とは対照的に、劣化した／欠陥のある動作を検出することができる。そのような決定は、劣化した／障害のある動作空間に関連するデータセットを利用し得る。このプロセスの終わりに、システムは、決定境界を構築する間に使用するための「攻撃ｖ／ｓ正常」および「劣化ｖ／ｓ正常」などのデータセットを作成することができる。さらに、特徴空間内のデータセットを使用して、信号ごとに決定境界を作成することができることに留意されたい。さまざまな分類方法を使用して、決定境界を計算することができる。例えば、バイナリ線形および非線形教師付き分類器は、決定境界を取得するために使用することができる方法の例である。
【００４２】
複数のベクトル特性を試験することができ、図１３〜図１５に関連して説明されている情報を処理して、攻撃が検出されたときに信号が特定の方向に傾向を有していたか否か（または、単にノイズに起因して移動していたか否か）を決定することができる。攻撃が行われたときに信号が一様な傾向を示していた場合、その後、この信号は元の攻撃に対する応答であり、独立攻撃ではない。これは、図１６〜図２１に示されている。この信号が攻撃中および攻撃後に比較的停滞し、その後異常になった場合、これは独立攻撃を特徴付ける。
【００４３】
特に、図１６は、第１の値ｗ１  １６１０および第２の値ｗ２  １６２０を含む、経時的な高度値の進展を示す１６００。「第１の」（発生時間に関して）矢印１６３０は、ＵＡＶ高度への攻撃の時点を示す（また、図１７〜図２１において同じスポット／時点に位置する）。中央の矢印１６４０は、特徴ベクトルを形成するためにともに取られたｗ１およびｗ２が異常になった（すなわち、特徴ベクトルが境界を通過した）ときを示している。このイベントは各センサについて同じスポット／時点ではないが、一時的に攻撃が宣言されたこと、および一時的な攻撃が最初の攻撃の後に始まったことを示している。したがって、高度、速度、加速度、および緯度のセンサにおいて検出された異常は、攻撃に応答していると決定され、独立して攻撃を受けているとは決定されない。最後の矢印１６５０は、攻撃が別のセンサ（速度であり、図１７〜図２１内で同じ位置にある）上で検出されたときを示す。特徴ベクトルは大きな変化を示しており、特徴ベクトルは整定しており、したがって別個の攻撃を示していることに留意されたい。そのため、複数のセンサへの攻撃の理論付けに成功している。
【００４４】
図１７は、第１の値ｗ１  １７１０および第２の値ｗ２  １７２０を含む、経時的な速度値の進展を示す１７００。図１８は、第１の値ｗ１  １８１０および第２の値ｗ２  １８２０を含む、経時的な加速度値の進展を示す１８００。図１９は、第１の値ｗ１  １９１０および第２の値ｗ２  １９２０を含む、経時的な緯度値の進展を示す１９００。図２０は、第１の値ｗ１  ２０１０および第２の値ｗ２  ２０２０を含む、経時的なモータ制御信号値の進展を示す２０００。図２１は、第１の値ｗ１  ２１１０および第２の値ｗ２  ２１２０を含む、経時的なＵＡＶヨー値の進展を示す２１００。
【００４５】
図１６〜図２１では、ヨーに対する攻撃が検出された。それが実際にＵＡＶヨーセンサであることを検証するために、ＵＡＶヨーを構成する個々の信号が評価され得る。センサレベルにおいて異常がない場合、ＵＡＶヨーの異常は信号への攻撃と宣言される。センサレベルにおいて異常がある場合、ＵＡＶヨー信号は、異常なセンサへの応答に起因する異常であると宣言される。この場合、後処理は表示されない。ＵＡＶヨーセンサの異常の検出、および順次的応答を理論付ける方法は、図１６〜図１９が各々、３つの矢印、ならびに、４つのセクション、すなわち、第１の矢印１６３０の前のセクション、第１の矢印１６３０と中央の矢印との間のセクション、中央の矢印と最後の矢印１６５０との間のセクション、および最後の矢印１６５０の後のセクションを有することに留意することによって理解することができる。図２０および図２１は各々、２つの矢印、ならびに、３つのセクション、すなわち、第１の矢印１６３０の前のセクション、第１の矢印１６３０と最後の矢印１６５０との間のセクション、および最後の矢印１６５０の後のセクションを有する。図２０では、モータ制御信号が異常であると決定されたことがないため、中央の矢印はない。ＵＡＶヨーが最初の攻撃であり、したがって、攻撃が軽減されるまで、ＵＡＶヨーは再び異常と宣言されないため、図２１には中央の矢印がない。
【００４６】
図１６〜図２１の各々における第１の矢印１６３０の前のセクションは、ＵＡＶヨーでの異常の検出前の正常動作条件での監視ノードの特徴を示している。図１６〜図１９の第１の矢印１６３０と中央の矢印との間のセクションは、それら自体が異常であると検出される前の信号からの応答を示す。これは、検出が応答として分類され得る場所である。図１６〜図１９では、ｗ１およびｗ２は、第１の矢印１６３０によって示されている、ＵＡＶヨー攻撃の検出が発生した瞬間から一様に傾向を有することに注意されたい。これは、ＵＡＶヨーに応答して特徴が進展していることを意味する。これらの監視ノードは、ＵＡＶヨーセンサへの攻撃に起因する異常として分類される。各信号は、中央の矢印（縮小した次元における決定境界を表す）を通過すると、異常と宣言されている。中央の矢印と最後の矢印１６５０との間のセクションは、最初の攻撃の後に特徴が定常状態に戻ることを示している。この時点で、特徴は依然として異常な状態だが、定常状態にあり、信号が以前の攻撃に応答していないと決定され得る。次に、速度センサへの攻撃が開始され、最後の矢印１６５０によって示される。速度センサの特徴ベクトルはすでに異常な状態にあったが、それは定常状態であり、したがって、特徴ベクトルの急激なジャンプが、独立攻撃を特徴付ける。最後の矢印１６５０の後のセクションに示すように、他の信号は応答するが、この方法を繰り返すと、これらの応答は独立攻撃ではなく、第２の攻撃に対する応答であると結論付けられる。
【００４７】
したがって、実施形態は、監視ノードからのリアルタイム信号を使用してマルチクラス異常動作の指示の受動的検出を可能にすることができる。さらに、検出フレームワークは、複数の地理的位置における様々なシステム（様々なタイプの自律車両など）への本発明の拡散を促進するツールの開発を可能にすることができる。いくつかの実施形態によれば、（複数のタイプの機器およびシステムにわたって）この技術によって可能にされる分散型検出システムは、調整されたデータの収集を可能にして、多面的な攻撃の検出を助ける。本明細書において説明される特徴ベースのアプローチは、新しい学習および代替のデータソースが利用可能になるときに、拡張特徴ベクトルを可能にし、および／または新しい特徴を既存のベクトルに組み込むことができることに留意されたい。その結果、システムがそれらの特性についてさらに学習すると、実施形態は比較的広範囲のサイバー脅威（例えば、ステルス、リプレイ、隠密、インジェクション攻撃など）を検出することができる。実施形態はまた、システムが有用で主要な新規の特徴を組み込み、冗長またはあまり重要でないものを除去するため、偽陽性率を低減することもできる。本明細書で説明する検出システムは、ＵＡＶシステムオペレータに早期警告を提供することができ、結果、攻撃を阻止することができ（または攻撃の影響を鈍らせることができ）、機器への損傷が軽減されることに留意されたい。
【００４８】
図２２は、図１に関して説明されたシステム１００の要素のいくつかまたはすべてによって実行され得る別の方法を図示する。Ｓ２２１０において、複数のリアルタイム監視ノード信号入力は、ＵＡＶシステムの現在の動作を表す、経時的な監視ノード信号値のストリームを受信することができる。監視ノード（例えば、制御ノードなど）の少なくとも１つは、例えば、センサデータ、補助機器入力信号、制御中間パラメータ、バルブ、回路遮断器、および／または制御論理値に関連付けられてもよい。
【００４９】
Ｓ２２２０において、脅威検出コンピュータプラットフォームは、監視ノード信号値のストリームを受信し、監視ノード信号値の各ストリームについて、現在の監視ノード信号値を使用して現在の監視ノードの特徴ベクトルを生成することができる。特徴ベクトルの生成は、特徴変換、恒等変換、および特徴ベースの動的モデルの１つを介した処理を含み得ることに留意されたい。いくつかの実施形態によれば、現在の監視ノード特徴ベクトルの少なくとも１つは、主成分、統計的特徴、ディープラーニング特徴、周波数ドメイン特徴、時系列分析特徴、論理的特徴、地理的または位置ベースの所在、および／または相互作用特徴に関連付けられる。
【００５０】
Ｓ２２３０において、生成された各現在の監視ノード特徴ベクトルを、その監視ノードの対応する決定境界（例えば、線形境界、非線形境界、多次元境界など）と比較することができ、決定境界はその監視ノードについて正常状態を異常状態から分離する。いくつかの実施形態によれば、少なくとも１つの監視ノードが複数の多次元決定境界に関連付けられ、Ｓ２２３０における比較は、それらの境界の各々に関連して実行される。決定境界は、例えば、特徴ベースの学習アルゴリズムおよび高忠実度モデルまたはＵＡＶシステムの正常動作に従って生成され得ることに留意されたい。さらに、少なくとも１つの決定境界が多次元空間内に存在し、完全実施要因計画、田口スクリーニング計画、中心複合計画、Ｂｏｘ−Ｂｅｈｎｋｅｎ計画、および実世界動作条件計画などの実験計画法から得られるデータを使用して構築される動的モデルに関連付けられ得る。さらに、いくつかの実施形態によれば、決定境界に関連付けられる脅威検出モデルは、動的に取得され得、過渡条件、ＵＡＶシステムの定常状態モデル、および／または、入来するデータストリームから自己学習システムのようにシステムが動作している間に取得されるデータセットに基づいて適合され得る。
【００５１】
Ｓ２２４０において、Ｓ２２３０において識別された攻撃は、本明細書において説明されている実施形態のいずれかに従って「独立攻撃」または「依存攻撃」のいずれかに分類され得る。例えば、分類は、図２８に関して説明するように、因果関係試験、伝播経路達成試験、および／または時間分離試験などに基づき得る。Ｓ２２５０において、システムは、攻撃の分類（例えば、Ｓ２２４０において決定されたとおり）および影響を受けるノードとともに、Ｓ２２３０において実行された比較の結果に基づいて、脅威警告信号（例えば、通知メッセージなど）を自動的に送信することができる。脅威は、例えば、アクチュエータ攻撃、コントローラ攻撃、監視ノード攻撃、ドローン状態攻撃、なりすまし、物理的損傷、ユニット可用性、ユニットトリップ、ユニット寿命の損失、および／または、少なくとも１つの新しい部品を必要とする資産損傷に関連している可能性がある。いくつかの実施形態によれば、脅威警報信号が送信されると、１つまたは複数の応答活動を実行することができる。例えば、システムは（例えば、検出された潜在的なサイバー攻撃をさらに調査するために）ＵＡＶシステムのすべてまたは一部を自動的に停止することができる。他の例として、１つまたは複数のパラメータが自動的に修正されてもよく、ソフトウェアアプリケーションがデータをキャプチャすること、および／または、考えられる原因を特定することを自動的にトリガされてもよい。スレッド警告信号は、ＰＲＥＤＩＸ（登録商標）フィールドエージェントシステムなどのクラウドベースのシステムを介して送信されてもよいことに留意されたい。いくつかの実施形態によれば、クラウドアプローチはまた、情報をアーカイブするために、および／または境界に関する情報を記憶するために使用されてもよいことに留意されたい。
【００５２】
いくつかの実施形態によれば、システムはさらに、脅威の起点を特定の監視ノードに位置特定または他の様態で分析することができる。例えば、位置特定は、別の監視ノードに関連付けられた決定境界が越えられた時間と比較した、ある監視ノードに関連付けられた決定境界が越えられた時間に従って実行することができる。いくつかの実施形態によれば、特定の監視ノードの指示は、脅威警告信号に含まれ得る。図２２の方法において、システムは攻撃を「独立攻撃」（例えば、いかなる以前の攻撃とも無関係の新しい攻撃）または「依存攻撃」（例えば、以前に検出された攻撃から生じる異常な状態）のいずれかに自動的に分類することができる。
【００５３】
本明細書に記載されるいくつかの実施形態は、調整された高忠実度機器モデルおよび／または実際の「稼働中」データから事前に学習して、システムに対する単一または複数の同時の敵対的な脅威を検出することにより、ＵＡＶシステムの物理学を利用することができる。さらに、いくつかの実施形態によれば、すべての監視ノードデータは、先進的な特徴ベースの方法を使用して特徴に変換することができ、ＵＡＶシステムのリアルタイム動作を、実質的にリアルタイムで監視することができる。監視されているデータを「正常」または障害（または劣化）として分類することにより、異常を検出することができる。この決定境界は動的モデルを使用して構築することができ、脆弱性の早期検出（および場合によっては壊滅的な障害の回避）を可能にするのを助け、オペレータがＵＡＶシステムを適時に正常な動作に復元することを可能にすることができる。
【００５４】
したがって、いくつかの実施形態は、例えば、主要なＵＡＶ制御センサに対するサイバー攻撃を検出するための高度な異常検出アルゴリズムを提供することができる。アルゴリズムは、制御信号特有の決定境界を使用して、いずれの信号（複数可）が攻撃されているかを識別することができ、調節的な動作を取るようにＵＡＶシステムに通知することができる。特に、検出および位置特定アルゴリズムは、センサ、補助機器入力信号、制御中間パラメータ、または制御論理が正常状態にあるかまたは異常状態にあるかを検出し得る。分析され得るＵＡＶ監視ノードのいくつかの例は、重要な制御センサ、制御システム中間パラメータ、補助機器入力信号、および／またはコントローラへの論理コマンドを含む。
【００５５】
サイバー攻撃検出および位置特定アルゴリズムは、リアルタイムのＵＡＶ信号データストリームを処理し、次いで、その後にセンサ特有の決定境界と比較することができる特徴（複数の識別子）を計算することができる。いくつかの実施形態では、特徴を生成することは、単に恒等変換を実行することを含み得る。すなわち、元の信号がそのまま使用される場合がある。
【００５６】
ＵＡＶシステムは、様々な動作パラメータにわたって非線形動作に関連付けられ得ることに留意されたい。その結果、データ変動が大きくなり得、制御システムの動作に基づいてサイバー脅威が存在する時期を決定することが困難になる場合がある。図２３は、いくつかの実施形態によるサイバー攻撃検出システム２３００のブロック図を示す。特に、システム２３００は、速度などに関する情報を正規化関数２３２０に送信する（例えば、ＵＡＶユニットコントローラに関連付けられる）ドローン２３１０を示す。ドローン２３１０はまた、情報をモード処理４９３２０（例えば、ＵＡＶの報告される動作モード）および特徴処理２３４０（例えば、ＵＡＶユニットデータ）に送信することもできる。正規化関数２３２０は、例えば、正規化された監視ノード信号を特徴処理２３４０に送信することができる。後処理２３５０は、特徴処理２３４０から情報を受信し、データを決定処理２３７０（正常／攻撃データセット記憶ユニット２３６０から受信されるデータセットに少なくとも部分的に基づいて、サイバー攻撃警告を自動的に作成できる）に送信することができる。
【００５７】
図２４は、いくつかの実施形態による、自動攻撃位置特定システムのオフライントレーニングプロセスに関連付けられ得る方法２４００である。トレーニング段階（オフライン）の間、トレーニング正常データセット２４１０およびトレーニング攻撃データセット２４２０を使用して、サポートベクタマシンなどのデータ駆動型学習方法を使用して、特徴空間にローカル決定境界を作成することができる。特に、Ｓ２４１０において、トレーニング正常データセット２４１０からの情報を使用して特徴を抽出することができ、特徴は、その後、Ｓ２４２０において特徴時系列を作成するために使用される。次に、システムは、Ｓ２４３０において、各監視ノードの特徴空間内で動的システム識別を実行して、適切な動的モデルを作成することができる。
【００５８】
Ｓ２４４０において、トレーニング正常データセット２４１０、トレーニング攻撃データセット２４２０、および動的モデルからの情報を使用して、特徴を生成し、決定境界を作成することができる。次に、システムは、Ｓ２４５０において各監視ノードに必要に応じてローカル決定境界を作成することができる。各境界に使用される特徴の数は、検出率および誤警報率の最適化に基づいて選択される場合があることに留意されたい。また、特徴抽出および境界生成プロセスは、あらゆる監視ノード上で個別に実行することができることにも留意されたい。同様にして、特徴の値が経時的に進展するときに、動的システム識別に使用するために特徴を抽出することができる。動的モデリングに使用される特徴は、例えば、トレーニング正常データセット２４１０（または攻撃および正常動作挙動を伴うモデルから生成されるデータセット）からのものであり得る。トレーニング正常データセット２４１０から抽出された特徴は、物理空間内の時系列データにわたってスライディング時間ウィンドウを使用して、特徴空間内の特徴進展の新しい時系列を作成することができる。その後、特徴時系列を動的モデリングに使用することができる。動的モデルは、例えば、状態空間フォーマットであってもよい。
【００５９】
いくつかの実施形態によれば、多変量ベクトル自己回帰（「ＶＡＲ」）モデル手法を使用して、動的モデルを特徴時系列データに適合させることができる。ＶＡＲモデルは、例えば、以下の形式を有することができる。
ｙ（ｋ＋１）＝Ａ１ｙ（ｋ）＋Ａ２ｙ（ｋ−１）＋・・・＋Ａｐ（ｋ−ｐ＋１）＋ｂ＋ｅ（ｋ）
式中、ｙ（ｋ）はサンプル時点ｔにおける多変量特徴時系列の値であり、ｐはモデル内のラグ（すなわち遅延）の数であり、ｂは定数のアフィン項であり、ｅ（ｋ）は白色ガウスランダムノイズである。ｙベクトルのサイズｍは、選択される特徴の数と等しいものであり得る。監視ノードごとにＶＡＲ（ｐ）モデルを識別することができ、その結果、各ノードの行列Ａ１〜Ａｐ、ｂベクトル、およびｅの共分散行列Ｑが得られる。
【００６０】
ＶＡＲモデルのラグの数が増えると、モデルはトレーニングデータセットにより良好に適合するが、推定すべきモデルのパラメータｎは増える。例えば、図２５は、いくつかの実施形態による、特徴駆動型動的モデルの残差平方和（「ＲＳＳ」）、ラグ、およびモデルパラメータの数の間の関係を示す２５００。特に、第１のグラフ２５１０は、１〜１５のラグの特徴動的モデルのＲＳＳを示している。ＶＡＲ（ｐ）モデルのモデル内のパラメータの数には、ｍ＝５個の特徴であり得る（したがって、５つの個別パラメータがグラフに含まれ得る）ことに留意されたい。ラグの数が増えると、ＲＳＳは減少する。第２のグラフ２５２０は、１〜１５の各ラグのモデルパラメータの数を示している。ラグの数が増えると、モデルパラメータの数が増えることに留意されたい。
【００６１】
ＶＡＲモデルの次数ｐは、ベイズ情報量基準（「ＢＩＣ」）または赤池情報量基準（「ＡＩＣ」）を使用して自動的に選択することができる。ＢＩＣは、（例えば、過剰適合を回避するための）モデル適合性と複雑さとの間の適切なバランスを提供することができることに留意されたい。システムは、特徴の加重平均を使用して、異なるラグ数ごとのＢＩＣを計算することができる。加重平均ＢＩＣを計算する際、各特徴のＢＩＣ値は特徴の大きさによって加重され得、結果、より大きい特徴はより大きく重み付けされ、そのため、より適切なモデルをそれらの特徴に適合させることがより重要になる。モデル内のラグ数ｐは、このとき、加重平均ＢＩＣを最小化するｐの値に基づいて選択される。次に、識別されたＶＡＲ（ｐ）モデルを、図２６に示されるように、標準状態空間構造に変換することができる２６００。このプロセスは、監視ノードごとに別個に実行することができ、これは、各監視ノードのｐの異なる値の結果であり得る。図２６の変換２６００は、以下のようにコンパクトな形で書くことができることに留意されたい。
ｘ（ｋ＋１）＝Ａｘ（ｋ）＋Ｂｕ（ｋ）＋Ｅｅ（ｋ）
ｙ（ｋ）＝Ｃｘ（ｋ）
式中、ｕ（ｋ）は、アフィン項に対応するための架空の単位ステップ入力である。トレーニング段階中、このような状態空間特徴駆動型動的モデルが、監視ノードごとに１つ構築され得る。本明細書においてはＶＡＲモデリング手法が説明されているが、実施形態のいずれかにおいては他のモデリング手法（例えば、マルコフモデル手法）が代わりに使用されてもよいことに留意されたい。
【００６２】
図２７は、いくつかの実施形態による、オンライン動作プロセスに関連付けられ得る方法である。Ｓ２７１０において監視ノードを観察した後、Ｓ２７２０において、各監視ノードの各観察から特徴が抽出される。次に、トレーニング段階で識別された動的モデルを使用して、各モデルは、Ｓ２７３０において、カルマンフィルタリングなどの確率論的推定手法を使用して、フィルタリングまたは推定された特徴を生成する。いくつかの実施形態では、動的モデルは、特徴をさらにフィルタリングまたは推定するために必要とされない場合がある。確率的推定器に必要なプロセスノイズの共分散行列は、ここではＱとして容易に利用可能であり、これは、トレーニング段階中にエラー項ｅ（ｔ）の共分散として計算することができる。次に、Ｓ２７４０において、各確率的推定器の出力が、同じくトレーニング段階中に計算され、事前に記憶される、その対応するローカル決定境界と比較される。Ｓ２７４０においてローカル境界を通過しない場合、Ｓ２７５０において監視ノードは正常である。Ｓ２７６０において、対応する決定境界に違反する推定特徴を有する各監視ノードが、攻撃を受けていると報告される。
【００６３】
次の段階において、システムは位置特定された攻撃を後処理し、Ｓ２７７０において、検出された攻撃が独立攻撃であるか、または、閉ループフィードバック制御システムにおける影響の伝播を通じた以前の攻撃のアーティファクトであるかを決定する。これは、追加の情報および洞察を与えることができ、同時に複数の攻撃が検出されるときに有用であり得る。
【００６４】
例えば、図２８は、いくつかの実施形態による、攻撃が独立攻撃であるか依存攻撃であるかを決定する方法である。いくつかの実施形態によれば、攻撃が「独立攻撃」として分類されるべきかまたは「依存攻撃」として分類されるべきかを決定するために、３つの試験、すなわち、（１）因果関係試験、（２）伝搬経路試験、および（３）時間分離試験が実施され得る。これら３つの試験をまとめて、本明細書においては「攻撃依存性適合性試験」と称する。Ｓ２８１０において、因果関係行列を使用して、現在の攻撃が潜在的に以前の攻撃によって引き起こされたか否かを決定することができる。現在の攻撃は、Ｓ１２１０において以前の攻撃によって引き起こされた可能性がない場合、Ｓ２８２０において「独立攻撃」として分類される。この因果関係試験では、システムは、新しく検出された攻撃と他の監視ノード上で以前に検出された任意の攻撃との間に潜在的な因果関係があるか否かをチェックすることができる。このチェックは、例えば、（例えば、図３２に関して説明されるように）任意の２つのノード間の因果関係のバイナリ行列に基づくことができる。一部の実施形態によれば、ドメイン知識に基づいて、因果関係行列が生成されてもよい。そのような潜在的な依存関係が存在しない場合、攻撃はＳ２８２０において「独立攻撃」として報告される。それ以外の場合、システムは第２のチェックを実行することができる。
【００６５】
特に、Ｓ２８３０において、伝播経路マップを使用して、現在の攻撃が潜在的に以前の攻撃から伝播したか否かを決定することができる。現在の攻撃は、Ｓ２８３０において以前の攻撃から伝播した可能性がない場合、Ｓ２８２０において「独立攻撃」として分類される。この伝播試験では、因果関係ごとに、システムは伝播経路が満たされているか否かをチェックすることができる。これは、例えば、攻撃を受けているノード１の影響がノード３を介してノード４に伝播する場合、ノード３がすでに異常である場合にのみ、ノード１の異常がノード４に異常を引き起こす可能性があることを意味する。異常伝播経路はまた、ドメイン知識によって規定され、位置特定システムに事前に記憶され得る。そのような伝播経路が満たされない場合、Ｓ２８２０において攻撃は「独立攻撃」として報告される。それ以外の場合、システムは第３のチェックを実行することができる。
【００６６】
Ｓ２８４０において、制御ループ時間制約を使用して、時間分離に基づいて現在の攻撃が潜在的に以前の攻撃によって引き起こされたか否かを決定することができる。現在の攻撃は、Ｓ２８４０において時間分離に基づいて以前の攻撃によって引き起こされた可能性がない場合、Ｓ２８２０において「独立攻撃」として分類される。この時間分離試験は、調査中の被攻撃監視が閉ループフィードバックシステムのアーティファクトである場合、その影響は、監視ノードに対応する制御ループの立ち上がり時間と整定時間との間の時間ウィンドウ内で発生するはずであるという事実を利用することができる。ただし、システムは動的推定器を使用するため、伝搬時間を推定器全体に追加する必要があり得る。モデルでｎ個の特徴およびｐ個のラグを使用すると、動的推定器はｎ＊ｐ個の状態を有し、ｎ＊ｐサンプリング時間遅延がシステムに追加される。したがって、依存攻撃が発生する予測時間ウィンドウは、以下のように定義することができる。
１．５＊τ＋ｎ＊ｐ＜Δｔ＜５＊τ＋ｎ＊ｐ
ここで、Δｔは、チェック１および２を通過した他のノードへの任意の以前に検出された攻撃後の時間であり、τは、調査中の現在のノードを担当する制御ループの時定数である。このような時間分離チェックに合格しない場合、システムはＳ２８２０において攻撃を独立攻撃として報告する。
【００６７】
Ｓ２８５０において現在の攻撃が時間分離試験を満たしている（したがって、Ｓ２８３０の伝播試験とＳ１２４０の因果依存試験も満たしている）と決定された場合、現在の攻撃はＳ２８５０において「依存攻撃」として分類される。
【００６８】
他の攻撃および異常検出手法は、（攻撃を受けているか否かに関係なく）システム全体のバイナリステータスしか提供しない場合があることに留意されたい。本明細書において説明する実施形態は、攻撃を位置特定し、システムが攻撃を受けているか（否か）だけでなく、正確にいずれのノードが攻撃を受けているかをも決定することによって、追加の情報層を提供することができる。
【００６９】
結果として、実施形態は、攻撃位置特定に対する重要かつ自動化されたソリューションを提供することができる。オペレータ動作プランおよび攻撃下での回復力のある制御を含め、攻撃に応答するときに、攻撃位置特定情報が重要であり得ることに留意されたい。本明細書において説明する実施形態は、システム内の複数の同時異常を処理することができ、これは従来の障害検出システムの能力を超えている。これにより、本明細書において説明するアプローチを、より高度な複数の障害シナリオに対する障害検出および分離技法として使用することもできる。さらに、複数の機器およびシステムにわたって本明細書において説明される実施形態によって可能になる分散型検出および位置特定システムは、正確に調整された多面的攻撃を検出し、正確に指摘するためのデータの調整を可能にし得る。これにより、科学捜査および／または攻撃後の分析を比較的迅速に実行することがさらに可能になり得る。
【００７０】
いくつかの実施形態は、特徴空間内で情報を分析することができることに留意されたい。これには、高レベルデータ抽象化や、実質的な計算の複雑さを追加することのない高次元空間のモデリングなど、元の信号空間における作業に優る多くの利点がある。特徴ベースの位置特定方法は、新しい学習または代替のデータソースが利用可能になるときに、特徴ベクトルを拡張し、および／または新しい特徴を既存のベクトルに組み込むこともできることに留意されたい。本明細書に記載の実施形態はまた、データが多くの地理空間的に配置された異種センサ（すなわち、従来のドローンセンサ、非従来型センサなど）からのものである場合でさえ、大規模な相互接続システムにおける異種センサデータの使用を可能にし得る。これは、攻撃後の事後分析に追加の商業上の利点を提供することができる。
【００７１】
図２９は、いくつかの実施形態による、グラフ２９１０を介して監視ノードのリアルタイム特徴を監視ノードのモデリング特徴と比較する第１の攻撃の例の特徴時系列２９００を示す。特に、図２９〜図３２に関して説明する例は、ＵＡＶシステムのための以下のパラメータを含む。
・速度、
・加速度、
・ヨー、
・緯度、
・経度、および
・ピッチ。
例えば、ピッチへの攻撃を考える。この単一攻撃シナリオでは、システムは、被攻撃ノードを検出して位置特定することができるか否かを検証することを所望し得る。図２９に示すように、攻撃はｔ＝１２秒において検出される。本明細書に記載されている実施形態を使用すると、攻撃は１秒以内に検出され、ピッチに対して正しく位置特定される。図２９は、確率的モデルベース推定を使用して推定されている、生成された特徴２９２０とともに、検出および位置特定された攻撃２９３０の測定された特徴時系列を示す。
【００７２】
図３０は、いくつかの実施形態による、監視ノードのリアルタイム特徴を監視ノードのモデリング特徴と比較する、第２の（ステルス）攻撃のグラフ３０１０を介した特徴時系列３０００を示す。すなわち、これもピッチへの攻撃であるが、今回の攻撃は、センサが時間をかけてゆっくりと、かつ／または精巧に改ざんされるステルス攻撃をシミュレートする。このようなステルス攻撃は、既存の障害診断システムを通過するように設計されており、検出されずに制御システム内に長時間留まる可能性がある。このシミュレーションでは、攻撃はｔ＝４０秒において適用された。本明細書において説明する位置特定方法を使用すると、攻撃はｔ＝１０５秒において検出され、ピッチに対して正しく位置特定される。図３０は、確率的モデルベース推定を使用して推定されている、予測特徴３０２０とともに、検出および位置特定された攻撃３０３０の測定された特徴時系列を示す。
【００７３】
第３の攻撃シナリオでは、システムは２つの監視ノードに対する同時攻撃をシミュレートし得る。２つのセンサ、すなわち速度と加速度とが同時に攻撃され、両方の攻撃がｔ＝１５秒において適用される。本明細書において説明する実施形態を使用すると、両方の攻撃がまさに数秒以内に検出され、位置特定される。他の４つのセンサのうち、３つはまったく正確に検出されない。１つは後で検出され（経度）、これは依存攻撃である。結果は、図３１の表３１００に要約されている。特に、表３１００は、関連する外部から攻撃されているデータ３１０４ならびに攻撃検出および位置特定データ３１０６とともに、攻撃ノード３１０２をリストする。
【００７４】
この第３の例（表３１００に示されている）では、速度および加速度に対する２つの外部インジェクション攻撃がある。第１の攻撃はｔ＝１５秒において検出され、加速に対して位置特定される。以前に検出された攻撃がないため、因果関係試験は失敗し、この攻撃は「独立攻撃」として正しく報告される。第２の攻撃はｔ＝１９秒において検出され、速度に対して正しく位置特定される。この場合、因果関係があり、加速度から速度への直接の比例経路がある。この例の因果関係行列３２００は、図３２に示されている。行列３２００は、各潜在的攻撃ノード、およびそのノードが他の各ノードに影響を与え得るか否かをリストする（「１」は潜在的効果を示し、「０」は潜在的効果がないことを示す）。
【００７５】
したがって、第２の攻撃は、因果関係試験と比率試験の両方を通過する。ただし、時間分離基準に基づいて、速度攻撃が依存攻撃になるためには、加速度検出の瞬間の後、４．２５＜Δｔ＜９．５秒以内に発生している必要がある。表３１００に示されている実際のΔｔは３秒（すなわち、１９秒−１６秒）である。したがって、時間分離試験は通過せず、その結果、速度攻撃は「独立攻撃」として正しく報告される。
【００７６】
ｔ＝５３秒において、経度センサも攻撃を受けていると報告される。以前に報告された２つの攻撃があり、因果関係および伝播試験は以前の両方の攻撃について通過することに留意されたい（行列３２００に示すように）。時間分離基準を使用すると、経度攻撃の瞬間は、それらの攻撃の１５．５＜Δｔ＜４７秒後になければならない。表３１００は、実際のΔｔを、加速度攻撃ではΔｔ＝５３秒−１６秒＝３７秒、速度攻撃ではΔｔ＝５３秒−１９秒＝３４秒としてリストしている。したがって、時間分離試験は以前の両方の攻撃について通過しているため、経度攻撃は「依存攻撃」として正しく報告される。本明細書において説明するいくつかの実施形態に基づいて、以前に検出された攻撃の１つについて時間分離試験を通過しても、依存攻撃として経度を報告するには十分であり得ることに留意されたい。
【００７７】
図３３は、いくつかの実施形態による２つの独立攻撃に関連する攻撃依存性適合性試験の例３３００である。特に、第１のグラフ３３１０は、第１のセンサに対する攻撃がいつ検出されたかを示している。攻撃依存性適合性試験に関して、因果関係、伝播経路、および時間分離試験のいずれも満たされなかったため、攻撃は「独立攻撃」として分類される。第２のグラフ３３２０は、第２のセンサに対する攻撃がいつ検出されたかを示している。攻撃依存性適合性試験に関して、因果関係および伝播経路は満たされたが、時間分離試験は満たされなかったため、この攻撃も「独立攻撃」として分類される。第３のグラフ３３３０は、第３のセンサに対する攻撃がいつ検出されたかを示している。攻撃依存性適合性試験に関して、因果関係、伝播経路、および時間分離試験のすべてが満たされたため、攻撃は「依存攻撃」として分類される。
【００７８】
したがって、実施形態は、監視ノードからのリアルタイム信号を使用してマルチクラス異常動作の指示の自動検出および位置特定を可能にすることができる。さらに、検出フレームワークは、複数の地理的位置における様々なシステム（例えば、種々のＵＡＶモデル）への本発明の拡散を促進するツールの開発を可能にすることができる。いくつかの実施形態によれば、（複数のタイプの機器およびシステムにわたって）この技術によって可能にされる分散型検出システムは、調整されたデータの収集を可能にして、多面的な攻撃の検出を助ける。本明細書において説明される特徴ベースのアプローチは、新しい学習および代替のデータソースが利用可能になるときに、拡張特徴ベクトルを可能にし、および／または新しい特徴を既存のベクトルに組み込むことができることに留意されたい。その結果、システムがそれらの特性についてさらに学習すると、実施形態は比較的広範囲のサイバー脅威（例えば、ステルス、リプレイ、隠密、インジェクション攻撃など）を検出することができる。実施形態はまた、システムが有用で主要な新規の特徴を組み込み、冗長またはあまり重要でないものを除去するため、偽陽性率を低減することもできる。本明細書で説明する検出システムは、ＵＡＶシステムオペレータに早期警告を提供することができ、結果、攻撃を阻止することができ（または攻撃の影響を鈍らせることができ）、機器への損傷が軽減されることに留意されたい。
【００７９】
いくつかの実施形態によれば、ＵＡＶシステムのオペレータは、（例えば、異常なセンサノードデータ値を他の健常なノードから取得される情報に基づく仮想センサデータ値に置き換えることによって）１つまたは複数のサイバー攻撃に見舞われた場合であっても自動的に依然として機能することができるように、「適応」手順を実施することを所望する場合がある。図３４は、資産を保護するために使用され得るシステム３４００の高レベルアーキテクチャである。システムは、複数の監視ノード３４１０を含むことができ、各監視ノードは、ＵＡＶシステムの動作を表す一連の監視ノード値（例えば、高度、速度、緯度など）を経時的に生成する。監視ノード３４１０に結合された脅威検出コンピュータ３４６０は、特定の監視ノードが現在サイバー脅威によって攻撃されていることを決定するように適合され得る。仮想センサ３４５０は、被攻撃監視ノードの指示を受信し、その結果、（例えば、ルックアップテーブル３４５５を使用して）現在攻撃されていない監視ノードから受信される情報に基づいて被攻撃監視ノードの一連の仮想ノード値を推定することができる。いくつかの実施形態では、好ましくは、一連の仮想ノード値の推定は、攻撃監視ノード情報が受信された後の仮想ノード値の推定とは対照的に、正常動作中にリアルタイムで行われている。被攻撃監視ノード情報が受信されるとすぐに、被攻撃監視ノードは最新の仮想ノード値に置き換えられる。次に、仮想センサは、被攻撃監視ノードからの一連の監視ノード値を仮想ノード値に置き換えることができる（例えば、図３４の破線の矢印出力３４５２によって示されるように）。
【００８０】
図３５は、図３４のシステムの要素に関連し得るＵＡＶシステム保護方法である。Ｓ３５１０において、脅威検出コンピュータは、被攻撃監視ノードが現在攻撃されていると決定し得る。そのような決定を行うために使用され得るシステムおよびプロセスの例は、例えば、図３６〜図４７に関して説明される。Ｓ３５２０において、仮想センサは、現在攻撃されていない監視ノードから受信される情報に基づいて被攻撃監視ノードの一連の仮想ノード値を推定することができる。すなわち、「健常な」監視ノードからの情報を使用して、異常な挙動をしている監視ノードからのデータを推定することができる。Ｓ３５２０に関連する推定は、特定のノードが現在攻撃されていると決定される（例えば、Ｓ３５１０）前であっても実行することができることに留意されたい。Ｓ３５３０において、被攻撃監視ノードからの一連の監視ノード値を、仮想ノード値に置き換えることができる。その結果、ＵＡＶシステムは、サイバー攻撃を受けているときであっても動作し続けることができる。
【００８１】
ＵＡＶプロセスは、イーサネットポートおよびＩＰアドレスを備えたプログラマブル論理制御装置（「ＰＬＣ」）によって制御することができることに留意されたい。コンピュータワームはＰＬＣ内に存在し、何日間にもわたって非アクティブであり得、見つかったときに多くのターゲットに自分自身を複製する可能性がある。ＩＴおよびＯＴ保護メカニズムはＰＬＣを完全に安全に保つことができないので、重要なインフラストラクチャをより高度なウイルスから保護し、攻撃されている場合でもＵＡＶシステムが動作する（重要な機能を含む）ことを可能にするには、異なるアプローチが必要になる場合がある。特に、本明細書において説明されるいくつかの実施形態は、重要な機能を失うことなくＵＡＶシステムの動作を維持するためのマルチノード仮想センサを提供する。仮想センサは、例えば、以下の情報、すなわち、（１）独立攻撃を受けたノードに関する位置特定からの情報、（２）監視ノードからの特徴、および（３）システムデータセットから事前にトレーニングされたマルチノード特徴ベースの仮想センサモデルの一部またはすべてを利用して、真の信号を推定することができる。推定された真の信号は、その後、被攻撃信号の代わりにそれぞれのノードにおいて使用することができる。
【００８２】
正常動作中の制御システムでは、システムはさまざまな監視ノード（すなわち、センサ、アクチュエータ、コントローラなど）から時系列信号を受信することができる。これらすべてのセンサからの時系列信号の形の連続データストリームへのアクセスを含む一般的なシステム（サイバーフィジカルシステム、ソフトウェアシステム、バイオメカニカルシステム、ネットワークシステム、通信システムなど）を検討する。時系列信号は、出力センサノードのセット（「ｙ」、すでにシステムに組み込まれている物理センサと仮想センサの両方）、アクチュエータノードのセット（「ｕ」、開または閉ループシステムから生成されるハードとソフトの両方のアクチュエータ）、コントローラノードの出力のセット（「ｃ」、コントローラノード信号）、および参照ノードのセット（「ｒ」、参照信号）から生成され得る。いくつかの実施形態によれば、論理も時系列信号と考えられる。これらの信号の一部またはすべての組み合わせは、仮想センサに適応する目的で使用することができる。この目的に使用される仮想センサ行列は、例えば、センサノードのいずれかに攻撃が行われるときのシステムセンサ出力ｙだけでなく、制御システムへの他の信号、すなわち、アクチュエータノード信号ｕ、コントローラノード信号ｃ、参照信号ｒなども推定することができる。したがって、仮想センサベースの適応システムは、それが受信する正常な信号から破損／被攻撃の信号を推定するように設計されたインテリジェントシステムを提供することができる。
【００８３】
例えば、仮想センサベースの適応システム３６００が真の信号を推定し得る方法の概略図を示す図３６を考える。いくつかの実施形態によれば、システム３６００は、複雑なハイパー接続システム内の複数の異種データストリームからの多くのタイプの入力を処理することができる。したがって、時間ドメインからの信号は、マルチモード・マルチディシプリナリー（「ＭＭＭＤ」）特徴発見フレームワークおよび／または線形ＰＣＡなどの技法を使用して特徴に変換することができる。特徴は、位置特定分析３６２０によって決定されるように、被攻撃監視ノードの信号を推定するためにベクトル形式で構成することができる。仮想センサモデル３６５０は、（例えば、特徴変換３６１０の後に）特徴空間内の信号を推定するために特徴ベクトルにその後適用されるセンサのモデルを含む行列を含むことができる。特徴空間内の推定された真の値は、その後、逆特徴変換３６６０を使用して時間ドメインに変換され得る。実施形態は、特徴空間において動作することができ、残っている健常なセンサに基づいて、被攻撃センサの仮想バージョンを動的に作成することができることに留意されたい。仮想センサ３６５０は、仮想センサ行列３７１０および推定されている信号３７２０を含む図３７に示される表３７００などのルックアップテーブルを利用して、値Ｙｉ＝Ｃｉ，ｊＸｉ（ｉは、推定されている特徴空間内の信号を表し、ｊは推定されている被攻撃信号の数を表す）を作成することができることに留意されたい。
【００８４】
図３８は、マルチノード特徴ベース仮想センサアルゴリズムを備えた適応システム３８００のアーキテクチャ図を表す。出力センサノードのセット（「ｙ」、すでにシステムに組み込まれている物理センサと仮想センサの両方）、アクチュエータノードのセット（「ｕ」、開または閉ループシステムから生成されるハードとソフトの両方のアクチュエータ）、コントローラノードの出力のセット（「ｃ」、コントローラノード信号）、および参照ノードのセット（「ｒ」、参照信号）が、制御および／またはドローン（３８２０）（ならびに、いくつかの実施形態では予測アルゴリズム）からの情報に基づいて検出および位置特定アルゴリズム３８３０によって連続的に監視され得る。攻撃が発生した場合、予測アルゴリズムは、システム３８００の動作が決定境界に近づいていることを事前に予測することができる。そのような場合、予測アルゴリズムは、攻撃されている可能性のある信号を推定するために、仮想センサモジュール３８４０をトリガして、正常なセンサノードのリストを作成する。この段階の仮想センサ３８４０は、予測アルゴリズムによって提案されたすべてのノードが攻撃されているという想定で、最悪のシナリオに備える。システムは、対応するＣ行列（図３７）を選択して、予測アルゴリズムが示唆したノード上の信号を推定することができる。検出および位置特定アルゴリズムが攻撃の存在を検出すると、入力、参照、コントローラ、および出力信号に関連付けられたスイッチがアクティブになる。これは、仮想センサ３８４０によって推定された信号（例えば、参照推定ｋ５によって修正されたｋ１、ｋ２、ｋ３、およびｋ４）を、スイッチ３８５０を介してドローン３８６０へのフィードバック制御ループに入れ、被攻撃信号を無効化する。これにより、システムのパフォーマンスが劣化する可能性があるが、システムはまだ動作し得る。使用可能な健常センサの数が減少するため、多数のノードが攻撃されていると、パフォーマンスがさらに劣化する可能性がある。位置特定アルゴリズムが攻撃されたセンサノードの正確なリストを提供（し、依存攻撃を独立攻撃から分離）すると、仮想センサ３８４０は独立攻撃のみを考慮して適切なＣ行列を選択することができる。これは、いくつかの実施形態によれば、より正確な推定手順をもたらす。推定が完了すると、推定された信号が制御ループにフィードバックされて、正常動作が実現される。いくつかの実施形態に従って提案される仮想センサ手法は、損なわれたアクチュエータ信号でさえ推定するため、制御信号には最終的に改善が見られるであろう。したがって、いくつかの実施形態は、別個のコントローラ（すなわち、冗長コントローラ）を有する必要性を低減することになる。
【００８５】
インテリジェントデュアルシステムおよびトリプルモジュラー冗長（「ＴＭＲ」）検知システムが、最新のＵＡＶ制御システムで使用されていることに留意されたい。これらの冗長検知システムの目標は、センサが故障したときの信頼性を向上させることであった。産業システムへの攻撃は一般に多面的であるため（すなわち、複数のノードにおいて同時に影響が見られる）、それらは悪意のある攻撃が存在しても動作を維持するようには設計されていない。また、それらは、センサの値が操作されて、単なる障害状態ではない害を及ぼすインテリジェントな攻撃を処理するように設計されていない。
【００８６】
したがって、実施形態は、サイバーセキュリティを改善し、ＵＡＶシステムに関連する重要な機能に適応することができる。さらに、実施形態は、攻撃が行われた直前の健常なセンサからのデータを使用して作成された推定信号を使用して、被攻撃センサからの信号をバイパスすることができる。このアプローチにより、サイバー攻撃についてオペレータに警告しながら、動作を維持するための修正メカニズムが可能になる。マルチノード特徴ベースの仮想センサを介して機械インテリジェンスを向上させると、非常に多数の健常なノードから複数の被攻撃ノードを同時に推定することができるため、サイバーセーフな動作が可能になり得る。すべての重要なノードをリンクする適切に設計されたシステムは、攻撃に対する回復力を向上させることができる。さらに、実施形態は、本明細書において説明される非常に正確な仮想センサに起因して、設置される冗長なセンサをより少なくすることを可能にすることができる。
【００８７】
いくつかの実施形態によれば、センサ、アクチュエータ、およびコントローラからの制御システム信号のハイパー接続ネットワーク内にマルチノード仮想センサを構築することができる。ＵＡＶシステム内で使用される正常アプローチとは異なり、いくつかの実施形態は、多数の監視ノードからの信号を入力として使用して、単一または複数の故障または被攻撃のノードの信号を推定することができる。信号は、出力センサノード（例えば、物理センサおよび／または仮想センサ）、アクチュエータノード（例えば、開または閉ループシステムから生成されるハードアクチュエータおよび／またはソフトアクチュエータ）、コントローラノード（例えば、コントローラノード信号）、参照ノード（例えば、参照信号）などから生成することができる。したがって、特徴ベースマルチノード仮想（「ＦＭＶ」）検知は、システム全体の情報を同時に使用することができ、したがって、正確であることができる。
【００８８】
ＦＭＶセンサは、図３９に示されるように多くの計算ブロックを使用するアルゴリズム３９００を組み込むことができる。特に、ブロックは、順特徴変換３９１０、健常なノードから障害のある／被攻撃のノード３９２０への仮想センサ推定ルックアップテーブル、および逆特徴変換３９３０を含むことができる。その中核において、センサは、健常であるかまたは攻撃を受けていない他のノード（すなわち、センサ）からの信号の特徴から、障害のあるまたは攻撃を受けているノード（このために、すべてのノードは「センサ」として参照される場合がある）からの信号の特徴を推定する。推定されている信号のセットと健常な信号のセットとのさまざまな組み合わせ間のマッピングは、ルックアップテーブルに記憶することができる。ルックアップテーブルは、例えば、複数の健常なノードからの信号を使用してトレーニング中に特徴空間内で計算することができる。ルックアップテーブルが準備できると、ＦＭＶセンサを意図した目的にリアルタイムで使用することができる。
【００８９】
図４０は、大量のデータセットからセンサをトレーニングするための様々な構成要素およびプロセスステップを示している。特に、システムは、デジタルツイン４０１０（例えば、高忠実度の物理学ベースのモデル）および仮想コントローラ４０２０を使用して、正常データおよび攻撃データ４０３０を生成する。データセットは、攻撃、障害、および正常動作状態を有するデジタルツインモデル４０１０上で実行されるＤｏＥから、または動作データから直接作成することができる。次に、データ前処理４０４０を実行して、仮想センサ４０６０をトレーニングするために使用することができるローカル特徴４０５０を作成することができる。次に、推定時系列データを生成するために逆特徴変換を実行することができ、非正規化４０８０を実行することができる。
【００９０】
いくつかの実施形態によれば、検知手法は、複雑なハイパー接続システム内の複数の異種データストリームからの多くのタイプの入力を処理することができる。これにより、センサからの正確な信号を推定するために必要な計算ブロック内の複数の冗長性が可能になる。これを行うために、ＭＭＭＤ特徴発見フレームワークまたはＰＣＡタイプの技法を使用して、時間ドメインからの連続信号が特徴空間に変換される。このために、ＭＭＭＤ特徴発見プロセスからの可逆特徴のみが考慮される。
【００９１】
「特徴」は、例えば、データの数学的特性を指すことができ、データストリームの重複するバッチごとに計算される。センサデータに適用される特徴の例は、知識ベースの浅い特徴および深い特徴に広く分類することができる。知識ベースの特徴は、システムの物理学に関するドメインまたはエンジニアリングの知識を使用して、特徴を作成する。これらの特徴は、単純な統計記述子（例えば、最大、最小、平均、分散）、ならびに、時系列信号およびそれに対応するＦＦＴスペクトルのウィンドウにわたって計算される統計モーメントのさまざまな次数であり得る。浅い特徴は、教師なし学習（例えば、ｋ平均クラスタリング）、多様体学習および非線形埋め込み（例えば、ｉｓｏＭａｐ、ＬＬＥ）、低次元投影（例えば、ＰＣＡ、独立成分分析）、ならびに、遺伝的プログラミングおよびスパースコーディングを伴うニューラルネットワークからのものである。
【００９２】
ディープラーニング特徴（オートエンコーダなど）は、複数のレベルの抽象化を通じてデータの良好な表現を学習することを含むディープラーニングアルゴリズムを使用して生成することができる。より高いレベルの特徴がデータのより抽象的な態様を表すような、階層的な特徴の層ごとの学習により、ディープラーニングは洗練された基礎構造および特徴を発見することができる。さらに他の例は、論理特徴（「はい」および「いいえ」などの意味論的抽象化を伴う）、および相互作用特徴を含む。一部の実施形態では、ＦＭＶセンサには論理特徴が必要でない場合があるが、診断目的で使用することができる。
【００９３】
ここで、例示的なＦＭＶセンサを構築するために使用され得る、線形ＰＣＡとして参照される特徴変換の一例について説明する。このアプローチを拡張して、上記の他のさまざまな特徴を含めることができる。線形ＰＣＡベース特徴変換は、時系列信号（例えば、４０秒のバッチ長）を正規直交基底ベクトルのセットに投影することができる。この手順は以下の式によって記述される。
2021514504.tif 000006
2021514504.tif 000007
重み（ｗｊ）は、次元数を減らした特徴空間における時系列信号ｙの特徴を表す。特徴変換の前に、時系列信号は正規化を使用して前処理することができる。
【００９４】
仮想センサ推定器に関して、
2021514504.tif 000008
はｉ番目のセンサのｊ番目の特徴であると仮定する。仮想センサは、他のセンサの特徴から所与のセンサ（複数可）の特徴を推定する。例えば、第１のセンサのｊ番目の特徴は、他のセンサの特徴から以下のように推定される。
2021514504.tif 000009
この式において、ｎはセンサの数であり、
2021514504.tif 000010
１行およびｎ−１列の行列である。各センサがｍ個の特徴によって表されていると仮定する。次に、推定手順は次の式によって表すことができる。
2021514504.tif 000011
式中、
2021514504.tif 000012
Ｗｘに特徴の２次および３次の項を含めて、推定精度を向上させることができる。したがって、例えば、
2021514504.tif 000013
を以下に等しいものとして定義することができる。
2021514504.tif 000014
行列Ｃは、トレーニング段階中に、次に説明するデータセットからの回帰を使用して計算される。
【００９５】
線形最小二乗回帰に関して、Ｗｙの前の式を考える。
2021514504.tif 000015
その最後の式は、Ｃ行列を計算するための線形最小二乗ベースの回帰解を表している。式に示されているように手動でＣ行列を計算することができ、または、回帰に「ｎｌｉｎｆｉｔ」と呼ばれるＭＡＴＬＡＢ（登録商標）の組み込み関数を使用することもできる。最後に、推定されている信号のさまざまな組み合わせのＣ行列を使用して、仮想センサルックアップテーブルを構築することができる。
【００９６】
仮想センサルックアップテーブルに関して、システムは行列Ｃｉｊを用いてルックアップテーブルを構築することができ、ここで、ｊは仮想センサによって推定されている信号の数を示し、ｉは推定されている信号を示す。例えば、ＵＡＶデータの場合、図３７は、例示的な仮想センサルックアップテーブル３７００を表す。一例として、図３７のＣ１，１は高度信号を推定する仮想センサに対応し、一方、Ｃ１５，２は２つの信号、すなわちピッチおよび緯度を推定する仮想センサに対応する。
【００９７】
逆特徴変換４０７０に関して、これは、特徴ベクトルを入力空間にマッピングし戻すために実行する必要があり得る。このステップは、仮想センサルックアップテーブルのパフォーマンスを評価するために、トレーニング段階４０６０中（すなわち、正確な仮想センサルックアップテーブルを生成している間）に重要になり得る。検証ステップにおいて、仮想センサルックアップテーブルの出力が使用されて、推定センサ値が入力空間内の元のセンサ値にどれだけ近いかが検証される。
【００９８】
ＰＣＡが実行されて時系列信号の特徴が取得されるとき、以下の手順が使用されて、特徴が入力空間にマッピングし戻される。
2021514504.tif 000016
ここで、
2021514504.tif 000017
は入力空間内の推定信号を表し、
2021514504.tif 000018
は仮想センサアルゴリズムによって推定される所与のセンサ信号のｊ番目の特徴である。ＰＣＡベースの特徴変換が線形マップであることを所与として、特徴空間から入力空間への逆マップは明確に定義される。各特徴ベクトルのプレイメージが存在し、一意である。
【００９９】
図４１は、いくつかの実施形態に従って実行され得る仮想センサ作成方法を図示する。Ｓ４１１０において、仮想センサ作成プラットフォームは、順特徴変換を実行することができる（例えば、データ前処理が正常空間および被攻撃空間データに対して実行された後にローカル特徴およびベクトルを作成する）。Ｓ４１２０において、システムは、現在攻撃されていない監視ノードから、被攻撃監視ノードの仮想センサ推定ルックアップテーブルを作成することができる。Ｓ４１３０において、逆特徴変換を実行して、推定時系列データを生成することができる（次いで、これを非正規化することができる）。
【０１００】
図４２は、リアルタイム検出中に、スライドウィンドウ４２００において入力信号がどのように処理され得るかを示している。仮想センサアルゴリズムは、スライドウィンドウ技法を使用して時系列信号の平滑化を実行する。例えば、サイズが４０秒のウィンドウを考えると、バッチの終わり（例えば、この目的のための最初の１秒）に、システムはＦＭＶセンサ時系列信号からのデータのサンプルを１つ有する。２秒の終わりに、システムは１秒目のサンプルと２秒目のサンプルとの平均を有する。同様に、４０秒の終わりに、システムは最後の４０秒間のすべてのサンプルの平均を有する。数学的には、これは以下のように表すことができる。
2021514504.tif 000019
ここで、ｎｗｉｎはウィンドウのサイズであり、ｓｉは時間ｉにおける信号値であり、Ｎはサンプルの総数である。
【０１０１】
トレーニング段階の目標は、残りのセンサの特徴を使用して所与のセンサ（複数可）の特徴を推定するＷｙの式にあるように、線形ＰＣＡおよびＣ行列の基底ベクトルを計算することである。他のタイプの特徴を使用する場合、特徴発見プロセスを採用して、この目的に最適な特徴を見つける。ＰＣＡ特徴の場合、システムは正規直交基底セットの計算を必要とする主成分を計算する必要がある場合がある。
【０１０２】
いくつかの実施形態によれば、基底ベクトルψｊは、ＵＡＶデータセットについて以下のように、４５秒のバッチについて計算される。Ｘ（ｍ）が４５秒長の時系列データを含むｍ番目のトレーニングデータ点を表すと仮定する。例えば、４５秒のウィンドウは、システム動態を最適にキャプチャするために選択され得る。ただし、リアルタイムでは、データの過渡ははるかに短いウィンドウ内で発生する。したがって、より高い精度で過渡を追跡するために、システムはこの４５秒のデータウィンドウを３つの４０秒ウィンドウにセグメント化することができる。したがって、セグメント化前のトレーニングデータが以下のように表される場合、
2021514504.tif 000020
セグメント化後、トレーニングデータは以下のように表される。
2021514504.tif 000021
2021514504.tif 000022
は、基底ベクトルの計算に使用される。これらの基底ベクトルは、４０次元データを、基底ベクトルまたは主成分によって表されるより低い次元の空間（例えば、５次元）にマッピングする。
【０１０３】
トレーニング段階の第２のステップは、Ｗｙの式においてＣ行列を計算することを含む。トレーニング段階中、Ｗｘは行列の列としてさまざまなトレーニングサンプルからの健常なセンサの特徴を含む行列である。したがって、Ｗｙは、所与のセンサ（複数可）の推定された特徴を含む行列を表す。Ｗｙの第１の列はトレーニングサンプル１の所与のセンサ（複数可）の推定特徴に対応し、Ｗｙの第２の列はトレーニングサンプル２の所与のセンサ（複数可）の推定特徴に対応し、以下同様である。
【０１０４】
新しい試験サンプルが到来すると、特徴を推定する必要があり得るセンサ（複数可）が識別される。対応するＣ行列が、仮想センサルックアップテーブルから選択される。新しいサンプルは、最初にさまざまな正規化手法を使用して正規化される。次に、正規化されたサンプルは、前述の特徴変換手法の１つを使用して特徴空間にマッピングされる。このようにして得られた特徴空間サンプルに、選択されたＣ行列を使用してＷｙの式が適用される。その式の結果は、仮想センサルックアップテーブルによって推定される所与のセンサ（複数可）の特徴である。推定特徴は、その後、対応する逆特徴変換を使用して入力空間にマッピングすることができる。
【０１０５】
ＦＭＶセンサは、これらのシステム全体の冗長性を活用してセンサ信号をより高い精度で推定するための単純で効率的なソリューションを提供する。したがって、本明細書において説明する実施形態は、健常なセンサからのかなりの数の入力を使用して、障害ノードまたは被攻撃ノードから予測される信号を再構築し、結果として、信頼性の高いシステムを作成する機会を提供する特徴ベースのフレームワークを提供する。いくつかの実施形態によれば、サイバー攻撃中に重要な機能を失うことなくサイバーフィジカルシステムの動作を維持する方法は、仮想センサを使用して促進することができる。別のアプリケーションが、実施に成功することで障害の発生によって失われた動作が取り戻される、障害対応に関連付けられ得る。本明細書において説明する実施形態は、必要な冗長性の数（すなわち、インテリジェントなデュアルまたはトリプルモードの冗長性）を最適化することにより、システムに関連するコストも削減することができることに留意されたい。
【０１０６】
ハードウェアアーキテクチャに関係なく、任意のエンドポイントからコントローラへの通信経路内にあるアルゴリズム／コンピューティングプラットフォームは、仮想センサ統合を介してコントローラの適応システムレベルの保護を可能にすることができる。適応システムレベル保護ユニットは、コントローラが見る信号をフィルタリングするように機能することができる。高レベル機能は、図４３のシステムレベル保護ユニット機能説明４３００によって詳述される。特に、システムレベル適応保護ユニット（「ＡＰＵ」）４３５０は、コントローラ４３６０に対する信号フィルタとして機能することができる。仮想センササブシステムが、元のセンサが有効であると決定した場合（ＬＶｉｒｔｕａｌＳｅｎｓｏｒ（ｉ）４３１０によって示されるように）、元の信号４３３０はＡＰＵを通過することができる。仮想センササブシステムが、元のセンサが推定値に近くないと決定した場合、仮想センササブシステムは論理をＡＰＵに送信し（ＬＶｉｒｔｕａｌＳｅｎｓｏｒ（ｉ）４３１０）、ＡＰＵに、対応するｉ番目のエントリへの信号（ＥｆｆｅｃｔｉｖｅＳｉｇｎａｌ）の出力アレイを仮想センサＶｉｒｔｕａｌＳｉｇｎａｌ（ｉ）４３２０の値に切り替えるように促す。これはリアルタイムで実行することができ、制御ソフトウェアに依存しないようにすることができる。したがって、制御ソフトウェアの変更を回避することができ、時間を大幅に節約することができる。
【０１０７】
図４４は、いくつかの実施形態による適応保護ユニット方法を示す。Ｓ４４１０において、（外部ソースからデータを受信するための）通信ポートとＵＡＶシステムコントローラとの間に配置された適応保護ユニットは、実質的にリアルタイムで監視ノード値を受信することができる。Ｓ４２０において、被攻撃監視ノードが現在攻撃されているという指示が受信され得る。Ｓ４４３０において、適応保護ユニットは、ＵＡＶシステムコントローラに送信する前に、被攻撃監視ノードに関連する一連の監視ノード値を仮想センサデータに自動的に置き換えることができる。
【０１０８】
様々な実施形態によるいくつかの例示的なアーキテクチャが図４５〜図４７に示されている。図４５のシステム４５００では、適応保護ユニット４５５０は、外部ソース４５１０とコントローラ４５２０との間に直接的に位置する。コントローラ４５２０は、システム４５３０および仮想センサ４５４０に情報を送信する。その結果、適応保護ユニット４５５０は、外部ソース４５１０とコントローラ４５２０（ＨＭＩなど）との間の通信経路内で機能することができる。図４６のシステム４６００では、適応保護ユニット４６５０は、システム４６３０とコントローラ４６２０との間の通信経路内に実装される。図４７のシステム４７００では、適応制御ユニット４７５０は、外部ソース４７１０とシステム４７３０の両方の通信経路内に実装される。
【０１０９】
制御システムネットワークの信号が攻撃されまたは破損した場合、ネットワークは破損した信号に対応する方法がない場合がある。これにより、サイバー攻撃の場合、パフォーマンスの劣化または壊滅的な障害が発生する可能性がある。適応保護ユニットは、制御システムがリアルタイムで破損した信号を中和し、シームレスに機能し続けることを可能にすることができる。したがって、実施形態は、政府のセキュリティ規制を満たすのに役立ち得る。さらに、実施形態は、ＩＣＳサイバー攻撃から資産を保護することができる。
【０１１０】
本明細書において説明するいくつかの実施形態は、サイバー攻撃に対する回復力を達成して、攻撃の進行中に、中断されない、機器にとって安全で制御された動作をＵＡＳシステムに提供することができる。本明細書において説明するように、回復力は、動作の正常性に必要な信号（または状態）を強制する制御システムの能力である。人体の場合のように、本明細書に記載されている方法が脅威（例えば、感染）を検出すると、この方法は脅威を破壊する。上記の生体模倣と同様に、例示的な実施形態は、ＵＡＶシステムに特に望ましいサイバーベースの「免疫系」を作成することによってドメインレベルのセキュリティを拡張する方法を対象とする。
【０１１１】
本明細書における方法は、脅威を識別することができるだけでなく、攻撃が進行中でも制御システムへの影響を自動的に中和することで脅威をブロックすることもできる。影響の中和は、新規の境界およびパフォーマンス制約付き弾性推定器（「ＢＰＲＥ」）を用いてシステムの真の動作状態を推定することにより、主要な信号において達成することができる。さらに、システムが適切に機能し続けることを可能にする推定状態から、動作正常性の真の信号を計算することができる。本明細書に記載のいくつかの方法およびシステムは、生物学的システムによって適合された保護メカニズムを複製することによって脅威を阻止することができる。人体が病原菌および他の感染症と戦う方法は、自然の驚異である。それは自動的に検出し、戦うための自己防衛メカニズムをトリガする。例示的な実施形態は、攻撃信号をマスキングまたは他の様態で中和するために、同様の種類の自動検出およびトリガ機能を複製する。ここで開示されている中和アプローチは、継続的なデータストリームが監視目的で利用可能であるシステムの安全を確保するために使用することもできる。
【０１１２】
本明細書に記載の中和方法は、アプリケーションまたはサービスなどのソフトウェアとして実施することができ、制御システム、コンピュータ、サーバ、クラウドプラットフォーム、機械、機器、航空機、機関車などのようなＵＡＶシステム内に組み込むことができる。過去数十年にわたって機械および機器の自動化の進歩があり、資産はより「スマート」になっているが、個々の資産のインテリジェンスは、複数のスマートデバイスが、例えばクラウド内でともに接続されている場合に得ることができるインテリジェンスと比較すると見劣りする。本明細書において説明される場合、資産は、ＵＡＶシステムにおいて使用される機器および／または機械を指すために使用される。複数の資産から収集されるまたは複数の資産に関するデータを集約することによって、例えば、適切な産業特有のデータ収集およびモデリング技術が開発および適用されている場合、資産メンテナンスの効率を改善し、または、運用パフォーマンスを改善することによって、ユーザが、ビジネスプロセスを改善することを可能にすることができる。
【０１１３】
例えば、ドローンなどの資産は、それぞれの動作またはその状態を監視するように構成された１つまたは複数のセンサを装備することができる。センサからのデータをクラウドプラットフォームに追加することができる。このようなデータをクラウドベースの環境に取り込むことによって、産業プロセス、ツールおよび専門知識によって通知される新しいソフトウェアアプリケーションおよび制御システムを構築することができ、ＵＡＶ環境に特有の新規の物理ベースの分析を作成することができる。そのようなデータの分析を通じて得られる洞察は、資産設計の強化、同じまたは類似の資産を運用するためのソフトウェアアルゴリズムの強化、運用効率の向上などをもたらすことができる。ただし、データがクラウドのエッジからクラウドプラットフォームに転送されるとき、攻撃が発生する可能性がある。攻撃は、クラウドのエッジから受信される信号の処理に影響を与える可能性がある。例示的な実施形態は、エッジからクラウドプラットフォームバックエンドに送信される信号をフィルタリングし、他の状況において送信することが可能である中和プロセスを提供する。
【０１１４】
本明細書に記載される資産は、産業用モノのインターネット（「ＩＩｏＴ」）を含むことができるか、またはその一部であり得る。一例では、ＩＩｏＴは、ＵＡＶなどのような機械および機器を含む資産を、インターネットおよび／もしくはクラウドに、または１つもしくは複数のネットワークを介するなどの何らかの有意義な方法で互いに接続する。本明細書において説明する例は、「クラウド」または遠隔もしくは分散コンピューティングリソースもしくはサービスの使用を含むことができる。クラウドを使用して、１つまたは複数の資産のためのまたは資産に関する情報を受信、中継、送信、記憶、分析、または他の様態で処理することができる。一例では、クラウドコンピューティングシステムは、少なくとも１つのプロセッサ回路、少なくとも１つのデータベース、および、クラウドコンピューティングシステムとデータ通信している複数のユーザまたは資産を含む。クラウドコンピューティングシステムは、資産メンテナンス、分析、データ記憶、セキュリティ、または何らかの他の機能に関連するタスクを実行するなど、特定のタスクを実行するように構成された１つまたは複数の他のプロセッサ回路またはモジュールをさらに含むことができ、または、これらに結合することができる。
【０１１５】
ただし、資産を遠隔コンピューティングリソースと統合してＩＩｏＴを有効にすることは、一般に、特定の産業およびコンピュータネットワークとは別個で明確に区別される技術的な課題を呈することが多い。所与の機械または機器ベースの資産は、分散コンピューティングリソースとの間でデータを送受信するために、新しいインターフェースおよび通信プロトコルによって構成する必要がある場合がある。資産には、コスト、重量、セキュリティ、パフォーマンス、信号干渉などの厳しい要件がある場合がある。その場合、そのようなインターフェースを有効にすることは、おおよそ、資産を汎用コンピューティングデバイスと組み合わせることほど簡単ではない。これらの問題、および、特定の産業分野とＩＩｏＴとの交わりから生じる他の問題に対処するために、実施形態は、産業技術の多くの異なる分野からアプリケーションを受信して展開することができるクラウドプラットフォームを提供する。これらのアプリケーションがクラウドにも接続されている機械や機器からのデータを首尾よく消費するために、実施形態は、クラウド内で実施することができ、クラウドのエッジとクラウドプラットフォームとの間の信号をフィルタリングして、資産の管理が正常どおりに維持されることを可能にする脅威中和方法を提供する。
【０１１６】
ＧＥから入手可能なＰＲＥＤＩＸ（商標）プラットフォームは、製造者の資産知識を開発ツールのセットによって組み込むことを可能にする現行技術水準の最先端のツールおよびクラウドコンピューティング技法、ならびに、資産ユーザがソフトウェアと運用との間のギャップを埋めて、機能を強化し、イノベーションを促進し、最終的に経済的価値を提供することを可能にする最良の実践によって可能にされる、資産管理プラットフォーム（「ＡＭＰ」）技術の新規の実施形態である。このようなシステムを使用することにより、資産の製造者は、資産自体、そのような資産のモデル、およびそのような資産の産業運用またはアプリケーションの理解を活用して、資産の洞察を通じて産業顧客に新しい価値を生み出すように、固有に位置付けられ得る。
【０１１７】
図４８は、例示的な実施形態による、ＵＡＶシステムに関連するクラウドコンピューティング環境を示す。図４８は、資産管理プラットフォーム（「ＡＭＰ」）４８００に関連するものなど、クラウドコンピューティング環境の一部の例を一般的に示す。本明細書においてさらに説明するように、ＡＭＰの１つまたは複数の部分は、ローカルまたはサンドボックス環境にあるクラウドコンピューティングシステム４８２０に常駐することができ、または複数の場所もしくはデバイスにわたって分散することができる。ＡＭＰ４８００は、データ取得、データ分析、あるいは、ローカルもしくは遠隔資産との、または他のタスク特有の処理デバイスとのデータ交換のいずれか１つまたは複数を実行するように構成することができる。ＡＭＰ４８００は、クラウドコンピューティングシステム４８２０と通信可能に結合されている資産コミュニティ（例えば、ＵＡＶ、ドローンなど）を含む。一例では、機械モジュール４８１０は、資産コミュニティの少なくとも１つの資産メンバから情報を受信するか、またはそれに関する情報を検知し、受信した情報をクラウドコンピューティングシステム４８２０と交換するように構成する。一例では、機械モジュール４８１０は、通信ゲートウェイ４８０５を介して、クラウドコンピューティングシステム４８２０または企業コンピューティングシステム４８３０に結合される。
【０１１８】
一例では、通信ゲートウェイ４８０５は、少なくとも機械モジュール４８１０からクラウドコンピューティングシステム４８２０まで延在する有線もしくは無線通信チャネルを含むことができ、または使用することができる。クラウドコンピューティングシステム４８２０は、いくつかの層、例えば、データインフラストラクチャ層、クラウドファウンドリ層、および様々な機能を提供するためのモジュールを含むことができる。図４８において、クラウドコンピューティングシステム４８２０は、資産モジュール４８２１、分析モジュール４８２２、データ取得モジュール４８２３、データセキュリティモジュール４８２４、および動作モジュール４８２５を含むが、実施形態はそれに限定されない。各モジュールは、専用の回路、または汎用プロセッサ回路を動作させるための命令を含み、または使用して、それぞれの機能を実行する。一例では、モジュール４８２１〜４８２５は、１つのモジュールからの情報を別のモジュールと共有することができるように、クラウドコンピューティングシステム４８２０内で通信可能に結合される。一例では、モジュール４８２１〜４８２５は、指定されたデータセンターもしくは他の施設において同じ場所に配置されるか、またはモジュール４８２１〜４８２５は、複数の異なる場所にわたって分散され得る。
【０１１９】
インターフェースデバイス４８４０（例えば、ユーザデバイス、ワークステーション、タブレット、ラップトップ、電化製品、キオスクなど）は、機械モジュール４８１０、ゲートウェイ４８０５、およびクラウドコンピューティングシステム４８２０のうちの１つまたは複数とのデータ通信のために構成され得る。インターフェースデバイス４８４０を使用して、１つまたは複数の資産を監視または制御することができる。別の例として、インターフェースデバイス４８４０を使用して、アプリケーションを開発し、クラウドコンピューティングシステム４８２０にアップロードすることができる。別の例として、インターフェースデバイス４８４０を使用して、クラウドコンピューティングシステム４８２０上に展開された分析アプリケーションにアクセスすることができる。一例では、資産コミュニティ４８０１に関する情報を、インターフェースデバイス４８４０においてオペレータに提示することができる。資産コミュニティに関する情報は、機械モジュール４８１０からの情報、クラウドコンピューティングシステム４８２０からの情報などを含んでもよい。インターフェースデバイス４８４０は、クラウドコンピューティングシステム４８２０において実行される分析に基づいて、資産コミュニティの１つまたは複数のメンバを最適化するためのオプションを含むことができる。
【０１２０】
図４８は、資産コミュニティをクラウドコンピューティングシステム４８２０に結合するように構成されたデバイスゲートウェイ４８０５をさらに含む。デバイスゲートウェイ４８０５はさらに、クラウドコンピューティングシステム４８２０を１つもしくは複数の他の資産もしくは資産コミュニティ、企業コンピューティングシステム４８３０、または１つもしくは複数の他のデバイスに結合することができる。したがって、ＡＭＰ４８００は、物理的または仮想資産（例えば、ＵＡＶ４８０１）から遠隔クラウドコンピューティングシステム４８２０に及ぶスケーラブルな産業ソリューションを表す。クラウドコンピューティングシステム４８２０は、任意選択的に、産業用データ作業負荷、安全なデータ通信、および規制要件への準拠のために最適化することができるローカル、システム、企業、またはグローバルコンピューティングインフラストラクチャを含む。
【０１２１】
クラウドコンピューティングシステム４８２０は、動作モジュール４８２５を含むことができる。動作モジュール４８２５は、開発者が産業用インターネットアプリケーションを構築または試験するために使用することができるサービスを含むことができ、動作モジュール４８２５は、１つまたは複数の他のＡＭＰモジュールと協調するなどして、産業用インターネットアプリケーションを実施するサービスを含むことができる。一例では、動作モジュール４８２５は、開発者が自身のサービスを公開し、および／または第三者からサービスを検索することができるマイクロサービス市場を含む。さらに、動作モジュール４８２５は、様々な利用可能なサービスまたはモジュールと通信するための開発フレームワークを含むことができる。開発フレームワークにより、開発者はＷｅｂまたはモバイルアプリケーションにおいて一貫した外観および雰囲気、ならびに、状況に応じたユーザ体験を提供することができる。開発者は、クラウドコンピューティングシステム４８２０を介して自身のアプリケーション（サービス、データ、分析など）を追加してアクセス可能にすることができる。
【０１２２】
資産からの情報、資産に関する情報、または資産自体によって検知される情報は、資産からクラウドコンピューティングシステム４８２０内のデータ取得モジュール４８２３に通信することができる。一例では、外部センサを使用して、資産の機能に関する情報を検知し、または資産におけるもしくはその近くの環境条件に関する情報を検知することができる。外部センサは、デバイスゲートウェイ４８０５およびデータ取得モジュール４８２３とのデータ通信のために構成することができ、クラウドコンピューティングシステム４８２０は、分析モジュール４８２２などを使用して、１つまたは複数の資産の分析にセンサ情報を使用するように構成することができる。分析モジュール４８２２からの結果を使用して、第１のＵＡＶ４８０１、または、同じもしくは異なる資産コミュニティ内の１つもしくは複数の資産などの１つもしくは複数の他の資産の最適化において後に使用するなどのために、動作モデルを任意選択的に更新することができる。例えば、ＵＡＶ４８０１に関する情報を、クラウドコンピューティングシステム４８２０において分析して、異なる資産コミュニティに属する遠隔に配置された第２のＵＡＶの動作パラメータの選択を通知することができる。
【０１２３】
クラウドコンピューティングシステム４８２０は、データセンターが上にあるアプリケーションに対する妨害を最小限にして経時的に発展することを可能にするなどのために、任意の指定のハードウェアの上の抽象化層として機能するソフトウェア定義インフラストラクチャ（「ＳＤＩ」）を含むことができる。ＳＤＩは、ポリシーベースのプロビジョニングを備えた共有インフラストラクチャを有効にして、動的な自動化を促進し、基礎となるインフラストラクチャへのＳＬＡマッピングを可能にする。この構成は、アプリケーションが基礎となるハードウェア構成を必要とする場合に有用であり得る。リソースのプロビジョニング管理およびプーリングは、きめ細かいレベルで実行することができるため、最適なリソース割り当てが可能である。さらに、資産クラウドコンピューティングシステム４８２０は、複数の開発者フレームワークおよびアプリケーションサービスのエコシステムをサポートするオープンソースのサービスとしてのプラットフォーム（「ＰａａＳ」）であるクラウドファウンダリ（「ＣＦ」）に基づくことができる。クラウドファウンダリによって、アプリケーション開発者は、アプリケーションの構築、試験、展開、およびスケーリングをより迅速かつ容易に行うことができる。したがって、開発者は活気に満ちたＣＦエコシステムおよび増え続けるＣＦサービスのライブラリにアクセスすることができる。さらに、ＣＦはオープンソースであるため、ＩＩｏＴ作業負荷のためにカスタマイズすることができる。
【０１２４】
クラウドコンピューティングシステム４８２０は、アプリケーション開発を容易にすることができるデータサービスモジュールを含むことができる。例えば、データサービスモジュールは、開発者がデータをクラウドコンピューティングシステム４８２０に取り込み、そのようなデータを、クラウド、機械モジュール、または資産もしくは他の場所で実行されるアプリケーションなどのさまざまなアプリケーションにとって利用可能にすることができる。一例では、データサービスモジュールは、データを適切なデータストア、例えばクラウドコンピューティングシステム４８２０に最終的に記憶する前に、データをクレンジング、マージ、またはマッピングするように構成することができる。時系列データは、ほとんどのセンサが使用するデータフォーマットであるため、特に重点が置かれ得る。
【０１２５】
セキュリティは、クラウドコンピューティングシステム４８２０と１つまたは複数の資産または他の構成要素との間でデータを交換するデータサービスにとって懸念事項となる可能性がある。データ送信を保護するための一部の選択肢は、仮想プライベートネットワーク（「ＶＰＮ」）またはセキュアソケットレイヤ／トランスポートセキュリティレイヤ（「ＳＳＬ／ＴＬＳ」）モデルの使用を含む。一例において、ＡＭＰ４８００は、機械モジュールとセキュリティモジュール４８２４との間など、双方向ＴＬＳをサポートすることができる。一例では、双方向ＴＬＳはサポートされない場合があり、セキュリティモジュール４８２４はクライアントデバイスをＯＡｕｔｈユーザとして扱うことができる。例えば、セキュリティモジュール４８２４は、ＯＡｕｔｈクライアントとしての資産（または他のデバイス）の登録を可能にし、保護されたエンドポイントにデータを送信するためにＯＡｕｔｈアクセストークンをトランスペアレントに使用することができる。
【０１２６】
様々な実施形態による脅威検出ならびに中和システムおよび方法は、クラウドコンピューティングシステム４８２０に記憶されたセキュリティモジュール４８２４内、資産内、資産と制御システムとの間の中間デバイス内などで実施されてもよい。別の例として、脅威検出および中和方法は、同じくまたは代わりに、資産内、クラウドコンピューティングシステム４８２０内、システム内の別のデバイス内など、他の場所において実施されてもよい。生データは、資産コミュニティに含まれる資産を介してクラウドコンピューティングシステム４８２０に提供することができ、クラウドコンピューティングシステム４８２０上に展開されたアプリケーションによってアクセスすることができる。動作中、資産はセンサデータをクラウドコンピューティングシステム４８２０に送信し、クラウドコンピューティングシステム４８２０がセンサデータを記憶する前に、本明細書において説明する脅威検出および中和方法を使用してセンサデータをフィルタリングすることができる。
【０１２７】
図４９は、例示的な実施形態による、入力信号をフィルタリングするための脅威ニュートラライザ４９３０を示す４９００。脅威ニュートラライザ４９３０は、資産またはそれに関連付けられたデバイス内、制御システムまたは制御システムに関連付けられたもしくは制御システムに結合されたデバイス内、クラウドプラットフォーム内、中間デバイス内などに実装され得る。脅威ニュートラライザ４９３０の場所に制限はない。脅威ニュートラライザ４９３０は、ＵＡＶ、ドローンなどの資産から、またはそれについて検知された信号を受信することができる。脅威ニュートラライザ４９３０は、時系列データを含む少なくとも１つの入力信号４９１０を受信する。時系列データは、さまざまな時間間隔でキャプチャされた測定値または他の読み値を含むことができる。時系列データの例は、速度、強度、加速度、重量、力、推力などを含む。
【０１２８】
展開されて動作しているとき、資産は攻撃され、または他の様態で危険にさらされる可能性がある。その結果、資産から受信されるデータ（例えば、入力信号４９１０）に欠陥があるか、または他の様態で不正確になる可能性がある。存在する潜在的な脅威のほんの一部であるスパイ攻撃、サービス妨害攻撃、詐欺攻撃（例えば、隠密／ステルス攻撃）、ゼロダイナミクス攻撃、偽データ注入攻撃、リプレイ攻撃、などのような、資産システムが受ける可能性のある多くの異なるタイプの攻撃が存在する。現在の情報技術および運用技術のアプローチでは、システムを自動的に適切に保護することができない。対照的に、本明細書においてさらに説明するように、人間の免疫系が感染症または他の疾患を検出して中和することができるように、脅威ニュートラライザ４９３０は、入力信号４９１０内の攻撃の影響を自動的に検出して中和することができる。
【０１２９】
一例として、脅威ニュートラライザ４９３０は、時系列信号の形の連続データストリームへのアクセスを含む、サイバーフィジカルシステム、ソフトウェアシステム、バイオメカニカルシステム、ネットワークシステム、通信システムなどの一般的なシステムに含めることができる。時系列信号は、出力センサノード（例えば、物理センサおよび／または仮想センサ）、アクチュエータノード（例えば、開または閉ループシステムから生成されるハードアクチュエータおよび／またはソフトアクチュエータ）、コントローラノード（例えば、コントローラノード信号）、参照ノード（例えば、参照信号）などから生成することができる。いくつかの例では、論理信号も時系列信号と考えることができる。システムに免疫を提供するために使用することができる信号の総数は、センサ、アクチュエータ、コントローラ、および参照ノード内に存在するノードの総数に等しくてもよく、より多いまたはより少ないノードであってもよい。これらのノードの一部またはすべての組み合わせは、監視および中和に使用することができる。
【０１３０】
図４９の例では、脅威ニュートラライザ４９３０は、特徴変換４９３１、ＢＰＲＥ４９３２、および逆特徴変換４９３３を含む複数の計算ブロックを含み、これらは本明細書においてさらに説明される。ＢＰＲＥ４９３２は、システム識別または他の既知のモデリング手法によって取得された動的モデルまたは静的モデルを使用して、敵対的攻撃の下で特徴ベクトルの真の値の推定値を計算するように設計されている。したがって、脅威ニュートラライザ４９３０内の計算要素は、各ノード内に存在する攻撃シグネチャを除去するためのフィルタとして機能することができる。結果として、出力信号４９４０（または中和された信号）は、動作正常性のためにシステムの残りの部分によって使用するために、これらのノードにおける信号の真の推定値を含むことができる。この例では、ｙは検知信号に対応し、ｕはアクチュエータ信号に対応し、ｃは制御ノード信号に対応し、ｒは参照信号に対応する。これらはそのような信号のベクトルである。便宜上、各ベクトルのアンダースコアは削除されている。
【０１３１】
特徴変換：所与のシナリオについて、時系列信号（例えば、約４５秒）がキャプチャされ、前処理され得る。これらの信号は、特徴抽出アルゴリズム（例えば、主成分分析）への特徴変換４９３１によって処理されて、システムの次元または次数を低減することができる。例えば、センサノードからの時系列データを特徴ベクトルに変換することができる。手順は他のすべての信号に対して同じである。現在の実施態様のように主成分が特徴として使用される場合、重みは、特徴空間内の縮小された次元の特徴になる。特徴変換４９３１によって実行される前処理ステップでは、ノードデータの時間正規化を実行することができる。一例として、主成分が特徴として使用される場合、正規化出力は、基底関数の加重線形結合として表現することができる。この特徴抽出アルゴリズムでは、重みはｙの特徴と考えられる。
2021514504.tif 000023
式１
【０１３２】
この例では、ｙ０は平均センサ出力であり、ｗｊはｊ番目の重み（すなわち、ＰＣＡ特徴）であり、
2021514504.tif 000024
はｊ番目の基底ベクトルである。基底ベクトルの正規直交性のために、各特徴は上記の式１を使用して計算することができる。基底ベクトルは、経時的に収集されるシステムからのアンサンブルデータセット（すなわち、履歴データ）を使用して、または資産の仮想モデル（デジタルツインなど）上での摂動を使用して取得することができる。
【０１３３】
システム識別（動的モデリング）：正常動作では、特徴は、特徴変換ユニット４９３１によって時系列データの重複するバッチから抽出される。プロセスは、各重複バッチにわたって特徴変換ユニット４９３１によって継続することができ、特徴空間における特徴進展の新しい時系列がもたらされる。次に、特徴時系列が使用されて、システム識別（すなわち、動的モデリング）が実行される。特徴の選択されたサブセットは、状態空間システム識別方法を使用する動的モデリングに使用されてもよい。例えば、ＵＡＶシステムでは、各センサノードの１５個のＰＣＡ特徴のうち、５個のＰＣＡ特徴を使用することができる。
【０１３４】
動的モデルは状態空間フォーマットである。動的モデラは、動的モデルを特徴時系列データに適合させるために多変量ベクトル自己回帰（「ＶＡＲ」）モデルを使用することができる。このアプローチが適切でない場合は、調整された特徴ベースのデジタルツインモデル、または特徴進展データから計算された静的モデルなどの別のモデルを使用して、状態空間形式を表すさまざまな行列（すなわち、システム行列、制御行列、出力行列およびフィードフォワード行列、すなわち｛Ａ，Ｂ，Ｃ｝行列）を事前に取得することができる。ＵＡＶシステムの例では、次の状態空間動態を使用して、特徴の時系列進展をモデリングすることができる。
2021514504.tif 000025
式２
【０１３５】
式２の例において、ｅ（ｋ）は「測定された」特徴ベクトルｙ（ｋ）の攻撃成分である。ここで、ｘ（ｋ）は決定されるべき「真の」特徴ベクトルである。システム行列Ａ、制御ベクトルｂ、および出力行列Ｃは、実験データおよびシミュレーションデータを使用してオフラインで計算され、実際のセンサ測定から取得されるリアルタイム特徴を使用してリアルタイムで更新することができる。
【０１３６】
境界およびパフォーマンス制約付き弾性推定器（ＢＰＲＥ）：例示的な実施形態は、ＢＰＲＥ４９３２と呼ばれる修正された弾性推定器を使用して真の状態を推定することを試みる。上記の式２に示した状態空間モデルの例のように、演算子
2021514504.tif 000026
によって表されるモデルを使用して、ＢＰＲＥ４９３２は敵対的攻撃の下で特徴ベクトルの真の値を推定するように設計されている。ＢＰＲＥ４９３２は、以下の最適化問題を解決することができる弾性推定器である。
2021514504.tif 000027
式３
【０１３７】
この例において、ｙｋは測定／観測値のシーケンスであり、ｘｋは現在のタイムステップの特徴ベクトルであり、ｘｋｐｒｅｖは前のタイムステップの特徴ベクトルであり、
2021514504.tif 000028
は状態空間モデルまたは特徴空間から信号空間への伝達関数を表す演算子である。ｐ１およびｐ２は、境界および不変性の関係のそれぞれのパラメータ値である。ｑは、最適化の文献においてよく知られているｑ＝１の場合のｌ１、ｑ＝２の場合のｌ２などの最適化アプローチを説明するために使用される。最適化の第１の制約により、任意の正の数とすることができるεによって与えられる何らかの安全係数、または、多次元決定境界からの最も遠いサポートベクトルの距離のようなより直感的なものを有する安全エンベロープ内に最終的な推定値が入ることを保証することができる。ＢＰＲＥ４９３２は、脅威／攻撃の境界を計算することができ、資産から履歴的に受信される正常データ値からパフォーマンス制約付き弾性推定器を計算することもできる。図５０は、例示的な実施形態による脅威検出のための境界および性能推定プロセスの一例を概念的に示す。図５０の例では、境界制約のグラフィックビュー５０００が、正のεによって指定される内側マージン境界５００６と共に示されている。負のεは外側マージン境界５００８を表す。また、ε＝０は硬決定境界５００４を表す。式３の「スコア」関数は、安全エンベロープの学習に使用される特定のアルゴリズムに依存する。例えば、
2021514504.tif 000029
式４
【０１３８】
式４は、カーネル関数（．）を有するサポートベクタマシン（「ＳＶＭ」）を使用して取得される安全エンベロープを定義する。第２の制約は、システムによる正常パフォーマンスの達成に関連している。ここで、保証ソリューションは、正常に動作していたシステムに固有の暗黙の不変性関係を満たすことができ、正常動作空間内の太い曲線５００２によって図５０にグラフで示されている。この制約は「パフォーマンス制約」と呼ばれ、最適化中に必要になる場合がある。値εは、システムのノイズによる不確実性をキャプチャするために使用される。例えば、ＰＣＡの場合、不変性関係は、データ行列の特徴共分散の最小特異値に対応する特異ベクトルによって取得される。例えば、
2021514504.tif 000030
を、経時的に収集されるシステムからのアンサンブルデータセット（すなわち、履歴データ）を使用して、または、資産のデジタルツインモデル上での摂動を用いて構築されるデータ行列とし、各行は、対応する瞬間的な時系列測定値である。次に、不変性関係は線形不等式ｌ≦ＶＹ≦ｕによって取得され、式中、（ｌ、ｕ）は行列ＶＹの最小値および最大値であり、Ｖの列は最小特異値に対応するＹＴＹの特異ベクトルである。
【０１３９】
図５０において、正常動作信号５００１ａに対応する特徴ベクトルは潜在的な脅威とは考えられず、一方、境界５００４の外側に位置付けられる特徴ベクトルは、脅威５００１ｂまたは攻撃信号と考えられる。境界の外側のこれらの点は、攻撃点５００１ｂとして参照される場合もある。これらの攻撃点は、正常パフォーマンス領域５００２の近くまたは正常パフォーマンス領域５００２上のどこかの点によって表される以前は正常であった特徴ベクトルを、点５００１ｂによって指定される攻撃領域のどこかに移動するサイバー攻撃に起因する可能性がある。ここで図４９と図５０の両方を参照すると、特徴ベクトルが境界５００４の外側にある場合、異常なイベント５００１ｂが示され、ＢＰＲＥ推定器４９３２は、資産に接続された制御システムまたは他のデバイスに関する資産の正常動作を保持する境界５００４の内部のパフォーマンス制約に沿った特徴ベクトルの推定値を求めることができる。
【０１４０】
式３において使用される最適化は、２つの加重目的を含む。第１の目的は、観測された特徴とモデリングされた特徴との間の誤差のｑノルム（ｑ∈｛０，１，２，．．．｝）を含む。この問題にはｑ＝０が理想的であるが、ＮＰ困難な問題をもたらす。その結果、適切に挙動される凸計画を作成するために、値ｑ≧１を使用することができ、どの場合でも使用される特定の値は、その場合の所望の誤差特性に依存し得る。例えば、値ｑ＝１は理想的な事例に最も近い近似を提供するが、混合ノルム問題が発生し、一方、値ｑ＝２は理想から離れているが、目的のノルムを統合し、全体的な最適化問題は、よく知られている二次円錐計画のサブクラスである。次に、測定された、および推定された「真の」特徴ベクトルを、特徴変換を反転することによって時系列信号に変換することができる。
【０１４１】
逆特徴変換：ＰＣＡを線形変換である特徴ベクトルとして使用する場合、逆特徴変換ユニット４９３３によって反転を得ることができる。例えば、推定された真の特徴を使用して、基底ベクトルの重み付き線形和を実行し、信号を平均センサ出力と合計することができる。逆特徴変換ユニット４９３３は、境界およびパフォーマンス制約付き弾性推定器から得られた特徴を信号空間に変換し戻すことができる。この例では、攻撃を受けた正常性の真の信号は以下によって得られる。
2021514504.tif 000031
式５
式中、
2021514504.tif 000032
【０１４２】
ＢＰＲＥ４９３２は、被攻撃センサ信号を正常性境界５００４に戻し、これはまた、元のシステムの正常動作にも変換される。その結果、中和された信号４９４０が脅威ニュートラライザ４９３０から出力される。この反転手法は、特徴変換アルゴリズムが適切に定義されており、些細なカーネル（少なくとも単射）しかないと仮定する。ＭＭＭＤ特徴発見フレームワークは、知識ベースの浅いおよび／またはディープラーニング特徴を識別するために使用することができる。ＭＭＭＤ特徴発見フレームワークは、特徴エンジニアリング（バッチ選択、基底ベクトル計算、特徴抽出、次元縮小などの分析に関連する）、および、エンジニアリングされた動的システム特徴ベクトルに関連付けられ得ることに留意されたい。知識ベースの特徴エンジニアリングは、システムのドメインまたはエンジニアリング知識を使用して、種々のセンサ測定値から特徴を作成することができる。これらの特徴は、単純に、時系列信号、およびまた、その対応する高速フーリエ変換（「ＦＦＴ」）スペクトルのウィンドウにわたって計算される統計記述子（例えば、最大、最小、平均、分散、種々の次数のモーメントなど）であり得る。知識ベースの特徴はまた、基底ベクトル分解、状態推定、可観測性行列、トポロジー行列、システムドローン行列、周波数ドメイン特徴、およびシステムの極およびゼロ点など、システムの分析も利用し得る。これらの分析は、定常状態、過渡状態、および小信号挙動によるシステムの特性を表すことができる。特徴抽出プロセスは、教師なし学習、ｋ平均クラスタリング、多様体学習、非線形埋め込み、アイソマップ法、ＬＬＥ、一例において上述したようなＰＣＡ、非線形ＰＣＡ、ＩＣＡ（「独立成分分析」）、ニューラルネットワーク、ＳＯＭ（「自己組織化マップ」）法、遺伝的プログラミング、および／またはスパースコーディングなどの浅い特徴学習技法にさらに関連付けられ得る。上記のＰＣＡの場合のように特徴が適切に定義されていない場合、数値反転アルゴリズムを使用して、真の特徴を同等の時系列形式に変換することができる。さらに、継続的な更新の実行中に、以前のバッチからの時系列信号の平滑化が必要になる場合がある。
【０１４３】
図５１は、例示的な実施形態によるサイバーベースの脅威を中和する方法５１００を示す。例えば、方法５１００は、図４９に示されるニュートラライザ４９３０によって実行されてもよい。図５１を参照すると、５１１０において、方法は、資産から、資産に関連する時系列データを含む入力信号を受信することと、入力信号を特徴空間における特徴値に変換することとを含む。資産は、ドローンなどの物理的な資産であってもよい。入力信号は、ＩＩｏＴ内に含まれる物理的資産に関連する信号を含んでもよい。入力信号の例は、資産からの測定パラメータ、制御信号、参照信号などを含む。入力信号の受信に応答して、方法は、入力信号を時間ドメインから周波数ドメインに変換することができる。例えば、入力信号は、周波数ベクトルなどの周波数値に変換されてもよい。特徴ベクトルは、少なくとも２つの次元（例えば、大きさ、位置、時間など）を有し、多次元特徴空間内でグラフ化することができる。
【０１４４】
５１２０において、方法は、資産に関連付けられた所定の正常性境界に基づいて、特徴空間内の１つまたは複数の異常な特徴値を検出することを含む。正常性境界は、以前に資産から受信した履歴データ（すなわち、正常および／または異常）データに基づいて決定することができる。いくつかの実施形態では、正常性境界は、資産から新たに受信されるセンサデータに基づいて継続的に更新されてもよい。異常値は、攻撃境界としても参照される、正常性境界に対する特徴空間内の特徴ベクトルの位置に基づいて識別されてもよい。この場合、境界の内側にプロットされた値は正常と決定することができ、境界の外側にプロットされた値は異常または脅威と決定することができる。ここで、検出された異常な特徴値は、資産に関連付けられた攻撃信号に対応し得る。
【０１４５】
５１３０において、方法は、各異常な特徴値（すなわち、異常な特徴ベクトル）の推定された真の特徴値（すなわち、真の特徴ベクトル）を決定することを含む。例えば、真の特徴ベクトルにおける推定された真の特徴値は、特徴値を有する結果の特徴ベクトルが、特徴空間における所定の正常性境界内に位置するように、攻撃信号に関連付けられる特徴ベクトルの一部をマスキングすることにより決定することができる。この例では、真の特徴ベクトルは、攻撃信号が除去された正常信号の真の特徴の推定値であり得る。いくつかの例では、特徴ベクトルの真の値を決定する前に、方法は、真の値を推定する前に、特徴空間に関連する可観測性条件（図示せず）が満たされていることを決定することを含むことができる。真の特徴ベクトルの真の値を推定する例は、図４９および図５０を参照して説明される。５１４０において、方法は、各推定された真の特徴ベクトルの逆変換を実行して時系列データを含む中和された信号を生成することと、５１５０において、中和された信号を出力することとを含む。例えば、中和された信号は、資産に関連する制御システムまたは別のデバイスに出力されてもよい。
【０１４６】
図５２は、上述のような境界およびパフォーマンス制約付き弾性推定器のシミュレートされたパフォーマンスの例５２００を示す。この例では、６つのセンサノード（センサ１〜６）の４５秒の時系列信号が表示されている。上の信号は、センサ６１０がバイアス攻撃を受けたときの攻撃中のセンサの出力に対応する。各グラフの中央の信号は、攻撃前の正常動作状態に対応し、一方、各グラフの下部の信号は、例示的な実施形態で説明された技法による処理後に得られる中和された信号に対応する。
【０１４７】
このサンプルシミュレーションについて、特徴空間内のシステム識別は使用されない。したがって、使用される最適化のパラメータは以下のとおりである。
2021514504.tif 000033
式６
2021514504.tif 000034
式７
式中、
2021514504.tif 000035
はｊ番目のセンサノードのｊ番目の基底ベクトル行列であり、ｎはセンサの総数である。この例では、ｎ＝６である。
2021514504.tif 000036
は、大域的特徴ベクトルの基底ベクトル行列である。大域的特徴ベクトルは、各センサノードからの特徴ベクトルを拡張し、さらなる主成分分析によって次元縮小を実行することによって取得される。
2021514504.tif 000037
は大域的特徴ベクトルの平均である。場合によっては、式３の
2021514504.tif 000038
が使用されてもよい。最適化を実行した後、真の大域的特徴ベクトルが取得される。それらはその後、逆特徴変換を使用して時系列に変換された。明らかに、図５２に示すように、ＢＰＲＥアルゴリズムによって生成される中和された信号は攻撃境界内にあり、動作正常性に非常に近い。
【０１４８】
例示的な実施形態は、攻撃／異常の検出を超えることを目的とする。本明細書において説明する脅威ニュートラライザは、ＵＡＶシステムへのステルス攻撃などのサイバー破壊が発生したときに、自動適応機能を提供する。攻撃は非常に高度になっており、多面的であり、現在の障害検出システムを使用して検出することができないため、検出が難しい場合がある。また、多くの障害検出システムは、動作正常性について真の状態を推定しない。本明細書に記載されている脅威ニュートラライザ内に含まれる境界およびパフォーマンス制約付き弾性推定器は、信号の真の推定値を自動的に求め、したがって、パフォーマンスに対して期待される動作を維持しながら、進行中の攻撃に応答するシステム動作に対する調整を提供することが可能であり得る。脅威ニュートラライザは、機構的には人間の免疫系が病原体を破壊するのと同じ方法で、攻撃を自己検出し、次いで、信号の真の値を求めることによって攻撃シグネチャを無効にすることができる。
【０１４９】
図５３は、いくつかの実施形態による、オフライン学習５３１０およびリアルタイム実行を用いる弾性推定器５３２０を示す５３００。弾性推定器５３２０は、サイバーフィジカルシステム（「ＣＰＳ」）と情報を交換し、システム応答データ（弾性メトリック５３４０にも提供される）を受信する。弾性推定器５３２０は、制御理論、圧縮検知、および／または機械学習の結果をマージして、種々のフィールドからの重要な結果を相乗させて、悪意のあるサイバー侵入者に対する回復力を構築することができるフレームワークを提供する、最適化ベースのデータ駆動型プロセスであってもよい。
【０１５０】
オフライン学習５３１０は、ＤｏＥ物理学ベースのモデル、データ変換５３１４、攻撃決定境界５３１６、および／または再生核ヒルベルト空間（「ＲＫＨＳ」）線形力学を含み得る。監視ノード間の情報交換を特徴付けるために、ハイブリッド制御システムおよび機械学習動的モデルを構築することができることに留意されたい。いくつかの実施形態によれば、動的モデルは、全体がＲＫＨＳにおいて構築されて、高（場合によっては無限）次元のＲＫＨＳにおいて線形性仮定を提供する。そのようなアプローチは、基礎となるプロセスにおける非線形性、および、ＲＫＨＳにおいて線形である分類子をキャプチャすることができ、結果として得られる弾性推定器アルゴリズムに組み込むことができる。学習プロセスは、システムの動作空間にまたがるデータを収集するためにＤｏＥを実行することによって開始することができる。次に、関数主成分分析（「ｆＰＣＡ」）を使用して、可逆次元縮小を実行することができる。次に、縮小次元データを高次元（場合によっては無限）ＲＫＨＳに変換することができる。次に、線形遷移演算子を、正則化された最小二乗最適化を使用して学習することができる。ＵＡＶシステムのパラメータ化されたより忠実度の低いモデルは、利用可能な場合は、学習された遷移演算子によって拡張することができる。出力式も同じ方法で学習することができる。計算の可能性のために、まさに次元的なＲＫＨＳは、カーネルＰＣＡ（「ｋＰＣＡ」）を使用して、所与のサイズの有限次元に制約される。
【０１５１】
実行時に、弾性推定器５３２０は、破損した信号の補正を提供することができる。補正は、古典的な誤差修正問題を中心とする最適化問題を解くことによって得ることができる。攻撃信号は疎らであると仮定され、復号動作は、圧縮検知問題としてキャストされる観測からスパースベクトルを再構築する動作である。多次元決定境界およびさまざまなマッピングパラメータは、各監視ノードに存在する攻撃シグネチャを除去するフィルタのように機能するように設計された弾性推定器に入力することができる。最後に、出力は、動作正常性のためにシステムの残りの部分によって使用するために、これらのノードにおける信号の真の推定値を含むことができる。
【０１５２】
最適化問題は、
2021514504.tif 000039
を最小化することであってもよく、式中、ｅは推定誤差であり、ｙは信号空間内の測定ベクトル（例えば、センサ、アクチュエータ、および参照入力からの測定値）であり、φは、大域的特徴を有するシステムを表すために使用される大域的基底行列であり、ｘは大域的特徴ベクトルであり、Ｐは式Ｐｘ＋ｂによって記述される超平面の単位法線であり、ｂは超平面のオフセットであり、ｌ０は０次ノルムである。解は、観測（ｙ）がロバスト性項Δによって示される正確度レベルまでオフラインモデル（ｘによって与えられる）で完全に説明することができる破損ノードの最小数を識別することができることに留意されたい。さらに、結果の状態（ｘ）は、制約されたＲＫＨＳ内で超平面
2021514504.tif 000040
によって与えられる境界の安全ゾーン内に留まる必要がある。
【０１５３】
図５４は、例えば、グラフィカル描写５４１０をオペレータに提供するため、および／またはオペレータが仮想センサを適切に調整することを可能にする対話型インターフェースを提供するために使用され得る仮想センサディスプレイ５４００の例である。ディスプレイ５４００上の項目を選択すると（例えば、タッチスクリーンまたはコンピュータのマウスポイントを介して）、オペレータはその特定の項目に関するさらなる情報を表示し、および／または、その項目の動作を（例えば、実際の監視ノードデータを仮想センサデータに置き換えることによって）調整することができる。本明細書において説明される実施形態は、任意の数の異なるハードウェア構成を使用して実施されてもよいことに留意されたい。例えば、図５５は、例えば、図１のシステム１００および／または本明細書において説明される他の任意のシステムに関連付けられ得る、ＵＡＶシステム保護プラットフォーム５５００のブロック図である。ＵＡＶシステム保護プラットフォーム５５００は、通信ネットワーク（図５５には示さず）を介して通信するように構成された通信デバイス５５６０に結合された、ワンチップマイクロプロセッサの形態の１つまたは複数の市販の中央処理装置（「ＣＰＵ」）などのプロセッサ５５１０を備える。通信デバイス５５６０は、例えば、１つまたは複数の遠隔監視ノード、ユーザプラットフォーム、デジタルツインなどと通信するために使用することができる。ＵＡＶシステム保護プラットフォーム５５００は、入力デバイス５５４０（例えば、仮想センサおよび／または予測モデリング情報を入力するためのコンピュータマウスおよび／またはキーボード）および／または出力デバイス５５５０（例えば、ディスプレイをレンダリングし、警告を提供し、推奨事項を送信し、および／またはレポートを作成するためのコンピュータモニタ）をさらに含む。いくつかの実施形態によれば、モバイルデバイス、監視物理システム、および／またはＰＣを使用して、ＵＡＶシステム保護プラットフォーム５５００と情報を交換することができる。
【０１５４】
プロセッサ５５１０は、記憶デバイス５５３０とも通信する。記憶デバイス５５３０は、磁気記憶デバイス（例えば、ハードディスクドライブ）、光学記憶デバイス、携帯電話、および／または半導体メモリデバイスの組み合わせを含む、任意の適切な情報記憶デバイスを含んでもよい。記憶デバイス５５３０は、プロセッサ５５１０を制御するためのプログラム５５１２および／または仮想センサモデル５５１４を記憶する。プロセッサ５５１０は、プログラム５５１２、５５１４の命令を実行し、それにより、本明細書において説明される実施形態のいずれかに従って動作する。例えば、プロセッサ５５１０は、現在攻撃されていない監視ノードから受信される情報に基づいて被攻撃監視ノードの一連の仮想ノード値を推定することができる。プロセッサ５５１０はまた、被攻撃監視ノードの一連の監視ノード値を、仮想ノード値に置き換えることもできる。
【０１５５】
プログラム５５１２、５５１４は、圧縮された、コンパイルされていない、および／または暗号化された形式で記憶されてもよい。プログラム５５１２、５５１４は、オペレーティングシステム、クリップボードアプリケーション、データベース管理システム、および／または周辺機器とインターフェースするためにプロセッサ５５１０によって使用されるデバイスドライバなどの他のプログラム要素をさらに含むことができる。
【０１５６】
本明細書において使用される場合、情報は、例えば、（ｉ）別のデバイスからＵＡＶシステム保護プラットフォーム５５００、または（ｉｉ）別のソフトウェアアプリケーション、モジュール、もしくは任意の他のソースからＵＡＶシステム保護プラットフォーム５５００内のソフトウェアアプリケーションもしくはモジュールによって「受信」することができ、またはそれらに「送信」することができる。
【０１５７】
いくつかの実施形態（図５５に示されるものなど）では、記憶デバイス５５３０は、仮想センサデータベース５６００をさらに記憶する。ここで、ＵＡＶシステム保護プラットフォーム５５００に関連して使用され得るデータベースの例を、図５６に関して詳細に説明する。本明細書において説明されるデータベースは一例にすぎず、追加のおよび／または異なる情報がそこに記憶され得ることに留意されたい。さらに、本明細書に記載されている実施形態のいずれかに従って、様々なデータベースを分割または組み合わせることができる。
【０１５８】
図５６を参照すると、いくつかの実施形態に従ってＵＡＶシステム保護プラットフォーム５５００に記憶され得る仮想センサデータベース５６００を表すテーブルが示されている。テーブルは、例えば、保護されるべきＵＡＶシステムを識別するエントリを含むことができる。テーブルはまた、エントリの各々に対するフィールド５６０２、５６０４、５６０６、５６０８、５６１０、５６１２を定義することもできる。フィールド５６０２、５６０４、５６０６、５６０８、５６１０、５６１２は、いくつかの実施形態によれば、ＵＡＶシステム識別子５６０２、ＵＡＶ説明５６０４、仮想センサ識別子５６０６、行列５６０８、説明５６１０、およびステータス５６１２を指定することができる。仮想センサデータベース５６００は、例えば、新しい物理システムが監視またはモデリングされるとき、攻撃が検出されるときなどに作成および更新され得る。
【０１５９】
ＵＡＶシステム識別子５６０２および説明５６０４は、保護される特定のドローンまたはシステムを定義することができる。仮想センサ識別子５６０６は、ＵＡＶシステムのためにモデリングされている特定のセンサを識別する固有の英数字コードであってもよい。行列５６０８はルックアップテーブルに関連付けられてもよく、説明５６１０は推定されているセンサを示してもよく、ステータス５６１２は、例えば、関連付けられた監視ノードが正常に動作しているか、または、現在サイバー攻撃を受けているかを示してもよい。
【０１６０】
以下は、本発明の様々な追加の実施形態を示す。これらはすべての可能な実施形態の定義を構成するものではなく、当業者は、本発明が他の多くの実施形態に適用可能であることを理解するであろう。さらに、以下の実施形態は明確にするために簡単に説明されているが、当業者は、必要に応じて、これらおよび他の実施形態および用途に対応するために上記の装置および方法に変更を加える方法を理解するであろう。
【０１６１】
本明細書においては特定のハードウェアおよびデータ構成について説明したが、本発明の実施形態に従って任意の他の構成を提供することができることに留意されたい（例えば、本明細書において説明したデータベースと関連付けられる情報の一部は外部システムに結合または記憶されてもよい）。例えば、いくつかの実施形態はＵＡＶに焦点を合わせているが、本明細書において説明される実施形態のいずれも、自動車、潜水艦などを含む他のタイプの自律型車両に適用され得る。
【０１６２】
本発明は、単に例示の目的でいくつかの実施形態に関して説明されてきた。当業者は、この説明から、本発明が説明された実施形態に限定されず、添付の特許請求の範囲の精神および範囲によってのみ制限される修正および変更を伴って実施され得ることを認識するであろう。
【図１】
2021514504.tif 000042
【図２】
2021514504.tif 000043
【図３】
2021514504.tif 000044
【図４】
2021514504.tif 000045
【図５】
2021514504.tif 000046
【図６】
2021514504.tif 000047
【図７】
2021514504.tif 000048
【図８】
2021514504.tif 000049
【図９】
2021514504.tif 000050
【図１０】
2021514504.tif 000051
【図１１】
2021514504.tif 000052
【図１２】
2021514504.tif 000053
【図１３】
2021514504.tif 000054
【図１４】
2021514504.tif 000055
【図１５】
2021514504.tif 000056
【図１６】
2021514504.tif 000057
【図１７】
2021514504.tif 000058
【図１８】
2021514504.tif 000059
【図１９】
2021514504.tif 000060
【図２０】
2021514504.tif 000061
【図２１】
2021514504.tif 000062
【図２２】
2021514504.tif 000063
【図２３】
2021514504.tif 000064
【図２４】
2021514504.tif 000065
【図２５】
2021514504.tif 000066
【図２６】
2021514504.tif 000067
【図２７】
2021514504.tif 000068
【図２８】
2021514504.tif 000069
【図２９】
2021514504.tif 000070
【図３０】
2021514504.tif 000071
【図３１】
2021514504.tif 000072
【図３２】
2021514504.tif 000073
【図３３】
2021514504.tif 000074
【図３４】
2021514504.tif 000075
【図３５】
2021514504.tif 000076
【図３６】
2021514504.tif 000077
【図３７】
2021514504.tif 000078
【図３８】
2021514504.tif 000079
【図３９】
2021514504.tif 000080
【図４０】
2021514504.tif 000081
【図４１】
2021514504.tif 000082
【図４２】
2021514504.tif 000083
【図４３】
2021514504.tif 000084
【図４４】
2021514504.tif 000085
【図４５】
2021514504.tif 000086
【図４６】
2021514504.tif 000087
【図４７】
2021514504.tif 000088
【図４８】
2021514504.tif 000089
【図４９】
2021514504.tif 000090
【図５０】
2021514504.tif 000091
【図５１】
2021514504.tif 000092
【図５２】
2021514504.tif 000093
【図５３】
2021514504.tif 000094
【図５４】
2021514504.tif 000095
【図５５】
2021514504.tif 000096
【図５６】
2021514504.tif 000097
【国際調査報告】
2021514504.tif 000098
2021514504.tif 000099
2021514504.tif 000100