(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-04
(45)【発行日】2024-09-12
(54)【発明の名称】サイバー攻撃シナリオ生成方法、および装置
(51)【国際特許分類】
G06F 21/57 20130101AFI20240905BHJP
【FI】
G06F21/57 370
(21)【出願番号】P 2020186445
(22)【出願日】2020-11-09
【審査請求日】2023-05-24
(73)【特許権者】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110000350
【氏名又は名称】ポレール弁理士法人
(72)【発明者】
【氏名】小倉 貴志
(72)【発明者】
【氏名】藤田 淳也
(72)【発明者】
【氏名】山田 勉
【審査官】行田 悦資
(56)【参考文献】
【文献】国際公開第2020/202809(WO,A1)
【文献】国際公開第2021/051047(WO,A1)
【文献】高橋 佑典 ほか,擬似的な標的型攻撃の実行に向けた攻撃シナリオ生成方式のアプローチ,電子情報通信学会技術研究報告,日本,一般社団法人電子情報通信学会,2019年07月16日,vol. 119, no. 140,pp.7-14
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/57
(57)【特許請求の範囲】
【請求項1】
コンピュータシステムに対するサイバー攻撃のシナリオを生成するシナリオ生成装置を用いたサイバー攻撃シナリオ生成方法において、
記憶装置から、前記コンピュータシステムの構成情報を読込み、
前記記憶装置から、前記サイバー攻撃を実行するための行動を示す攻撃戦術および当該攻撃戦術を実現する方法を示す攻撃技術が対応付けられた複数の攻撃戦術/技術情報を読込み、
読込まれた前記コンピュータシステムの構成情報に含まれる前記コンピュータシステムの構成要素のそれぞれに対して、前記記憶装置に記憶された前記サイバー攻撃における攻撃者の最終目標を示す脅威を評価し、
前記脅威に対する評価結果に基づき、前記構成要素および脅威を選択し、
前記コンピュータシステムの構成要素から前記サイバー攻撃の攻撃開始の構成要素を選択し、
前記複数の攻撃戦術/技術情報のそれぞれにおけるサイバー攻撃の有効性を評価し、
前記攻撃戦術/技術情報に対する評価結果を特定し、
前記攻撃戦術/技術情報に対する評価結果に基づき、前記攻撃戦術/技術情報の組合せを特定し、
特定された組合せで構成される
生成中の攻撃シナリオ
が選択された前記脅威の実現まで達したかを判定し、
前記生成中の攻撃シナリオが前記脅威の実現まで達した場合、想定されるすべての攻撃開始の構成要素に対する攻撃シナリオを生成するサイバー攻撃シナリオ生成方法。
【請求項2】
請求項1に記載のサイバー攻撃シナリオ生成方法において、
前記脅威に対する評価結果を示す脅威評価点を算出し、
前記攻撃戦術/技術情報に対する評価結果を示す技術評価点および戦術評価点に基づく評価点を算出し、
前記攻撃戦術/技術情報の組合せを、前記評価点に応じて特定し、
さらに、生成された前記攻撃シナリオを、当該攻撃シナリオに含まれる構成要素の技術評価点の合算で示される評価点合計を降順に並び替えて表示するサイバー攻撃シナリオ生成方法。
【請求項3】
請求項2に記載のサイバー攻撃シナリオ生成方法において、
前記サイバー攻撃の動向を解析し、
前記攻撃戦術/技術情報に対する評価および前記脅威に対する評価において、前記動向の解析結果を用いるサイバー攻撃シナリオ生成方法。
【請求項4】
請求項1に記載のサイバー攻撃シナリオ生成方法において、
前記攻撃戦術/技術情報を所定の基準により絞り込み処理を実行し、
前記攻撃戦術/技術情報の評価を、前記絞り込み処理を実行した前記攻撃戦術/技術情報に対して実行するサイバー攻撃シナリオ生成方法。
【請求項5】
請求項1に記載のサイバー攻撃シナリオ生成方法において、
複数の攻撃シナリオを生成し、
生成された複数のシナリオを、前記評価の結果に応じて出力するサイバー攻撃シナリオ生成方法。
【請求項6】
コンピュータシステムに対するサイバー攻撃のシナリオを生成するシナリオ生成装置において、
記憶装置から、
前記コンピュータシステムの構成情報を読込み、前記サイバー攻撃を実行するための行動を示す攻撃戦術および当該攻撃戦術を実現する方法を示す攻撃技術が対応付けられた複数の攻撃戦術/技術情報を読込む情報入力部と、
読込まれた前記コンピュータシステムの構成情報に含まれる前記コンピュータシステムの構成要素のそれぞれに対して、前記記憶装置に記憶された前記サイバー攻撃における攻撃者の最終目標を示す脅威を評価し、
前記脅威に対する評価結果に基づき、前記構成要素および脅威を選択するする脅威評価部と、
前記コンピュータシステムの構成要素から前記サイバー攻撃の攻撃開始の構成要素を選択し、
前記複数の攻撃戦術/技術情報のそれぞれにおけるサイバー攻撃の有効性を評価
し、前記攻撃戦術/技術情報に対する評価結果を特定する攻撃戦術/技術評価部と、
前記攻撃戦術/技術情報に対する評価結果に基づき、前記攻撃戦術/技術情報の組合せを特定し、
特定された組合せで構成される
生成中の攻撃シナリオ
が選択された前記脅威の実現まで達したかを判定し、
前記生成中の攻撃シナリオが前記脅威の実現まで達した場合、想定されるすべての攻撃開始の構成要素に対する攻撃シナリオを生成する攻撃戦術/技術組み合わせ決定部とを有するシナリオ生成装置。
【請求項7】
請求項6に記載のシナリオ生成装置において、
前記脅威評価部は、前記脅威に対する評価結果を示す脅威評価点を算出し、
前記攻撃戦術/技術評価部は、前記攻撃戦術/技術情報に対する評価結果を示す技術評価点および戦術評価点に基づく評価点を算出し、
前記攻撃戦術/技術組み合わせ決定部は、前記攻撃戦術/技術情報の組合せを、前記評価点に応じて特定し、
さらに、生成された前記攻撃シナリオを、当該攻撃シナリオに含まれる構成要素の技術評価点の合算で示される評価点合計を降順に並び替えて表示する攻撃シナリオ出力部を有するシナリオ生成装置。
【請求項8】
請求項7に記載のシナリオ生成装置において、
前記サイバー攻撃の動向を解析し、
前記攻撃戦術/技術情報に対する評価および前記脅威に対する評価において、前記動向の解析結果を用いるシナリオ生成装置。
【請求項9】
請求項6に記載のシナリオ生成装置において、
さらに、前記攻撃戦術/技術情報を所定の基準により絞り込み処理を実行する絞り込み部を有し、
前記攻撃戦術/技術組み合わせ決定部は、前記攻撃戦術/技術情報の評価を、前記絞り込み処理を実行した前記攻撃戦術/技術情報に対して実行するシナリオ生成装置。
【請求項10】
請求項6に記載のシナリオ生成装置において、
前記攻撃戦術/技術組み合わせ決定部は、複数の攻撃シナリオを生成し、
さらに、生成された複数のシナリオを、前記評価の結果に応じて出力する出力部を有するシナリオ生成装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、サイバー攻撃シナリオを生成するための技術に関する。
【背景技術】
【0002】
現在、不正アクセスなどのコンピュータシステム(以下、単にシステム)に対するサイバー攻撃は深刻な問題となっており、システムを安全に運用するうえでサイバー攻撃への対策は必須である。この対策を立案する際、攻撃者の動きを模擬したサイバー攻撃シナリオをベースとした対策の立案は、対策内容の洗い出しが可能である点や対策の優先順位付けが可能である点から有用である。
【0003】
このサイバー攻撃シナリオをベースとした対策立案を具体的な対策技術のレベルで行うためには、攻撃者の目的である「脅威」を与えるための攻撃者が使用する「攻撃戦術」や「攻撃技術」といった攻撃者の詳細な行動までを規定した攻撃シナリオが必要となる。この詳細なシナリオにより、攻撃戦術や攻撃技術に対応する具体的な対策技術レベルでの立案が可能となる。そのため、脅威を実現するための攻撃戦術や攻撃技術までを規定した攻撃シナリオを生成する方法、および、装置が必要である。
【0004】
上記の攻撃シナリオの生成方法に関する技術である特許文献1では、脅威についてシステム構成や脅威による被害等に基づき評価し、評価の高い脅威について攻撃戦術や攻撃技術までを規定した攻撃シナリオの生成を行っている。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、特許文献1の他の攻撃シナリオの生成方法では、脅威を実現するための攻撃者の戦術や技術の組み合わせは固定されており、対象システムや攻撃者の特性を考慮したより効果的な攻撃シナリオの生成が行えていない課題がある。
【0007】
そこで、本発明は、対象システムや攻撃者の特性により攻撃戦術や攻撃技術を評価し、その評価に基づき攻撃戦術や技術の組み合わせることで攻撃シナリオを生成することを目的とする。
【課題を解決するための手段】
【0008】
上記課題を解決するために、本発明は、対象とするシステムに対し脅威を与える攻撃に関し、システム構成情報に基づき、複数の攻撃戦術および攻撃技術の組み合わせである「攻撃シナリオ」を生成する。この際、攻撃戦術および攻撃技術の評価点に基づき、これらの組み合わせ、つまり、「攻撃シナリオ」を決定する。
【0009】
より詳細な本発明の構成は、コンピュータシステムに対するサイバー攻撃のシナリオを
生成するシナリオ生成装置を用いたサイバー攻撃シナリオ生成方法において、記憶装置から、前記コンピュータシステムの構成情報を読込み、前記記憶装置から、前記サイバー攻撃を実行するための行動を示す攻撃戦術および当該攻撃戦術を実現する方法を示す攻撃技術が対応付けられた複数の攻撃戦術/技術情報を読込み、読込まれた前記コンピュータシステムの構成情報に含まれる前記コンピュータシステムの構成要素のそれぞれに対して、前記記憶装置に記憶された前記サイバー攻撃における攻撃者の最終目標を示す脅威を評価し、前記脅威に対する評価結果に基づき、前記構成要素および脅威を選択し、前記コンピュータシステムの構成要素から前記サイバー攻撃の攻撃開始の構成要素を選択し、前記複数の攻撃戦術/技術情報のそれぞれにおけるサイバー攻撃の有効性を評価し、前記攻撃戦術/技術情報に対する評価結果を特定し、前記攻撃戦術/技術情報に対する評価結果に基づき、前記攻撃戦術/技術情報の組合せを特定し、特定された組合せで構成される生成中の攻撃シナリオが選択された前記脅威の実現まで達したかを判定し、前記生成中の攻撃シナリオが前記脅威の実現まで達した場合、想定されるすべての攻撃開始の構成要素に対する攻撃シナリオを生成するサイバー攻撃シナリオ生成方法である。
【0010】
また、本発明には、このサイバー攻撃シナリオ生成方法を実行するシナリオ生成装置が含まれる。さらに、サイバー攻撃シナリオ生成方法をコンピュータに実行させるためのコンピュータプログラムやこのコンピュータプログラムを格納した記憶媒体も含まれる。
【発明の効果】
【0011】
本発明によれば、対象のシステムや攻撃者の特性等に応じて攻撃戦術と攻撃技術レベルでの攻撃シナリオを柔軟に生成することが可能となる。
上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【0012】
【
図1】実施例1に係るシナリオ生成装置の機能構成の例を示す機能ブロック図である。
【
図2】実施例1~3に係るシナリオ生成装置のシステム構成図である。
【
図3A】実施例1~3で用いられるシステム構成情報の例を示す図である。
【
図3B】実施例1~3で用いられる経路情報の例を示す図である。
【
図4】実施例1~3で用いられる脅威情報例を示す図である。
【
図5】実施例1、2で用いられる攻撃戦術/技術情報の一例を示す図である。
【
図6】実施例1~3に係る攻撃シナリオ生成方法を説明するフローチャートの一例である。
【
図7】実施例1~3に係る
図6のステップS604の詳細を示すフローチャートの一例である。
【
図8】実施例1~3に係る攻撃対象のシステム構成の例を表す図である。
【
図9】実施例1~3に係る攻撃対象のシステム構成を抽象化したグラフ図の例である。
【
図10】実施例1、3に係る脅威情報の評価の一例を示す図である。
【
図11】実施例1に係る攻撃戦術/技術情報の評価の一例を示す図である。
【
図12】実施例1~3に係る攻撃シナリオ生成結果の表示の一例を示す図である。
【
図13】実施例1~3に係る生成した複数の攻撃シナリオの一例を示す図である。
【
図14】実施例1~3に係る生成した攻撃シナリオの画面表示の例を示す図である。
【
図15】実施例2に係るシナリオ生成装置の機能構成の例を示す機能ブロック図である。
【
図16】実施例2に係る動向解析情報の一例を示す図である。
【
図17】実施例2に係るに係る脅威評価情報の一例を示す図である。
【
図18】実施例2に係る攻撃戦術/技術評価情報の一例を示す図である。
【
図19】実施例2に係る生成された攻撃シナリオ生成結果の一例を示す図である。
【
図20】実施例3に係るシナリオ生成装置の機能構成の例を示す機能ブロック図である。
【
図21】実施例3で用いられる攻撃戦術/技術情報の一例を示す図である。
【
図22】実施例1~3における攻撃シナリオの概念を示す図である。
【発明を実施するための形態】
【0013】
以下、本発明の各実施例を、図面を用いて説明する。各実施例においては、
図8に示すような構成要素がそれぞれ接続されているシステムに対するサイバー攻撃の攻撃シナリオを生成する。なお、構成要素としては、ノートPC802等が挙げられるが、具体的なシステムの構成については、後述する。
【実施例1】
【0014】
以下、本発明の実施例1について図面を用いて説明する。
【0015】
図1は、本実施例態の攻撃シナリオを生成するシナリオ生成装置20の機能構成を示す機能ブロック図である。以下、各ブロック(機能)について説明する。攻撃対象のシステム構成記憶部102には、攻撃対象のシステム構成情報300が記憶されている。脅威情報記憶部103には、サイバー攻撃の脅威情報400が記憶されている。攻撃戦術/技術記憶部104には、脅威を実現するための攻撃戦術/技術情報500が記憶されている。これらシステム構成情報300、脅威情報400および攻撃戦術/技術情報500は情報入力部101から入力される。脅威評価部105では、攻撃対象のシステム構成記憶部102のシステム構成情報300と脅威情報記憶部103の脅威情報400を基に、各システム構成要素について各脅威にどれほどリスクがあるのかを評価する。このために、脅威評価部105では、例えばリスクを示す評価点を算出する。なお、本明細書では、評価点との表現を用いるが、評価の指標であればよく、評価値、評価指標などその表現は問わない。
【0016】
攻撃戦術/技術評価部106では、システム構成記憶部102、攻撃戦術/技術記憶部104および攻撃シナリオ生成の途中状態が記憶された攻撃戦術/技術組み合わせ記憶部108の情報を基に、評価点を算出する。この評価点は、各攻撃戦術/技術情報500における攻撃の有効性を示す。攻撃戦術/技術組み合わせ決定部107では、攻撃戦術/技術評価部106で算出した評価点に用い、攻撃シナリオを構成する攻撃戦術、および、技術の組み合わせを決定する。
【0017】
攻撃戦術/技術組み合わせ記憶部108では、攻撃シナリオ生成の途中状態、および、生成完了した攻撃シナリオが記憶されている。そして、攻撃シナリオ出力部109では、攻撃戦術/技術組み合わせ記憶部108に記憶された生成完了した攻撃シナリオを出力、および、表示する。なお、各記憶部や演算部は、CPUやPCそのものであることもある。
【0018】
以上のシナリオ生成装置20の機能構成をコンピュータで実現したシステム構成図を、
図2に示す。シナリオ生成装置20は、バスなどで互いに接続されたCPUのような処理部21、メモリ22、入出力I/F23で構成される。ここで、処理部21は、脅威評価部105、攻撃戦術/技術評価部106、攻撃戦術/技術組み合わせ決定部107、攻撃シナリオ出力部109、動向解析部1510を有しており、これらはプログラムで実現可能である。つまり、本実施例では、プログラムをメモリ22に展開し、これらの各機能、演算を処理部21で実行する。
【0019】
また、シナリオ生成装置20は、入出力I/F23を介して記憶装置24と接続する。記憶装置24は、システム構成情報300、脅威情報400、脅威評価情報1000、攻撃戦術/技術情報500、攻撃戦術/技術評価情報1100、攻撃戦術/技術組み合わせ情報1300、動向解析情報1600を記憶する。つまり、記憶装置24は、
図1のシステム構成記憶部102、脅威情報記憶部103、攻撃戦術/技術記憶部104として機能する。また、記憶装置24は、シナリオ生成装置20内部に設けてもよい。
【0020】
なお、動向解析部1510や動向解析情報1600は、実施例2で用いられる情報であり、本実施例では記憶装置24に格納されていなくともよい。さらに、後述する実施例2においては、記憶装置24に、攻撃戦術/技術評価情報1100の代わりに、脅威評価情報1700が記憶され、攻撃戦術/技術組み合わせ情報1300の代わりに、攻撃戦術/技術評価情報1800である。また、絞り込み部2001は、実施例3で用いられ、本実施例では使用されなくともよい。実施例3では、記憶装置24に、攻撃戦術/技術情報500の代わりに、攻撃戦術/技術情報2100が記憶される。
【0021】
また、シナリオ生成装置20は、入出力I/F23を介して、各種の端末装置26-1、2と接続する。端末装置26-1、2は、それぞれコンピュータで実現され、利用者からの入力を受け付けたり、シナリオ生成装置20の処理結果を表示したりする機能を有する。つまり、端末装置26-1、2は、
図1の情報入力部101、攻撃シナリオ出力部109として機能する。また、端末装置26-2は、ネットワーク25を介して、シナリオ生成装置20と接続する。なお、端末装置26-1、2は、シナリオ生成装置20と一体化してもよい。つまり、シナリオ生成装置20に表示装置や入出力装置を設けてもよい。本システムの一構成要素として構成する場合、ノートPC801、デスクトップPC802ないしデータサーバ803に、シナリオ生成装置20の機能を持たせる。
また、シナリオ生成装置20は、インターネット27と接続し、外部の情報を取得することも可能である。この一例として、検証対象のシステムがインターネット27を介して接続され、システムからシステム構成情報300を受信してもよい。
【0022】
図3Aは、システム構成記憶部102に記憶されているシステム構成情報300を示す図である。システム構成情報300は、攻撃対象のシステムを構成する各構成要素についての各種情報が含まれる。システム構成情報300は、構成要素ごとに、構成要素番号310、機器名称320、機器種類330、機器役割340、接続ネットワーク350、搭載OS3650、マルウェア対策370、権限管理380、物理アクセス390を対応付けた情報である。
【0023】
要素番号310は、システムの構成要素を一意に表す識別子である。機器名称320は、機器、つまり、構成要素の名称であり、
図3Aに示す例であれば、ノートPC1、デスクトップPC1、データサーバ1などがある。この他、機器には、スマートフォン、タブレット端末な度も含まれる。機器種類330は、機器、つまり、システムを構成する構成要素の種類を示す。
図3Aの例であれば、ノートPC、デスクトップPC、データサーバである。機器役割340は、機器が担う役割を示し、
図3Aの例であれば、データ閲覧、データ入力/編集、データ保存などである。接続ネットワーク350は、各構成要素が接続されているネットワークであり、
図3Aの例であれば、ネットワーク1、ネットワーク2の二つのネットワークがある。
【0024】
OS(基本ソフト)360は、各構成要素が搭載するOS(基本ソフト)の種類およびそのバージョンであり、
図3Aの例であれば、OS1 ver.1、OS1 ver.2、OS3などがある。マルウェア対策370は、各構成要素におけるマルウェアの対策の有無を示す。つまり、
図3Aの例であれば、ありの場合はそのシステムの構成要素は対策が施されている、なしの場合はその構成要素は未対策であることを示している。権限管理380は、各構成要素内での権限管理の有無を示し、
図3Aの例であれば、ありの場合は管理がされている、なしの場合は管理されていないことを示している。物理アクセス390は、該当危機に攻撃者が物理的に接触可能かを示し、
図3Aの例であれば、ノートPC1およびデスクトップPC1は接触可能であるが、データサーバ1は不可能であることを示している。
【0025】
ここで、機器役割340、OS(基本ソフト)360、マルウェア対策370、権限管理380および物理アクセス390は、サイバー攻撃に対する対策状況を示す情報である。このため、後述するように、脅威評価部105および攻撃戦術/技術評価部106は、各評価を行うステップS602やステップS703で、対策状況を示す情報を用いることになる。
【0026】
図4は、脅威情報記憶部103に記憶されている脅威情報400を示す図である。脅威情報400は、脅威ごとに境域死別番号410、脅威内容420を対応付けた情報である。脅威内容410は、攻撃者の目的を示すものである。
図4の例の場合、脅威内容410として、データを改ざんされる、データを盗取される、データ編集を不可能にされる、機器を破壊されるが含まれる。
【0027】
図5は、攻撃戦術/技術記憶部104に記憶されている攻撃戦術/技術情報500を示す図である。攻撃戦術/技術情報500は、攻撃戦術識別番号510、攻撃戦術名520、攻撃技術識別番号530、攻撃技術名540を情報である。攻撃戦術名は、想定する攻撃戦術、
図5の例の場合、初期侵入、攻撃コードの実行、権限昇格、他要素への移動、認証情報アクセス、情報収集、データ持出がある。攻撃技術名540は、攻撃戦術を実現する技術である。
図3Aの例の場合、以下の項目を有する。
・フィッシングメール。
・物理機器の接続。
・コマンドラインの利用やApplication Programing Interface(API)の利用
・バッファエラーの利用
・権限管理のバイパス。
・管理共有。
・遠隔ファイルコピー。
・総当たり攻撃やアカウントの操作。
・キーロギング。
・ローカルシステムのデータ。
・標準プロトコルでの通信利用。
・物理機器による持出。
【0028】
なお、システム構成情報300の代わりに、
図3Bに示す経路情報3000を用いてもよい。つまり、サイバー攻撃の侵入ルートを示す経路情報3000を用いることも可能である。経路情報3000は、この侵入ルート、つまり、経路を識別する経路番号3100ごとに、以下の項目を有する。つまり、侵入ルートの名称である経路名称3200および当該侵入ルートに存在する機器を特定する経路機器名3300を有する。このような経路情報3000を用いて、脅威評価部105や攻撃戦術/技術評価部106での評価処理を実行する。また、これらの評価処理では、システム構成情報300および経路情報3000の双方を用いてもよい。
【0029】
図6は、本実施例における攻撃シナリオ生成方法の全体フローである。以下、全体フリーについて、
図1に示す機能ブロックを用いて説明する。
【0030】
まず、ステップS601において、脅威評価部105は、システム構成記憶部102よりシステム構成情報300を読み込む。また、ステップS602において、脅威評価部105は、脅威情報記憶部103より脅威情報400を読み込み、各構成要素に対して各脅威情報400を評価する。この評価の際には、システム構成情報300の機器役割340等を基に、各脅威情報400のリスクを評価点として付与する。そして、ステップS603において、ステップS602での評価点に基づき、攻撃シナリオを生成する攻撃目標の構成要素と脅威情報400の組み合わせを選択する。
【0031】
このステップS603の選択方法としては、評価点の昇順に選択する方法や、評価点の閾値を定め閾値以上の評価点を持つ構成要素と脅威情報400の組み合わせを選択する方法などがある。後述の
図12に示す生成した攻撃シナリオ例では、評価点閾値を4と定めた例を示している。そして、ステップS604において、攻撃戦術/技術組み合わせ決定部107および攻撃戦術/技術評価部106は、ステップS603で選択した脅威情報400の脅威内容420を実現する攻撃戦術/技術情報500の組み合わせである攻撃シナリオを生成する。つまり、攻撃戦術/技術組み合わせ決定部107および攻撃戦術/技術評価部106が、攻撃シナリオ生成部として、機能できる。
【0032】
ここで、この攻撃シナリオの概念を、
図22に示す。
図22に示すように、攻撃シナリオは、複数の攻撃戦術/技術情報500、つまり、これらの組合せで構成される(
図22中では、攻撃戦術/技術情報500を攻撃戦術/技術と記載)。また、攻撃戦術/技術情報500は、攻撃戦術と攻撃技術が対応付けられた情報であって、その具体的な内容は
図5に示すとおりである。
【0033】
なお、攻撃シナリオの具体的な生成方法については、
図7を用いて後述する。最後に、ステップS605において、攻撃シナリオ出力部109は、生成されたシナリオを出力および表示する。
【0034】
図7は、ステップS604の詳細を示すフローチャートである。
まず、ステップS701において、攻撃戦術/技術評価部106は、攻撃戦術/技術記憶部104より、攻撃戦術/技術情報500を読み込む。そして、ステップS702において、攻撃開始の構成要素を選択する。そして、ステップS703において、読み込んだ攻撃戦術/技術情報500に対する評価点を算出する。
【0035】
次に、ステップS704において、攻撃戦術/技術組み合わせ決定部107は、評価点に基づき、攻撃戦術/技術情報500を選択する。例えば、評価点が所定値以上や評価点の所定数の上位のものを選択することが可能である。
【0036】
そして、ステップS705において、選択された攻撃戦術/技術情報500を攻撃戦術/技術組み合わせ記憶部108へ記憶する。なお、本ステップは省略し、ステップS704で選択された攻撃戦術/技術情報500を以降の処理で用いてもよい。
【0037】
次に、ステップS706において、生成中の攻撃シナリオが該当の脅威内容420の実現まで達したかを判定する。実現まで達していないと判定した場合には(ステップS706:No)、続く攻撃戦術/技術情報500を選択すべくステップS703に移行する。一方、脅威内容420の実現まで達したと場合には(ステップS604:Yes)、ステップS707へ移行する。そして、ステップS707において、ステップS603において選択された攻撃目標の構成要素と脅威情報400の組み合わせに対して、想定される各攻撃開始の構成要素に対して攻撃シナリオを生成したかを判定する。これまでに生成されたシナリオ群が、すべての攻撃開始の構成要素を含んでいない場合には(ステップS707:No)、ステップS702に移行し、生成されていない攻撃開始の構成要素を選択する。一方、すべて生成されていた場合(ステップS707:Yes)、攻撃シナリオの生成は終了する。
【0038】
次に、本実施例によるシナリオ生成方法の内容を、具体例を用いて説明する。まず、攻撃対象、つまり、危険度の評価対象となるシステム構成の具体例を、
図8に示す。このシステムは、構成要素として、ノートPC801、デスクトップPC802とデータサーバ803で構成されている。
【0039】
そして、各構成要素は、他の構成要素と、以下のように接続されている。ノートPC401は、デスクトップPC802とデータサーバ803と接続されている。デスクトップPC802は、ノートPC801とデータサーバ803と接続されている。データサーバ803は、ノートPC801とデスクトップPC802と接続されている。なお、以上の401から403は、
図3の要素番号310の1から5に対応している。
【0040】
また、シナリオ生成装置20は、本システムと接続してもよいし、本システムの一構成要素として実現してもよい。本システムの一構成要素として構成する場合、ノートPC801、デスクトップPC802ないしデータサーバ803に、シナリオ生成装置20の機能を持たせる。
【0041】
図9は、
図8の攻撃対象のシステム構成を抽象化したグラフ図である。つまり、
図9では、対象のシステムの各構成要素の接続状況を示すトポロジーを示している。
【0042】
図9において、構成要素番号1のノード901は、
図8のノートPC801に対応している。構成要素番号2のノード902は、
図8のノートPC802に対応している。構成要素番号3のノード903は、
図8のデータサーバ803に対応している。以降、
図9のグラフ図を用いて、本実施例のシナリオ生成方法の内容について説明する。
【0043】
図10は、ステップS602において、脅威評価部105で評価された脅威評価情報1000の一例を示している。
図10は、脅威識別番号1010、脅威内容1020、脅威評価点1030を対応付ける例である。
図10の例としては、評価対象の構成要素に、
図9におけるノード903のデータサーバ803を選択している。データサーバ803は、機器役割340としてデータ保存を担っているため、「データを改ざんされる」や「データを盗取される」リスクが高く、それらの脅威情報1010に高評価(高リスク)が付与されている。つまり、評価点が比較的高得点となっている。
【0044】
以下、ステップS604および
図7のフローを説明するため、ステップS603では、攻撃目標の構成要素を
図9におけるノード903、脅威情報1010の脅威内容1020として、脅威識別番号2「データを盗取される」を選択したとして説明する。
【0045】
図11は、上述の条件でステップS702において攻撃開始の構成要素が構成要素番号1のノートPCが選択された場合のステップS703における、攻撃戦術/技術評価部106で付与された攻撃戦術/技術評価情報1100を示す。
図11における、攻撃戦術/技術評価情報1100は、攻撃戦術識別番号1110、戦術評価点1120、攻撃技術識別番号1130、技術評価点1140を対応付けた例である。
図11は、本実施例において、攻撃シナリオの初期段階として行う攻撃戦術/技術情報500の選択を行う際の評価の例である。技術評価点の算出は、システム構成情報300や攻撃の段階に基づき行う。
【0046】
図11では、攻撃戦術「初期侵入」の攻撃技術「物理機器の接続」に最も高評価点が付いている。これは、攻撃の初期段階であり攻撃者の特性としてまず侵入(初期侵入)を試みる特性がある点、また、対象の構成要素がノートPCであるため物理機器の接続が容易である点に基づいている。本実施例では、戦術評価点1120は、対応する攻撃戦術の戦術評価点1120の合算によって付与しているが、本発明はこれに限定されるものではなく、対応する攻撃戦術の技術評価点1140の乗算や差分により付与することも可能である。または、技術評価点とは独立して付与することも可能である。この評価点を基に、攻撃戦術/技術情報500を選択し、組み合わせていくことで攻撃シナリオを生成する。本実施例では、選択の方法として該当段階における評価点の中で最大のものを選択する。
図11の例では、攻撃戦術「初期侵入」の攻撃技術「物理機器の接続」を選択する。
【0047】
ただし、攻撃戦術/技術情報500の選択方法は、本実施例で示す最大値の選択のみでなく、閾値以上の評価点を持つ攻撃戦術/技術情報500を選択する方法もある。この方法の場合には、同一の攻撃開始および目標構成要素に対する同一の脅威情報1010に関する攻撃シナリオであったとしても、攻撃戦術/技術情報500が異なる攻撃シナリオが生成されることとなる。
【0048】
また、評価点の算出を前段階までの評価点との加算や乗算、差分、または、平均値や中央値、相乗平均、対数平均などの代表値により算出する方法もある。戦術評価点1120が、技術評価点1140と独立して付与されていた場合には、まず、戦術評価点1120から攻撃戦術を選択し、選択された攻撃戦術中の攻撃技術から技術評価点1140を用いて、攻撃技術を選択する方法もある。
【0049】
図12は、攻撃シナリオ生成結果1200の一例を示す。
図12における、攻撃シナリオ生成結果1200は、生成した攻撃シナリオに対応する脅威情報を識別する脅威識別番号1210、攻撃される構成要素を示す攻撃構成要素1220、攻撃戦術1230、攻撃技術1240、技術評価点1250を対応付ける例である。本実施例では、各攻撃段階における攻撃戦術/技術評価情報1100から、最大の評価点を持つ攻撃戦術/技術情報500を選択している。
【0050】
図13は、生成した複数の攻撃シナリオの一例を示す。
図13は、攻撃シナリオとして、以下の項目を有する例である。
・攻撃シナリオが対応する脅威情報を識別する脅威識別番号1310。
・生成した攻撃シナリオを識別する攻撃シナリオ番号1320。
・攻撃される構成要素を示す攻撃構成要素1330。
・攻撃シナリオ中で使用される攻撃技術を示す攻撃技術1340。
・各シナリオの評価点の攻撃を示す評価点合計1350。
本実施例においては、
図13には評価点合計1350を示しており、シナリオDの評価点合計は、
図12の技術評価点1250を合算したものを示している。なお、
図13は評価点合計1350に限定されるものではなく、乗算値や平均値や中央値、相乗平均、対数平均などの代表値を用いてもよい。
【0051】
図14に、生成した攻撃シナリオの画面表示例1400を示す。この攻撃シナリオの画面表示例1400は、表1450を含む。そして、表1450は、脅威識別番号1410、シナリオ番号1420、攻撃構成要素1430、評価点合計1440を含む。また、攻撃シナリオを並べ替える、並べ替えボタン1401、画面に表示する攻撃シナリオを調整する、表示範囲切替ボタン1402、表1450をファイルとして出力する、ファイル出力ボタン1403を持つ。
図14の例では、評価点合計を降順に並び替え、表示範囲を攻撃構成要素1430に構成要素番号2を含まないものとしている。なお、並び替えの基準として、評価点合計だけでなく、脅威識別番号1410、シナリオ番号1420、攻撃構成要素1430の数などでも可能である。また、表1450に対応付けられていない、脅威評価点1030、各シナリオで使用されている攻撃技術1340の数によっても並べ替え可能である。表示範囲切替においても、脅威識別番号1410、シナリオ番号1420、評価点合計1440によっても範囲を切り替えることが可能である。また、表1450に対応付けられていない、各シナリオで使用されている攻撃戦術1230や攻撃技術1240によっても表示する攻撃シナリオの範囲を切り替えることが可能である。なお、本実施例では、
図14の表1400には評価点合計を示しているが、合計に限定されるものではなく、乗算値や平均値や中央値、相乗平均、対数平均などの代表値を用い、並べ替えや表示切替してもよい。
【0052】
以上で、本実施例の説明を完了する。本実施例の攻撃シナリオ生成方法によれば、構成要素危険度評価点の合算値を用いることで過程に対する攻撃が仕掛けられる可能性の高さを評価し、通過構成要素数による除算で攻撃の効率を評価する。このため、攻撃者の行動習癖に基づく攻撃シナリオの危険度評価が可能になる。
【実施例2】
【0053】
以下、本発明の実施例2について図面を用いて説明する。サイバー攻撃の戦術や技術は日進月歩であり、それらに対応した攻撃シナリオの生成方法が必要ある。また、対象とするシステムが関連する産業分野によっては攻撃者、または、攻撃グループがある程度特定されており、より効率的に対策を施策する上で、それらの情報を反映した攻撃シナリオの生成方法が必要となる。そのため、本実施例では、実施例1で述べた方法に、サイバー攻撃の動向解析の機能を追加した攻撃シナリオの生成方法について説明する。
【0054】
本実施例では、実施例1で述べた
図1の攻撃シナリオの生成装置に動向解析部1510と動向解析記憶部1502を追加した点が異なる。この本実施例におけるシナリオ生成装置20の機能構成の例を示す機能ブロック図を
図15に示す。
図15において、符号101~104、107~109は、
図1と同一のものである。動向解析部1510は
図2におけるシナリオ生成装置20に、動向解析記憶部1502は
図2における記憶装置24内の動向解析情報1600を有する。動向解析情報1600は、脅威評価部1520と攻撃戦術/技術評価部1530へ入力され、脅威情報ならびに攻撃戦術/技術情報500の評価に用いられる。
【0055】
図16は、動向解析情報1600の一例を示す図である。動向解析情報1600は、攻撃対象分野1610、攻撃グループ1620、脅威内容1630、使用攻撃技術1640、危険度1650を対応付けた情報である。脅威内容1630は、各グループが目的とする脅威の内容を示し、データを改ざんされる、データを盗取される、データ編集を不可能にされる、機器を破壊されるがあり。
図4の脅威内容420と対応付けられる。攻撃対象分野には、サイバー攻撃を受ける産業分野であり、金融や食品、製造がある。
【0056】
また、使用攻撃技術1640には、各グループが過去の攻撃で使用した実績のある攻撃技術である。そして、フィッシングメール、遠隔ファイルコピー、アカウント操作、標準プロトコルの通信利用、物理機器の接続、管理共有、APIの利用、コマンドライン利用、総当たり攻撃、キーロギングがあり、これらは
図5の攻撃技術名540と対応付けられる。危険度1650は、各攻撃グループがどれほどの技術を持ち、どれほどの影響を与えるかを高、中、低の三段階で評価したものである。
これらの情報は、過去の攻撃事例や最新の攻撃事例を解析することで得る。事例の情報の得る方法としては、インターネットからの情報の入手がある。または、これまでのセキュリティ対策の事例を用いることで得ることもできる。解析の方法としては、単純な統計処理を用いる方法から、機械学習・AIを用いる方法もある。
【0057】
本実施例における、攻撃シナリオ生成の全体フローは実施例1と同様で
図7に示す全体フローである。以下、動向解析情報1600からグループAを反映動向として選択した際の例を用いて、本実施例を説明する。
【0058】
図17に本実施例におけるステップS602において、脅威評価部1520で評価された脅威評価情報1700の一例を示す。
図17は、脅威識別番号1710、脅威内容1720、脅威評価点1730を対応付ける例である。
図17の例としては、評価対象の構成要素に、
図9におけるノード903のデータサーバ803を選択し、実施例1との違いとして、動向解析情報1600からグループAを脅威動向として選択している。データサーバ803は、機器役割340としてデータ保存を担っているため、「データを改ざんされる」や「データを盗取される」リスクが高く、それらの脅威情報に高評価(高リスク)が付与されている。さらに、動向解析情報1600において、グループAは「データを改ざんされる」脅威情報と対応付けられている、危険度1650が「高」のグループである。このために、脅威評価点1730では、元の4を3倍した12を脅威識別番号1の「データを改ざんされる」の脅威評価点としている。以下、ステップS604および
図7のフローを説明するため、ステップS603では、攻撃目標の構成要素を
図9におけるノード903、脅威情報400として脅威識別番号2「データが改ざんされる」を選択したとして説明する。なお、本実施例では、危険度1650が「高」であるため、3倍の評価を与える例を示したが、この倍数により動向の反映度を調整が可能である。また、乗算でなく加算や平均値、中央値、相乗平均、対数平均などの代表値により動向を反映する方法もある。
【0059】
図18は、上述の条件でステップS702において攻撃開始の構成要素が構成要素番号1のノートPCが選択された場合のステップS703における、攻撃戦術/技術評価部1530で付与された攻撃戦術/技術評価情報1800を示す。
図18における、攻撃戦術/技術評価情報1800は、攻撃戦術識別番号1810、戦術評価点1820、攻撃技術識別番号1830、技術評価点1840を対応付ける例である。
【0060】
図18は、本実施例において、攻撃シナリオの初期段階としての攻撃戦術/技術情報500の選択を行う際の評価の例である。技術評価点の算出は、システム構成情報300や攻撃の段階、および動向解析情報に基づき行う。
図18に示す例では、攻撃戦術「初期侵入」の攻撃技術「物理機器の接続」に最も高評価点が付いている。これは、攻撃の初期段階であり攻撃者の特性としてまず侵入(初期侵入)を試みる特性がある点、また、対象の構成要素がノートPCであるため物理機器の接続が容易である点に基づいている。
【0061】
さらに、動向解析情報1600において、選択されたグループAが使用攻撃技術1640で「フィッシングメール」、「遠隔ファイルコピー」を使用する危険度1650「高」のグループである。このため、実施例1と異なり技術評価点3倍している。なお、本実施例では、危険度1650が「高」であるため、3倍の評価を与える例を示したが、この倍数により動向の反映度を調整が可能である。また、乗算でなく加算や平均値、中央値、相乗平均、対数平均などの代表値により動向を反映する方法もある。
【0062】
本実施例においても、戦術評価点1820は、対応する攻撃戦術の戦術評価点1820の合算によって算出しているが、本発明はこれに限定されるものではなく、対応する攻撃戦術の技術評価点1840の乗算や差分により付与することも可能である。または、技術評価点とは独立して付与することも可能である。この評価点を基に、攻撃戦術/技術情報500を選択し、組み合わせていくことで攻撃シナリオを生成する。本実施例では、選択の方法として該当段階における評価点の中で最大のものを選択する。
図18の例では、攻撃戦術「初期侵入」の攻撃技術「物理機器の接続」を選択する。
【0063】
ただし、攻撃戦術/技術情報500の選択方法は、本実施例で示す最大値の選択のみでなく、閾値以上の評価点を持つ攻撃戦術/技術情報500を選択する方法もある。この方法の場合には、同一の攻撃開始および目標構成要素に対する同一の脅威に関する攻撃シナリオであったとしても、要素として含まれる攻撃戦術/技術情報500が異なる攻撃シナリオが生成されることとなる。また、評価点の算出を前段階までの評価点の加算や乗算、差分、または、平均値や中央値、相乗平均、対数平均などの代表値により算出する方法もある。戦術評価点1820が、技術評価点1840と独立して付与されていた場合には、まず、戦術評価点1820から攻撃戦術を選択し、選択された攻撃戦術中の攻撃技術から技術評価点1840を用いて、攻撃技術を選択する方法もある。
【0064】
図19は、攻撃シナリオ生成結果1900の一例を示す。
図19における、攻撃シナリオ生成結果1900は、生成した攻撃シナリオに対応する脅威を識別する脅威識別番号1910、攻撃される構成要素を示す攻撃構成要素1920、攻撃戦術1930、攻撃技術1940、技術評価点1950を対応付ける例である。本実施例では、各攻撃段階における攻撃戦術/技術評価情報1800から、最大の評価点を持つ攻撃戦術/技術情報500を選択している。
【0065】
本実施例における攻撃シナリオ出力部109の画面表示例は、実施例1の
図14と同様である。しかし、並べ替えや表示切替において、動向を反映した並べ替えや切替が可能となる。具体的な例では、並べ替えにおいて、複数のグループの動向を反映した攻撃シナリオを出力した際に、危険度1650によって攻撃シナリオを並べ替えることもできる。また、表示切替においても攻撃グループ1620や危険度1650を用いて表示内容を切り替えることが可能となる。
【実施例3】
【0066】
以下、本発明の実施例3について図面を用いて説明する。
【0067】
実施例1、2では攻撃技術を14個に絞って説明を行った。しかし、実際の攻撃技術の数は多量で、米国MITRE社が開発する攻撃技術をまとめたナレッジベースAdversarial Tactics、 Techniques、 and Common Knowledge:ATT&CK(R)(米国登録商標)には260以上の攻撃戦術が存在する。このため、今後の技術発展によりさらに攻撃技術の数が増大することは容易に想像できる。本発明では、攻撃技術の組み合わせによって攻撃シナリオを生成するため組合せ数、生成可能な攻撃シナリオ数の爆発が懸念される。そのため、組合せ数の爆発を低減するため、本実施例では、攻撃戦術/技術記憶部104に入力する時点で攻撃戦術/技術情報500を絞り込む機能を追加した攻撃シナリオ生成方法について説明する。
【0068】
本実施例では、実施例1で述べた
図1の攻撃シナリオの生成装置に情報入力部101からの情報を絞り込み部2001で絞り込み、攻撃戦術/技術記憶部104へ記憶させる点が異なる。
図20に、本実施例のシナリオ生成装置20の機能構成の例を示す機能ブロック図を示す。
図20において、符号101~109は、
図1と同一のものである。
絞り込みの具体的な方法について、
図21を用いて説明する。
図21は、システム構成情報300を基に、
図8におけるデータサーバ1に対して絞り込みを行った際の、攻撃戦術/技術記憶部104に記憶されている攻撃戦術/技術情報2100を示す図である。攻撃戦術/技術情報2100は、攻撃戦術識別番号2110、攻撃戦術名2120、攻撃技術識別番号2130、攻撃技術名2140を情報である。攻撃戦術名は、想定する攻撃戦術であり、
図21の例の場合、初期侵入、攻撃コードの実行、権限昇格、他要素への移動、認証情報アクセス、情報収集、データ持出がある。攻撃技術名2140は、攻撃戦術を実現する技術であり、
図3の例の場合、攻撃技術名2140として、以下の項目が含まれる。
・フィッシングメール。
・コマンドラインの利用やApplication Programing Interface(API)の利用。
・バッファエラーの利用。
・権限管理のバイパス。
・管理共有。
・遠隔ファイルコピー。
・総当たり攻撃やアカウントの操作。
・キーロギング。
・ローカルシステムのデータ
・標準プロトコルでの通信利用。
【0069】
図5の攻撃戦術/技術情報500と異なる点は、攻撃技術に「物理機器の接続」、「物理機器による持出」が含まれていない点である。これは、
図3のシステム構成情報300の物理アクセス390を参照し、データサーバ1は物理アクセスが不可能である。このため、物理的な機器の接続が必要な「物理機器の接続」、「物理機器による持出」は実現不可能な攻撃技術であると判断し、攻撃戦術/技術記憶部104には記憶しない絞り込みを行った例である。このように、攻撃シナリオを生成する際の候補となる攻撃技術を絞り込むことで、評価に必要な時間、組合せ数を現状させることができる。なお、本実施例では、データサーバ1と単一の構成要素に対する絞り込みについて説明したが、システム全体の特徴を抽出し、その特徴から絞り込みを図る方法もある。具体的なシステム全体の特徴としては、OS(基本ソフト)360が同一や物理アクセス390がすべての構成要素で困難または容易であるなどがある。また、システム構成情報のみでなく、実施例2で示した動向解析の結果を用いて絞り込んでもよい。具体的には、攻撃対象分野1610や危険度1650により単一または複数の攻撃グループを選択し、それらの使用攻撃技術1640での絞り込みを行ってもよい。このように、本実施例では、所定の基準に従って絞り込みを行う。
【0070】
以上で、本発明の実施形態についての説明を終了する。なお、本発明は上記した実施形態に限定されるものではなく、様々な変形例が含まれる。上記の実施形態は本発明を分かりやすく説明するために詳細に説明したものである。このため、例えば、各記憶部に記憶されている情報の内容、構成要素毎の構成要素危険度評価点の付与処理、攻撃シナリオの抽出結果、評価結果等、必ずしも説明した全ての構成、処理、情報、数値、に限定されるものではない。
【0071】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、
図19に示すように処理部11がそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に記憶することができる。
【符号の説明】
【0072】
102…システム構成記憶部
103…脅威情報記憶部
104…攻撃戦術/技術記憶部
105…脅威評価部
106…攻撃戦術/技術評価部
107…攻撃戦術/技術組み合わせ決定部
108…攻撃戦術/技術組み合わせ記憶部
109…攻撃シナリオ出力部
300…システム構成情報
400…脅威情報
500…攻撃戦術/技術情報
1200…攻撃シナリオ生成結果
1400…攻撃シナリオ生成結果の表示例