IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

2023-141274サイバーレジリエンス分析装置、方法、およびプログラム
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023141274
(43)【公開日】2023-10-05
(54)【発明の名称】サイバーレジリエンス分析装置、方法、およびプログラム
(51)【国際特許分類】
   G06F 21/55 20130101AFI20230928BHJP
   G06Q 50/04 20120101ALI20230928BHJP
   G05B 23/02 20060101ALI20230928BHJP
【FI】
G06F21/55 320
G06Q50/04
G05B23/02 E
【審査請求】未請求
【請求項の数】14
【出願形態】OL
(21)【出願番号】P 2022047505
(22)【出願日】2022-03-23
(71)【出願人】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110000279
【氏名又は名称】弁理士法人ウィルフォート国際特許事務所
(72)【発明者】
【氏名】辻 大輔
(72)【発明者】
【氏名】藤田 淳也
(72)【発明者】
【氏名】田村 悠
(72)【発明者】
【氏名】デーンホフ,イェンス
(72)【発明者】
【氏名】重本 倫宏
【テーマコード(参考)】
3C223
5L049
【Fターム(参考)】
3C223AA02
3C223AA05
3C223AA11
3C223AA15
3C223BA01
3C223BB17
3C223EB01
3C223FF13
3C223FF22
3C223FF23
3C223FF26
3C223GG01
3C223HH02
5L049CC03
(57)【要約】
【課題】サイバー攻撃に対する計画的な対処の有効性を定量化する。
【解決手段】サイバーレジリエンス分析装置は、制御プロセスと、コンポーネントと、エージェントと、について、時系列変化を表現可能なモデル化手法によりモデルを生成し、依存関係をモデル間に規定する生成部と、エージェントによるサイバー攻撃が開始されてから所定の計画に基づく他のエージェントによるサイバー攻撃への対処が完了するまで、制御プロセスのモデル、コンポーネントのモデル、およびエージェントのモデルを依存関係に基づいて時間発展させ、時間発展の間にモデルから得られる時系列データを記録する更新部と、時系列データに基づいて、計画による対処を評価するための所定の評価指標を算出する算出部と、を有する。
【選択図】図4
【特許請求の範囲】
【請求項1】
分析対象システムが動作する工程である制御プロセスと、前記分析対象システムに前記制御プロセスを実行させるコンポーネントと、前記コンポーネントの挙動に影響を及ぼす行動を行うエージェントと、について、時系列変化を表現可能なモデル化手法によりモデルを生成し、前記制御プロセスが他の制御プロセスまたは前記コンポーネントの状態によって挙動を変化させる依存関係と、前記コンポーネントが他のコンポーネントまたは前記エージェントまたは前記制御プロセスの状態によって挙動を変化させる依存関係と、前記エージェントが他のエージェントまたは前記コンポーネントの状態によって挙動を変化させる依存関係とを前記モデル間に規定する生成部と、
エージェントによるサイバー攻撃が開始されてから所定の計画に基づく他のエージェントによる前記サイバー攻撃への対処が完了するまで、前記制御プロセスのモデル、前記コンポーネントのモデル、および前記エージェントのモデルを前記依存関係に基づいて時間発展させ、時間発展の間に、前記制御プロセスのモデル、前記コンポーネントのモデル、および前記エージェントのモデルから得られる時系列データを記録する更新部と、
前記時系列データに基づいて、前記計画による対処を評価するための所定の評価指標を算出する算出部と、
を有するサイバーレジリエンス分析装置。
【請求項2】
前記エージェントのモデルには、
前記コンポーネントを運用するオペレータを表現したオペレータエージェントモデルと、
前記コンポーネントに対してサイバー攻撃を施行する主体を表現した攻撃エージェントモデルと、
前記コンポーネントに対して前記サイバー攻撃への対処を施行する主体を表現した対処エージェントモデルとが含まれる、
請求項1に記載のサイバーレジリエンス分析装置。
【請求項3】
前記攻撃エージェントモデルは、前記コンポーネントのモデルを意図した状態から意図しない状態に強制的に遷移させることができ、前記コンポーネントのモデルを前記意図した状態から前記意図しない状態に遷移させると自身の状態も遷移させる、
請求項2に記載のサイバーレジリエンス分析装置。
【請求項4】
前記対処エージェントモデルは、前記コンポーネントのモデルを意図しない状態から意図した状態に遷移させることができ、前記コンポーネントのモデルを前記意図しない状態から前記意図した状態に遷移させると自身の状態も遷移させる、
請求項3に記載のサイバーレジリエンス分析装置。
【請求項5】
前記オペレータエージェントモデルは、前記コンポーネントのモデルの状態に応じて当該コンポーネントのモデルもしくは他のエージェントのモデルの状態を遷移させることができ、前記コンポーネントのモデルもしくは前記他のエージェントのモデルの状態を遷移させると自身の状態も遷移させる、
請求項4に記載のサイバーレジリエンス分析装置。
【請求項6】
指定された時刻における前記モデルの状態を前記時系列データに基づいて特定し前記モデルの前記状態を視認可能にする表示をし、前記算出された評価指標を視認可能にする表示をする出力部を更に有する、
請求項1に記載のサイバーレジリエンス分析装置。
【請求項7】
前記分析対象システムから実際の稼働により得られた情報を収集してログ情報として記録する収集部を更に有し、
前記更新部は、前記ログ情報を前記制御プロセスのモデルの状態に反映させながら、前記制御プロセスのモデル、前記コンポーネントのモデル、および前記エージェントのモデルを時間発展させる、
請求項1に記載のサイバーレジリエンス分析装置。
【請求項8】
前記算出された評価指標の値を目的関数として、前記オペレータエージェントモデルおよび/または前記対処エージェントモデルの前記コンポーネントに対する行動を最適化する学習部を更に有する、
請求項2に記載のサイバーレジリエンス分析装置。
【請求項9】
前記制御プロセスのモデルは、前記分析対象システムの意図した状態での動作と意図しない状態での動作とを区別して表現できるモデルである、
請求項1に記載のサイバーレジリエンス分析装置。
【請求項10】
前記コンポーネントのモデルは、自身が意図した状態か意図しない状態かに応じて、前記制御プロセスのモデルを前記意図した状態とするか前記意図しない状態とするかを決定する、
請求項9に記載のサイバーレジリエンス分析装置。
【請求項11】
前記制御プロセスは、前記分析対象システムが動作することで所定の成果を生じさせるものであり、
前記制御プロセスのモデルから前記成果を計測可能にする情報が取得され、
前記更新部は、前記制御プロセスのモデル、前記コンポーネントのモデル、および前記エージェントのモデルを時間発展させて前記制御プロセスのモデルから得られる成果の情報を前記時系列データとして記録し、
前記算出部は、前記成果の情報に基づいて前記評価指標を算出する、
請求項1に記載のサイバーレジリエンス分析装置。
【請求項12】
前記時系列変化を表現可能なモデル化手法は、プレースとトランジションの2種類のノードを持ち、前記ノードが方向を持って接続され、前記トランジションの発火によりトークンが前記プレース間を移動することにより状態の変化を表す2部有向グラフであって前記トランジションの発火に遅延時間を設定可能なペトリネットであり、
前記生成部は、前記制御プロセス、前記コンポーネント、および前記エージェントを前記ペトリネットによって生成する、
請求項1に記載のサイバーレジリエンス分析装置。
【請求項13】
分析対象システムが動作する工程である制御プロセスと、前記分析対象システムに前記制御プロセスを実行させるコンポーネントと、前記コンポーネントの挙動に影響を及ぼす行動を行うエージェントと、について、時系列変化を表現可能なモデル化手法によりモデルを生成し、前記制御プロセスが他の制御プロセスまたは前記コンポーネントの状態によって挙動を変化させる依存関係と、前記コンポーネントが他のコンポーネントまたは前記エージェントまたは前記制御プロセスの状態によって挙動を変化させる依存関係と、前記エージェントが他のエージェントまたは前記コンポーネントの状態によって挙動を変化させる依存関係とを前記モデル間に規定し、
エージェントによるサイバー攻撃が開始されてから所定の計画に基づく他のエージェントによる前記サイバー攻撃への対処が完了するまで、前記制御プロセスのモデル、前記コンポーネントのモデル、および前記エージェントのモデルを前記依存関係に基づいて時間発展させ、時間発展の間に、前記制御プロセスのモデル、前記コンポーネントのモデル、および前記エージェントのモデルから得られる時系列データを記録し、
前記時系列データに基づいて、前記計画による対処を評価するための所定の評価指標を算出する、
ことをコンピュータが実行するサイバーレジリエンス分析方法。
【請求項14】
分析対象システムが動作する工程である制御プロセスと、前記分析対象システムに前記制御プロセスを実行させるコンポーネントと、前記コンポーネントの挙動に影響を及ぼす行動を行うエージェントと、について、時系列変化を表現可能なモデル化手法によりモデルを生成し、前記制御プロセスが他の制御プロセスまたは前記コンポーネントの状態によって挙動を変化させる依存関係と、前記コンポーネントが他のコンポーネントまたは前記エージェントまたは前記制御プロセスの状態によって挙動を変化させる依存関係と、前記エージェントが他のエージェントまたは前記コンポーネントの状態によって挙動を変化させる依存関係とを前記モデル間に規定し、
エージェントによるサイバー攻撃が開始されてから所定の計画に基づく他のエージェントによる前記サイバー攻撃への対処が完了するまで、前記制御プロセスのモデル、前記コンポーネントのモデル、および前記エージェントのモデルを前記依存関係に基づいて時間発展させ、時間発展の間に、前記制御プロセスのモデル、前記コンポーネントのモデル、および前記エージェントのモデルから得られる時系列データを記録し、
前記時系列データに基づいて、前記計画による対処を評価するための所定の評価指標を算出する、
ことをコンピュータに実行させるためのサイバーレジリエンス分析プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示はサイバーセキュリティ技術に関する。
【背景技術】
【0002】
産業分野のデジタルトランスフォーメーション(DX)に伴い、産業分野におけるコンピュータシステム(産業制御システム)に対してIoT(Internet of Things)技術を導入するケースが増加している。その結果、従来のITシステムと同様に、産業制御システムにおいてもサイバーセキュリティ脅威が顕在化した。重要インフラを含む産業制御システムへのサイバー攻撃は社会的な影響も大きく、環境、健康、および安全に関する事故を引き起こす可能性もあるため、その対応が急がれている。
【0003】
近年では、特定の産業制御システムに損害を与えることを意図して、高度な攻撃を長期間にわたり継続的に行うAPT(Advanced Persistent Threat)攻撃の脅威も増している。APT攻撃は、ゼロデイ攻撃と呼ばれる一般に公開されていない未知の脆弱性を突く攻撃を伴う場合も多い。十分なセキュリティ対策を実施することはリスクを最小化する上で必須である一方、ゼロデイ攻撃を伴うAPT攻撃を完全に阻止することは困難である。そのため、仮に攻撃を受けたとしても事業への影響を最小限に留めるための対策をしつつ、迅速にシステムを復旧できる組織体制を整えておくことも、セキュリティリスクの低減のためには重要である。サイバーセキュリティの分野では、システムが有するサイバー攻撃に対する阻止能力および耐性をサイバーレジリエンスと呼ぶことも多い。ここで、耐性とはサイバー攻撃を受けた後に迅速に脅威に対処し、システムを復旧させる能力を指す。本明細書でサイバーレジリエンスという言葉を用いる場合、その言葉の定義は前述の定義に従う。
【0004】
サイバーレジリエンスを高めるための第一の要素として、サイバー攻撃の予防策、つまり攻撃者にシステムへの攻撃を阻止するための対策を十分に実施することが重要である。そのためには、攻撃者が標的とするシステムに侵入してから目的を達成するまでの一連の経路および行動(以下、「攻撃シナリオ」と略称する)を攻撃者の目線であらかじめ予測し、そのリスクを評価した上で、必要な対策を導入するというアプローチが有効である。
【0005】
サイバーレジリエンスを高めるための第二の要素として、サイバー攻撃を阻止できなかった場合を想定し、脅威を検知してから対処し復旧するまでの計画を事前に定めておくことが挙げられる。対処復旧計画の中には、産業制御システムで作業に従事するオペレータが異常に気付いてからインシデント対応者に報告するまでの手順や、報告を受けたインシデント対応者が早急に実施すべき一次対応の手順、等が含められている必要がある。発生した攻撃シナリオに応じて、実施すべき手順が即座に判断できる組織体制が整っていることが望まれる。
【0006】
しかしながら、ITシステムとは異なり、産業制御システムでは可用性が最も重要視されることが多く、攻撃発生後の対処と復旧の手順を誤ると産業設備全体が稼働停止してしまい、かえって被害が広がる可能性がある。そのため、産業制御システムにおける攻撃発生後の対処計画の立案および実施には、高度なセキュリティ知識のみならず、可用性が重要視される特殊なシステムの運用まで考慮に入れることが要求される。具体例として、攻撃を受けた端末であってもシステムのオペレーションに影響を及ぼさないのであれば、次回のメンテナンス時まではそのまま稼働を続ける、等のITシステムとは異なる処置を取る場合がある。
【0007】
特許文献1では、セキュリティ評価の対象となるリソース(アセット)同士の接続関係を示すグラフと、前記リソースが配置されているエリア同士の接続関係を示すグラフと、前記リソースに対する攻撃グラフ(攻撃者の攻撃行動の順序を表したグラフ)と、を紐付けて生成する技術を提案している。当該技術を用いることで、分析対象の産業制御システム(以下、「分析対象システム」と呼ぶ)で想定される攻撃シナリオを再現することができる。
【0008】
特許文献2では、分析対象システムにおける所定期間のサイバー攻撃による被害額の期待値を、あらかじめ定義した対策情報と、脆弱性情報と、攻撃情報と、リスク事象情報に基づいて算出する技術を提案している。当該技術を用いることで、従来は不明瞭であったセキュリティ対策の費用対効果を具体化し、その十分性を判断することができる。
【先行技術文献】
【特許文献】
【0009】
【特許文献1】国際公開WO2019/186722号
【特許文献2】国際公開WO2016/200991号
【非特許文献】
【0010】
【非特許文献1】S. Berger, C. van Dun, and B. Haeckel, “IT Availability Risks in Smart Factory Networks - Analyzing the Effects of IT Threats on Production Processes Using Petri Nets” Information Systems Frontiers, 2022.
【非特許文献2】D. Myers, K. Radke, S. Suriadi, and E. Foo, “Process Discovery for Industrial Control System Cyber Attack Detection” 32th IFIP International Conference on ICT Systems Security and Privacy Protection (SEC), 2017, pp. 61-75
【発明の概要】
【発明が解決しようとする課題】
【0011】
特許文献1あるいは特許文献2に記載された技術を活用すれば、サイバー攻撃の予防策を講じ、サイバーレジリエンスを高めるための第一の要素を満たすことができる。また、非特許文献1に記載された技術を活用すれば、工場環境における情報機器および生産工程をモデル化することで、分析対象システム全体の可用性に関するリスクを定量化できる。
【0012】
しかし、非特許文献1の技術でモデル化される範囲には、サイバー攻撃を受けて行動するオペレータやインシデント対応者といった人間の行動が含まれていない。そのため、非特許文献1の技術では、サイバーレジリエンスを高めるための第二の要素、つまり、対象システムに対してサイバー攻撃を受けてしまった場合に行う対処がどの程度効果的かを判断することができない。
【0013】
本開示に含まれるひとつの目的は、サイバー攻撃に対する計画的な対処の有効性を定量化する技術を提供することである。
【課題を解決するための手段】
【0014】
本開示に含まれるひとつの態様によるサイバーレジリエンス分析装置は、制御プロセスと、コンポーネントと、エージェントと、について、時系列変化を表現可能なモデル化手法によりモデルを生成し、依存関係をモデル間に規定する生成部と、エージェントによるサイバー攻撃が開始されてから所定の計画に基づく他のエージェントによるサイバー攻撃への対処が完了するまで、制御プロセスのモデル、コンポーネントのモデル、およびエージェントのモデルを依存関係に基づいて時間発展させ、時間発展の間にモデルから得られる時系列データを記録する更新部と、時系列データに基づいて、計画による対処を評価するための所定の評価指標を算出する算出部と、を有する。
【発明の効果】
【0015】
本開示に含まれるひとつの態様によれば、サイバー攻撃に対する計画的な対処の有効性を定量化することが可能になる。
【図面の簡単な説明】
【0016】
図1】第1の実施形態に係るサイバーレジリエンス評価システムの構成例を示すブロック図である。
図2】分析対象システムの一例を示す概念図である。
図3】生産ラインから取得した制御プロセスログ一例を示す図である。
図4】第1の実施形態においてサイバーレジリエンス分析装置により実行される処理のフローチャートである。
図5】制御プロセスとコンポーネントとエージェントとの関係を表す概念図である。
図6】制御プロセスのモデルの一例を示す図である。
図7】コンポーネントのモデルを生成するためにユーザが入力する情報の一例を示す図である。
図8】ペトリネットで再現したコンポーネントのモデルの一例を示す図である。
図9】攻撃エージェントの動作定義の一例を示す図である。
図10】攻撃エージェントのモデルの一例を示す図である。
図11】ペトリネットを使って作成した対処エージェントのモデルの例を示す図である。
図12】ペトリネットを使ったオペレータエージェントのモデルの一例を示す図である。
図13】オペレータエージェントのモデルの情報の一例を示す図である。
図14】制御プロセスのモデルの時系列データの一例を示す図である。
図15】コンポーネントのモデルの時系列データの一例を示す図である。
図16】エージェントのモデルの時系列データの一例を示す図である。
図17】第1の実施形態において算出結果120Eに基づいて表示される画面の一例を示す図である。
図18】各シナリオの重要業績評価指標の一覧を表示する画面の一例を示す図である。
図19】モデルの情報を表示する画面の一例を示す図である。
図20】第2の実施形態におけるモデルの動作イメージを示す概念図である。
図21】第2の実施形態においてサイバーレジリエンス分析装置により実行される処理のフローチャートである。
図22】第2の実施形態において算出結果120Eに基づいて表示される画面の一例を示す図である。
図23】第3の実施形態においてサイバーレジリエンス分析装置により実行される処理のフローチャートである。
【発明を実施するための形態】
【0017】
(第1の実施形態)
第1の実施形態に係るサイバーレジリエンス評価システムについて図面を用いて説明する。
【0018】
サイバーレジリエンス評価システムは、例えば、制御機器による制御の下で産業機械を稼働させ、物資の加工あるいは製品の製造を行う産業制御システム等のサイバーレジリエンスを評価するシステムである。
【0019】
図1は、第1の実施形態に係るサイバーレジリエンス評価システムの構成例を示すブロック図である。
【0020】
サイバーレジリエンス評価システム1は、サイバーレジリエンス分析装置11、制御機器12、および入出力装置13を備え、サイバーレジリエンス分析装置11に制御機器12と入出力装置13が接続された構成である。サイバーレジリエンス分析装置11は、ハードウェアとしてはプロセッサと記憶装置を備えたコンピュータであり、機能構成としては処理部110と記憶部120を有する。
【0021】
記憶部120は、データを記憶する記憶装置であり、制御プロセスログ120A、モデルテンプレート120B、生成モデル120C、時系列データ120D、および算出結果120Eが格納されえる。本例のように、記憶部120をサイバーレジリエンス分析装置11の内部に構築してもよいし、サイバーレジリエンス分析装置11とは独立したHDD(Hard Disk Drive)やSSD(Solid State Drive)などの外部記憶媒体に記憶部120を構築してもよい。
【0022】
入出力装置13は、ユーザがサイバーレジリエンス分析装置11に対するデータの入出力をインタラクティブに行うための装置であり、主にキーボード、マウス、ディスプレイ等から構成される。
【0023】
処理部110は、プロセッサがソフトウェアプログラムを実行することにより実現される機能部である。処理部110には、収集部110A、生成部110B、更新部110C、算出部110D、出力部110E、および学習部110Fが含まれる。
【0024】
収集部110Aは、制御機器12から分析対象システムが稼働した結果に関する情報である稼働情報を収集し、時刻情報を伴う蓄積用の形式のログ情報に変換し、記憶部120に制御プロセスログ120Aとして格納する。
【0025】
制御機器12は、分析対象システムの産業機械を制御する機器であり、一例として、プログラマブルロジックコントローラ(PLC)、リモートターミナルユニット(RTU)、IoTセンサ、サーバ等が挙げられる。
【0026】
図2は、分析対象システムの一例を示す概念図である。第1の実施形態における分析対象システムは、生産ライン2である。生産ライン2にて用いられる産業機械には、複数のコンベア21と、複数のロボット22とが含まれている。制御機器12はこれらコンベア21およびロボット22を制御プロセスに従って制御する。コンベア21は、制御機器12からの制御に従って、物資23を運び、振り分け、回収する。ロボット22は、制御機器12からの制御に従って、物資23を加工する。図2に例示された生産ライン2は、外部からコンベア21aにより流れてきた物資23を2つのラインのコンベア21a、21bに振り分け、各ラインに配置されたロボット22a(ロボットA)もしくはロボット22b(ロボットB)が物資23を加工し、加工後の物資23をコンベア21oに回収して出力するという構成である。
【0027】
制御機器12が制御プロセスに従って制御した生産ライン2の稼働結果は、制御機器12にて取得され、収集部110Aにて収集され、制御プロセスログ120Aとして記憶部120に格納される。
【0028】
図3は、生産ラインから取得した制御プロセスログ一例を示す図である。制御プロセスは複数のプロセスを含んでおり、制御プロセスログ120Aには、時刻欄31に記載された時刻に発生したプロセスのプロセス名がプロセス欄33に時系列で記録されている。各プロセスには一意に識別できるID32が付与される。図3の場合、プロセス「物資振り分け」のIDが1であり、プロセス「ロボットA 加工」のIDが2であり、プロセス「ロボットB 加工」のIDが3である。
【0029】
図1に戻り、生成部110Bは、記憶部120に格納された制御プロセスログ120Aとモデルテンプレート120Bを用いて、分析対象システムに関わる動作主体を再現したモデルを生成する。モデルテンプレート120Bには、各動作主体の基本的な構成を持ったモデルのテンプレートが含まれている。ユーザは、生成部110Bを起動するタイミングで、入出力装置13を通して生成部110B、更新部110C、算出部110Dで用いる各種のパラメータを設定することにしてもよい。生成部110Bが生成したモデルは、記憶部120に生成モデル120Cとして格納される。生成部110Bがモデルの生成を完了し次第、更新部110Cが動作する。
【0030】
更新部110Cは、記憶部120に生成モデル120Cとして格納されたモデルを読み出し、読み出したモデルの状態を時間発展させる。時間発展させる期間は、サイバー攻撃が開始されてから所定の対処計画に基づくサイバー攻撃への対処が完了し、分析対象システムが復旧するまでの期間を含むように、例えばユーザにより指定される。更新部110Cは、時間発展させたモデルから各時刻に対して得られる情報を記憶部120に時系列データ120Dとして格納する。更新部110Cが、ユーザにより指示された期間のモデルの時間発展を完了すると、算出部が起動する。なお、記憶部120に格納された制御プロセスログ120Aは、後述する第2の実施形態では利用されるが、第1の実施形態では利用されない。
【0031】
算出部110Dは、記憶部120に格納された時系列データ120Dを読み出し、当該データを基に、ユーザが設定した重要業績評価指標を算出する。重要業績評価指標は、分析対象システムの重要な業績を評価する評価指標である。分析対象システムにおいて業績にマイナスに影響する要因が存在する状態では重要業績評価指標は低下する。例えば、制御機器12へのサイバー攻撃により意図しない状態に陥った分析対象システムの稼働が復旧するまでの間、分析対象システムから得られる製品の生産量などの成果が低下すれば、重要業績評価指標は低下する。したがって、サイバー攻撃に対する対処の有効性を重要業績評価指標によって評価することができる。算出部110Dは、算出した重要業績評価指標を、記憶部120に算出結果120Eとして格納する。なお、学習部110Fは、後述する第3の実施形態でのみ機能する。
【0032】
出力部110Eは、ユーザからの指示に応じて起動し、記憶部120に格納された任意の時系列データ120Dおよび/または算出結果120Eを入出力装置13を通して表示する。その際、時系列データ120Dおよび/または算出結果120Eが視認可能となればよく、表示形式は特に限定されない。例えば、数値自体を表形式で表示してもよいし、数値をグラフ化して表示してもよい。
【0033】
以下、生成部110B、更新部110C、および算出部110Dの詳細な動作について説明する。
【0034】
図4は、第1の実施形態においてサイバーレジリエンス分析装置により実行される処理のフローチャートである。
【0035】
ステップS101では、生成部110Bが、分析対象システム(例:生産ライン)において制御機器(例:PLC)が産業機械(例:コンベア、ロボット)を制御する制御プロセスと、当該制御プロセスの実行を統制する情報システム(例:産業用コンピュータシステム)であるコンポーネントと、当該コンポーネントの機能に影響を及ぼすセキュリティイベントを発生させる人物(例:悪意者、オペレータ、システム管理者)であるエージェントについてモデルを生成する。
【0036】
以下、上記3種類のモデルの一例を説明する。
【0037】
図5は、制御プロセスとコンポーネントとエージェントとの関係を表す概念図である。
【0038】
まず、制御プロセスのモデルについて説明する。
【0039】
制御プロセスは、産業制御システムにおける制御の工程を表しており、生産ラインにおいては生産物を生成したり加工したりする工程を意味する。産業制御システムでは、動的なシステム構成の変化が少なく、あらかじめ決められたプロセスが同じ順番で同じ時間間隔で繰り返される場合が多い。そのため、産業制御システムの制御プロセスのモデル化には、時間の概念を付与したグラフ理論が好適である。例えば、ペトリネットや有限オートマトンに時間の概念を付与したグラフ理論を用いて、産業制御システムの制御プロセスを再現することが可能である。時間の概念を付与したペトリネットおよび有限オートマトンは、時間ペトリネットおよび時間オートマトンと呼ばれる。
【0040】
図6は、制御プロセスのモデルの一例を示す図である。
【0041】
制御プロセスのモデル50は、図2および図5に例示された生産ラインの制御プロセスをペトリネットにより表現したモデルである。ペトリネットは、円で表されるプレースと、棒または箱で表されるトランジションという2種類のノードから構成される二部有向グラフである。また、トランジションの発火に遅延時間を指定することができ、トランジションが発火次第、黒丸で表されるトークンがプレース間を移動する。本実施形態の例では、トークンが物資あるいは製品に対応づけられている。制御プロセスにおいて物資の取り得る状態がプレースで表されている。例えば、「加工待ち」のラベルが付いたプレースp52にトークンがあれば、製品は加工待ちの状態であることを意味する。同様に、「回収待ち」のラベルが付いたプレースp53にトークンがあれば、製品は「回収待ち」の状態にあることを意味する。図3に例示したような制御プロセスに含まれる各プロセスがトランジションで表されている。トークンがプレース間を移動するためにはトランジションt51~t54が発火する必要がある。各トランジションt51~t54に発火の遅延時間を定義することで、現実の制御システムにおいてプロセスに要する時間に即した物資の加工を再現できる。なお、時間ペトリネットは、時系列変化を表現可能なモデル化手法の一例であるが、この手法に限定されることはなく、時間オートマトンなど時系列変化を表現可能な他のモデル化手法を用いてもよい。
【0042】
モデル50において、発行されたトークンはまず「プロセス開始」のプレースp51に置かれる。「物資振り分け」のラベルが付いたトランジションt51が発火すると、トークンは「加工待ち」のラベルが付いたプレースp52に移動する。その後、「ロボットA加工」のラベルが付いたトランジションt52または「ロボットB加工」のラベルが付いたトランジションt53が発火すれば、トークンは「回収待ち」のラベルが付いたプレースp53に移動する。その後、「物資回収」のラベルが付いたトランジションt54が発火すれば、トークンは「プロセス終了」のラベルが付いたプレースp54に移動する。このようにして、「プロセス開始」のラベルが付いたプレースp51に発行されたトークンが「プロセス終了」のラベルが付いたプレースp54まで移動することができれば、1つの製品の生産に成功したとみなす。トークンは一定の時間間隔でユーザが指定したプレースに発行される。この時間間隔は、記憶部120に格納された制御プロセスログ120Aのデータを基に実際の制御システムでの平均的な時間間隔を算出して用いることにしてもよい。また、トランジションt51~t54の遅延時間も記憶部120に格納された制御プロセスログ120Aのデータを基に、実際の制御システムでの平均的な時間間隔を算出して用いることにしてもよい。
【0043】
制御プロセスのモデルはユーザが入出力装置13から手動入力により作成してもよいし、記憶部120に格納された制御プロセスログ120Aを基に、生成部110Bが現実の制御システムの動作を基に自動生成してもよい。生成部110Bはモデルを自動生成する際にプロセスマイニング等の技術を活用してもよい。非特許文献2にはプロセスマイニングの例が記載されている。
【0044】
次に、コンポーネントのモデルについて説明する。
【0045】
コンポーネントとは、分析対象システムに制御プロセスを実行させる情報機器である。コンポーネントが正常に稼働していなければ分析対象システムにて制御プロセスを正常に実行することができない。また、コンポーネント間には依存関係を定義してもよい。コンポーネント間の依存関係は、あるコンポーネントが正常に動作するために別のコンポーネントが必要になる場合に、その関係性を記述するために用いられる。
【0046】
生成部110Bが生成するコンポーネントのモデルは、後述するようなセキュリティイベントの発生に応じて取り得る様々な状態を再現できる。コンポーネントのモデルが再現できる状態の一例として、通常動作状態、異常動作状態、侵害状態、異常動作隠蔽状態、メンテナンス状態、等が挙げられる。通常動作状態とは、コンポーネントが意図した動作を実行している状態を指す。異常動作状態とは、コンポーネントが意図した動作を実行していない状態を意味する。侵害状態とは、通常動作状態と同じ動作を実行しているものの、サイバー攻撃を試みる攻撃者に端末内への侵入を許している危険な状態を意味する。異常動作隠蔽状態とは、異常動作状態に陥っていることを隠蔽する情報改ざんが行われた状態を意味する。メンテナンス状態とは、パッチ適用等により一時的にコンポーネントの機能が停止している状態を意味する。
【0047】
コンポーネントが異常動作状態に陥るケースとして、例えば、DoS(Denial of Service)攻撃を受けた場合が考えられる。また、コンポーネントが異常動作隠蔽状態に陥るケースとして、例えば、異常を検知した際に発するアラームの設定を改ざんする情報隠蔽攻撃を受けた場合が考えられる。
【0048】
コンポーネントのモデルは、ユーザが入出力装置13を介して生成部110Bに入力した情報を基に生成される。
【0049】
図7は、コンポーネントのモデルを生成するためにユーザが入力する情報の一例を示す図である。
【0050】
各コンポーネントには、当該コンポーネントを一意に識別できるID61、および当該コンポーネントを表すコンポーネント名称62が与えられる。そして、依存関係63について、当該コンポーネントが依存するコンポーネントのID631と、当該コンポーネントが依存先のコンポーネントの停止時間として許容できる最大時間を示す最大許容停止時間632とが定義される。
【0051】
図7において、IDに1が割り当てられておりコンポーネント名称がPLC Aであるコンポーネントを例に挙げると、コンポーネント名称がPLC Aの当該コンポーネントは、IDが3である依存先のコンポーネントつまり制御サーバが10秒以上にわたり異常状態もしくはメンテナンス状態に陥った場合に異常動作状態に陥る。一方、依存先のコンポーネントである制御サーバが異常動作隠蔽状態であっても制御サーバの異常が認識されないため、コンポーネント名称がPLC Aである当該コンポーネントは、依存関係によって異常状態に陥ることはない。
【0052】
また、制御プロセス64には、当該コンポーネントが制御システムに実行させる工程が記録されている。例えば、PLC Aが異常動作状態に陥った場合は、図2の「ロボットA 加工」のプロセスが実行されず、制御プロセスの一部が機能不全に陥る。図6の制御プロセスのモデルを用いて説明すると、「ロボットA 加工」のラベルが付いたトランジションt52が発火できず、「加工待ち」のラベルが付いたプレースにトークンが蓄積されていく。
【0053】
生成部110Bが図7の情報を基に生成するコンポーネントのモデルは、コンポーネントの状態の時間的な遷移が表現できるのであれば、そのモデル化の方法については特定の方法に限定しない。例えば、制御プロセスのモデルと同様にペトリネットを用いて、コンポーネントの状態を再現してもよい。あるいは、生成部110Bは、制御プロセスとは異なるモデル化の手法でコンポーネントをモデル化することにしてもよい。
【0054】
図8は、ペトリネットで再現したコンポーネントのモデルの一例を示す図である。コンポーネントのモデル70では、トークンが位置するプレースによって、コンポーネントの状態が表現される。「通常動作状態」のラベルが付いたプレースp71にトークンがあれば、コンポーネントは通常動作状態であることを意味する。「異常動作状態」のラベルが付いたプレースp72にトークンがあれば、コンポーネントは異常動作状態であることを意味する。
【0055】
例えば、図8に示した構成のコンポーネントのモデルのテンプレートが記憶部120のモデルテンプレート120Bに予め格納されている。生成部110Bは、モデルテンプレート120Bに格納されている情報と、図7に示すようなユーザから入力された情報とを基に、コンポーネントのモデルを自動生成する。
【0056】
第1の実施形態では、コンポーネントは、一例として物理的な端末単位で情報機器をモデル化したものとする。しかし、個々のソフトウェアをコンポーネントとし、ソフトウェアの単位でモデル化してもよい。その他には、共通プラットフォーム一覧CPE(Common Platform Enumeration)で識別できる単位をコンポーネントとしてモデル化することも考えられる。
【0057】
最後に、エージェントのモデルについて説明する。
【0058】
エージェントは、コンポーネントの機能に影響を及ぼすセキュリティイベントを発生させる機能を有する主体であり、アクターと表現しても良い。エージェントの種類の一例として、攻撃エージェント、対処エージェント、およびオペレータエージェントが挙げられる。
【0059】
攻撃エージェントとは、サイバー攻撃を試行する攻撃者もしくはそのグループ、自律的にサイバー攻撃を試行するマルウェア、装置、およびAI、等に代表される分析対象システム被害を与えるヒトやモノの総称を意味する。攻撃エージェントの機能の例として、コンポーネントを通常動作状態から侵害状態に遷移させるアクション、侵害状態から異常動作状態に遷移させるアクション、侵害状態から異常動作隠蔽状態に遷移させるアクションがある。各アクションの前後において攻撃エージェントの状態が規定される。攻撃エージェントの状態は、例えば、攻撃準備中、情報収集中、等と表現される。例えば、攻撃準備中の状態にある攻撃エージェントが、前述した3種類のいずれかのアクションを行うと、情報収集中の状態に遷移し、次なるアクションに備える。
【0060】
攻撃エージェントの動作、すなわちアクションおよび状態の遷移は、ユーザが入出力装置13からの入力操作で定義する。
【0061】
図9は、攻撃エージェントの動作定義の一例を示す図である。
【0062】
図9には、攻撃者Aという名称の攻撃エージェントに関する情報80が定義されている。攻撃エージェントは、攻撃フェーズ欄81に示す順番で対象のコンポーネントに攻撃を実施する。攻撃エージェントは、各攻撃フェーズにおいて、from欄82に示すコンポーネントを起点にto欄83に示すコンポーネントに対して、アクション欄85に示す内容の攻撃を実施する。攻撃1の攻撃フェーズは初期侵入段階に該当するため、from欄82は空欄となっている。from欄82とto欄83に同じコンポーネントが指定されている場合は、攻撃エージェントが「侵害」のアクションが完了した後、当該コンポーネントに追加の攻撃を加えることを意味する。また、各アクションには、必要時間84に記載された時間を要する。
【0063】
攻撃エージェントも、制御プロセスおよびコンポーネントと同じくペトリネットを使ってモデル化することが可能である。
【0064】
図10は、攻撃エージェントのモデルの一例を示す図である。
【0065】
攻撃エージェントのモデル90において、トークンがどのプレースに位置しているかで攻撃エージェントの状態が表現される。
【0066】
攻撃エージェントの取り得る状態には攻撃準備中と情報収集中とが含まれ、プレースp91とプレースp92がそれらに対応する。例えば、「攻撃準備中」のラベルが付いたプレースp91にトークンがあれば、攻撃エージェントは攻撃準備中の状態であることを意味する。攻撃エージェントの状態を遷移させるアクションはトランジションを使って再現できる。攻撃エージェントのアクションには、侵害、異常動作、異常動作隠蔽が含まれ、トランジションt91、異常動作t92、異常動作隠蔽t93がそれらに対応する。情報80の必要時間84に記載された時間は、トランジションの発火の遅延時間に対応する。攻撃フェーズ1を例に挙げると、「侵害」というアクションを実施するまでに300秒の時間を要するため、「侵害」のラベルが付いたトランジションt91の発火遅延時間は300秒である。トークンは「攻撃準備中」のラベルが付いたプレースp91に300秒間留まることになる。
【0067】
攻撃エージェントのモデルとコンポーネントのモデルは互いに連携して状態を遷移させる。攻撃フェーズ4を例に挙げると、攻撃エージェントは、制御サーバを起点にしてPLC Aに対して「異常動作」というアクションを実施する。そのため、PLC Aというコンポーネントの状態も異常動作に遷移する。PLC Aのモデルでは、図8において、トークンが「通常動作状態」のラベルが付いたプレースp71から「異常動作状態」のラベルが付いたプレースp72へと移動するようにトランジションが発火する。なお、本実施形態では、上記のようにあらかじめユーザが静的に攻撃エージェントの動作を固定的に定義しているが、これに限定されることはなく、他の動作を用いてもよい。例えば、攻撃エージェントの動作にランダム性を加えて挙動が不明なマルウェアを再現しても良い。
【0068】
対処エージェントとオペレータエージェントも上述した攻撃エージェントと同様にアクションと状態がモデルにより表現される。対処エージェント、オペレータエージェント、および攻撃エージェントについて、共通のペトリネットを使い、アクションをトランジションによって表現し、状態をプレースによって表現することにしてもよい。
【0069】
対処エージェントとは、サイバー攻撃のインシデント対応者もしくはグループ、自律的に動作してサイバー攻撃に対処してその被害からコンポーネントを復旧させる装置およびAI等に代表される、サイバー攻撃が検知された後に対処を行ってコンポーネントを復旧させるためのアクションを実施するヒトおよびモノの総称を意味する。
【0070】
図11は、ペトリネットを使って作成した対処エージェントのモデルの例を示す図である。
【0071】
対処エージェントの機能として、例えば、侵害痕跡を発見するアクション(トランジションt102)、コンポーネントを異常動作状態、侵害状態、異常動作隠蔽状態から通常動作状態に遷移させるアクション(トランジションt104)を実施する機能が挙げられる。それら各アクションの前後における対処エージェントの状態は、待機中(プレースp101)、調査中(プレースp102)および対処プラン検討中(プレース103)、等で表現される。また、「侵害痕跡発見」のアクションを実施できる確率を定義しても良い。定義された確率で侵害痕跡を発見できないことになる。侵害痕跡が発見できなかった場合、対処エージェントのモデルでは、「侵害痕跡未発見」のラベルが付いたトランジションt103が発火する。
【0072】
オペレータエージェントとは、実際の分析対象システムにおいてコンポーネントを操作する従業員、もしくは制御プロセスの一部に携わる従業員の総称を意味する。
【0073】
図12は、ペトリネットを使ったオペレータエージェントのモデルの一例を示す図である。
【0074】
モデル1000の例では、オペレータエージェントの機能の一例として、捜査しているコンポーネントの異常動作を検知するアクション(トランジションt111)、対処エージェントを起動するアクション(トランジションt113)、サイバー攻撃に受けて危険に陥った分析対象システムから避難するアクション(トランジションt114)、作業を行うスケジュールのシフトを変更するアクション(トランジションt112)、等を実施する機能が挙げられる。各アクションの前後でオペレータエージェントの状態は、作業中(プレースp111)、異常動作調査中(プレースp112)、休憩中(プレースp113)、等で表現できる。
【0075】
図13は、オペレータエージェントのモデルの情報の一例を示す図である。
【0076】
オペレータエージェントのモデルには、その属性として当該オペレータが操作するコンポーネントが指定される。図13の例では、オペレータエージェントを一意に識別するID1201と、当該オペレータの名称1202とが定義されている。また、各オペレータエージェントが操作するコンポーネント1203が指定される。
【0077】
オペレータエージェントのモデルは、操作対象のコンポーネントの状態に応じて、実施するアクションを変化させる。
【0078】
以下、IDに1が割り当てられているオペレータAのモデルを例に具体例を説明する。図13を参照すると、IDが1のオペレータAの操作対象のコンポーネントは生産指示サーバである。生産指示サーバの状態が「異常動作状態」であれば、オペレータAのモデルのトランジションt111が発火し、オペレータAの状態が「異常動作調査中」に推移する。
【0079】
ここで、オペレータAの操作対象のコンポーネントが「異常動作隠蔽状態」にある場合、オペレータAはコンポーネントが異常動作であることを検知することができない。そのため、オペレータAは「異常調査中」の状態には遷移せず、「作業中」の状態に留まる。その状態で一定時間が経過した後、「対処エージェント起動」のラベルが付いたトランジションt113が発火する。このアクションにより、対処エージェントのモデルにおいて、「起動」のラベルが付いたトランジションt101が発火し、オペレータAのモデルの状態が待機中から調査中に遷移する。
【0080】
上記のような一連の流れで、サイバー攻撃の発生から、オペレータによる検知、インシデント対応者による対処によるコンポーネントの復旧が再現できる。
【0081】
攻撃エージェントと同様に、対処エージェントおよびオペレータエージェントが各アクションを実行するのに必要な時間は、ユーザが定義することができる。この時間はユーザが想定するインシデントレスポンスチームの能力や組織のインシデント対応手順の記載内容に基づき定義することが考えられる。
【0082】
エージェントモデルのテンプレートは、コンポーネントのテンプレートと同様に、記憶部120のモデルテンプレート120Bに格納されている。生成部110Bは、モデルテンプレート120Bに格納されている情報と、ユーザから入力された情報を基に、前述したようなエージェントのモデルを自動生成する。
【0083】
第1の実施形態では、エージェントの種類として、攻撃エージェント、対処エージェント、およびオペレータエージェントの3種類を挙げた。しかし、エージェントの種類がこれらだけに限定されることはない。コンポーネントに影響を与える機能を持つ他の種類のエージェントを加えてもよい。例えば、コンポーネントもしくは制御プロセスの異常動作を自動検知するインシデント自動検知エージェント、コンポーネントの保守を実施することで状態をメンテナンス中に推移させることができるメンテナンスエージェント、等が挙げられる。
【0084】
なお、制御プロセスのモデル化の手法が上記のグラフ理論の例に限定されない。例えば、より高精度、かつグラフィカルに制御プロセスを再現できる専用シミュレータを採用しても良い。
【0085】
図4に戻り、ステップS102では、生成部110Bは、更新部110Cで実施するシミュレーションの繰り返し回数および終了時刻と、算出部110Dで算出する重要業績評価指標を指定する。生成部110Bで生成されるモデルにランダムな挙動を持たせ、複数回の分析を実施し、分析結果の平均をとることにより、信頼性の高い結果を得ることができる。本実施形態では、シミュレーションの実施単位をエピソードと呼ぶ。つまり、繰り返し回数が10と指定されれば、更新部110Cは同じ初期条件で10エピソード分のシミュレーションを実施することになる。
【0086】
また、終了時刻とは、時刻0秒の条件から開始したシミュレーションを終了する時刻を意味する。例えば、終了時刻が3600秒と指定されれば、時刻が3600秒になるまでシミュレーションが継続される。
【0087】
重要業績評価指標とは、サイバー攻撃によって生じる被害影響を定量化する指標である。第1の実施形態では、重要業績評価指標として物資の累積生産量を用いる。ただし、重要業績評価指標はこれに限定されることはない。他の様々な指標を重要業績評価指標としてもよい。また、様々な観点から複数の重要業績評価指標を算出することにしてもよい。他の重要業績評価指標として、例えば、単位時間当たりの生産数を表す生産効率、全コンポーネントに対する通常動作状態のコンポーネントの割合を表すコンポーネント稼働率、全オペレータエージェントに対する作業中の状態にあるオペレータエージェントの割合を表すオペレータ作業率、全オペレータエージェントに対する危険状態を回避できているオペレータエージェントの割合を表すオペレータ安全率、等を用いても良い。
【0088】
なお、ここに示したように生成部110BがステップS102の処理を事前に全て実施し完了させておくことにしてもよいし、更新部110Cが後述する処理を開始する前に繰り返し回数と終了時刻を設定し、算出部110Dが後述する処理を開始する前に重要業績評価指標を設定することにしてもよい。
【0089】
以下で説明するステップS103からステップ108の処理は、更新部110Cが実施する処理である。
【0090】
ステップS103では、更新部110Cは、ステップS101で生成されたモデルの初期化を実施すると同時に、シミュレーション内の時刻を0に設定する。
【0091】
ステップS104では、更新部110Cは、モデル依存関係を基に、制御プロセス、コンポーネント、およびエージェントのモデルの状態を1タイムステップ分だけ時間発展させる。ここで、タイムステップとは、シミュレーションにおける最小の時間刻み幅を意味する。第1の実施形態では最小の時間刻み幅を1秒とする。また、モデル依存関係とは、モデル間の依存関係である。図7にコンポーネント間の依存関係のみを示したが、エージェント間にも依存関係があり得るし、制御プロセス間にも依存関係があり得る。更には、エージェントとコンポーネントの間にも依存関係があり得るし、コンポーネントと制御プロセスの間にも依存関係があり得る。上述したように、制御プロセスのモデルはコンポーネントのモデルの状態によって挙動を変化させる。コンポーネントのモデルはエージェントと制御プロセスのモデルの状態によって挙動を変化させる。エージェントのモデルもコンポーネントのモデルの状態によって挙動を変化させる。
【0092】
ステップS105では、更新部110Cは、全てのモデルの状態を時刻に対応づけ、時系列データ120Dとして記憶部120に格納する。更に、ステップS106にて、更新部110Cは、シミュレーション内で管理する時刻を1タイムステップ進めて更新する。
【0093】
図14は、制御プロセスのモデルの時系列データの一例を示す図である。図15は、コンポーネントのモデルの時系列データの一例を示す図である。図16は、エージェントのモデルの時系列データの一例を示す図である。
【0094】
図14では、制御プロセスの時系列データについて、エピソード1301および時刻1302毎に、各状態に留まっている物資の数1303が記録されている。例えば、制御プロセスにおいて、時刻が0秒の時点では、物資が1つも存在していない。時刻が6000秒の時点では、「プロセス完了」の欄に6という数字が表示されている。このことから、6つの物資が完成したことが分かる。
【0095】
図15では、コンポーネントの時系列データについて、エピソード1401および時刻1402毎に、コンポーネント欄1403に各コンポーネントの状態が記録されている。時刻が5999秒の時点では、生産指示サーバの状態は「通常動作状態」であるが、時刻が6000秒の時点では、生産指示サーバの状態は「異常動作状態」に推移している。これは、時刻が6000秒の時点で生産指示サーバが攻撃エージェントに異常動作状態に陥らされる攻撃を受けたか、あるいは依存関係にあるコンポーネントが最大許容停止時間を越える期間継続して異常動作状態に陥っていたため生産指示サーバが異常動作状態に陥ったことを意味する。
【0096】
図16では、エージェントの時系列データについて、エピソード1501および時刻1502毎に、エージェント欄1503に各エージェントの状態が記録されている。
【0097】
図13によれば、オペレータAの操作対象のコンポーネントが生産指示サーバである。図15に示したように、時刻が6000秒の時点で生産指示サーバが異常動作状態に陥り、図16に示すように、時刻が6001秒の時点ではオペレータAの状態が作業中から異常動作調査中に遷移している。一方、図13によれば、オペレータBの操作対象のコンポーネントが監視装置である。図15に示したように、監視装置は時刻が6000秒の時点で異常動作隠蔽状態であるため、オペレータBは監視装置の異常を検知できず、図16に示すように、作業中の状態にとどまっている。このように異常動作隠蔽状態に陥ったコンポーネントが存在する場合は、対処および復旧が遅れて被害が拡大する現象が引き起こされる。
【0098】
ステップS107では、更新部110Cは、シミュレーション内の時刻が設定した終了時刻に達したかどうかを確認する。達していない場合は、更新部110CはステップS104に戻り再びモデルの更新を行う。達していれば、更新部110CはステップS108に進む。
【0099】
ステップS108では、更新部110Cは、設定された繰り返し回数だけ分析の処理を実施したか否か確認する。分析の処理を行った回数が繰り返し回数に達していればステップS109に進む。分析の処理を行った回数が繰り返し回数に達していなければ、更新部110Cは、ステップS103に戻り、モデルおよび時刻を初期化した上で新たなエピソードを開始する。
【0100】
最後に、ステップS109は算出部110Dにて実施される。
【0101】
ステップS109では、算出部110Dは、ユーザが指定した重要業績評価指標を時系列データ120Dに基づき算出し、算出結果120Eとして記憶部120に格納する。第1の実施形態では、累積生産量を重要業績評価指標として設定しているので、算出部110Dは、図14の制御プロセスの時系列データに基づいてシミュレーション内の各時刻における累積生産量を算出する。この累積生産量はエピソード毎の各時刻における累積生産量の平均値である。
【0102】
ここでは、ステップS101からステップS109までの一連の処理はシナリオと呼ばれる。ステップS101からステップS109で生成されて記憶部120に格納される、生成モデル120C、時系列データ120D、および算出結果120Eには、どのような入力情報から生成した結果なのかを識別するためにシナリオ名が付与される。これにより、後述する通り、シナリオ間で結果を比較することが可能になる。
【0103】
ユーザは入出力装置13を通して出力部110Eに指示を送ることで、時系列データ120Dと算出結果120Eを可視化することができる。例えば、出力部110Eは、ユーザが指定した時刻における各モデルの状態を時系列データに基づいて特定し、各モデルの状態を視認可能にする画像を生成し、画面に表示する。また、出力部110Eは、算出結果120Eに基づいて、シナリオ毎のシミュレーション内の各時刻の累積生産量を画面に表示する。
【0104】
図17は、第1の実施形態において算出結果120Eに基づいて表示される画面の一例を示す図である。
【0105】
画面1600には、重要業績評価指標をグラフで表示する領域1601と、ユーザが重要業績評価指標を設定する領域1602と、ユーザがシナリオの追加および削除を行う領域1603と、ユーザが表示させたいモデルを指定する領域1604とが含まれている。領域1601には、横軸に時刻を取り、縦軸に重要業績評価指標を取ったグラフが表示される。ユーザは、領域1602にて、重要業績評価指標を指定することができる。また、ユーザは、領域1603にて追加ボタン1603Aあるいは削除ボタン1603Bの押下により、領域1601にグラフを表示するシナリオを追加したり、削除したりすることができる。また、ユーザは、領域1604にて、別画面に表示したいモデルを指定することができる。
【0106】
ここでは、エージェントの振る舞いが異なる4つのシナリオに対して、ステップS101からステップS109の一例の処理が繰り返されたと想定する。領域1601には、それら4つのシナリオにおける累積生産量の時間推移がグラフで表示されている。ユーザは領域1601にて各シナリオのグラフを比較することができる。
【0107】
各シナリオのグラフの近傍には、当該シナリオのシナリオ名のラベルが表示されている。「通常稼働」のラベルが付いたシナリオ1605Aは、攻撃エージェントを生成せず、通常通り分析対象システムを稼働させたケースに対応する。「対処プランA」のラベルが付いたシナリオ1605Bと「対処プランB」のラベルが付いたシナリオ1605Cは、同様の攻撃エージェントを生成した上で、それぞれ異なる動作を定義した対処エージェントおよびオペレータエージェントを生成したケースに対応する。「対処プランなし」のラベルが付いたシナリオ1605Dは、上記2つのシナリオ1605B、1605Cにおいて生成された攻撃エージェントと同じ攻撃エージェントを生成し、対処エージェントを生成しないケースに対応する。そのため、「対処プランなし」のシナリオ1605Dでは、シミュレーションの途中で制御プロセスの機能が全面的に停止し、累積生産数が一定数以上に増加していないことが領域1601の表示から読み取れる。
【0108】
また、領域1601には、ユーザが設定した重要業績評価指標の目標値を表す破線が目標値1606として表示されている。例えば、ユーザは分析対象システムにて達成したいサイバーレジリエンスの強度の目標を、この重要業績評価指標の目標値として設定することができる。また、領域1601には、シナリオの分析を終了する時刻としてユーザが設定した終了時刻を表す破線が終了時刻1607として表示されている。「対処プランA」のシナリオ1650Aのグラフを見ると、終了時刻において累積生産量が目標値を上回っている。したがって、ユーザは、累積生産数という観点では、「対処プランA」に定義した対処エージェントおよびオペレータエージェントの動作によって組織が分析対象システムにて目標とするサイバーレジリエンスの強度を達成できることを確認できる。
【0109】
算出部110Dで複数の重要業績評価指標が設定されている場合、ユーザは、どの重要業績評価指標を領域1601に表示するかを選択できる。ユーザが選択ボタン1602Bによって選択した重要業績評価指標は表示欄1602Aに反映され、そのグラフが領域1601に表示される。また、全シナリオ比較表示ボタン1602Cが押されると、全てのシナリオの終了時刻における重要業績評価指標の一覧が別画面で表示される。
【0110】
図18は、各シナリオの重要業績評価指標の一覧を表示する画面の一例を示す図である。
【0111】
図18の画面には、全てのシナリオ2201について、重要業績評価指標の目標値比2202が一覧表の形式で表示されている。図18の例では、複数の重要業績評価指標のそれぞれの目標値比が表示されている。重要業績評価指標の目標値比は、重要業績評価指標の終了時刻における値と目標値との比であり、一例として百分率で表示される。重要業績評価指標の目標値比が100%を越えていれば、それは終了時刻における値が目標値を超えていることを意味する。
【0112】
ユーザは、組織の分析対象システムに関するセキュリティ体制の定量的な評価結果を図17および図18の画面で確認することができる。セキュリティ体勢の改善が必要であれば、ユーザは図17および図18の画面に表示された情報をその改善に役立てることができる。
【0113】
また、サイバーレジリエンス分析装置11は、シナリオの中の指定されたエピソードの指定された時刻におけるモデルの状態を表示することも可能である。ユーザが、図17の画面1600においてシナリオ欄1604Aにシナリオ名を入力し、エピソード欄1604Bにエピソード番号を入力し、時刻欄1604Cに時刻を入力し、表示ボタン1604Dを押すと、そのシナリオ名のシナリオのそのエピソード番号のエピソードにおけるその時刻のモデルの情報が別画面で表示される。
【0114】
図19は、モデルの情報を表示する画面の一例を示す図である。
【0115】
画面1700のウインドウ1701には、コンポーネントとエージェントのモデルが表示されている。コンポーネントのモデルは、コンピュータ装置を模したオブジェクトで表されている。エージェントのモデルは人物を模したオブジェクトで表されている。コンポーネント間の依存関係は矢印で表現されている。コンポーネントとエージェントの依存関係は破線で表現されている。
【0116】
ユーザは、スクロールバー1702を操作することで画面の表示領域を調整することができる。また、ユーザがマウスポインター1704を操作してモデルのアイコンに近づけてマウスオーバーすると、当該モデルの詳細情報の吹き出し1703が表示される。詳細情報として当該モデルの状態が表示される。ユーザが「もどる」ボタン1705を押すと、ウインドウ1701が閉じて図17の画面に戻る。なお、図19の例では、コンポーネントとエージェントのモデルを表示する画面を例示したが、他の表示も可能である。例えば、制御プロセスのモデルを表示する機能を追加してもよい。
【0117】
以上、第1の実施形態では、図2に例示したように分析対象システムとして生産ラインを想定した。しかし、これに限定されない。例えば、化学プラント、電力システム、鉄道システムなど様々なシステムを分析対象システムとすることができる。
【0118】
化学プラントを分対象システムとする場合、重要業績評価指標として、例えば、当該化学プラントにて生成される化学物質の生成量を用いてもよい。
【0119】
また、例えば、当該化学プラントからの二酸化炭素排出量を重要業績評価指標として用い、サイバー攻撃を受けた場合の環境への影響を定量的に評価してもよい。
【0120】
また、上述した二酸化炭素排出量以外の環境リスクを重要業績評価指標として用いることもできる。例えば、サイバー攻撃を受けて対処が完了するまでの間に化学プラントで生成される有毒物質の量を重要業績評価指標としてもよい。
【0121】
電力システムを分析対象システムとする場合、重要業績評価指標として、例えば、当該電力システムによる電力供給量を用いてもよい。
【0122】
また、鉄道システムを分析対象システムとする場合、列車運行の定時性あるいはダイヤの乱れの程度を重要業績評価指標としてもよい。
【0123】
また、サイバー攻撃を受けて対処を行った際の残存リスクを重要業績評価指標としてもよい。例えば、サイバー攻撃の被害を受けた情報機器のうち一部だけに脆弱性を改善する対処を行い他の機器の脆弱性を放置して分析対象システムを復旧させた場合、全情報機器に対する放置された機器の割合を残存リスクとし、重要業績評価指標に用いてもよい。
【0124】
(第2の実施形態)
以下、本発明の第2の実施形態について説明する。
【0125】
図20は、第2の実施形態におけるモデルの動作イメージを示す概念図である。
【0126】
第1の実施形態では、実際の分析対象システムを模したモデルを仮想的に時間発展させ、時間発展の間にモデルから得られる情報を基に重要業績評価指標を算出するサイバーレジリエンス評価システムを例示した。一方、第2の実施形態では、実際の分析対象システムを模したモデルを実際の分析対象システムの状態と同期するように時間発展させ、時間発展の間にモデルから得られる情報を基に重要業績評価指標を算出するサイバーレジリエンス評価システムを例示する。
【0127】
第2の実施形態に係るサイバーレジリエンス評価システムは、第1の実施形態のサーバーレジリエンス評価システムと基本的な構成および動作を有する。第2の実施形態に係るサイバーレジリエンス評価システムの機能構成は図1に示した第1の実施形態のものと同様である。また、第2の実施形態のサイバーレジリエンス評価システムの分析対象システムは図2に示した第1の実施形態のものと同様である。
【0128】
第2の実施形態に係るサイバーレジリエンス評価システムは、第1の実施形態のサーバーレジリエンス評価システムと一部の動作が異なる。第1の実施形態では、図1に示した生成部110B、更新部110C、および算出部110Dが実際の分析対象システムの状態と独立して動作するものであった。一方、第2の実施形態では、図1に示した生成部110B、更新部110C、および算出部110Dが実際の分析対象システムと一部同期して動作する。第2の実施形態のサイバーレジリエンス分析装置はデジタルツインとして機能するとも言える。
【0129】
ここでデジタルツインとは、実空間で稼働する分析対象システムから取得したデータをもとに、リアルタイムにデジタル空間上で分析対象システムの挙動を再現したモデルと定義する。
【0130】
図21は、第2の実施形態においてサイバーレジリエンス分析装置により実行される処理のフローチャートである。第2の実施形態における処理は、図4に示した第1の実施形態における処理とは一部が異なっている。
【0131】
ステップS201およびS202の処理は生成部110Bで実施される。
【0132】
ステップS201では、生成部110Bは、図4のステップS101と同じく、分析対象システムのエージェント、コンポーネント、および制御プロセスについてペトリネットのモデルを生成する。なお、第1の実施形態のように、複数の対処計画のシナリオを評価して評価結果を比較したい場合、ステップS201の段階で、シナリオ毎にモデルのセットを定義しておくとよい。
【0133】
ステップS202では、生成部110Bは、更新部110Cで実施するシミュレーションの終了時刻と、算出部110Dで算出する重要業績評価指標を指定する。なお、第2の実施形態においては分析対象システムと一部同期させたデジタルツインを用いるので、モデルにランダム性を持たせるためにシミュレーションを繰り返すことは行わない。そのため、繰り返し回数の指定も行わない。
【0134】
ステップS203からステップ207の処理は更新部110Cで実施される。
【0135】
ステップS203では、更新部110Cは、図4のステップS103と同じく、モデルおよび時刻を初期化する。
【0136】
ステップS204では、更新部110Cは、刻々と収集部110Aにより収集され記憶部120に格納される制御プロセスログ120Aを監視し、分析対象システムの状態を示す情報に生じた更新を検知する。その更新を検知し次第、更新部110Cは、ステップ205に移り、モデル間の依存関係を基に各モデルの状態を更新する。
【0137】
図2の生産ラインの例では、更新部110Cは、物資がコンベアに投入されたという制御プロセスログを検知し次第、図6に例示した制御プロセスのモデルの「プロセス開始」のラベルが付いたプレースp51にトークンを発行する。つまり、現実世界の分析対象システムとサイバーレジリエンス分析装置にて生成するモデルはその一部の動作を同期させる。
【0138】
ステップS206では、更新部110Cは、更新したモデルの情報を時系列データ120Dとして記憶部120に格納する。
【0139】
ステップS207では、更新部110Cは、シミュレーション内の時刻を現実の時刻と一致させるように、モデルの状態を前回更新した時刻から現在時刻までに経過した時間をシミュレーション内の時刻に加算する。
【0140】
最後に、ステップS208では、算出部110Dは最新の時系列データ120Dを基に、ユーザが指定した重要業績評価指標を計算し、その結果を算出結果120Eとして記憶部120に格納する。
【0141】
ステップS209では、更新部110Cは、シミュレーション内の時刻が設定した終了時刻に達したかどうかを確認する。達していない場合は、更新部110CはステップS204に戻り再びモデルの更新を行う。達していれば、更新部110Cは処理を終了する。
【0142】
ユーザは入出力装置13を通して出力部110Eに指示を送ることで、時々刻々とリアルタイムで蓄積されていく時系列データ120Dと算出結果120Eを可視化することができる。
【0143】
図22は、第2の実施形態において算出結果120Eに基づいて表示される画面の一例を示す図である。第2の実施形態における本画面は、図17に示した第1の実施形態のものとは一部が異なっている。
【0144】
画面2100には、重要業績評価指標をグラフで表示する領域2101と、ユーザが重要業績評価指標を設定する領域2102と、ユーザがシナリオの追加および削除を行う領域2103と、ユーザが表示させたいモデルを指定する領域2104とが含まれている。
【0145】
領域2101には、横軸に時刻を取り、縦軸に重要業績評価指標を取ったグラフが表示される。このグラフはリアルタイムに更新され現在時刻までの重要業績評価指標が表示される。ユーザは、4つのシナリオの重要業績評価指標のリアルタイムの遷移を同時に確認することができる。
【0146】
図17に示した第1の実施形態における表示例と同じく、表示画面2010に目標値2606と終了時刻2607を破線で表示しても良い。また、第2の実施形態では、現在の時刻を表す現在時刻2608を破線で表示しても良い。現在時刻2608は徐々に更新されてゆく。現在時刻2608が終了時刻2607と一致すると分析は終了する。つまり、シミュレーションの終了時刻を100秒と設定すると、1回の分析に実際の時間として100秒間かかることになる。
【0147】
また、第1の実施形態と同様に、ユーザは、領域2102にて、重要業績評価指標を指定することができる。また、ユーザは、領域2103にて、領域2101にグラフを表示するシナリオを追加したり、削除したりすることができる。また、ユーザは、領域2104にて、別画面に表示したいモデルを指定することができる。
【0148】
第2の実施形態においても、図17に示した第1の実施形態の場合と同じく、算出部110Dで複数の重要業績評価指標が設定されている場合、ユーザは、どの重要業績評価指標を領域2101に表示するかを選択できる。ユーザが選択ボタン2102Bによって選択した重要業績評価指標は表示欄2102Aに反映され、そのグラフが領域2101に表示される。また、全シナリオ比較表示ボタン2102Cが押されると、全てのシナリオの終了時刻における重要業績評価指標の一覧が別画面で表示される。
【0149】
また、第2の実施形態においても、ユーザは、領域2103にて追加ボタン2103Aあるいは削除ボタン2103Bの押下により、表示領域2101にグラフを表示するシナリオを追加したり、削除したりすることができる。また、ユーザは、領域2104にて、別画面に表示したいモデルを指定することができる。
【0150】
また、第2の実施形態においては、サイバーレジリエンス分析装置11は、各シナリオの現在時刻におけるモデルの状態を表示することも可能である。ユーザが、図22の画面2100においてシナリオ欄2104Aにシナリオ名を入力し、表示ボタン2104Bを押すと、そのシナリオ名のシナリオの現在時刻のモデルの情報が別画面で表示される。
【0151】
(第3の実施形態)
以下、本発明の第3の実施形態について説明する。
【0152】
第3の実施形態では、サイバーレジリエンス分析装置が学習によってモデルを最適化する機能を備えている。
【0153】
第3の実施形態に係るサイバーレジリエンス評価システムは、第1の実施形態のサーバーレジリエンス評価システムと基本的な構成および動作を有する。第3の実施形態に係るサイバーレジリエンス評価システムの機能構成は図1に示した第1の実施形態のものと同様である。ただし、学習部110Fが第1の実施形態では機能していなかったが、第3の実施形態では機能する。
【0154】
第1の実施形態においては、エージェントのモデルの動作ルールは、対処計画に基づいてユーザによって定義され、エピソードを繰り返す間に変更されることはなかった。これに対して第3の実施形態では、学習部110Fが、エピソード毎に算出部110Dで算出された算出結果120Eを基にエージェントのモデルの動作ルールを更新し、対処計画を最適化する。
【0155】
また、第3の実施形態のサイバーレジリエンス評価システムの分析対象システムは図2に示した第1の実施形態のものと同様である。
【0156】
図23は、第3の実施形態においてサイバーレジリエンス分析装置により実行される処理のフローチャートである。第3の実施形態における処理は、図4に示した第1の実施形態における処理とは一部が異なっている。
【0157】
ステップS301からS307までの処理は、図4のステップS101からS107の処理と共通する。
【0158】
ステップS308では、第1の実施形態とは異なり、1エピソード分のステップS303からS307の処理が終了する毎に、算出部110Dがモデルの時系列データから重要業績評価指標を算出する。そして、ステップS309にて、更新部110Cは、設定された繰り返し回数だけ分析の処理を実施したか否か確認する。分析の処理を行った回数が繰り返し回数に達していれば処理を終了する。分析の処理を行った回数が繰り返し回数に達していなければ、ステップS310に進む。
【0159】
ステップS310では、学習部110Fは、ステップS308で算出部110Dが算出した重要業績評価指標を基にモデルの最適化を実施し、ステップS303に戻る。
【0160】
例えば、重要業績評価指標が累積生産量のように値が大きいほど評価が高いものであれば、学習部110Fは、その重要業績評価指標を目的関数とし、目的関数を最大化する対処エージェントおよびオペレータエージェントの行動を解として求めればよい。また、重要業績評価指標が二酸化炭素排出量のように値が小さいほど評価が高いものであれば、学習部110Fは、その重要業績評価指標を目的関数とし、目的関数を最小化する対処エージェントおよびオペレータエージェントの行動を解として求めればよい。最適解の探索には、強化学習に代表されるAI技術を用いてもよい。最適化の際に、制約条件として、対処エージェントおよびオペレータエージェントが実行可能な行動の範囲で解を探索すればよい。
【0161】
分析が完了した段階で、ユーザは出力部110Eを起動し、入出力装置13を通して最適化されたエージェントの挙動を確認する。この情報を基にして、ユーザは組織のセキュリティ体制の改善し、サイバーレジリエンスを高めることができる。
【0162】
以上、本発明の実施形態について述べてきたが、本発明は、これらの実施形態だけに限定されるものではなく、本発明の技術思想の範囲内において、これらの実施形態を組み合わせて使用したり、一部の構成を変更したりしてもよい。
【0163】
また、上述した実施形態には以下に示す事項が含まれている。ただし、上述した実施形態に含まれる事項は以下に示すものに限定されることはない。
【0164】
(事項1)
分析対象システムが動作する工程である制御プロセスと、前記分析対象システムに前記制御プロセスを実行させるコンポーネントと、前記コンポーネントの挙動に影響を及ぼす行動を行うエージェントと、について、時系列変化を表現可能なモデル化手法によりモデルを生成し、前記制御プロセスが他の制御プロセスまたは前記コンポーネントの状態によって挙動を変化させる依存関係と、前記コンポーネントが他のコンポーネントまたは前記エージェントまたは前記制御プロセスの状態によって挙動を変化させる依存関係と、前記エージェントが他のエージェントまたは前記コンポーネントの状態によって挙動を変化させる依存関係とを前記モデル間に規定する生成部と、
エージェントによるサイバー攻撃が開始されてから所定の計画に基づく他のエージェントによる前記サイバー攻撃への対処が完了するまで、前記制御プロセスのモデル、前記コンポーネントのモデル、および前記エージェントのモデルを前記依存関係に基づいて時間発展させ、時間発展の間に、前記制御プロセスのモデル、前記コンポーネントのモデル、および前記エージェントのモデルから得られる時系列データを記録する更新部と、
前記時系列データに基づいて、前記計画による対処を評価するための所定の評価指標を算出する算出部と、
を有するサイバーレジリエンス分析装置。
これによれば、制御プロセスとコンポーネントだけでなくエージェントを含めてサイバー攻撃およびそれに対する対処を時系列に再現し、得られた時系列データに基づいて評価指標を算出するので、サイバー攻撃に対する計画的な対処の有効性を適切かつ定量的に評価することができる。例えば、APT攻撃のような意図を持った高度な攻撃についても攻撃者の意図を持った高度な攻撃行動を再現することができる。また、オペレータや対処エージェントの高度な対処の手順を再現して評価することができる。
【0165】
(事項2)
事項1に記載のサイバーレジリエンス分析装置において、
前記エージェントのモデルには、
前記コンポーネントを運用するオペレータを表現したオペレータエージェントモデルと、
前記コンポーネントに対してサイバー攻撃を施行する主体を表現した攻撃エージェントモデルと、
前記コンポーネントに対して前記サイバー攻撃への対処を施行する主体を表現した対処エージェントモデルとが含まれる。
これによれば、オペレータ、攻撃の主体、対処の主体という登場主体のそれぞれの行動を個々のモデルで表現することにより、サイバー攻撃の開始から対処の完了までの登場主体の行動を含めた時系列の一連の挙動を緻密に再現することができる。
【0166】
(事項3)
事項2に記載のサイバーレジリエンス分析装置において、
前記攻撃エージェントモデルは、前記コンポーネントのモデルを意図した状態から意図しない状態に強制的に遷移させることができ、前記コンポーネントのモデルを前記意図した状態から前記意図しない状態に遷移させると自身の状態も遷移させる。
【0167】
(事項4)
事項3に記載のサイバーレジリエンス分析装置において、
前記対処エージェントモデルは、前記コンポーネントのモデルを意図しない状態から意図した状態に遷移させることができ、前記コンポーネントのモデルを前記意図しない状態から前記意図した状態に遷移させると自身の状態も遷移させる。
【0168】
(事項5)
事項4に記載のサイバーレジリエンス分析装置において、
前記オペレータエージェントモデルは、前記コンポーネントのモデルの状態に応じて当該コンポーネントのモデルもしくは他のエージェントのモデルの状態を遷移させることができ、前記コンポーネントのモデルもしくは前記他のエージェントのモデルの状態を遷移させると自身の状態も遷移させる。
【0169】
(事項6)
事項1に記載のサイバーレジリエンス分析装置において、
指定された時刻における前記モデルの状態を前記時系列データに基づいて特定し前記モデルの前記状態を視認可能にする表示をし、前記算出された評価指標を視認可能にする表示をする出力部を更に有する。
これによれば、指定された時刻のコンポーネントやエージェントの状態が視認可能になるので、サイバー攻撃が開始されてから対処が完了して復旧するまでの所望の時刻を指定してコンポーネントやエージェントの状態を確認することができる。
【0170】
(事項7)
事項1に記載のサイバーレジリエンス分析装置において、
前記分析対象システムから実際の稼働により得られた情報を収集してログ情報として記録する収集部を更に有し、
前記更新部は、前記ログ情報を前記制御プロセスのモデルの状態に反映させながら、前記制御プロセスのモデル、前記コンポーネントのモデル、および前記エージェントのモデルを時間発展させる。
これによれば、実際の分析対象システムから得られた情報を基に、制御プロセスのモデルを実際の制御プロセスに同期させてサイバー攻撃の開始から対処の完了まで時間発展させるので、より現実に近い状態を想定した対処の評価を行うことができる。
【0171】
(事項8)
事項2に記載のサイバーレジリエンス分析装置において、
前記算出された評価指標の値を目的関数として、前記オペレータエージェントモデルおよび/または前記対処エージェントモデルの前記コンポーネントに対する行動を最適化する学習部を更に有する。
これによれば、評価指標の値を向上させるようにオペレータエージェントおよび/または対処エージェントモデルの行動を最適化することにより、対処の計画を改善していくことが可能となる。
【0172】
(事項9)
事項1に記載のサイバーレジリエンス分析装置において、
前記制御プロセスのモデルは、前記分析対象システムの意図した状態での動作と意図しない状態での動作とを区別して表現できるモデルである。
【0173】
(事項10)
事項9に記載のサイバーレジリエンス分析装置において、
前記コンポーネントのモデルは、自身が意図した状態か意図しない状態かに応じて、前記制御プロセスのモデルを前記意図した状態とするか前記意図しない状態とするかを決定する。
【0174】
(事項11)
事項1に記載のサイバーレジリエンス分析装置において、
前記制御プロセスは、前記分析対象システムが動作することで所定の成果を生じさせるものであり、
前記制御プロセスのモデルから前記成果を計測可能にする情報が取得され、
前記更新部は、前記制御プロセスのモデル、前記コンポーネントのモデル、および前記エージェントのモデルを時間発展させて前記制御プロセスのモデルから得られる成果の情報を前記時系列データとして記録し、
前記算出部は、前記成果の情報に基づいて前記評価指標を算出する。
これによれば、生産プロセスにおける製品の生産量のような計測可能な成果に基づき評価指標を算出するので、サイバー攻撃を受けてから対処が完了するまでの間に生じる成果にどの程度の影響があるかを定量化することができる。
【0175】
(事項12)
事項1に記載のサイバーレジリエンス分析装置において、
前記時系列変化を表現可能なモデル化手法は、プレースとトランジションの2種類のノードを持ち、前記ノードが方向を持って接続され、前記トランジションの発火によりトークンが前記プレース間を移動することにより状態の変化を表す2部有向グラフであって前記トランジションの発火に遅延時間を設定可能なペトリネットであり、
前記生成部は、前記制御プロセス、前記コンポーネント、および前記エージェントを前記ペトリネットによって生成する。
これによれば、制御プロセス、コンポーネント、およびエージェントの全てのモデルを共通の手法としてペトリネットで生成するので、分析対象システムおよび情報システムだけでなく、登場主体までも含めた相互の関係を容易に再現することができる。
【符号の説明】
【0176】
1…サイバーレジリエンス評価システム、2…生産ライン、11…サイバーレジリエンス分析装置、12…制御機器、13…入出力装置、21…コンベア、22…ロボット、23…物資、110…処理部、120…記憶部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23