(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023060953
(43)【公開日】2023-05-01
(54)【発明の名称】攻撃シナリオ分析装置及び攻撃シナリオ分析方法
(51)【国際特許分類】
G06F 21/57 20130101AFI20230424BHJP
【FI】
G06F21/57 370
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2021170652
(22)【出願日】2021-10-19
(71)【出願人】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110000176
【氏名又は名称】弁理士法人一色国際特許事務所
(72)【発明者】
【氏名】辻 大輔
(72)【発明者】
【氏名】藤田 淳也
(72)【発明者】
【氏名】小倉 貴志
(57)【要約】
【課題】産業制御システムに対するサイバー攻撃について、攻撃者及び被害者の両視点からの効率的なリスク分析を可能とする。
【解決手段】攻撃シナリオ分析装置10において、サイバー攻撃を試行する攻撃者の状態遷移モデルを組み合わせて分析対象システムにおけるサイバー攻撃シナリオを生成する攻撃シナリオ生成部152と、攻撃者が状態を遷移する行動を取ることで生じる前記攻撃者にとってのリスクおよび前記システムにとってのリスクの一方もしくは両方の評価値を算出し、前記評価値に基づき攻撃シナリオ全体のリスクの評価値を与えるリスク評価部153を備える構成とする。
【選択図】
図2
【特許請求の範囲】
【請求項1】
サイバー攻撃の状態遷移モデルを保持する記憶部と、
前記状態遷移モデルを組み合わせることで、分析対象のシステムにおけるサイバー攻撃のシナリオを複数生成する攻撃シナリオ生成部と、
攻撃者が前記シナリオに沿って攻撃行動を遷移させることで順次生じる、当該攻撃者にとってのリスクまたは前記システムにとってのリスクの少なくともいずれかの評価値を算出し、前記評価値に基づき前記シナリオに関するリスクの評価値を特定するリスク評価部と、
を備えることを特徴とする攻撃シナリオ分析装置。
【請求項2】
前記記憶部は、
前記システムを構成する機器の種類ごとに、前記状態遷移モデルを保持し、
前記攻撃シナリオ生成部は、
前記システムに含まれる各機器の種類に対応する状態遷移モデルを組み合わせることで、前記シナリオを複数生成するものである、
ことを特徴とする請求項1に記載の攻撃シナリオ分析装置。
【請求項3】
前記記憶部は、
前記攻撃行動に必要なコストの情報をさらに保持し、
前記リスク評価部は、
前記シナリオに関して、当該シナリオが含む前記攻撃行動それぞれの、攻撃に必要な労力、攻撃の難易度、及び攻撃が検知される可能性を表す攻撃検知率、の少なくともいずれかの観点でのコストを、前記コストの情報に基づき集計し、当該集計したコストを前記攻撃者にとっての前記リスクの評価値とするものである、
ことを特徴とする請求項2に記載の攻撃シナリオ分析装置。
【請求項4】
前記記憶部は、
前記攻撃行動による被害の情報をさらに保持し、
前記リスク評価部は、
前記シナリオに関して、当該シナリオが含む前記攻撃行動それぞれの、攻撃による被害の影響を表した被害影響度、及び攻撃により想定される被害額を表す想定被害額、の少なくともいずれかの観点でのコストを、前記被害の情報に基づき集計し、当該集計したコストを前記システムにとっての前記リスクの評価値とするものである、
ことを特徴とする請求項3に記載の攻撃シナリオ分析装置。
【請求項5】
前記システムを構成する機器の情報入力を受け付ける情報入力部を更に備えることを特徴とする請求項4に記載の攻撃シナリオ分析装置。
【請求項6】
前記攻撃シナリオ生成部は、
前記情報入力部で入力された前記システムの機器の重要度に関する情報に基づき、前記シナリオにおける、攻撃者が前記システムにおいて最初にアクセスする機器と最終標的とする機器を選定するものである、
ことを特徴とする請求項5に記載の攻撃シナリオ分析装置。
【請求項7】
前記攻撃シナリオ生成部で生成した各シナリオと、前記リスク評価部で各シナリオについて得られた前記評価値とを紐付けたシナリオ一覧を表示する分析結果出力部をさらに備える、
ことを特徴とする請求項6に記載の攻撃シナリオ分析装置。
【請求項8】
前記記憶部は、
前記コストの情報として、前記攻撃行動を実現する技術の情報をさらに保持し、
前記攻撃シナリオ生成部は、
前記技術の情報に基づいて、前記状態遷移モデルと、当該状態遷移モデルにおける攻撃行動の実現技術の情報とを組み合わせて、前記システムにおける前記シナリオを生成するものである、
ことを特徴とする請求項3に記載の攻撃シナリオ分析装置。
【請求項9】
前記リスクの評価値に基づき、攻撃者が状態を遷移する攻撃行動と前記技術の組み合わせに対して報酬を定義し、前記シナリオを強化学習する学習部をさらに備える、
ことを特徴とする請求項8に記載の攻撃シナリオ分析装置。
【請求項10】
情報処理装置が、
記憶部において、サイバー攻撃の状態遷移モデルを保持し、
前記状態遷移モデルを組み合わせることで、分析対象のシステムにおけるサイバー攻撃のシナリオを複数生成する処理と、
攻撃者が前記シナリオに沿って攻撃行動を遷移させることで順次生じる、当該攻撃者にとってのリスクまたは前記システムにとってのリスクの少なくともいずれかの評価値を算出し、前記評価値に基づき前記シナリオに関するリスクの評価値を特定する処理と、
を実行することを特徴とする攻撃シナリオ分析方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、攻撃シナリオ分析装置及び攻撃シナリオ分析方法に関するものである。
【背景技術】
【0002】
近年、サイバー攻撃の脅威は従来の情報システムに留まらず、産業分野におけるコンピュータシステム(産業制御システム)でも顕在化している。
【0003】
一般的に、産業制御制御システムで稼働するコンピュータ機器のライフサイクルは情報システムと比べて長期に渡る。そのため、ベンダサポートが終了したレガシーOS(Operating System)やソフトウェアが現役で稼働していることも少なくない。
【0004】
また、可用性の観点からセキュリティパッチを安易に適用することも難しいため、セキュリティ面では情報システムと比べて多くの脆弱性を抱えている場合が多い。
【0005】
一方で、生産効率向上等を目的としてIoT(Internet of Things)技術が積極的に導入され、インターネットを介して様々なシステムと相互接続されるケースが増えた結果、産業制御システムは攻撃者にとって都合の良い標的となった。
【0006】
重要インフラを含む産業制御システムへのサイバー攻撃は社会的な影響も大きく、場合によっては健康や安全に関する事故を引き起こす可能性もある。
【0007】
そのような損害を与えることを意図して、対象システムを標的と定めて高度な攻撃を継続的に行うAPT(Advanced Persistent Threat)攻撃の脅威も増している。
【0008】
このような高度な攻撃に対抗するためには、攻撃者が標的とするシステムに侵入してから目的を達成するまでの一連の経路および行動(以下、「攻撃シナリオ」もしくは「シナリオ」と略称する)を攻撃者の目線であらかじめ予測し、そのリスクを評価した上で、必要な対策を導入するというアプローチが有効である。
【0009】
ここで、「リスク」とは攻撃者にとってのリスクと被害者にとってのリスクの両視点から評価することが重要である。
【0010】
前者は「攻撃の実施にコストがかさむリスク」や「攻撃が失敗するリスク」等、攻撃シナリオの実現可能性に関連する。
【0011】
後者は「攻撃によって生じる被害額」や「攻撃によって生じる人命・環境への影響」等、被害者(サイバー攻撃の標的となるシステム)への被害影響に関連する。
【0012】
特許文献1では、複数のコンピュータ等を含む情報処理システムにおいて、サイバー攻撃の経路を特定し、そのリスクに対して評価値を与える方法およびプログラムを提供する。具体的には、攻撃経路上に存在する機器が有する脆弱性を特定した上で、あらかじめ定義した脆弱性毎の評価値を記憶したデータベースと照らし合わせることで、分析対象システム全体に対するリスク評価を可能にする。
【先行技術文献】
【特許文献】
【0013】
【発明の概要】
【発明が解決しようとする課題】
【0014】
しかしながら産業制御システムでは、IoT機器を含む多種多様な制御機器が稼働しているため、システムを構成する全機器の脆弱性情報を収集するには膨大な時間と労力を要する。
【0015】
そのため、時間と労力のリソースに限りがある状況下で、産業制御システムに関して、脆弱性をベースにした従来のリスク分析手法を適用するのは困難なケースが多い。したがってリスク分析に際し、攻撃者にとってのリスクと被害者にとってのリスクの両視点から評価することも難しい現状にある。
【0016】
そこで本発明では、産業制御システムに対するサイバー攻撃について、攻撃者及び被害者の両視点からの効率的なリスク分析を可能とすることを目的とする。
【課題を解決するための手段】
【0017】
上記課題を解決する本発明の攻撃シナリオ分析装置は、サイバー攻撃の状態遷移モデルを保持する記憶部と、前記状態遷移モデルを組み合わせることで、分析対象のシステムにおけるサイバー攻撃のシナリオを複数生成する攻撃シナリオ生成部と、攻撃者が前記シナリオに沿って攻撃行動を遷移させることで順次生じる、当該攻撃者にとってのリスクまたは前記システムにとってのリスクの少なくともいずれかの評価値を算出し、前記評価値に基づき前記シナリオに関するリスクの評価値を特定するリスク評価部と、を備えることを特徴とする。
【0018】
また、本発明の攻撃シナリオ分析方法は、情報処理装置が、記憶部において、サイバー攻撃の状態遷移モデルを保持し、前記状態遷移モデルを組み合わせることで、分析対象のシステムにおけるサイバー攻撃のシナリオを複数生成する処理と、攻撃者が前記シナリオに沿って攻撃行動を遷移させることで順次生じる、当該攻撃者にとってのリスクまたは前記システムにとってのリスクの少なくともいずれかの評価値を算出し、前記評価値に基づき前記シナリオに関するリスクの評価値を特定する処理と、を実行することを特徴とする。
【発明の効果】
【0019】
本発明によれば、膨大な脆弱性情報を個別に判別することなく、分析対象システムの構成情報から攻撃者の目線で攻撃シナリオを生成し、攻撃者と分析対象システムの両視点からリスク分析を行うことが可能となる。つまり、産業制御システムに対するサイバー攻撃について、攻撃者及び被害者の両視点からの効率的なリスク分析が可能となる。
【図面の簡単な説明】
【0020】
【
図1】第1の実施形態に係る攻撃シナリオ分析装置の処理を表すフローチャートである。
【
図2】第1~3の実施形態に係る攻撃シナリオ分析装置のシステム構成図である。
【
図3】第1~3の実施形態に係る分析対象システムの構成情報の例を表す図である。
【
図4】第1~3の実施形態に係る攻撃者の状態遷移モデルの例を表す図である。
【
図5】第1~3の実施形態に係る分析対象システムのネットワーク構成の例を表す図である。
【
図6】第1、2の実施形態に係る攻撃シナリオの模式図の例を表す図である。
【
図7】第1の実施形態に係る攻撃シナリオの一例を表す図である。
【
図8】第1の実施形態に係る攻撃シナリオ情報の一例を表す図である。
【
図9】第1の実施形態に係るリスク評価情報の一例を表す図である。
【
図10】第1の実施形態に係る入出力装置に出力される攻撃シナリオ分析装置の分析結果の一例を表す図である。
【
図11】第2の実施形態に係る攻撃シナリオ分析装置の処理を表すフローチャートである。
【
図12】第2の実施形態に係る攻撃者が状態を遷移する行動を取るために用いる技術情報を表す図である。
【
図13】第2の実施形態に係る攻撃シナリオ情報の一例を表す図である。
【
図14】第3の実施形態に係る攻撃シナリオ分析装置の処理を表すフローチャートである。
【
図15】第3の実施形態に係る攻撃シナリオ情報の一例を表す図である。
【発明を実施するための形態】
【0021】
[第1の実施形態]
<攻撃シナリオ分析方法のフロー>
【0022】
以下、本発明の第1の実施形態について、図面を用いて説明する。
図1は、攻撃シナリ
オ分析装置10による攻撃シナリオ分析方法の処理フローを示す図である。
【0023】
以下、
図1のフローチャートにおける各ステップの概要について説明する。まず攻撃シナリオ分析装置10は、適宜な入出力インターフェイスを介して、分析対象となるシステムのシステム構成情報161のユーザ入力を受け付けて取得する(ステップS1)。
【0024】
続いて、攻撃シナリオ分析装置10は、S1で取得したシステム構成情報161を、当該システムの機器種類ごとに個別に定義された攻撃者の状態遷移モデル162(一般的に、「サイバーキルチェーン」と呼ばれることもある)と組み合わせることで、攻撃シナリオを自動生成する(ステップS2)。
【0025】
また、攻撃シナリオ分析装置10は、S2で生成した攻撃シナリオに対して、攻撃者および被害者にとってのリスクをそれぞれ個別に分析し、評価値を付与する(ステップS3)。
【0026】
ここで、被害者とは攻撃者によって攻撃を受ける対象システムを指す。また、「被害者にとってのリスク」と「分析対象システムにとってのリスク」は同義である。
【0027】
続いて、攻撃シナリオ分析装置10は、上記のS3で個別に評価した、攻撃者および被害者それぞれにとってのリスクの評価値を基に、攻撃シナリオ全体のリスクを分析して評価値を算出する(ステップS4)。
【0028】
最後に、攻撃シナリオ分析装置10は、攻撃シナリオをリスクの評価値と紐付けて、入出力装置17のユーザに向けて出力し(ステップS5)、処理を終了する。
【0029】
<攻撃シナリオ分析装置の構成>
以上の攻撃シナリオ分析装置10における機能をコンピュータで実現したシステム構成の一例を、
図2に示す。
【0030】
この場合、攻撃シナリオ分析装置10は、バスなどで互いに接続された、CPU(Central Processing Unit)11、メモリ12、入出力インターフェイス13、記憶装置14
などを含んで構成される。
【0031】
CPU11は、この攻撃シナリオ分析装置10を統括制御する中央処理装置である。攻撃シナリオ分析装置10の実行時に、CPU11は、記憶装置14に記憶されている処理プログラム群15をメモリ12に展開し、実行する。
【0032】
メモリ12は、例えばRAM(Random Access Memory)などであり、CPU11がプログラムを実行する際の作業領域として使用される。
【0033】
また、入出力インターフェイス13は、CPU11での処理結果を外部の入出力装置17に出力するインターフェイスである。
【0034】
入出力装置17は、攻撃シナリオ分析装置10に対してユーザがデータ入出力を行うための装置であり、主にキーボード、マウス、ディスプレイ等から構成される。
【0035】
また、記憶装置14は、例えばHDD(Hard Disk Drive)やSSD(Solid State Drive)で構成される。この記憶装置14に格納される情報は、処理プログラム群15と記憶部16に大別される。
【0036】
処理プログラム群15は、
図1の処理S1~S5を実行するプログラムである。情報入力部151はステップS1を、攻撃シナリオ生成部152はステップS2を、リスク評価部153はステップS3およびS4を、分析結果出力部154はステップS5を実行するプログラムである。処理プログラム群15に含まれる学習部155は、第3の実施形態でのみ使用される。
【0037】
また記憶部16は、処理プログラム群15が処理した入出力データを格納するデータベースを格納する領域となる。記憶部16は、システム構成情報161、情報遷移モデル162、攻撃シナリオ情報163、リスク評価情報164、技術情報165を含む。なお、技術情報165は主に第2、3の実施形態で使用される。
【0038】
以下、記憶部16に格納されている各情報について、処理プログラム群15の機能詳細と関連付けて説明する。
【0039】
システム構成情報161は、分析対象システムを構成する機器の情報であり、情報入力部151により、ユーザから入力される。
【0040】
図3に本実施形態におけるシステム構成情報161の一例を示す。システム構成情報161は、機器のID(Identifier)1611、名称1612、種類1613、OS1614、接続ネットワーク1615、セキュリティレベル1616、および重要度1617を含む。
【0041】
このうちID1611は、機器を一意に表す識別子である。また、名称1612は、機器の名称であり、
図3で示す例であれば、「ノートPC1」、「データサーバ1」、「監視PC1」、「PLC1」、及び「PLC2」となる。
【0042】
また、種類1613は、機器の種類であり、
図3で示す例であれば、「一般IT業務端末」、「制御監視端末」、「制御コントローラで」となる。
【0043】
OS1614は、各機器に搭載されているOSの情報であり、
図3に示す例であれば、「汎用OS」か「独自OS」となる。
【0044】
また、接続ネットワーク1615は、各機器が接続されるネットワークの情報であり、
図3の例であれば、「情報NW(NetWork)」、「制御NW」、および「インターネット
」の三つのネットワークがある。
【0045】
セキュリティレベル1616は、各機器のセキュリティレベル(セキュリティ対策のレベル)を示す。本実施形態におけるセキュリティレベル1616は、1~3の3段階となっている。セキュリティレベルの数値が高いほど、セキュリティ対策が十分に実施されていることを意味する。
【0046】
また、セキュリティレベル1616の値は、「定期的なパッチ適用をしているか」、「常に最新のウイルス対策ソフトがインストールされているか」等、あらかじめ設定したセキュリティポリシーを満たしているかを基準として設定してもよい。
【0047】
重要度1617は、分析対象システムにおける各機器の重要度を、セキュリティの機密性1617A、完全性1618B、可用性1619Cの3つの観点で評価した結果が示されている。
【0048】
本実施形態では、機密性1617A、完全性1618B、可用性1619Cは、High、Low、None、の3項目で評価されている。
【0049】
例えば、機密性1617Aに「High」という評価が与えられている場合は、該当機器がサイバー攻撃を受けて機密性が損なわれると、重大な情報漏洩に繋がるということを示す。
【0050】
また、機密性1617Aが「Low」であれば軽度な情報漏洩、「None」であれば情報漏洩には発展しないということを意味する。
【0051】
同様に、完全性1617Bについては、該当機器に対するサイバー攻撃時がどの程度重大な情報改ざんにつながるのか、可用性1617Cについては該当機器へのサイバー攻撃時がどの程度重大な業務停止につながるのかが適宜な知見ある者に評価され、その結果が格納される。
【0052】
また、機密性1617A、完全性1618B、可用性1619Cには、
図3で示したHigh、Low、Noneを使った定性的な評価ではなく、定量的な評価値を与える方式を採用してもよい。
【0053】
続いて、状態遷移モデルについて
図4に基づき説明する。状態遷移モデル162は、攻撃者がサイバー攻撃を施行する際の戦術レベルの状態遷移を示すものである。
【0054】
つまり、状態遷移モデルとは、攻撃者が各機器を攻撃するときの一連の行動(攻撃行動)の遷移を表したものである。状態遷移モデル162は、機器の種類ごとに異なり、個別に定義される。
【0055】
図4にて、状態遷移モデル162の一例を示す。状態遷移モデル162は、
図3で定義された機器の種類1613ごとに定義される。つまり、状態遷移モデル162は、
図3の機器の種類1613で予め定義された機器の種類からしか選択できないことを意味する。
【0056】
例えば、
図4で示す状態遷移モデルは、
図3の機器の種類1613で定義されている「一般IT業務端末」に適用可能な状態遷移モデル1621と、同様に「制御監視端末」に適用可能な状態遷移モデル1622、となっている。
【0057】
また、状態遷移モデル162では、所定の攻撃行動を経て各状態に攻撃者が達した際、対象となるシステムにおける機密性・完全性・可用性のどの要素が損害されるのかがあらかじめ定義されている。
【0058】
例えば、
図4では、攻撃者が「持ち出し」という状態に達した際に、一般IT業務端末の「機密性」が損害され、「応答制御」という状態に達した際に制御監視端末の「完全性」が損害され、「制御阻害」という状態に達した際に当該制御監視端末の「可用性」が損害されることを示している。
【0059】
なお、攻撃シナリオ情報163は、攻撃シナリオ生成部152で生成された攻撃シナリオの情報である。本発明における攻撃シナリオとは、前述の通り、攻撃者が標的とするシステムに侵入してから目的を達成するまでの一連の経路および攻撃行動を指す。
【0060】
攻撃者が最初にアクセスする機器は、情報入力部151でユーザが指定してもよいし、システム構成情報161の接続ネットワーク1615に入力された情報から自動で選定してもよい。例えば、インターネットに接続されている機器を攻撃の侵入口と設定する等、が考えられる。
【0061】
同様に、攻撃者が最終標的とする機器も、情報入力部151でユーザが指定してもよいし、システム構成情報161の重要度1617に入力された情報から自動で選定してもよい。例えば、可用性1617A・機密性1617B・可用性1617Cの全てが「High」と設定されている機器を攻撃の標的と設定する等、が考えられる。
【0062】
攻撃シナリオ分析装置10は、攻撃者の最初にアクセスする機器と最終標的とする機器が決まれば、攻撃経路はシステム構成情報161の接続ネットワーク1615の情報を基に、自動的に探索する。
【0063】
図5は、
図3で示されているシステム構成情報161をネットワーク構成図として示した図である。本実施形態では、攻撃者が最初にアクセスするものとして、インターネットに接続されているノートPC1、また、攻撃目標の機器として監視PC1を想定し、攻撃シナリオの生成方法を説明する。
【0064】
まず第一に、攻撃経路に関して、最短経路である「ノートPC1→監視PC1」を例として考える。この場合、攻撃シナリオ分析装置10は、ノートPC1と監視PC1において攻撃者が実施する行動について、当該機器に対応した
図4の状態遷移モデル162を参照することで、モデル化できる。
【0065】
図3のシステム構成情報161によると、ノートPC1の種類は「一般IT業務端末」であり、監視PC1の種類は「制御監視機器」である。
【0066】
そのため、攻撃シナリオ分析装置10は、ノートPC1上における攻撃者の行動を、
図4の一般IT業務端末の状態遷移モデル1621でモデル化できる。
【0067】
また攻撃シナリオ分析装置10は、監視PC1上における攻撃者の行動を、
図4の制御監視端末の状態遷移モデル1622でモデル化できる。そして、これらを組み合わせることで攻撃シナリオが生成できる。
【0068】
図6に、上記組み合わせから生成した攻撃シナリオの模式図を示す。攻撃者が状態を遷移する攻撃行動には一意の識別子である行動IDが割り当てられる。
図6における攻撃シナリオの場合は、1~11の行動IDが割り当てられている。
【0069】
また
図6では、行動IDとして「1」が割り当てられた行動を「行動1」と表示しており、行動IDが2~11の各行動についても同様の表示形式を採用する。
【0070】
図6の攻撃シナリオにおける経路は、「ノートPC1→監視PC1」で固定しているが、攻撃者の行動は次の4パターンが考えられる。
【0071】
[攻撃シナリオID:1]
行動1→行動2→行動6→行動7→行動8→行動9→行動10
【0072】
[攻撃シナリオID:2]
行動1→行動2→行動6→行動7→行動8→行動9→行動11
【0073】
[攻撃シナリオID:3]
行動1→行動2→行動3→行動4→行動5→行動7→行動8→行動9→行動10
【0074】
[攻撃シナリオID:4]
行動1→行動2→行動3→行動4→行動5→行動7→行動8→行動9→行動11
【0075】
それぞれの攻撃シナリオには、一意の識別子である攻撃シナリオIDが割り当てられる。
図7にて、例として、攻撃シナリオIDが1の攻撃シナリオの模式図を示す。
【0076】
攻撃シナリオ分析装置10においては、同じ攻撃経路である場合でも、攻撃者の状態遷移が異なる場合は、別々の攻撃シナリオとして認識される。つまり、「ノートPC1→監視PC1」という単一の攻撃経路に対して、状態遷移が4パターン存在するため、攻撃シナリオ生成部152では4つの個別の攻撃シナリオとして識別される。これらの攻撃シナリオは、割り当てられた攻撃シナリオIDとともに、攻撃シナリオ情報163として格納される。
【0077】
図8は、攻撃シナリオ情報163の一例であり、上記の攻撃シナリオIDが「1」、の攻撃シナリオの情報が格納されたテーブルの一例である。攻撃シナリオ情報163では、攻撃の順序を表す攻撃ステップ1631、行動ID1632、各行動IDの詳細1633、攻撃コスト1634、および被害影響度1635を対応付けて記憶する。攻撃コスト1634、被害影響度1635、合算値1636、総合リスク評価値1637については後述する。
【0078】
また、リスク評価情報164は、リスク評価部153で分析した、攻撃シナリオのリスクに関する情報が格納される。本発明におけるリスクの評価は、攻撃者と被害者の両視点から、攻撃者が状態を遷移する行動に対して行われる。
【0079】
攻撃者が状態を遷移する行動に着目することで、遷移前と遷移後の両方における攻撃者の状態を考慮したリスクの評価が可能になり、攻撃者の状態単体に対してリスクの評価を行う場合に比べて精度が向上する。
【0080】
本実施例では、攻撃者にとってのリスクを評価する指標として、例えば、「攻撃コスト」を採用する。攻撃コストとは、攻撃者がサイバー攻撃を実施する際に費やす労力を意味する。
【0081】
攻撃コストが高い場合、攻撃者にとってのリスクは増加するため、攻撃者はなるべく攻撃コストが低い攻撃シナリオを選択すると考えられる。そのため、攻撃コストが低い攻撃
シナリオに対しては、優先的に対策を実施する必要がある。
【0082】
攻撃コストは、前述の通り、攻撃者が状態を遷移する行動に対して算出される。攻撃コストの算出には、
図3のシステム構成情報161における機器の種類1613、OS1614、接続ネットワーク1615およびセキュリティレベル1616を活用してもよい。例えば、"侵入"した状態に遷移する行動を取る際、情報NWや制御NW等の社内ネットワークを介する場合はインターネットを介する場合と比べ、攻撃コストを高く算出することが考えられる。この評価方法に従うと、
図6の場合、同じ"侵入"した状態に遷移する行動1と行動7を比べた際、行動1よりも行動7の攻撃コストが高く算出される。
【0083】
攻撃者にとってのリスクを評価する指標としては、「攻撃コスト」以外にも、攻撃の難易度を示す「攻撃難易度」や攻撃が検知される可能性を示す「攻撃検知率」等、攻撃者にとってのリスクに関連する指標であればよく、これらを組み合わせて攻撃者にとってのリスクの評価値を算出してもよい。
【0084】
一方で、被害者にとってのリスクを評価する指標として、例えば、「被害影響度」を採用する。被害影響度とは、分析対象システムがサイバー攻撃を受けた際に被る被害影響を数値化した指標である。攻撃者はなるべく被害影響度が高い攻撃シナリオを実行すると考えられる。そのため、被害影響度が高い攻撃シナリオに対しては、優先的に対策を実施する必要がある。
【0085】
被害影響度も攻撃コストと同様に、攻撃者が状態を遷移する行動に対して算出される。被害影響度の算出には、
図3のシステム構成情報161における重要度1617の機密性1617A・完全性1617B・可用性1617Cを活用してもよい。
【0086】
例えば、
図6の攻撃シナリオの模式図では、攻撃者が行動4を実施するとノートPC1の機密性が損害される。ノートPC1の機密性1617Aには「Low」が割り当てられているので、攻撃者が行動4を実施すると、システムにとっては軽度な情報漏洩に繋がることを意味する。
【0087】
同様に、攻撃者が行動10を実施すると監視PC1の完全性が阻害される。監視PC1の完全性1617Cには「High」が割り当てられているので、攻撃者が行動10を実施すると、システムにとっては重大な情報の改ざんに繋がることを意味する。これらの被害影響度を数値化する際には、CVSS v3(Common Vulnerability Scoring System v3)における攻撃による影響を評価する項目を参考にしても良い。
【0088】
被害者にとってのリスクを評価する指標としては、「被害影響度」以外にも、想定される被害額を示す「想定被害額」等、被害者にとってのリスクに関連する指標であればよく、これらを組み合わせて被害者にとってのリスクの評価値を算出してもよい。
【0089】
図9にリスク評価情報164の一例を示す。本実施例では、攻撃者にとってのリスクの評価値である攻撃コスト1642と、被害者にとってのリスクの評価値である被害影響度1643が、行動ID1641に対応付けられている。
【0090】
こうしたリスク評価情報1642は、
図8の攻撃コスト1634と被害影響度1635にも入力される。
図6の攻撃シナリオ情報163における合算値1636には、攻撃シナリオ全体で攻撃コストと被害影響度を合算した値が設定される。
【0091】
また、総合リスク評価値1637には、被害影響度の合算値を攻撃コストの合算値で除算した値が格納される。つまり、総合リスク評価値が高い攻撃シナリオは、少ない攻撃コ
ストで大きな被害影響度を与えることができると解釈できる。
【0092】
本実施例では、総合リスク評価値1637の算出方法として上記のような単純な除算を採用したが、攻撃者および被害者にとってのリスクの評価値の両方を用いて導出した値であれば、計算方法は問わない。
【0093】
図10は、分析結果出力部154が攻撃シナリオ情報163を読み込み、攻撃シナリオ分析結果1540として入出力装置17に表示した一例を示した図である。攻撃シナリオ分析結果1540は、表1549、並び替えボタン1546、リスク評価方式変更ボタン1547、及び一括ファイル出力ボタン1548を含む。
【0094】
このうち表1549は、攻撃シナリオID1541、攻撃コスト1542、被害影響度1543、および総合リスク評価値1544を対応付けたものである。
【0095】
攻撃コスト1542と被害影響度1543には、
図8で算出した合算値1636が、総合リスク評価値1544には、
図8で算出した総合リスク評価値1637と同じ値が、対応する攻撃シナリオID1541に対して格納される。
【0096】
また、詳細表示ボタン1545の押下を受けて、攻撃シナリオ分析装置10は、該当する攻撃シナリオの詳細情報を、攻撃シナリオ情報163から呼び出し、ユーザに表示する。
【0097】
また、詳細表示ボタン1545の押下を受けて、攻撃シナリオ分析装置10は、
図7のような、該当する攻撃シナリオの模式図を表示するとしてもよい。或いは、
図8のような表形式の攻撃シナリオを表示するとしてもよい。
【0098】
また、並び替えボタン1546の押下を受けて、攻撃シナリオ分析装置10は、表1549の表示内容を、攻撃シナリオID1541、攻撃コスト1542、被害影響度1543、および総合リスク評価値1544の大小でソート、すなわち並び変える。
【0099】
ユーザによっては、総合リスク評価値1544ではなく、攻撃コスト1542もしくは被害影響度1543の一方を用いて、攻撃シナリオのリスクを評価することも考えられる。
【0100】
リスク評価方式変更ボタン1547の押下を受けて、攻撃シナリオ分析装置10は、攻撃者および被害者にとってのリスクの評価方式を変更する。例えば、攻撃者にとってのリスクの評価方式を、「攻撃コスト」から「攻撃検知率」に切り替えることが考えられる。
【0101】
また、一括ファイル出力ボタンの押下を受けて、攻撃シナリオ分析装置10は、表1549の表示内容、および詳細表示ボタン1545を押すことで得られる表示内容の、両方を一括してファイルで出力する。
【0102】
[第2の実施形態]
以下、本発明の第2の実施形態について、図面を用いて説明する。第1の実施形態では、
図6のように攻撃シナリオを生成する際、ある状態から次の状態に遷移する行動には単一の行動IDが割り当てられている。
【0103】
しかしながら、各行動を実現するための技術は多岐にわたる。ある状態から"侵入"した状態に遷移する行動を例に挙げると、本行動を実現するためには「標的型メールを介したマルウェア感染」や「リモートログインサービスの悪用」等の様々な技術が用いられる。
【0104】
本実施例では、上記の例のように採用する技術によって別々に攻撃シナリオを生成し、評価することを可能にする、攻撃シナリオ分析装置10について説明する。
【0105】
第2の実施形態に係る攻撃シナリオ分析装置10は、第1の実施形態に係る攻撃シナリオ分析装置の記憶部16に技術情報165を追加した構成となる。
【0106】
図11は、第2の実施形態に係る、攻撃シナリオ分析装置10による攻撃シナリオ分析方法のフロー例を示す図である。
【0107】
図11のフローにおける、ステップS11、S13、S14、S15は、
図1のフローにおける、ステップS1、S3、S4、S5とそれぞれ同様の処理となる。
【0108】
一方、ステップS12では、ステップS2と異なり、攻撃シナリオ分析装置10は、入力したシステム構成情報121を、機器の種類ごとに個別に定義された攻撃者の状態遷移モデル162、および技術情報165と網羅的に組み合わせることで、攻撃シナリオを自動生成する。
【0109】
図12は、技術情報165の一例を示す。技術情報165には、攻撃者が一連の攻撃シナリオの中で遷移する対象となる状態1652と、その状態遷移を実現するための技術1653の一覧が格納されている。
【0110】
それぞれの実現技術1653には、技術を一意に識別する技術ID1651と、当該技術を用いることの難易度を表す技術難易度1654、当該技術を用いた攻撃に要する労力を示す実施労力1655、攻撃が検知される可能性を表す攻撃検知率1656、当該技術を用いた攻撃による被害の影響度を示す被害影響度1657、及び当該技術を用いた攻撃による被害額度を示す想定被害額1658が定義されている。
【0111】
なお、
図12において、技術難易度1654、実施労力1655、攻撃検知率1656、被害影響度1657、及び想定被害額1658のそれぞれは、「High」、「Mid」、「Low」で評価しているが、定量的なスコアを与えてもよい。
【0112】
図13は、第2の実施形態で生成された攻撃シナリオを格納した攻撃シナリオ情報163Aの一例を表したものである。第2の実施形態の攻撃シナリオ生成部152では、行動IDと技術IDの全ての組み合わせに対して攻撃シナリオが生成され、攻撃シナリオ情報163Aに格納される。
【0113】
図13では、攻撃シナリオIDが「1」の攻撃シナリオの一例が表示されており、各攻撃ステップ1631Aに対応する行動ID1632Aと技術ID1638Aの組み合わせ、およびその詳細1633Aが対応付けられている。
【0114】
また、
図8と同じく、攻撃シナリオ分析装置10は、攻撃コスト1634Aと被害影響度1635Aも各攻撃ステップに対して算出し、それらの合算値1636Aを基にして、総合リスク評価値1637Aを算出する。
【0115】
第2の実施形態においては、攻撃コスト1634Aを算出する際は、
図3のシステム構成情報161における機器の種類1613、OS1614、接続ネットワーク1615、セキュリティレベル1616に加えて、
図12の技術難易度1654の評価を考慮にいれてもよい。
【0116】
例えば、"侵入"した状態に移る行動を取る際、技術難易度に「High」の評価が与えられている技術を用いる場合は、「Low」の評価が与えられている技術を用いる場合と比べて、攻撃コストを高く算出する、といった運用を想定する。
【0117】
最後に、分析結果出力部154が攻撃シナリオ情報163Aを読み込み、分析結果出力部154に出力することで、本実施例のサイバー攻撃シナリオ評価は完了する。
【0118】
[第3の実施形態]
以下、本発明の第3の実施形態について、図面を用いて説明する。第1および第2の実施形態における攻撃シナリオ分析措置では、全ての攻撃シナリオに対してリスクの評価値を計算し、ユーザに出力する方法を採用していた。一方で、本実施例では、強化学習を用いた分析により、攻撃者にとって最適な攻撃シナリオを抽出し、これをユーザに出力する攻撃シナリオ分析措置について説明する。
【0119】
第3の実施形態に係る攻撃シナリオ分析装置10は、第1の実施形態に係る攻撃シナリオ分析装置の処理プログラム群15に学習部155を、記憶部16に技術情報165を追加した構成となる。
【0120】
図14は、第3の実施形態に係る、攻撃シナリオ分析装置10による攻撃シナリオ分析方法のフロー例を示す図である。
図14のフローにおけるステップS111、S112、S113は、
図11のステップS11、S12、S13とそれぞれ同様の処理を実施する。
【0121】
ここで、ステップS114では、学習部155において、ステップ113で算出した各行動に対する攻撃者および被害者にとってのリスクの評価値を基に各行動の報酬を定義し、学習を繰り返す。
【0122】
上述の学習の手法は任意であり、例えば、強化学習の一つの手法であるQ学習(Q―Learning)を用いるとしてもよい。このQ学習においては、各状態において選択できる全ての行動に対して報酬が与えられ、行動価値関数Qが学習される。ステップS113では、各行動と技術の組み合わせに対して、攻撃者および被害者にとってのリスクの評価値が算出されている。
【0123】
本実施例をQ学習の枠組みに合わせるために、各行動と技術の組み合わせを改めて個別の行動として定義しなおしてもよい。例えば、行動IDがXXで技術IDがYYの組み合わせと、行動IDがXXで技術IDがZZの組み合わせは、異なる行動として扱い、それぞれの行動IDをXX-YYおよびXX-ZZと定義しなおすことが考えられる。
図15
には、
図13を上記で説明した行動IDに定義しなおした一例を示す。
【0124】
行動に対して与えられる報酬に関して、被害者にとってのリスクの評価値が高い行動には報酬を高く設定し、攻撃者にとってのリスクの評価値が高い行動には報酬を低く設定してもよい。
【0125】
ステップS115では、学習部155において、上述のステップS114で学習した行動価値関数Qが最大となる行動と技術の組み合わせを選択した攻撃シナリオを、攻撃者にとっての最適の攻撃シナリオとみなし、分析結果出力部154に出力する。これにより、本実施例のサイバー攻撃シナリオ評価は完了する。
【0126】
以上、本発明を実施するための最良の形態などについて具体的に説明したが、本発明はこれに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
【0127】
こうした本実施形態によれば、産業制御システムに対するサイバー攻撃について、攻撃者及び被害者の両視点からの効率的なリスク分析が可能となる。
【0128】
本明細書の記載により、少なくとも次のことが明らかにされる。すなわち、本実施形態の攻撃シナリオ分析装置において、前記記憶部は、前記システムを構成する機器の種類ごとに、前記状態遷移モデルを保持し、前記攻撃シナリオ生成部は、前記システムに含まれる各機器の種類に対応する状態遷移モデルを組み合わせることで、前記シナリオを複数生成するものである、としてもよい。
【0129】
これによれば、システムを構成する機器に関する情報が得られる場合に対応して、より高精度のシナリオ生成が可能となる。ひいては、産業制御システムに対するサイバー攻撃について、攻撃者及び被害者の両視点からのより効率的なリスク分析が可能となる。
【0130】
また、本実施形態の攻撃シナリオ分析装置において、前記記憶部は、前記攻撃行動に必要なコストの情報をさらに保持し、前記リスク評価部は、前記シナリオに関して、当該シナリオが含む前記攻撃行動それぞれの、攻撃に必要な労力、攻撃の難易度、及び攻撃が検知される可能性を表す攻撃検知率、の少なくともいずれかの観点でのコストを、前記コストの情報に基づき集計し、当該集計したコストを前記攻撃者にとっての前記リスクの評価値とするものである、としてもよい。
【0131】
これによれば、攻撃者側の視点でのコストについて、より精度良く勘案してリスク評価を行うことが可能となる。ひいては、産業制御システムに対するサイバー攻撃について、攻撃者及び被害者の両視点からのより効率的なリスク分析が可能となる。
【0132】
また、本実施形態の攻撃シナリオ分析装置において、前記記憶部は、前記攻撃行動による被害の情報をさらに保持し、前記リスク評価部は、前記シナリオに関して、当該シナリオが含む前記攻撃行動それぞれの、攻撃による被害の影響を表した被害影響度、及び攻撃により想定される被害額を表す想定被害額、の少なくともいずれかの観点でのコストを、前記被害の情報に基づき集計し、当該集計したコストを前記システムにとっての前記リスクの評価値とするものである、としてもよい。
【0133】
これによれば、被攻撃側である分析対象システムのコストについて、より精度良く勘案してリスク評価を行うことが可能となる。ひいては、産業制御システムに対するサイバー攻撃について、攻撃者及び被害者の両視点からのより効率的なリスク分析が可能となる。
【0134】
また、本実施形態の攻撃シナリオ分析装置において、前記システムを構成する機器の情報入力を受け付ける情報入力部を更に備えるとしてもよい。
【0135】
これによれば、シナリオ生成の精度を上げうる機器の情報を効率良く取得可能となる。ひいては、産業制御システムに対するサイバー攻撃について、攻撃者及び被害者の両視点からのより効率的なリスク分析が可能となる。
【0136】
また、本実施形態の攻撃シナリオ分析装置において、前記攻撃シナリオ生成部は、前記情報入力部で入力された前記システムの機器の重要度に関する情報に基づき、前記シナリオにおける、攻撃者が前記システムにおいて最初にアクセスする機器と最終標的とする機器を選定するものである、としてもよい。
【0137】
これによれば、シナリオにおける開始/終了の特定を精度良好に特定可能となる。ひいては、産業制御システムに対するサイバー攻撃について、攻撃者及び被害者の両視点から
のより効率的なリスク分析が可能となる。
【0138】
また、本実施形態の攻撃シナリオ分析装置において、前記攻撃シナリオ生成部で生成した各シナリオと、前記リスク評価部で各シナリオについて得られた前記評価値とを紐付けたシナリオ一覧を表示する分析結果出力部をさらに備える、としてもよい。
【0139】
これによれば、ユーザに対して各シナリオの特性がどのようなものか的確に提示可能となる。ひいては、産業制御システムに対するサイバー攻撃について、攻撃者及び被害者の両視点からのより効率的なリスク分析が可能となる。
【0140】
また、本実施形態の攻撃シナリオ分析装置において、前記記憶部は、前記コストの情報として、前記攻撃行動を実現する技術の情報をさらに保持し、前記攻撃シナリオ生成部は、前記技術の情報に基づいて、前記状態遷移モデルと、当該状態遷移モデルにおける攻撃行動の実現技術の情報とを組み合わせて、前記システムにおける前記シナリオを生成するものである、としてもよい。
【0141】
これによれば、シナリオを構成する攻撃行動のそれぞれについて技術的特徴や、それに基づくコスト(攻撃側と被害者側の双方)を踏まえた各種処理が可能となる。ひいては、産業制御システムに対するサイバー攻撃について、攻撃者及び被害者の両視点からのより効率的なリスク分析が可能となる。
【0142】
また、本実施形態の攻撃シナリオ分析装置において、前記リスクの評価値に基づき、攻撃者が状態を遷移する攻撃行動と前記技術の組み合わせに対して報酬を定義し、前記シナリオを強化学習する学習部をさらに備える、としてもよい。
【0143】
これによれば、あるシステムに関して得たシナリオを、類似の構成や特徴を有する他システムのシステムに展開するといった運用も可能となる。ひいては、産業制御システムに対するサイバー攻撃について、攻撃者及び被害者の両視点からのより効率的なリスク分析が可能となる。
【符号の説明】
【0144】
10 攻撃シナリオ分析装置
11 CPU
12 メモリ
13 入出力インターフェイス
14 記憶装置
15 処理プログラム群
151 情報入力部
152 攻撃シナリオ生成部
153 リスク評価部
154 分析結果出力部
155 学習部
16 記憶部
161 システム構成情報
162 状態遷移モデル
163 攻撃シナリオ情報
164 リスク評価情報
165 技術情報