JP7211429B2 - 情報処理装置、制御方法、及びプログラム - Google Patents

情報処理装置、制御方法、及びプログラム Download PDF

Info

Publication number
JP7211429B2
JP7211429B2 JP2020557106A JP2020557106A JP7211429B2 JP 7211429 B2 JP7211429 B2 JP 7211429B2 JP 2020557106 A JP2020557106 A JP 2020557106A JP 2020557106 A JP2020557106 A JP 2020557106A JP 7211429 B2 JP7211429 B2 JP 7211429B2
Authority
JP
Japan
Prior art keywords
attack
sensor
behavior
actuators
rule
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020557106A
Other languages
English (en)
Other versions
JPWO2020105179A1 (ja
Inventor
和也 柿崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Publication of JPWO2020105179A1 publication Critical patent/JPWO2020105179A1/ja
Application granted granted Critical
Publication of JP7211429B2 publication Critical patent/JP7211429B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Description

本発明は制御システムのモデル検査に関する。
複数の機器を制御するためのシステムとして制御システムが知られている。制御システムは発電所などの重要インフラ施設内で使用されることもあり、適切なセキュリティアセスメントの実施が必要とされている。
セキュリティアセスメントとは、脅威と脆弱性により対象資産に損害が生じる可能性(リスク)を明らかにし、そのリスクの要因分析、影響度、及び損失等を評価し、その結果に基づいて対策を実施することである。ここで、無数に存在しうるリスクに対して限られた予算内で効率良く対策を実施するためには、適切にリスクを分析・評価する必要がある。例えば、攻撃に基づくリスクにおいては、その攻撃が成功するかどうかだけでなく、攻撃が成功するまでの手順(攻撃シナリオ)などを明らかにすることが重要である。
なお、本明細書における「攻撃」とは、制御システムを通常運転では陥ることのない状態(以下、異常な状態)に到達させるための攻撃者による振舞いを指す。また、「攻撃者」とは、システムに対して攻撃を実施する人や組織を指す。また、攻撃が目標とする制御システムの状態を攻撃ゴールと呼ぶ。
セキュリティアセスメントを実現する手法の1つとして、モデル検査ツールを利用する方法がある。モデル検査ツールは、専用の言語を用いて記述された対象システムのモデルを入力として取得し、SAT(Satisfiability problem)ソルバ等を用いることにより、モデルが満たす状態を網羅的に探索する。これにより、モデルが到達しうる状態が仕様を満たしているか否かが、自動的に検証される。このようにして、モデル検査ツールは、対象システムに対する仕様の正しさを網羅的かつ自動的に検証する。また、モデル検査ツールを用いると、検証の際に、仕様を満たすモデルの例、及び満たさない場合の反例を確認することができる。
モデル検査ツールを利用したセキュリティアセスメントについて開示している先行技術文献として、非特許文献1がある。非特許文献1は、Alloy Analyzer というモデル検査ツールを用いた、制御システムのモデル検査について開示している。
非特許文献1では、制御システムの構成及び攻撃者の能力を表現したモデルを生成し、モデル検査ツールを用いてこのモデルを検証する。この際、攻撃のゴールとする制御システムの状態を仕様として扱うことで、仕様を満たす攻撃の手順、すなわち攻撃ゴールを達成することができる攻撃の手順が網羅的に探索される。
ここで、非特許文献1が対象とする制御システムは、1つのセンサ、複数のアクチュエータ、及び複数のコントローラで構成される。センサは、制御対象に関する物理量を計測する。アクチュエータは、センサによって計測される制御対象の物理量を制御するための装置である。コントローラは、センサによって計測された物理量に基づいてアクチュエータを制御する装置である。より具体的には、例えばコントローラは、センサから取得した物理量と、設定された閾値との比較を行い、その比較結果に応じてアクチュエータに制御信号を送信する。
Eunsuk Kang、Sridhar Adepu、Daniel Jackson、Aditya P. Mathur、「Model-Based Security Analysis of a Water Treatment System」、International Workshop on Software Engineering for Smart Cyber-Physical Systems、2016年
非特許文献1に開示されている制御システムには、センサが1つしか含まれていない。よって、非特許文献1では、センサを複数有するより複雑な制御システムについてのセキュリティアセスメントについては言及されていない。
本発明は、上記の課題に鑑みてなされたものであり、その目的の1つは、センサを複数有する制御システムについて、モデル検査を利用した安全性の検証を実現する技術を提供することである。
本発明の情報処理装置は、1)制御対象に関する物理量を観測する複数のセンサ、制御対象の挙動を変化させる複数のアクチュエータ、及び各アクチュエータを制御するコントローラを有するシステムの構成を表す構成情報、及びコントローラによる各アクチュエータの制御のルールを表す制御ルールを取得する第1取得部と、2)センサによって観測された物理量の時系列データと各時刻における各アクチュエータの状態との組み合わせを示す挙動ログデータを、各センサについて取得する第2取得部と、3)挙動ログデータを用いて、複数のアクチュエータの状態の組み合わせごと及びセンサごとに、その状態の組み合わせにおいてそのセンサによって観測される物理量の時間変化を表す挙動関数を生成する第1生成部と、4)システムについて、構成情報、制御ルール、及び挙動関数を用いてシステムモデルを生成する第2生成部と、を有する。
本発明の制御方法はコンピュータによって実行される。当該制御方法は、1)制御対象に関する物理量を観測する複数のセンサ、制御対象の挙動を変化させる複数のアクチュエータ、及び各アクチュエータを制御するコントローラを有するシステムの構成を表す構成情報、及びコントローラによる各アクチュエータの制御のルールを表す制御ルールを取得する第1取得ステップと、2)センサによって観測された物理量の時系列データと各時刻における各アクチュエータの状態との組み合わせを示す挙動ログデータを、各センサについて取得する第2取得ステップと、3)挙動ログデータを用いて、複数のアクチュエータの状態の組み合わせごと及びセンサごとに、その状態の組み合わせにおいてそのセンサによって観測される物理量の時間変化を表す挙動関数を生成する第1生成ステップと、4)システムについて、構成情報、制御ルール、及び挙動関数を用いてシステムモデルを生成する第2生成ステップと、を有する。
本発明のプログラムは、コンピュータに、本発明の制御方法が有する各ステップを実行させる。
本発明によれば、センサを複数有する制御システムについて、モデル検査を利用した安全性の検証を実現する技術が提供される。
上述した目的、およびその他の目的、特徴および利点は、以下に述べる好適な実施の形態、およびそれに付随する以下の図面によってさらに明らかになる。
実施形態1の情報処理装置の概要を例示する図である。 実施形態1の情報処理装置の機能構成を例示する図である。 情報処理装置を実現するための計算機を例示する図である。 実施形態1の情報処理装置によって実行される処理の流れを例示するフローチャートである。 第3生成部を有する情報処理装置を例示する図である。 挙動ログデータによって示されている情報をグラフで例示した図である。 複数のアクチュエータの状態の組み合わせごとに挙動関数が生成される様子を例示する図である。 実施形態2の情報処理装置の機能構成を例示する図である。 実施形態2の情報処理装置によって実行される処理の流れを例示するフローチャートである。
以下、本発明の実施の形態について、図面を用いて説明する。尚、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。また、特に説明する場合を除き、各ブロック図において、各ブロックは、ハードウエア単位の構成ではなく、機能単位の構成を表している。
[実施形態1]
<発明の概要>
図1は、実施形態1の情報処理装置2000の概要を例示する図である。図1に示す概要は、情報処理装置2000の理解を容易にするための例示であり、情報処理装置2000の機能を限定するものではない。
情報処理装置2000は、制御システム10のモデル(以下、システムモデル)を生成する。システムモデルは、制御システム10の安全性をモデル検査によって検証するために利用される。具体的には、モデル検査ツールを利用してシステムモデルの解析を行うことにより、制御システムを異常な状態にさせる攻撃の手順(シナリオ)を探索する。制御システムを異常な状態にさせる攻撃シナリオが見つかったら、制御システム10がその攻撃シナリオで表される攻撃に対して脆弱であることが分かる。
情報処理装置2000が扱う制御システム10は、図1に例示するように、制御対象12、複数のセンサ14、複数のアクチュエータ16、及びコントローラ18を有する。センサ14は、制御対象12に関する物理量を計測し、その計測結果を出力する。例えば制御対象12が貯水タンクである場合、センサ14は、貯水タンクの水量を計測するセンサなどである。
アクチュエータ16は、センサ14が計測する物理量を制御するための装置である。例えば制御対象12が貯水タンクであり、センサ14が貯水タンク内の水量を計測するとする。この場合、例えばアクチュエータ16は、貯水タンクに対する水の流入を制御するポンプである。
コントローラ18は、アクチュエータ16の動作を制御する。例えばアクチュエータ16が前述したポンプである場合、コントローラ18は、ポンプの状態を ON と OFF の間で切り替える PLC(Programmable Logic Controller)などである。
制御システム10のシステムモデルは、制御システム10の構成(すなわち、制御システム10に含まれるセンサ14、アクチュエータ16、及びコントローラ18の構成)を表す構成情報に加え、制御ルールと挙動関数を用いて生成される。制御ルールは、コントローラ18が行う制御の規則であり、センサ14の観測値に基づいてコントローラ18がどのようにアクチュエータ16を制御するのかを定めたものである。例えば、貯水タンクの水量を検出するセンサ14によって検出された水量に基づいて貯水タンクのポンプをコントローラ18で制御する場合、センサ14によって検出される水量と、コントローラ18がアクチュエータ16に対して行う制御(ポンプの ON/OFF)との関係が、制御ルールとして定められる。
挙動関数は、センサ14の観測値の時間変化を表す関数であり、情報処理装置2000によって生成される。言い換えれば、挙動関数は、センサ14によって観測される制御対象12の挙動を表す。ここで、制御対象12の挙動は、その制御対象12の挙動を制御する複数のアクチュエータ16の状態の組み合わせによって定まる。そこで、或るセンサ14に対応する挙動関数は、複数のアクチュエータ16の状態の組み合わせごとに生成される。例えば、ON と OFF という2つの状態を取りうる2つのアクチュエータ16が制御システム10に含まれる場合、これらのアクチュエータの状態の組み合わせとして、(OFF, ON), (ON, OFF), (OFF, OFF), 及び (ON, ON) という4つが存在する。そこで、これら4つの組み合わせそれぞれについて、センサ14に対応する挙動関数が生成される。
<作用効果>
本実施形態の情報処理装置2000によれば、制御システム10についてモデル検査を行うためのシステムモデルが生成される。このシステムモデルは、複数のセンサ14を含む制御システム10の構成を表す構成情報、複数のセンサ14それぞれの観測値に応じてコントローラ18がアクチュエータ16を制御するための制御ルール、及び複数のセンサ14それぞれの観測値の時間変化を表す挙動関数を用いて生成される。そして、挙動関数は、複数のアクチュエータ16の状態の組み合わせそれぞれについて生成される。このようなシステムモデルによれば、複数のセンサ14それぞれの観測値とその観測値に応じた制御システム10の挙動を表すことができるため、複数のセンサ14を含む制御システム10についてのモデル検査が可能となる。
以下、本実施形態の情報処理装置2000についてさらに詳細に説明する。
<機能構成の例>
図2は、実施形態1の情報処理装置2000の機能構成を例示する図である。情報処理装置2000は、第1取得部2020、第2取得部2040、第1生成部2060、及び第2生成部2080を有する。第1取得部2020は、制御システム10の構成情報、及び各アクチュエータ16についての制御ルールを取得する。第2取得部2040は、挙動ログデータを取得する。第1生成部2060は、挙動ログデータを用いて、複数のアクチュエータ16の状態の組み合わせごと及びセンサ14ごとに、その状態の組み合わせにおいてそのセンサ14によって観測される物理量の時間変化を表す挙動関数を生成する。第2生成部2080は、構成情報、制御ルール、及び挙動関数を用いて、制御システム10のシステムモデルを生成する。
<情報処理装置2000のハードウエア構成>
情報処理装置2000の各機能構成部は、各機能構成部を実現するハードウエア(例:ハードワイヤードされた電子回路など)で実現されてもよいし、ハードウエアとソフトウエアとの組み合わせ(例:電子回路とそれを制御するプログラムの組み合わせなど)で実現されてもよい。以下、情報処理装置2000の各機能構成部がハードウエアとソフトウエアとの組み合わせで実現される場合について、さらに説明する。
図3は、情報処理装置2000を実現するための計算機1000を例示する図である。計算機1000は任意の計算機である。例えば計算機1000は、Personal Computer(PC)やサーバマシンなどの据え置き型の計算機である。その他にも例えば、計算機1000は、スマートフォンやタブレット端末などの可搬型の計算機である。計算機1000は、情報処理装置2000を実現するために設計された専用の計算機であってもよいし、汎用の計算機であってもよい。
計算機1000は、バス1020、プロセッサ1040、メモリ1060、ストレージデバイス1080、入出力インタフェース1100、及びネットワークインタフェース1120を有する。バス1020は、プロセッサ1040、メモリ1060、ストレージデバイス1080、入出力インタフェース1100、及びネットワークインタフェース1120が、相互にデータを送受信するためのデータ伝送路である。ただし、プロセッサ1040などを互いに接続する方法は、バス接続に限定されない。
プロセッサ1040は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、FPGA(Field-Programmable Gate Array)などの種々のプロセッサである。メモリ1060は、RAM(Random Access Memory)などを用いて実現される主記憶装置である。ストレージデバイス1080は、ハードディスク、SSD(Solid State Drive)、メモリカード、又は ROM(Read Only Memory)などを用いて実現される補助記憶装置である。
入出力インタフェース1100は、計算機1000と入出力デバイスとを接続するためのインタフェースである。例えば入出力インタフェース1100には、キーボードなどの入力装置や、ディスプレイ装置などの出力装置が接続される。
ネットワークインタフェース1120は、計算機1000を通信網に接続するためのインタフェースである。この通信網は、例えば LAN(Local Area Network)や WAN(Wide Area Network)である。ネットワークインタフェース1120が通信網に接続する方法は、無線接続であってもよいし、有線接続であってもよい。
ストレージデバイス1080は、情報処理装置2000の各機能構成部を実現するプログラムモジュールを記憶している。プロセッサ1040は、これら各プログラムモジュールをメモリ1060に読み出して実行することで、各プログラムモジュールに対応する機能を実現する。
<処理の流れ>
図4は、実施形態1の情報処理装置2000によって実行される処理の流れを例示するフローチャートである。第1取得部2020は、制御システム10の構成情報、及び各アクチュエータ16についての制御ルールを取得する(S102)。
S104からS110は、複数のセンサ14それぞれについて実行されるループ処理Aである。S104において、情報処理装置2000は、全てのセンサ14を対象としてループ処理Aを実行したか否かを判定する。全てのセンサ14について既にループ処理Aを実行した場合、図4の処理はS112に進む。一方、まだループ処理Aの対象としていないセンサ14がある場合、図4の処理はS106に進む。S106に進む際、情報処理装置2000は、まだループ処理Aの対象としていないセンサ14の中から1つを選択する。ここで選択されるセンサ14を、センサiと表記する。
第2取得部2040は、センサiによって観測された物理量に関する挙動ログデータを取得する(S106)。第1生成部2060は、取得された挙動ログデータを用いて、センサiについての挙動関数を生成する(S108)。S110はループ処理Aの終端であるため、図4の処理はS104に進む。
S112において、第2生成部2080は、構成情報、制御ルール、及び挙動関数を用いて、制御システム10のシステムモデルを生成する。情報処理装置2000は、生成されたシステムモデルを出力する(S114)。
<構成情報について>
構成情報は、制御システム10の構成を表す情報である。具体的には、制御システム10に含まれるセンサ14の集合、アクチュエータ16の集合、及びコントローラ18の集合を表す。なお、コントローラ18の数はアクチュエータ16の数より少なくてもよい。この場合、複数のアクチュエータ16を制御するコントローラ18が存在する。
構成情報は、アクチュエータ16がどのセンサ14によって観測される物理量を制御しているのかを示す第1対応関係情報をさらに含む。例えば、アクチュエータ a1 が、センサ s1 によって観測される物理量を制御するとする。この場合、第1対応関係情報は、(a1, s1)という対応関係を示す。
また、構成情報は、コントローラ18がどのセンサ14から取得した物理量に基づいてどのアクチュエータ16を制御するのかを表す第2対応関係情報を含む。例えば、コントローラ c1 がセンサ s1 から取得した物理量を用いて、アクチュエータ a1 を制御するとする。この場合、第2対応関係情報は、(c1, s1, a1)という対応関係を示す。
第1取得部2020が構成情報を取得する方法は様々である。例えば第1取得部2020は、構成情報が記憶されている記憶装置にアクセスすることで、構成情報を取得する。その他にも例えば、第1取得部2020は、他の装置から送信される構成情報を受信することで、構成情報を取得する。
<制御ルールについて>
制御ルールは、センサ14の観測値に基づいてコントローラ18がどのようにアクチュエータ16を制御するのかを表すルールである。より具体的には、制御ルールは、或る時刻 t においてコントローラ18がセンサ14から取得した観測値に基づいて、時刻 t+1 又はそれ以降の任意の時刻におけるアクチュエータ16の状態を設定するように記述される。例えば、制御ルールは、「時刻 t においてセンサ14の観測値が閾値 H 以上なら、時刻 t+1 でアクチュエータ16の状態を OFF に変更する」といった制御を実現するように記述される。
制御ルールは、情報処理装置2000によって生成されるシステムモデルを用いてモデル検査を行うモデル検査ツールが解釈可能な形式で記述されている必要がある。制御ルールは、人手で作成されてもよいし、情報処理装置2000によって生成されてもよい。前者の場合、例えば第1取得部2020は、制御ルールが記憶されている記憶装置にアクセスしたり、他の装置から送信される制御ルールを受信したりすることにより、制御ルールを取得する。後者の場合、第1取得部2020は、情報処理装置2000の内部で生成された制御ルールを取得する。
後者の場合、情報処理装置2000は、モデル検査ツールが解釈できない形式で記述されている、コントローラ18によるアクチュエータ16の制御を定めた情報を取得し、取得した情報を、モデル検査ツールが解釈可能な情報(すなわち、制御ルール)に変換する。この変換を行う機能構成部を、第3生成部2100と呼ぶ。図5は、第3生成部2100を有する情報処理装置2000を例示する図である。
例えば第3生成部2100は、コントローラ18によって実行される制御プログラムを取得し、その制御プログラムを制御ルールに変換する。この場合、第3生成部2100には、制御プログラムを制御ルールに変換するロジックを含めておく。その他にも例えば、第3生成部2100は、自然言語で記述された情報を取得し、その情報を制御ルールに変換してもよい。この場合、第3生成部2100には、自然言語で記述された情報を制御ルールに変換するロジックを含めておく。なお、制御ルールに変換する情報を第3生成部2100が取得する方法は、以下で説明する、第1生成部2060が制御ルールを取得する方法と同様である。
<挙動ログデータについて>
挙動ログデータは、センサ14によって観測された物理量の時系列データを、複数のアクチュエータ16それぞれの状態に対応づけて示す。より具体的には、挙動ログデータは、「時刻、その時刻にセンサ14によって観測された物理量、その時刻における各アクチュエータ16の状態」という対応関係を示す。挙動ログデータが示す時系列データの時間幅は任意であり、例えば1秒や10秒といった時間幅である。
図6は、挙動ログデータによって示されている情報をグラフで例示した図である。横軸は時間を示し、縦軸は観測値を示す。また、複数のアクチュエータ16の状態の組み合わせが変化するタイミングを点線で示している。このグラフの例のように、複数のアクチュエータ16の状態の組み合わせごとに、センサ14の観測値の時間変化の様子が異なることが多い。そのため、後述する様に、複数のアクチュエータ16の状態の組み合わせごとに、挙動関数が生成される。
センサ14の挙動ログデータは、例えば、制御システム10を実際に動作させ、各時刻におけるそのセンサ14の観測値と各アクチュエータ16の状態とを記録することで生成される。その他にも例えば、挙動ログデータは、制御システム10の動作をシミュレーションすることで生成されてもよい。なお、コンピュータを利用して制御システム10の動作をシミュレーションし、その挙動のログを得る技術には、既存の技術を利用することができる。
第2取得部2040が挙動ログデータを取得する方法は様々である。例えば第2取得部2040は、挙動ログデータが記憶されている記憶装置から挙動ログデータを取得する。その他にも例えば、第2取得部2040は、他の装置から送信された挙動ログデータを受信することで、挙動ログデータを取得してもよい。
<挙動関数の生成:S108>
第1生成部2060は、センサ14の挙動ログデータを利用して、複数のアクチュエータ16の状態の組み合わせごとに、そのセンサ14の観測値の時間変化を表す挙動関数を生成する(S108)。挙動関数は、センサ14ごとに生成される。ここで、或るセンサiについて生成される挙動関数の集合を、挙動関数集合 Fi と表記する。センサの総数を n とおくと、第1生成部2060により、n 個の挙動関数集合 F1, F2,..., Fn が生成される。
挙動関数集合 Fi には、複数のアクチュエータ16の状態の各組み合わせ cj に対応する挙動関数 fij(t) が含まれる。t は時刻を表す。すなわち、Fi={fi1(t), fi2(t), ..., fim(t)} である。m は、例えば、複数のアクチュエータ16の状態の組み合わせの総数である。ただし、挙動関数集合 Fi に含まれる挙動関数は、センサiの観測値に影響を与えるアクチュエータ16の状態の組み合わせのみに着目して生成されてもよい。この場合、挙動関数集合 Fi に含まれる挙動関数の総数 m は、センサiの観測値に影響を与えるアクチュエータ16の状態の組み合わせの総数となる。
例えば、それぞれが2つの状態を取り得る3つのアクチュエータ16が制御システム10に含まれているとする。この場合、アクチュエータ16が取り得る状態の組み合わせの総数は8である。しかし、これら3つのアクチュエータ16のうち、2つのアクチュエータ16しかセンサ14の観測値に影響を与えない場合、これら2つのアクチュエータ16の状態の組み合わせそれぞれについて挙動関数が生成されればよく、その数は4となる。なお、センサ14と、そのセンサ14の観測値に影響を与える制御を行うアクチュエータ16との対応関係は、前述した第1対応関係情報に示されている。
第1生成部2060は、センサiの挙動ログデータを観測時刻の昇順にソートし、ソートした複数の挙動ログデータを、複数のアクチュエータ16の状態の組み合わせが同一である区間ごとに区切る。そして、第1生成部2060は、区間ごとに、その区間に含まれるセンサiの観測値の時系列データを利用して、センサiの観測値の時間変化を表す関数を生成する。ただし、アクチュエータ16の状態の組み合わせが cj である区間が複数存在することもある。この場合、例えば第1生成部2060は、それら複数の区間のうち、時間幅が最も長い区間を利用して、状態の組み合わせ cj に対応する挙動関数 fij(t) を生成する。
図7は、複数のアクチュエータ16の状態の組み合わせごとに挙動関数が生成される様子を例示する図である。図7に示すセンサ14の観測値は、図6に示したものと同じである。この例では、センサ1の観測値の時間変化が、2つのアクチュエータ1と2の状態の組み合わせに依存している。そこで第1生成部2060は、これら2つのアクチュエータ16の状態の組み合わせごとに、挙動関数を生成する。図7では、2つのアクチュエータ16の状態の組み合わせとして、c1 から c3 が示されている。そこで、センサ1の挙動関数として、c1 に対応する f11(t)、c2 に対応する f12(t) 、及び c3 に対応する f13(t) という3つの挙動関数が生成されている。
挙動関数は、センサ14の観測値の時間変化を予測する予測モデルとして生成することができる。予測モデルの種類には、線形回帰モデルや重回帰モデルといった、任意の回帰モデルを利用することができる。例えば重回帰モデルであれば、以下のような最小二乗法を解くことによって、挙動関数 fij(t) を生成することができる。
Figure 0007211429000001
ここで、|・| はノルムを表す記号である。ノルムとしては、例えば L2 ノルムを利用することができる。
上述の式(2)において、yij(t) は、センサiの挙動ログデータのうち、アクチュエータ16の状態の組み合わせが cj であるデータに示されている観測値である。ただし、挙動ログデータは、アクチュエータ16の状態の組み合わせが cj となる最初の時刻のデータを基準とした相対データに置き換えて利用される。すなわち、各データの時刻及び観測値から、アクチュエータ16の状態の組み合わせが cj となる最初の時刻及びその時刻の観測値を引いて利用する。ただし、観測値については、挙動ログデータに示されているデータをそのまま利用して挙動関数 fij(t) を生成した後、α0を0に置き換えるようにしてもよい。
式(1)の次数 d は、予め定められた値であってもよいし、アクチュエータ16の状態の組み合わせ cj ごとに第1生成部2060が決定してもよい。後者の場合、例えば第1生成部2060は、次数を様々に変えて挙動関数 fij(t) の候補を複数生成し、統計モデルの良さを評価する指標(例えば、AIC(赤池の情報量基準)や BIC(ベイズ情報量基準))を用いて各次数の挙動関数を評価することで、最適な次数を決定する。例えば AIC や BIC を指標値として利用する場合、算出される指標値が最小となる次数 d が最適な次数となる。
ここで、挙動関数を利用することには、制御システム10の挙動を正確にシミュレートできるという利点がある。以下、この利点について説明する。まず、非特許文献1において、センサの観測値は、{UF, LL, L2, L1, L, H, H1, H2, HH, OF} という10段階の値のいずれかとなる。そして、シミュレーションが1単位時間進むごとに、センサの観測値が1段階変化する。これは、シミュレーションの1単位時間の長さが、必然的に、センサの観測値が1段階変化する程度に長くなってしまうことを意味する。
そして、このようにシミュレーションの1単位時間が長いと、コントローラ18による制御のタイミングを細かい粒度でシミュレートできず、ひいては、制御対象12の挙動を細かい粒度でシミュレートできない。例えばセンサの観測値が1単位時間で UF から LL に変化するということは、センサの観測値が UF と LL の間にある状況をシミュレートできないことを意味する。特に情報処理装置2000が扱うセンサ14が複数存在する制御システム10では、これらのセンサ14の観測値に基づくコントローラ18による制御の順番が、制御システム10全体の挙動に大きく関わる。そのため、制御システム10の挙動を正確にシミュレートするためには、コントローラ18による制御のタイミングを細かい粒度でシミュレートできる必要がある。
この点、情報処理装置2000によれば、前述した多項式などを用いて挙動関数を定めることにより、非特許文献1などに開示されているシステムのモデルと比較し、センサの観測値を細かい粒度で表現できる。よって、シミュレーションの1単位時間を短くすることができ、コントローラ18による制御のタイミングを細かい粒度でシミュレートできる。これにより、制御システム10の挙動を正確にシミュレートできる。
<システムモデルの生成:S112>
第2生成部2080は、第1取得部2020によって取得された構成情報及び制御ルールと、第1生成部2060によって生成された複数の挙動関数集合 F1 から Fn とを用いて、制御システム10のシステムモデルを生成する。
システムモデルは、制御システム10の挙動(コントローラ18による制御、アクチュエータ16の状態、及びセンサ14の出力値)の時間変化を表現した情報である。例えば、「アクチュエータ16の状態が時点 t から時点 t+1 でどのように変化するか」が、時点 t におけるアクチュエータ16の状態とセンサ14の出力値、及びその出力値に応じたコントローラ18の制御によって表される。このような制御システム10の状態の時間変化を初期状態から順に網羅的に辿っていくことにより、制御システム10において起こりうる状態変化を網羅的に探索することができる。
システムモデルは、モデル検査に利用するモデル検査ツールで扱えるように、モデル検査ツールの実装に応じて生成される。例えばシステムモデルは、構成情報、制御ルール、及び挙動関数集合をセットにしたデータとして実現される。その他にも例えば、システムモデルは、構成情報と、挙動関数集合が組み込まれた制御ルールとをセットにしたデータとして実現される。ここで、挙動関数集合が組み込まれた制御ルールとは、制御ルールにおいてセンサの値を参照する箇所に対して対応する挙動関数を埋め込んだルールを意味する。
<システムモデルの出力:S114>
第2生成部2080は、生成したシステムモデルを出力する(S114)。ここで、生成したシステムモデルを利用したモデル検査は、情報処理装置2000によって行われてもよいし、情報処理装置2000以外の装置によって行われてもよい。前者の場合、第2生成部2080は、生成したシステムモデルを任意の記憶装置に記憶させる。生成したシステムモデルについてのモデル検査を行う機能を有する情報処理装置2000については、第2の実施形態として説明する。
一方、生成したシステムモデルを利用した検査が情報処理装置2000以外の装置によって行われる場合、第2生成部2080は、システムモデルを利用する装置(以下、検査装置)が取得可能な態様で、システムモデルを出力する。例えば第2生成部2080は、検査装置からアクセス可能な記憶装置にシステムモデルを記憶させたり、検査装置に対してシステムモデルを送信したりする。
[実施形態2]
図8は、実施形態2の情報処理装置2000の機能構成を例示する図である。実施形態2の情報処理装置2000は、第2生成部2080によって生成されたシステムモデルを利用してモデル検査を行う機能を有する。そのために、情報処理装置2000は、第3取得部2120及び検査実行部2140を有する。第3取得部2120は、攻撃ルール及び攻撃ゴールを示す攻撃情報を取得する。攻撃ルールや攻撃情報を取得する方法は、構成情報などを取得する情報と同様である。
攻撃ルールは、攻撃者が制御システム10に対して実行可能な攻撃が記述された情報である。攻撃の例としては、「或るセンサ14による観測値を任意の値に書き換える」などがある。例えば、時刻 t においてアクチュエータ16の状態の組み合わせが cj である場合、コントローラ18がセンサiの観測値として本来取得すべき値は fij(t) である。これに対し、上述の攻撃が行われると、コントローラ18が取得する値が、fij(t) 以外の任意の値に変更されてしまう。
その他の攻撃の例としては、「或るアクチュエータ16の状態を任意の状態に変更する」などがある。本来、アクチュエータ16の状態は、制御ルールに基づいて制御される。しかしながら、上述の攻撃が行われると、アクチュエータ16の状態が、制御ルールに依存しない任意の状態に変更されてしまう。
攻撃ゴールは、攻撃者による攻撃の目標である。攻撃者は、制御システム10によって制御される制御対象12を所望の状態に遷移させるために攻撃を行う。そのため、攻撃ゴールは、攻撃の目標となる制御対象12の状態を表す。ここで、制御対象12の状態は、センサ14によって観測される。よって、攻撃ゴールは、センサ14の観測値で表すことができる。例えば、制御対象12が貯水タンクであり、「貯水タンクから水をあふれさせる」という攻撃を行う場合、攻撃ゴールは、「貯水タンクの水量を観測するセンサ14の観測値>貯水量の上限値」と表すことができる。
検査実行部2140は、第2生成部2080によって生成されたシステムモデルと攻撃情報とを用いてモデル検査を実行する。ここで、システムモデル、攻撃ルール、及び攻撃ゴールの組み合わせを用いてモデル検査を実行する機構としては、前述した Alloy Analyzer など、既存のモデル検査ツールを利用することができる。
Alloy Analyzer などのモデル検査ツールは、システムモデルの仕様が正しいかどうかの検証を行う。そこで例えば、検査実行部2140は、攻撃ゴールを仕様として設定した上で、モデル検査ツールによるシステムモデルのモデル検査を実行する。モデル検査ツールは、制御ルールと攻撃ルールに基づいて、システムモデルが取り得る状態を網羅的に探索し、設定された仕様が正しいか否かを判定する。ここで、仕様が正しいと判定されることは、攻撃ゴールが達成されることを意味する。一方、仕様が正しくないと判定されることは、攻撃ゴールが達成されないことを意味する。そこで、仕様が正しいと判定された場合に行われた一連の攻撃を、攻撃ゴールを達成することができる攻撃シナリオとして得ることができる。
ここで、モデル検査ツールによる探索の結果は、探索の開始時におけるシステムモデルの状態(すなわち、初期値の設定)によって変わる。そのため、初期値を様々に変えながらモデル検査ツールを実行することが好適である。そこで例えば、モデル検査ツールの利用者が、初期値の設定を様々に変えながら情報処理装置2000を動作させることで、各初期設定に対応する探索結果を得るようにする。また、このように初期値を変えながらモデル検査ツールを実行する作業は、検査実行部2140によって自動的に行われてもよい。
結果出力部2160は、検査実行部2140によって実行されたモデル検査の結果を出力する。具体的には、攻撃ゴールを達成できる攻撃シナリオ(一連の攻撃手順)が得られた場合、結果出力部2160は、その攻撃シナリオを表すシナリオ情報を出力する。例えばシナリオ情報は、実行された攻撃とそのタイミング(時刻)との組み合わせを1つ以上列挙した情報である。シナリオ情報を出力することにより、制御システム10が持つ脆弱性をユーザが容易に把握することができる。
結果出力部2160は、シナリオ情報と共に、各センサ14の観測値の時系列データや、各アクチュエータ16の状態変化の時系列データをさらに出力してもよい。これらの情報も出力することにより、制御システム10の状態がどのように変化しながら攻撃ゴールが達成されるのかを、ユーザが把握することができる。
また、結果出力部2160は、シナリオ情報が示す攻撃シナリオによって攻撃ゴールが達成されるまでの時間を表す情報をさらに出力してもよい。ここで一般に、モデル検査では、或る所定間隔の単位時間でシミュレーションが進行される。この単位時間はティックなどと呼ばれる。例えばティックを10秒間に設定した場合、モデル検査では、時間が10秒間隔で進行する。すなわち、時刻 t+1 は、時刻 t から10秒後の時間となる。
結果出力部2160は、攻撃ゴールが達成されるまでの時間を、シミュレーション時間(すなわち、ティック数)で出力してもよいし、推定される実際の時間で出力してもよい。例えば攻撃ゴールが k ティックで達成され、ティック間隔が b 秒であるとする。この場合、結果出力部2160は、攻撃ゴールが達成されるまでの時間として、「k ティック」というシミュレーショ時間を表す情報を出力してもよいし、「k*b 秒」という実時間を表す情報を出力してもよい。
なお、結果出力部2160が上述した種々の情報を出力する出力先は任意である。例えば、結果出力部2160は、記憶装置に情報を記憶させたり、ディスプレイ装置に情報を表示させたり、他の装置に情報を送信したりする。
<ハードウエア構成の例>
実施形態2の情報処理装置2000のハードウエア構成は、実施形態1の情報処理装置2000と同様に、例えば図3で表される。ただし、実施形態2のストレージデバイス1080には、実施形態2の情報処理装置2000の機能を実現するためのプログラムモジュールが記憶されている。
<処理の流れ>
図9は、実施形態2の情報処理装置2000によって実行される処理の流れを例示するフローチャートである。第3取得部2120は攻撃情報を取得する(S202)。検査実行部2140は、攻撃情報を用いてシステムモデルのモデル検査を実行する(S204)。結果出力部2160は、モデル検査の結果を出力する(S206)。
以上、図面を参照して本発明の実施形態について述べたが、これらは本発明の例示であり、上記以外の様々な構成を採用することもできる。
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
1. 制御対象に関する物理量を観測する複数のセンサ、前記制御対象の挙動を変化させる複数のアクチュエータ、及び各前記アクチュエータを制御するコントローラを有するシステムの構成を表す構成情報、及び前記コントローラによる各前記アクチュエータの制御のルールを表す制御ルールを取得する第1取得部と、
前記センサによって観測された物理量の時系列データと各時刻における各前記アクチュエータの状態との組み合わせを示す挙動ログデータを、各前記センサについて取得する第2取得部と、
前記挙動ログデータを用いて、複数の前記アクチュエータの状態の組み合わせごと及び前記センサごとに、その状態の組み合わせにおいてそのセンサによって観測される物理量の時間変化を表す挙動関数を生成する第1生成部と、
前記システムについて、前記構成情報、前記制御ルール、及び前記挙動関数を用いてシステムモデルを生成する第2生成部と、を有する情報処理装置。
2. 前記第1生成部は、複数の前記センサそれぞれについて、
そのセンサによって観測された物理量の時系列データを、複数の前記アクチュエータの状態の組み合わせがそれぞれ異なる複数の区間に分割し、
前記複数の区間それぞれについて、その区間に対応する挙動関数として、その区間に含まれる時系列データによって表される物理量の時間変化を予測する予測モデルを生成する、1.に記載の情報処理装置。
3. 前記予測モデルは重回帰モデルである、2.に記載の情報処理装置。
4. 攻撃者が前記システムに対して実行可能な攻撃を表す攻撃ルール、及び攻撃者が目標とする前記システムの状態を表す攻撃ゴールを取得する第3取得部と、
前記システムモデル、前記攻撃ルール、及び前記攻撃ゴールを用いて、前記システムの状態を前記攻撃ゴールによって示される状態に遷移させる攻撃の手順を探索する検査実行部と、
前記検査実行部による検査の結果を出力する結果出力部と、を有する1.乃至3.いずれか一つに記載の情報処理装置。
5. コンピュータによって実行される制御方法であって、
制御対象に関する物理量を観測する複数のセンサ、前記制御対象の挙動を変化させる複数のアクチュエータ、及び各前記アクチュエータを制御するコントローラを有するシステムの構成を表す構成情報、及び前記コントローラによる各前記アクチュエータの制御のルールを表す制御ルールを取得する第1取得ステップと、
前記センサによって観測された物理量の時系列データと各時刻における各前記アクチュエータの状態との組み合わせを示す挙動ログデータを、各前記センサについて取得する第2取得ステップと、
前記挙動ログデータを用いて、複数の前記アクチュエータの状態の組み合わせごと及び前記センサごとに、その状態の組み合わせにおいてそのセンサによって観測される物理量の時間変化を表す挙動関数を生成する第1生成ステップと、
前記システムについて、前記構成情報、前記制御ルール、及び前記挙動関数を用いてシステムモデルを生成する第2生成ステップと、を有する制御方法。
6. 前記第1生成ステップにおいて、複数の前記センサそれぞれについて、
そのセンサによって観測された物理量の時系列データを、複数の前記アクチュエータの状態の組み合わせがそれぞれ異なる複数の区間に分割し、
前記複数の区間それぞれについて、その区間に対応する挙動関数として、その区間に含まれる時系列データによって表される物理量の時間変化を予測する予測モデルを生成する、5.に記載の制御方法。
7. 前記予測モデルは重回帰モデルである、6.に記載の制御方法。
8. 攻撃者が前記システムに対して実行可能な攻撃を表す攻撃ルール、及び攻撃者が目標とする前記システムの状態を表す攻撃ゴールを取得する第3取得ステップと、
前記システムモデル、前記攻撃ルール、及び前記攻撃ゴールを用いて、前記システムの状態を前記攻撃ゴールによって示される状態に遷移させる攻撃の手順を探索する検査実行ステップと、
前記検査実行ステップによる検査の結果を出力する結果出力ステップと、を有する5.乃至7.いずれか一つに記載の制御方法。
9. 5.乃至8.いずれか一つに記載の制御方法の各ステップをコンピュータに実行させるプログラム。

Claims (9)

  1. 制御対象に関する物理量を観測する複数のセンサ、前記制御対象の挙動を変化させる複数のアクチュエータ、及び各前記アクチュエータを制御するコントローラを有するシステムの構成を表し、前記センサと、そのセンサによって観測される物理量に影響を与える制御を行うアクチュエータとの対応関係を示す対応関係情報を含む構成情報、及び前記コントローラによる前記センサによって観測される物理量に基づく各前記アクチュエータの制御のルールを表す制御ルールを取得する第1取得部と、
    前記センサによって観測された物理量の時系列データと各時刻における各前記アクチュエータの状態との組み合わせを示す挙動ログデータを、各前記センサについて取得する第2取得部と、
    前記挙動ログデータを用いて、複数の前記アクチュエータの状態の組み合わせごと及び前記センサごとに、その状態の組み合わせにおいてそのセンサによって観測される物理量の時間変化を表す挙動関数を生成する第1生成部と、
    前記システムについて、前記構成情報、前記制御ルール、及び前記挙動関数を用いてシステムモデルを生成する第2生成部と、を有し、
    前記第2生成部は、前記制御ルール、前記構成情報、及び前記挙動関数の集合をセットにしたデータとして、前記システムモデルを生成し、
    前記セットにおいて、前記制御ルールのうち前記センサの値を参照する箇所に、当該センサに対応する前記挙動関数が埋め込まれる、情報処理装置。
  2. 前記第1生成部は、複数の前記センサそれぞれについて、
    そのセンサによって観測された物理量の時系列データを、複数の前記アクチュエータの状態の組み合わせがそれぞれ異なる複数の区間に分割し、
    前記複数の区間それぞれについて、その区間に対応する挙動関数として、その区間に含まれる時系列データによって表される物理量の時間変化を予測する予測モデルを生成する、請求項1に記載の情報処理装置。
  3. 前記予測モデルは重回帰モデルである、請求項2に記載の情報処理装置。
  4. 攻撃者が前記システムに対して実行可能な攻撃を表す攻撃ルール、及び攻撃者が目標とする前記システムの状態を表す攻撃ゴールを取得する第3取得部と、
    前記システムモデル、前記攻撃ルール、及び前記攻撃ゴールを用いて、前記システムの状態を前記攻撃ゴールによって示される状態に遷移させる攻撃の手順を探索する検査実行部と、
    前記検査実行部による検査の結果を出力する結果出力部と、を有し、
    前記攻撃ルールは、前記センサの観測値を任意の値に書き換える攻撃、および前記アクチュエータの状態を任意の状態に変更する攻撃、のうち少なくとも一方を示す情報を含み、
    前記検査実行部は、
    前記攻撃ルールを仕様として設定し、
    前記制御ルールと設定された前記攻撃ルールに基づいて、前記システムモデルが取り得る状態を探索し、
    設定された前記仕様において前記攻撃ゴールが達成されたか否かを判定し、
    前記攻撃ゴールが達成されたと判定された場合に行われた一連の攻撃を、前記攻撃ゴールを達成することができる攻撃シナリオとして、実行された攻撃とその時刻との組み合わせを一つ以上列挙した情報を取得し、
    前記結果出力部は、前記攻撃シナリオを含む前記検査の結果を出力する請求項1乃至3いずれか一項に記載の情報処理装置。
  5. コンピュータによって実行される制御方法であって、
    制御対象に関する物理量を観測する複数のセンサ、前記制御対象の挙動を変化させる複数のアクチュエータ、及び各前記アクチュエータを制御するコントローラを有するシステムの構成を表し、前記センサと、そのセンサによって観測される物理量に影響を与える制御を行うアクチュエータとの対応関係を示す対応関係情報を含む構成情報、及び前記コントローラによる前記センサによって観測される物理量に基づく各前記アクチュエータの制御のルールを表す制御ルールを取得する第1取得ステップと、
    前記センサによって観測された物理量の時系列データと各時刻における各前記アクチュエータの状態との組み合わせを示す挙動ログデータを、各前記センサについて取得する第2取得ステップと、
    前記挙動ログデータを用いて、複数の前記アクチュエータの状態の組み合わせごと及び前記センサごとに、その状態の組み合わせにおいてそのセンサによって観測される物理量の時間変化を表す挙動関数を生成する第1生成ステップと、
    前記システムについて、前記構成情報、前記制御ルール、及び前記挙動関数を用いてシステムモデルを生成する第2生成ステップと、を有し、
    前記第2生成ステップにおいて、前記制御ルール、前記構成情報、及び前記挙動関数の集合をセットにしたデータとして、前記システムモデルを生成し、
    前記セットにおいて、前記制御ルールのうち前記センサの値を参照する箇所に、当該センサに対応する前記挙動関数が埋め込まれる、制御方法。
  6. 前記第1生成ステップにおいて、複数の前記センサそれぞれについて、
    そのセンサによって観測された物理量の時系列データを、複数の前記アクチュエータの状態の組み合わせがそれぞれ異なる複数の区間に分割し、
    前記複数の区間それぞれについて、その区間に対応する挙動関数として、その区間に含まれる時系列データによって表される物理量の時間変化を予測する予測モデルを生成する、請求項5に記載の制御方法。
  7. 前記予測モデルは重回帰モデルである、請求項6に記載の制御方法。
  8. 攻撃者が前記システムに対して実行可能な攻撃を表す攻撃ルール、及び攻撃者が目標とする前記システムの状態を表す攻撃ゴールを取得する第3取得ステップと、
    前記システムモデル、前記攻撃ルール、及び前記攻撃ゴールを用いて、前記システムの状態を前記攻撃ゴールによって示される状態に遷移させる攻撃の手順を探索する検査実行ステップと、
    前記検査実行ステップによる検査の結果を出力する結果出力ステップと、を有し、
    前記攻撃ルールは、前記センサの観測値を任意の値に書き換える攻撃、および前記アクチュエータの状態を任意の状態に変更する攻撃、のうち少なくとも一方を示す情報を含み、
    前記検査実行ステップにおいて、
    前記攻撃ルールを仕様として設定し、
    前記制御ルールと設定された前記攻撃ルールに基づいて、前記システムモデルが取り得る状態を探索し、
    設定された前記仕様において前記攻撃ゴールが達成されたか否かを判定し、
    前記攻撃ゴールが達成されたと判定された場合に行われた一連の攻撃を、前記攻撃ゴールを達成することができる攻撃シナリオとして、実行された攻撃とその時刻との組み合わせを一つ以上列挙した情報を取得し、
    前記結果出力ステップにおいて、前記攻撃シナリオを含む前記検査の結果を出力する請求項5乃至7いずれか一項に記載の制御方法。
  9. 請求項5乃至8いずれか一項に記載の制御方法の各ステップをコンピュータに実行させるプログラム。
JP2020557106A 2018-11-22 2018-11-22 情報処理装置、制御方法、及びプログラム Active JP7211429B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2018/043234 WO2020105179A1 (ja) 2018-11-22 2018-11-22 情報処理装置、制御方法、及びプログラム

Publications (2)

Publication Number Publication Date
JPWO2020105179A1 JPWO2020105179A1 (ja) 2021-09-30
JP7211429B2 true JP7211429B2 (ja) 2023-01-24

Family

ID=70773321

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020557106A Active JP7211429B2 (ja) 2018-11-22 2018-11-22 情報処理装置、制御方法、及びプログラム

Country Status (3)

Country Link
US (1) US20220006824A1 (ja)
JP (1) JP7211429B2 (ja)
WO (1) WO2020105179A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7474679B2 (ja) 2020-11-05 2024-04-25 株式会社日立製作所 セキュリティ検証システムおよび方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015145500A1 (ja) 2014-03-27 2015-10-01 日本電気株式会社 システム分析装置、分析モデル生成方法、システム分析方法およびシステム分析プログラム
JP2017199365A (ja) 2016-04-25 2017-11-02 ゼネラル・エレクトリック・カンパニイ 産業資産制御システム用のドメインレベル脅威検出

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018048351A1 (en) * 2016-09-07 2018-03-15 Singapore University Of Technology And Design Defense system and method against cyber-physical attacks
US20190228110A1 (en) * 2018-01-19 2019-07-25 General Electric Company System and method for abstracting characteristics of cyber-physical systems
US10826932B2 (en) * 2018-08-22 2020-11-03 General Electric Company Situation awareness and dynamic ensemble forecasting of abnormal behavior in cyber-physical system
US11170314B2 (en) * 2018-10-22 2021-11-09 General Electric Company Detection and protection against mode switching attacks in cyber-physical systems
US11627151B2 (en) * 2018-10-31 2023-04-11 General Electric Company Industrial asset cyber-attack detection algorithm verification using secure, distributed ledger

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015145500A1 (ja) 2014-03-27 2015-10-01 日本電気株式会社 システム分析装置、分析モデル生成方法、システム分析方法およびシステム分析プログラム
JP2017199365A (ja) 2016-04-25 2017-11-02 ゼネラル・エレクトリック・カンパニイ 産業資産制御システム用のドメインレベル脅威検出

Also Published As

Publication number Publication date
WO2020105179A1 (ja) 2020-05-28
JPWO2020105179A1 (ja) 2021-09-30
US20220006824A1 (en) 2022-01-06

Similar Documents

Publication Publication Date Title
CN110009171B (zh) 用户行为模拟方法、装置、设备及计算机可读存储介质
US11481495B2 (en) Anomalous behavior detection in processor based systems
KR20180096709A (ko) 데이터 구동형 작업흐름에서 안전성 분석 평가를 위한 장치 및 방법
US20200259725A1 (en) Methods and systems for online monitoring using a variable data
Zhao et al. Finite-horizon semi-Markov game for time-sensitive attack response and probabilistic risk assessment in nuclear power plants
US9195222B2 (en) Systems and methods for evaluating stability of software code for control systems
Corbetta et al. On dynamic state-space models for fatigue-induced structural degradation
JP2019510980A (ja) 繰り返し交差検証を用いた相関式公差限界設定システム及びその方法
Moallemi et al. Robust decision making and Epoch–Era analysis: A comparison of two robustness frameworks for decision-making under uncertainty
JP7211429B2 (ja) 情報処理装置、制御方法、及びプログラム
CN109743200B (zh) 基于资源特征的云计算平台计算任务成本预测方法及系统
Pradlwarter Relative importance of uncertain structural parameters. Part I: algorithm
CN110673485A (zh) 用于燃烧控制的模型训练方法、装置、电子设备以及介质
Winkelvos et al. A property based security risk analysis through weighted simulation
Li et al. Search-based uncertainty-wise requirements prioritization
CN111566625B (zh) 测试用例生成装置、测试用例生成方法和计算机能读取的记录介质
Santos et al. Production regularity assessment using stochastic Petri nets with predicates
KR101462232B1 (ko) 유전자 알고리즘을 이용한 함정 운용 기준 산정 방법 및 시스템
KR101601741B1 (ko) 서로 다른 언어로 작성된 프로그램들의 동일성을 검증하는 검증장치
Kim et al. Input-domain software testing for failure probability estimation of safety-critical applications in consideration of past input sequence
US10180999B2 (en) Model generating device and method
Mittas et al. StatREC: A graphical user interface tool for visual hypothesis testing of cost prediction models
Moghaddass et al. Multi-state degradation analysis for a condition monitored device with unobservable states
Pocatilu et al. A Genetic Algorithm-based System for Automatic Control of Test Data Generation
Ploskas Parameter Tuning of Linear Programming Solvers

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210513

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220628

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220817

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20221213

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221226

R151 Written notification of patent or utility model registration

Ref document number: 7211429

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151