JP7384743B2 - 攻撃シナリオの危険度評価装置およびその方法 - Google Patents

攻撃シナリオの危険度評価装置およびその方法 Download PDF

Info

Publication number
JP7384743B2
JP7384743B2 JP2020084410A JP2020084410A JP7384743B2 JP 7384743 B2 JP7384743 B2 JP 7384743B2 JP 2020084410 A JP2020084410 A JP 2020084410A JP 2020084410 A JP2020084410 A JP 2020084410A JP 7384743 B2 JP7384743 B2 JP 7384743B2
Authority
JP
Japan
Prior art keywords
risk
attack
scenario
component
calculation unit
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
JP2020084410A
Other languages
English (en)
Other versions
JP2021179777A (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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2020084410A priority Critical patent/JP7384743B2/ja
Publication of JP2021179777A publication Critical patent/JP2021179777A/ja
Application granted granted Critical
Publication of JP7384743B2 publication Critical patent/JP7384743B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Storage Device Security (AREA)

Description

本発明は、サイバー攻撃シナリオの危険度を評価するための技術に関する。
現在、不正アクセスなどのシステムに対するサイバー攻撃は深刻な問題となっている。システムは、互いに接続される複数の構成要素により構成されている。このため、サイバー攻撃については、最終目標となる構成要素やそこへ至る経路を含む行動パターンにより、その内容を特定することができる。そこで、サイバー攻撃への対策において、攻撃者の最終目標やその目標に至るまでの行動パターンを規定した攻撃シナリオを利用することで、対策箇所や内容の具体化が可能となる。その際、より有効な対策を行うためには、攻撃者が実際に仕掛けてくる可能性や攻撃された際の影響の観点から、防御者にとって危険度の高いと判断された攻撃シナリオを対策に利用する必要がある。そのため、各攻撃シナリオの危険度で評価を行う方法、および、装置が必要である。
シナリオの危険度を評価する技術である特許文献1では、攻撃者が最終目標に至った際の攻撃対象システムの状態により攻撃シナリオの危険度を評価している。
特許第6106767号公報
しかしながら、特許文献1を含め、一般の攻撃シナリオの危険度評価方法では、最終目標に至る攻撃の過程を考慮することができておらず、攻撃が仕掛けられる可能性の高い過程とその効率性といった攻撃者の行動習癖が反映されない課題がある。
そこで、本発明は、攻撃者が最終目標に至るまでの過程とその効率を含めた攻撃シナリオの危険度評価方法を提供する。
上記課題を解決するために、本発明は、複数の構成要素からなるシステムに対するサイバー攻撃の危険度の評価において、攻撃対象を構成する構成要素と少なくともその攻撃順序や通過構成要素数が規定された攻撃シナリオを生成し、作成された攻撃シナリオに含まれる構成要素毎の危険度評価点の合算値に基づいて、危険度を評価する。
より具体的には、複数の構成要素からなるシステムに対するサイバー攻撃シナリオの危険度を評価するための攻撃シナリオの危険度評価装置において、前記システムの構成を示すシステム構成情報を記憶するシステム構成情報記憶部と、前記システム構成情報を用いて、前記複数の構成要素の少なくとも一部を含む攻撃順序を示すサイバー攻撃の攻撃シナリオを生成する攻撃シナリオ演算部と、生成された前記攻撃シナリオに含まれる各構成要素の危険度を示す構成要素危険評価点を、攻撃シナリオ毎に合算して、危険度合算値を算出する危険度合算値演算部と、前記危険度合算値に基づいて、シナリオ毎の危険度を示すシナリオ危険度評価点を算出するシナリオ危険度評価点演算部とを有し、前記シナリオ危険度評価点演算部は、前記危険度合算値を、該当する攻撃シナリオの攻撃順序に含まれる構成要素の数で除算する除算値演算部である攻撃シナリオの危険度評価装置であるまた、本発明には、複数の構成要素からなるシステムに対するサイバー攻撃シナリオの危険度を評価するためのコンピュータである攻撃シナリオの危険度評価装置において、前記システムの構成を示すシステム構成情報を記憶するシステム構成情報記憶部と、前記システム構成情報を用いて、前記複数の構成要素の少なくとも一部を含む攻撃順序を示すサイバー攻撃の攻撃シナリオを生成する攻撃シナリオ演算部と、生成された前記攻撃シナリオに含まれる各構成要素の危険度を示す構成要素危険評価点を、攻撃シナリオ毎に合算して、危険度合算値を算出する危険度合算値演算部と、前記危険度合算値に基づいて、シナリオ毎の危険度を示すシナリオ危険度評価点を算出するシナリオ危険度評価点演算部とを有し、前記シナリオ危険度評価点演算部は、前記危険度合算値を、該当する攻撃シナリオの攻撃順序に含まれる構成要素遷移の回数で除算する除算値演算部であることを特徴とする攻撃シナリオの危険度評価装置も含まれる。
また、本発明には、この攻撃シナリオの危険度評価装置を用いた方法や、攻撃シナリオの危険度評価装置をコンピュータとして機能させるためのプログラム製品も含まれる。
この発明によれば、構成要素毎の構成要素危険度評価点の合算値を用いることで過程に対する攻撃が仕掛けられる可能性の高さを評価することが可能になる。
上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
実施例1に係る攻撃シナリオの危険度評価装置の機能構成の例を示す機能ブロック図である。 実施例1~3で用いられるシステム構成情報の例を示す図である。 実施例1~3で用いられる攻撃内容情報例を示す図のである。 実施例1~3での攻撃対象のシステム構成の例を表す図である。 実施例1に係る危険度評価方法を説明するフローチャートの一例である。 実施例1に係る図5のステップS502の構成要素危険度評価点の付与を説明するフローチャートの一例である。 実施例1に係る攻撃対象のシステム構成を抽象化したグラフ図の例である。 実施例1に係る構成要素危険度評価点の一例を示す図である。 実施例1に係る攻撃シナリオの一例を示す図である。 実施例1に係る図5のステップS505のシナリオ危険度評価点の付与を説明するフローチャートの一例である。 実施例1に係るシナリオ危険度評価点の例を示す図である。 実施例1に係るシナリオ危険度評価点を含む危険度評価結果の画面表示の例を示す図である。 実施例2に係る攻撃シナリオの危険度評価装置の機能構成の例を示す機能ブロック図である。 実施例2に係る脆弱性情報の一例を示す図である。 実施例2に係る図5のステップS502の構成要素危険度評価点の付与を説明するフローチャートの一例である。 実施例2に係る構成要素危険度評価点の一例を示す図である。 実施例3に係る攻撃シナリオの一例を示す図である。 実施例3に係る図5のステップS505のシナリオ危険度評価点の付与を説明するフローチャートの一例である。 各実施例に係る攻撃シナリオの危険度評価装置のシステム構成図である。
以下、本発明の各実施例を、図面を用いて説明する。各実施例においては、図4に示すような複数の構成要素がそれぞれ接続されているシステムに対するサイバー攻撃の危険度を評価する。なお、構成要素としては、ノートPC401等が挙げられるが、具体的なシステムの構成については、後述する。
以下、本発明の実施例1について図面を用いて説明する。
図1は、本実施例態の攻撃シナリオの危険度評価装置10の機能構成を示す機能ブロック図である。以下、各ブロック(機能)について説明する。攻撃対象のシステム構成記憶部101には、攻撃対象のシステム構成情報200が記憶されている。サイバー攻撃方法記憶部102には、サイバー攻撃技術やそれを実現する方法を示す攻撃内容情報300が記憶されている。攻撃シナリオ演算部103では、攻撃対象のシステム構成記憶部101のシステム構成情報200を基に、攻撃対象である構成要素とその攻撃順序と、当該攻撃順序に含まれる通過構成要素数が規定された攻撃シナリオを生成する。攻撃順序に含まれるとは、当該攻撃シナリオで通過することを意味する。攻撃シナリオ演算部103で生成された攻撃シナリオ900は、攻撃シナリオ記憶部104に記憶される。
構成要素危険度演算部105では、システム構成記憶部101、および、サイバー攻撃方法記憶部102の情報を基に、構成要素毎の構成要素危険度評価点を算出する。危険度合算値演算部106では、システム構成要素危険度演算部105で算出した構成要素毎の危険度を用い、攻撃シナリオ記憶部104に記憶された各攻撃シナリオに含まれる構成要素毎の構成要素危険度評価点の合算値を算出する。
除算値演算部107では、危険度合算値演算部106で算出した危険度合算値を攻撃シナリオ記憶部104に記憶した攻撃順序に含まれる通過構成要素数での除算値を算出する。そして、表示部108では、除算値演算部107で算出した除算値を攻撃シナリオの危険度を示すシナリオ危険度評価点として表示する。なお、各記憶部や演算部は、CPUやPCそのものであることもある。
なお、本実施例では、除算値をシナリオ危険度評価点として用いているが、これに限定されない。つまり、除算値演算部107にて、合算値に基づいてシナリオ危険度評価点を特定できればよい。つまり、除算値は、シナリオ危険度評価点の一例である。シナリオ危険度評価点としては、他に、合算値そのもの、各構成要素危険度評価点の中央値、相乗平均、対数平均などの代表値が含まれる。
さらに、危険度合算値演算部106での構成要素危険度評価点の合算には、加算の他、乗算など、個々の構成要素危険度評価点からシナリオ全体に対する総合的な数値を算出することも含まれる。
また、合算値および除算値の利用の他、シナリオ毎の構成要素危険度評価点の最頻値、最大値などを、シナリオ危険度評価点として用いてもよい。
以上の危険度評価装置10の機能構成をコンピュータで実現したシステム構成を、図19に示す。危険度評価装置10は、バスなどで互いに接続されたCPUのような処理部11、メモリ12、入出力I/F13で構成される。ここで、処理部11は、攻撃シナリオ演算部103、構成要素危険度演算部105、危険度合算値演算部106、除算値演算部107を有しており、これらはプログラムで実現可能である。つまり、本実施例では、プログラムをメモリ12に展開し、これらの各機能、演算を処理部11で実行する。
また、危険度評価装置10は、入出力I/F13を介して記憶装置14と接続する。記憶装置14は、システム構成情報200、攻撃内容情報300、攻撃シナリオ900および脆弱性情報1400を記憶する。つまり、記憶装置14は、図1のシステム構成記憶部101、サイバー攻撃方法記憶部102、攻撃シナリオ記憶部104として機能する。さらに、記憶装置14には、危険度評価装置10で算出された構成要素危険度評価点情報800およびシナリオ危険度評価点情報1100も記憶する。また、記憶装置14は、危険度評価装置10内部に設けてもよい。
なお、脆弱性情報1400は、実施例2で用いられる情報であり、本実施例では記憶装置14に格納されていなくともよい。さらに、後述する実施例2においては、記憶装置14に、構成要素危険度評価点情報800の代わりに、構成要素危険度評価点情報1600が記憶される。また、記憶装置14に、攻撃シナリオ900の代わりに、攻撃シナリオ1700が記憶される。
また、危険度評価装置10は、入出力I/F13を介して、各種端末装置16-1、2と接続する。端末装置16-1、2は、それぞれコンピュータで実現され、利用者からの入力を受け付けたり、危険度評価装置10の処理結果を表示する機能を有する。つまり、端末装置16-1、2は、図1の表示部108として機能する。また、端末装置16-2は、ネットワーク15を介して、危険度評価装置10と接続する。なお、端末装置16-1、2は、危険度評価装置10と一体化してもよい。つまり、危険度評価装置10に表示装置や入出力装置を設けてもよい。
図2は、システム構成記憶部101に記憶されているシステム構成情報200を示す図である。システム構成情報200は、攻撃対象のシステムを構成する各構成要素についての各種情報が含まれる。システム構成情報200は、構成要素ごとに、構成要素番号210、機器名称220、機器種類230、接続ネットワーク240、搭載OS250、マルウェア対策260、権限管理270を対応付けた情報である。
要素番号210は、システムの構成要素を一意に表す識別子である。機器名称220は、機器、つまり、構成要素の名称であり、図2に示す例であれば、ノートPC1、ノートPC2、デスクトップPC1、デスクトップPC2、データサーバ1などがある。機器種類230は、機器、つまり、システムを構成する構成要素の種類を示す。図2の例であれば、ノートPC、デスクトップPC、データサーバである。接続ネットワーク240は、各構成要素が接続されているネットワークであり、図2の例であれば、ネットワーク1、ネットワーク2の二つのネットワークがある。
OS(基本ソフト)250は、各構成要素が搭載するOS(基本ソフト)の種類およびそのバージョンであり、図2の例であれば、OS1 ver.1、OS1 ver.2、OS2 ver.1、 OS3などがある。マルウェア対策260は、各構成要素におけるマルウェアの対策の有無を示す。つまり、図2の例であれば、ありの場合はそのシステムの構成要素は対策が施されている、なしの場合はその構成要素は未対策であることを示している。権限管理270は、各構成要素内での権限管理の有無を示し、図2の例であれば、ありの場合は管理がされている、なしの場合は管理されていないことを示している。
ここで、OS(基本ソフト)250、マルウェア対策260および権限管理270は、サイバー攻撃に対する対策状況を示す情報である。このため、後述するように、構成要素危険度演算部105は、構成要素危険度評価点の算出処理(ステップS502)で、対策状況を示す情報を用いることになる。
図3は、サイバー攻撃方法記憶部102に記憶されている攻撃内容情報300を示す図である。攻撃内容情報300は、目的310、技術320、攻撃方法330を対応づけた情報である。目的310は、想定する攻撃の目的であり、図3の例の場合、攻撃コードの実行、他要素への移動、認証情報アクセスがある。技術320は、目的310を達成するための技術である。図3の例の場合、コマンドラインの利用やApplication Programing Interface(API)の利用、管理共有、遠隔ファイルコピー、総当たり攻撃やアカウントの操作が含まれる。攻撃方法330は、技術320を実現するための方法であり、図3の例の場合、コマンド、マルウェア、ツールなどが含まれる。
次に、本実施例による危険度評価の内容を、具体例を用いて説明する。まず、攻撃対象、つまり、危険度の評価対象となるシステム構成の具体例を、図4に示す。このシステムは、構成要素として、ノートPC401、ノートPC402、デスクトップPC403、デスクトップPC404とデータサーバ405、スイッチ406、スイッチ407で構成されている。
そして、各構成要素は、他の構成要素と、以下のように接続されている。ノートPC401は、ノートPC402とデスクトップPC403とデスクトップPC404とスイッチ406と接続されている。ノートPC402は、ノートPC401とデスクトップPC403とデスクトップPC404、スイッチ406と接続されている。デスクトップPC403は、ノートPC401とノートPC402とデスクトップPC404とデータサーバ405とスイッチ406とスイッチ407と接続されている。デスクトップPC404は、ノートPC401とノートPC402とデスクトップPC403とデータサーバ405とスイッチ406とスイッチ407と接続されている。データサーバ405は、デスクトップPC404とデスクトップPC405とスイッチ407と接続されている。
なお、以上の401から405は、図2の要素番号210の1から5に対応している。スイッチ406は、ノートPC401とノートPC402とデスクトップPC403とデスクトップPC404と接続されている。スイッチ407は、デスクトップPC403とデスクトップPC404とデータサーバ405と接続されている。
また、危険度評価装置10は、本システムと接続してもよいし、本システムの一構成要素として実現してもよい。
図5は、本実施例における危険度評価方法の全体フローである。以下、全体フローについて、図1に示す機能ブロック図も用いて説明する。
まず、ステップS501において、攻撃シナリオ演算部103は、システム構成記憶部101より、システム構成情報200を読み込む。そして、ステップS502において、構成要素危険度演算部105は、システムの構成要素危険度評価点を付与する。このステップS502の詳細について、図6を参照して説明する。
図6は、構成要素危険度評価点を付与するフローを示すフローチャートである。まず、ステップS601において、構成要素危険度演算部105は、攻撃内容情報300に含まれる攻撃方法330をサイバー攻撃方法記憶部102より読み込む。
そして、ステップS602において、構成要素危険度演算部105は、攻撃対象のシステムを構成する構成要素の内、構成要素危険度評価点を付与する構成要素を選定する。ここで、攻撃シナリオ演算部103は、予め定められた基準に従った選定の他、利用者からの指定、乱数の利用で選定してもよい。なお、予め定められた基準としては、構成要素の重要性、攻撃に対する耐性などの性質、攻撃履歴を用いることが可能である。
そして、ステップS603において、構成要素危険度演算部105は、選定した各構成要素に対して、有効なサイバー攻撃方法の数に基づき、その構成要素の構成要素危険度評価点として付与する。つまり、構成要素危険度演算部105は、各構成要素の構成要素危険度評価点を算出する。
そして、ステップS604において、構成要素危険度演算部105は、選定した構成要素に対して構成要素危険度評価点を付与したか否かを判定する。選定した各構成要素に対して、構成要素危険度評価点を付与していないと判定した場合には(ステップS640:No)、次の構成要素に付与すべくステップS602に移行する。一方、選定した各構成要素に対して構成要素危険度評価点を付与したと判定した場合には(ステップS604:Yes)、構成要素危険度評価点の付与は終了する。
ここで、図6での構成要素危険度評価点の付与の一具体例を、説明する。
まず、ステップS601において、構成要素危険度演算部105は、攻撃内容情報300の攻撃方法330を読み込む。つまり、図3に示されるコマンド1、ツール1、マルウェア1などを特定する。
次のステップS602について、図7を参照して説明する。図7は、図4の攻撃対象のシステム構成を抽象化したグラフ図である。つまり、図7では、対象のシステムの各構成要素の接続状況を示すトポロジーを示している。
図7において、構成要素番号1のノード701は、図4のノートPC401に対応している。構成要素番号2のノード702は、図4のノートPC402に対応している。構成要素番号3のノード703は、図4のデスクトップPC403に対応している。構成要素番号4のノード704は、図4のデスクトップPC404に対応している。構成要素番号5のノード705は、図4のデータサーバ405に対応している。なお、本実施形態では、図4のスイッチ406、および、スイッチ407は、図7には含めていない。
つまり、構成要素危険度演算部105は、以下の処理を行う。ステップS602において、構成要素危険度演算部105は、ノートPC401、ノートPC402、デスクトップPC403、デスクトップPC404、データサーバ405を選定する。そして、構成要素危険度演算部105は、これらの接続関係を加味して、図7に示すトポロジーを生成する。このために、構成要素危険度演算部105は、トポロジーで示される各構成要素を、ノード701(構成要素番号1)のように、名付ける。
次に、ステップS603において、構成要素危険度演算部105は、有効なサイバー攻撃方法の数を、システム構成情報200の対策状況を示す情報を用いて算出する。このために、構成要素危険度演算部105は、まず、ステップS602で選定した構成要素の対策状況と、ステップS601で読み込んだ攻撃方法330とを突合せる。
この突合せのために、構成要素危険度演算部105は、選定した構成要素の対策状況を特定する。例えば、構成要素番号1のノード701がステップS602で選定されているので、構成要素危険度演算部105は、図2の構成要素番号210が「1」でレコードを特定する。そして、構成要素危険度演算部105は、特定されたレコードのOS(基本ソフト)250、マルウェア対策260および権限管理270の内容を特定する。本例では、ノード701のOS(基本ソフト)250が「OS1 ver.1」、マルウェア対策260が「なし」、権限管理270が「なし」と特定される。
そして、構成要素危険度演算部105では、この特定された内容と、ステップS601で特定された攻撃方法を比較する。この際、構成要素危険度演算部105、それぞれ対応するもの同士を比較する。具体的には、構成要素危険度演算部105は、以下のもの同士で比較する。
(1)「コマンド1」:権限管理270「なし」
(2)「ツール1」:OS(基本ソフト)250「OS1 ver.1」
(3)「マルウェア1」:マルウェア対策260「なし」
ここで、構成要素危険度演算部105は、ノード701(構成要素番号1)については、(1)(3)についてコマンド1の攻撃が有効と判断する。また、構成要素危険度演算部105は、(2)については、OS1 ver.1が、別途記録されている基準に基づき、ツール1に対する攻撃は有効でないと判断する。
この結果、構成要素危険度演算部105は、ノード701(構成要素番号1)に対する有効な攻撃方法の数を「2」と算出する。
このように、構成要素危険度演算部105は、それぞれ対応する攻撃方法と対策状況を突合せ、比較することで、有効な攻撃方法の数を算出する。そして、構成要素危険度演算部105は、算出した有効な攻撃方法の数に基づく構成要素危険度評価点を、当該ノード701に付与する。ここで、構成要素危険度演算部105は、構成要素危険度評価点として、有効な攻撃方法の数の値そのものを用いてもよいし、何からの変換を施した値を用いてもよい。
図8は、上記の処理に付与された、図7の各ノードに対する構成要素危険度評価点情報800を示す図である。構成要素危険度評価点情報800は、各ノード、つまり、システムの構成要素を一意に識別する要素番号810と各ノードの構成要素危険度評価点820を対応付けた例である。
次に、図5に戻り、ステップS503以降の説明を続ける。
ステップS503において、攻撃シナリオ演算部103は、想定する攻撃シナリオにおける攻撃を開始する構成要素と最終目標とする構成要素を設定する。例えば、攻撃シナリオ演算部103は、ステップS602で選定された各構成要素から設定する。この場合、選定された各構成要素の想定可能な組合せを設定することになる。
そして、ステップS504において、攻撃シナリオ演算部103は、図7に示すトポロジーに基づき、攻撃シナリオを生成する。この結果、攻撃シナリオ演算部103は、攻撃を開始する構成要素から最終目標とする構成要素まで到達するまでの攻撃対象である構成要素、その数である通過構成要素数、および攻撃順序を規定した攻撃シナリオ900を複数生成する。そして、攻撃シナリオ演算部103は、攻撃シナリオ900を攻撃シナリオ記憶部104に記憶する。
このステップS504では、攻撃シナリオ900の生成を、攻撃シナリオ演算部103は、予め定められた制約条件に従って行う。制約条件には、トポロジーにおいて、各構成要素を2度以上通過しないようないわゆる一筆書きや、予め定めた構成要素数といった規模を示す制約条件が含まれる。特に、特に、シナリオ危険度評価点として、合算値そのものを用いる場合、生成する攻撃シナリオ900の構成要素数を揃えることが望ましい。
ここで、ステップS504での生成結果の一例を、図9を参照して説明する。図9は、生成された攻撃シナリオ900示す図である。攻撃シナリオ900は、シナリオを一意に識別するシナリオ番号910と攻撃順序920と通過構成要素数930を対応付ける。
なお、本実施例では、ステップS502の構成要素危険度算出の後に、ステップS504の攻撃シナリオの生成を行っているが、この順序は逆であってもよい。つまり、ステップS501の次に、ステップS503を実行する。そして、ステップS504において、攻撃シナリオ演算部103が、攻撃シナリオを生成する。そして、ステップS502において、構成要素危険度演算部105が、生成された攻撃シナリオに含まれる構成要素の構成要素危険度を算出する。
次に、ステップS505において、危険度合算値演算部106は、生成した各攻撃シナリオ900のシナリオ危険度評価点を付与す。つまり、ステップS505では、除算値演算部107は、シナリオ危険度評価点を算出する。
ここで、ステップS505の詳細な処理を、図10を参照して説明する。
図10は、各攻撃シナリオ900の危険度を評価し、シナリオ危険度評価点を付与するフローである。まず、ステップS1001において、危険度合算値演算部106は、ステップS504で生成した攻撃シナリオ900の内、シナリオ危険度評価点が未付与であるシナリオを1つ選出する。
そして、ステップS1002において、危険度合算値演算部106は、選出したシナリオで通過する構成要素毎の構成要素危険度評価点を合算して合算値を算出する。なお、合算値の算出には、上述のとおり、単なる加算以外の演算も含まれる。
そして、ステップS1003において、除算値演算部107は、合算値を通過構成要素数930で除算する。この除算により、攻撃の効率性を評価へ反映することが可能となっている。つまり、各攻撃シナリオに対して、通過構成要素あたりの危険度を評価できることになる。なお、上述のとおり、この除算処理には様々な変形例が考えられる。
次に、ステップS1004において、除算値演算部107は、ステップS1003での除算値を、ステップS1001で選出したシナリオにシナリオ危険度評価点として付与する。つまり、除算値演算部107は、図11に示すシナリオ危険度評価点情報1100を、記憶装置に記憶する。
そして、ステップS1005において、除算値演算部107は、ステップS504で生成した攻撃シナリオ900に対して、シナリオ危険度評価点が付与されたか否かを判定する。この結果、全ての攻撃シナリオ900に対して付与していない場合には(ステップS1005:No)、残りの攻撃シナリオ900に対して付与すべくステップS1001へ移行する。一方、全ての攻撃シナリオ900に対してシナリオ危険度評価点が付与されていた場合には(ステップS1005:Yes)、シナリオ危険度評価点の付与は終了する。
図11は、図9に示す攻撃シナリオ900に対して、ステップS505により付与されたシナリオ危険度評価点情報1100を示す図である。シナリオ危険度評価点情報1100は、シナリオを一意に識別するシナリオ番号1110、攻撃順序1120、攻撃順序1120の各構成要素の構成要素危険度評価点の合算値1130およびシナリオ危険度評価点(除算値)1140が対応付けられた情報である。
次に、図5に戻り、ステップS506を説明する。ステップS506において、表示部108は、シナリオ危険度評価点の一覧を表示する。図12に、攻撃シナリオ毎のシナリオ危険度評価点を含む危険度評価結果の表示例1200を示す。この危険度評価結果の表示例1200は、表1250を含む。そして、表1250は、シナリオ番号1210、攻撃順序1220、合算値1230、および、シナリオ危険度評価点(除算値)1240を対応付ける。また、表1250の表示内容をシナリオ番号1210、攻撃順序1220、合算値1230、および、シナリオ危険度評価点(除算値)1240で並び変える、並び替えボタン1201を含む。
また、表1250の表示内容をシナリオ番号1210、攻撃順序1220、合算値1230、および、シナリオ危険度評価点(除算値)1240で変更する、表示範囲切替ボタン1202を持つ。また、表示1250をファイルとして出力する、ファイル出力ボタン1203を持つ。図12の例では、シナリオ危険度評価点(除算値)を降順で並び替え、表示範囲をシナリオ危険度評価点(除算値)6.5以上に変更した例を示している。なお、表示内容としては、シナリオ危険度評価点が所定値以上のものを選択的に表示してもよいし、上述した例との組み合わせで表示してもよい。
以上で、本実施例の説明を完了する。本実施例のサイバーの危険度評価によれば、構成要素危険度評価点の合算値を用いることで過程に対する攻撃が仕掛けられる可能性の高さを評価し、通過構成要素数による除算で攻撃の効率を評価する。このため、攻撃者の行動習癖に基づく攻撃シナリオの危険度評価が可能になる。
以下、本発明の実施例2について図面を用いて説明する。
この実施例では、実施例1で述べた図1の危険度評価装置のサイバー攻撃方法記憶部102の代わりに、脆弱性情報記憶部1302を用いる点が異なる。図13に実施例2の攻撃シナリオの危険度評価装置の機能ブロック図を示す。図13において、符号101、103~108は図1と同一のものである。このため、本実施例では、脆弱性情報記憶部1302の他、脆弱性情報記憶部1302の脆弱性情報1400を用いる構成要素危険度演算部105での構成要素危険度評価点の算出方法が、実施例1と異なる。このため、図13に示す機能構成をコンピュータで実現したシステム構成は、実施例1と同様に、図19で実現できる。ここで、実施例1と異なり、実施例2では攻撃内容情報が不要になる。
図14は、脆弱性情報1400一例を示す図である。脆弱性情報1400は、脆弱性種類1410、脆弱性番号1420、脆弱性1430、脆弱性の危険度1440を対応づけた情報である。脆弱性種類1410は、脆弱性の種類であり、図14に示す例の場合、バッファエラー、SQOインジェクション、証明書・パスワード管理がある。脆弱性番号1420は、脆弱性を一意に識別するための番号である。脆弱性1430は、脆弱性の名前を表している。危険度1440は、各脆弱性の危険度を表しており、CVSS(Common Vulnerability Scoring System)等を用いて設定される。
本実施形態における危険度評価方法の全体フローは、実施形態1で示した図5と同様であるため説明は省略する。しかし、図5のステップS502の処理が異なるため、図15を用いて説明する。
図15に、本実施例におけるステップS502の構成要素危険度評価点の付与を説明するフローチャートの一例を示す。つまり、本図は、実施例1の図6に対応するフローチャートである。
まず、ステップS1501において、構成要素危険度演算部105は、脆弱性情報1400を脆弱性情報記憶部1302より読み込む。
そして、ステップS1502において、構成要素危険度演算部105は、攻撃対象のシステムを構成する構成要素の内、構成要素危険度評価点を付与する構成要素を選定する。つまり、本ステップでは、ステップS602と同様の処理を実行する。
そして、ステップS1503において、構成要素危険度演算部105は、選定した構成要素が持つ脆弱性の危険度1440を、各構成要素で合算する。このために、構成要素危険度演算部105は、各構成要素の有する脆弱性を特定する。この特定の一例を、以下に示す。構成要素危険度演算部105は、予め記憶されている各構成要素の脆弱性に関する履歴情報を用いる。履歴情報は、各構成要素により生じた脆弱性1430を記録した情報である。構成要素危険度演算部105は、履歴情報が示す脆弱性の示す危険度1440を、各構成要素で合算する。なお、合算として、実施例1と同様に、加算以外の演算も含まれる。
次に、ステップS1504において、構成要素危険度演算部105は、ステップS1503における合算の結果である合算値を、選定した構成要素の構成要素危険度評価点として付与する。つまり、構成要素危険度演算部105は、構成要素危険度評価点を含む構成要素危険度評価点情報1600を記憶装置に記憶する。
そして、ステップS1505において、構成要素危険度演算部105は、全ての構成要素に対して構成要素危険度評価点を付与したか否かを判定する。つまり、構成要素危険度演算部105は、図6のステップS604と同様の処理を実行する。すべての項目、つまり、各構成要素に構成要素危険度評価点を付与していないと判定した場合には(ステップS1505:No)、次の構成要素に付与すべくステップS1501に移行する。一方、全ての構成要素に構成要素危険度評価点を付与したと判定した場合には(ステップS1505:Yes)、構成要素危険度評価点の付与は終了する。
図16に、本実施例における図7の各ノード、つまり、各構成要素に対する構成要素危険度評価点情報1600の一例を示す。図16に示す構成要素危険度評価点情報1600は、各ノード、つまり、構成要素を一意に識別する構成要素番号1610と各ノードが有する脆弱性の番号1620、各ノードの構成要素危険度評価点1630を対応付けた情報である。
なお、構成要素危険度評価点1630を用い、ステップS505で各攻撃シナリオのシナリオ危険度評価点を付与し、ステップS506で攻撃シナリオのシナリオ危険度評価点を表示することで、本実施例の危険度評価は完了する。
以下、本発明の実施例3について図面を用いて説明する。
この実施例では、実施例1と、図5のステップS504の生成内容が異なる。このため、ステップS504と、ステップS504の結果を用いるステップS505が、実施例1と本実施例では異なる。他の部分は、機能ブロック図を含め実施例1で示した図5と同様であるため説明は省略する。
図17は、本実施形態におけるステップS504の生成結果である攻撃シナリオ1700の一例を示す図である。攻撃シナリオ1700は、シナリオを一意に識別するシナリオ番号1710と攻撃順序1720と構成要素遷移回数1730を対応付ける情報である。図9の攻撃シナリオ900と異なるのは、通過構成要素数930ではなく、構成要素遷移回数1730を用いる点である。ここで、本実施例の構成要素遷移回数1730とは、攻撃順序1720において、該当の攻撃シナリオが構成要素に対して遷移した回数を示す情報である。通常、構成要素遷移回数は、通過構成要素数から1減算した値となる。
次に、本実施例におけるステップS504およびS505について、説明する。まず、ステップS504において、攻撃シナリオ演算部103は、図7に示すトポロジーに基づき、攻撃シナリオ1700を作成する。この際、上述のとおり、攻撃シナリオ演算部103は、通過構成要素数930の代わりに、構成要素遷移回数1730を特定する。
次に、ステップS505の詳細な処理を、図18を参照して説明する。図18は、本実施例におけるシナリオ危険度評価点を付与するフローを示すフローチャートである。つまり、実施例1の図10に対応するものである。
まず、ステップS1001において、危険度合算値演算部106は、ステップS504で生成したシナリオの内、シナリオ危険度評価点が未付与であるシナリオを1つ選出する。つまり、ステップS1801では、ステップS1001と同じ処理を行う。
そして、ステップS1802において、危険度合算値演算部106は、選出したシナリオでの攻撃順序に含まれる構成要素毎の構成要素危険度評価点を合算する。このステップS1802もステップS1002と同じ処理である。
そして、ステップS1803において、除算値演算部107は、合算値を1703の構成要素遷移回数で除算する。この除算により、攻撃の効率性を評価へ反映することが可能となっている。なお、このステップS1803の処理は、何を用いて除算するかがステップS1003と異なる。このため、このステップS1803の処理においても、ステップS1001と同様に様々な変形例を用いることが可能になる。
次に、ステップS1804において、除算値演算部107は、ステップS1803での除算値を、ステップS1801で選出したシナリオにシナリオ危険度評価点として付与する。つまり、除算値演算部107は、図11に示すようなシナリオ危険度評価点情報1100を、記憶装置に記憶する。つまり、ステップS1804は、ステップS1004と同様の処理を実行する。
そして、ステップS1805において、除算値演算部107は、ステップS504で生成した攻撃シナリオ1700に対して、シナリオ危険度評価点が付与されたか否かを判定する。この結果、全ての攻撃シナリオ1700に対して付与していない場合には(ステップS1805:No)、残りの攻撃シナリオ1700に対して付与すべくステップS1001へ移行する。一方、全ての攻撃シナリオ1700に対してシナリオ危険度評価点が付与されていた場合には(ステップS1805:Yes)、シナリオ危険度評価点の付与は終了する。このフローにより各攻撃シナリオにシナリオ危険度評価点が付与され、そのシナリオ危険度評価点をステップS506で表示することで、本実施形態の危険度評価は完了する。つまり、ステップS1805以降においても、図10と同様の処理を実行する。
以上で、本発明の実施形態についての説明を終了する。なお、本発明は上記した実施形態に限定されるものではなく、様々な変形例が含まれる。上記の実施形態は本発明を分かりやすく説明するために詳細に説明したものである。このため、例えば、各記憶部に記憶されている情報の内容、構成要素毎の構成要素危険度評価点の付与処理、攻撃シナリオの抽出結果、評価結果等、必ずしも説明した全ての構成、処理、情報、数値、に限定されるものではない。
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、図19に示すように処理部11がそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、IC カード、SD カード、DVD 等の記録媒体に置くことができる。
101…システム構成記憶部
102…サイバー攻撃方法記憶部
103…攻撃シナリオ演算部
104…攻撃シナリオ記憶部
105…構成要素危険度演算部
106…危険度合算値演算部
107…除算値演算部
108…表示部
200…システム構成情報
300…攻撃内容情報
800…構成要素危険度評価点情報
900…攻撃シナリオ
1100…シナリオ危険度評価点情報
1200…危険度評価結果の表示例

Claims (8)

  1. 複数の構成要素からなるシステムに対するサイバー攻撃シナリオの危険度を評価するための攻撃シナリオの危険度評価装置において、
    前記システムの構成を示すシステム構成情報を記憶するシステム構成情報記憶部と、
    前記システム構成情報を用いて、前記複数の構成要素の少なくとも一部を含む攻撃順序を示すサイバー攻撃の攻撃シナリオを生成する攻撃シナリオ演算部と、
    生成された前記攻撃シナリオに含まれる各構成要素の危険度を示す構成要素危険評価点を、攻撃シナリオ毎に合算して、危険度合算値を算出する危険度合算値演算部と、
    前記危険度合算値に基づいて、シナリオ毎の危険度を示すシナリオ危険度評価点を算出するシナリオ危険度評価点演算部とを有し、
    前記シナリオ危険度評価点演算部は、前記危険度合算値を、該当する攻撃シナリオの攻撃順序に含まれる構成要素の数で除算する除算値演算部であることを特徴とする攻撃シナリオの危険度評価装置。
  2. 複数の構成要素からなるシステムに対するサイバー攻撃シナリオの危険度を評価するための攻撃シナリオの危険度評価装置において、
    前記システムの構成を示すシステム構成情報を記憶するシステム構成情報記憶部と、
    前記システム構成情報を用いて、前記複数の構成要素の少なくとも一部を含む攻撃順序を示すサイバー攻撃の攻撃シナリオを生成する攻撃シナリオ演算部と、
    生成された前記攻撃シナリオに含まれる各構成要素の危険度を示す構成要素危険評価点を、攻撃シナリオ毎に合算して、危険度合算値を算出する危険度合算値演算部と、
    前記危険度合算値に基づいて、シナリオ毎の危険度を示すシナリオ危険度評価点を算出するシナリオ危険度評価点演算部とを有し、
    前記シナリオ危険度評価点演算部は、前記危険度合算値を、該当する攻撃シナリオの攻撃順序に含まれる構成要素遷移の回数で除算する除算値演算部であることを特徴とする攻撃シナリオの危険度評価装置。
  3. 請求項1または2のいずれかに記載の攻撃シナリオの危険度評価装置において、
    前記攻撃シナリオ演算部は、前記システムを構成する前記複数の構成要素から攻撃対象となる構成要素を抽出し、抽出された前記構成要素に対する攻撃順序および当該攻撃順序に含まれる構成要素数を規定した複数の攻撃シナリオを生成することを特徴する攻撃シナリオの危険度評価装置。
  4. 請求項に記載の攻撃シナリオの危険度評価装置において、
    前記攻撃シナリオ演算部は、予め定められた規模に関する制約条件に従って、前記構成要素の抽出を実行することを特徴とする攻撃シナリオの危険度評価装置。
  5. 請求項1または2のいずれかに記載の攻撃シナリオの危険度評価装置において、
    さらに、生成された前記攻撃シナリオに含まれる構成要素の構成要素危険度評価点を算出する構成要素危険度演算部を有し、
    前記構成要素危険度演算部は、前記システムに含まれる各構成要素に定められた前記攻撃シナリオの種類ごとのサイバー攻撃への対策状況を示す情報を用いて、前記構成要素危険度評価点を算出することを特徴とする攻撃シナリオの危険度評価装置。
  6. 請求項1または2のいずれかに記載の攻撃シナリオの危険度評価装置において、
    さらに、生成された前記攻撃シナリオに含まれる構成要素の構成要素危険度評価点を算出する構成要素危険度演算部を有し、
    前記構成要素危険度演算部は、前記システムに含まれる各構成要素に定められた脆弱性示す情報を用いて、前記構成要素危険度評価点を算出することを特徴とする攻撃シナリオの危険度評価装置。
  7. 複数の構成要素からなるシステムに対するサイバー攻撃シナリオの危険度を評価するためのコンピュータである攻撃シナリオの危険度評価装置による、攻撃シナリオの危険度評価方法において、
    システム構成情報記憶部に、前記システムの構成を示すシステム構成情報を記憶し、
    攻撃シナリオ演算部により、前記システム構成情報を用いて、前記複数の構成要素の少なくとも一部を含む攻撃順序を示すサイバー攻撃の攻撃シナリオを生成し、
    危険度合算値演算部により、生成された前記攻撃シナリオに含まれる各構成要素の危険度を示す構成要素危険評価点を、攻撃シナリオ毎に合算して、危険度合算値を算出し、
    除算値演算部により、前記危険度合算値に基づいて算出されるシナリオ毎の危険度を示すシナリオ危険度評価点を、前記危険度合算値に対して、該当する攻撃シナリオの攻撃順序に含まれる構成要素の数で除算して算出することを特徴とする攻撃シナリオの危険度評価方法。
  8. 複数の構成要素からなるシステムに対するサイバー攻撃シナリオの危険度を評価するためのコンピュータである攻撃シナリオの危険度評価装置による、攻撃シナリオの危険度評価方法において、
    システム構成情報記憶部に、前記システムの構成を示すシステム構成情報を記憶し、
    攻撃シナリオ演算部により、前記システム構成情報を用いて、前記複数の構成要素の少なくとも一部を含む攻撃順序を示すサイバー攻撃の攻撃シナリオを生成し、
    危険度合算値演算部により、生成された前記攻撃シナリオに含まれる各構成要素の危険度を示す構成要素危険評価点を、攻撃シナリオ毎に合算して、危険度合算値を算出し、
    除算値演算部により、前記危険度合算値に基づいて算出されるシナリオ毎の危険度を示すシナリオ危険度評価点を、前記危険度合算値に対して、該当する攻撃シナリオの攻撃順序に含まれる構成要素遷移の回数で除算して算出することを特徴とする攻撃シナリオの危険度評価方法。
JP2020084410A 2020-05-13 2020-05-13 攻撃シナリオの危険度評価装置およびその方法 Active JP7384743B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020084410A JP7384743B2 (ja) 2020-05-13 2020-05-13 攻撃シナリオの危険度評価装置およびその方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020084410A JP7384743B2 (ja) 2020-05-13 2020-05-13 攻撃シナリオの危険度評価装置およびその方法

Publications (2)

Publication Number Publication Date
JP2021179777A JP2021179777A (ja) 2021-11-18
JP7384743B2 true JP7384743B2 (ja) 2023-11-21

Family

ID=78511510

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020084410A Active JP7384743B2 (ja) 2020-05-13 2020-05-13 攻撃シナリオの危険度評価装置およびその方法

Country Status (1)

Country Link
JP (1) JP7384743B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2023228399A1 (ja) * 2022-05-27 2023-11-30

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090077666A1 (en) 2007-03-12 2009-03-19 University Of Southern California Value-Adaptive Security Threat Modeling and Vulnerability Ranking
JP2018077597A (ja) 2016-11-08 2018-05-17 株式会社日立製作所 セキュリティ対策立案支援システムおよび方法
JP2019021161A (ja) 2017-07-20 2019-02-07 株式会社日立製作所 セキュリティ設計支援システムおよびセキュリティ設計支援方法
US20190349756A1 (en) 2018-05-11 2019-11-14 University Of Southern California Sealant: security for end-users of android via light-weight analysis techniques
JP2020028092A (ja) 2018-08-17 2020-02-20 三菱電機株式会社 攻撃検知装置、攻撃検知システム、攻撃検知方法および攻撃検知プログラム
WO2020195228A1 (ja) 2019-03-28 2020-10-01 日本電気株式会社 分析システム、方法およびプログラム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090077666A1 (en) 2007-03-12 2009-03-19 University Of Southern California Value-Adaptive Security Threat Modeling and Vulnerability Ranking
JP2018077597A (ja) 2016-11-08 2018-05-17 株式会社日立製作所 セキュリティ対策立案支援システムおよび方法
JP2019021161A (ja) 2017-07-20 2019-02-07 株式会社日立製作所 セキュリティ設計支援システムおよびセキュリティ設計支援方法
US20190349756A1 (en) 2018-05-11 2019-11-14 University Of Southern California Sealant: security for end-users of android via light-weight analysis techniques
JP2020028092A (ja) 2018-08-17 2020-02-20 三菱電機株式会社 攻撃検知装置、攻撃検知システム、攻撃検知方法および攻撃検知プログラム
WO2020195228A1 (ja) 2019-03-28 2020-10-01 日本電気株式会社 分析システム、方法およびプログラム

Also Published As

Publication number Publication date
JP2021179777A (ja) 2021-11-18

Similar Documents

Publication Publication Date Title
RU2571726C2 (ru) Система и способ проверки целесообразности установки обновлений
Codetta-Raiteri The conversion of dynamic fault trees to stochastic Petri nets, as a case of graph transformation
KR101426270B1 (ko) 소프트웨어의 전자 서명 생성 방법, 검증 방법, 그 장치,및 그 방법을 실행하기 위한 프로그램을 기록한 컴퓨터로읽을 수 있는 기록매체
US20080114957A1 (en) System and method to secure a computer system by selective control of write access to a data storage medium
KR20080051161A (ko) 컴퓨팅 환경 내의 권한 상승 경로의 전문적 시스템 분석 및그래픽적 표시를 위한 권한 상승 그래프 생성 방법,시스템 및 컴퓨터 판독가능 매체
US20090113552A1 (en) System and Method To Analyze Software Systems Against Tampering
US10007788B2 (en) Method of modeling behavior pattern of instruction set in N-gram manner, computing device operating with the method, and program stored in storage medium to execute the method in computing device
KR20210068035A (ko) 컴퓨터 시스템에서 선택된 디스크를 보호하는 기법
JP7384743B2 (ja) 攻撃シナリオの危険度評価装置およびその方法
US6868434B1 (en) System and method for testing server latencies using multiple concurrent users in a computer system
CN110070360B (zh) 一种事务请求处理方法、装置、设备及存储介质
Li et al. An efficient attestation for trustworthiness of computing platform
US11783049B2 (en) Automated code analysis tool
WO2022097432A1 (ja) サイバー攻撃シナリオ生成方法、および装置
US11681798B2 (en) Security screening of a universal serial bus device
KR101934381B1 (ko) 해킹툴 탐지 방법 및 이를 수행하는 사용자 단말 및 서버
Bekiroglu et al. Survivability Analysis of K-Variant Architecture for Different Memory Attacks and Defense Strategies
CN111783121A (zh) 数据处理方法、装置、设备及存储介质
KR20210027939A (ko) 해시 코드 기반의 검색 장치 및 검색 방법
JP2016105233A (ja) 脅威分析装置、及び脅威分析方法
WO2023188092A1 (ja) 情報処理装置、情報処理方法、及びコンピュータ読み取り可能な記録媒体
JP2018181365A (ja) 不正アクセス検出システム、不正アクセス検出方法および不正アクセス検出プログラム
CN111444193B (zh) 一种块链式账本中的权重分配方法、装置及设备
JP6626804B2 (ja) 計算機、選定方法、および選定プログラム
JP7474679B2 (ja) セキュリティ検証システムおよび方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230125

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230920

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230926

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231025

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: 20231107

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231109

R150 Certificate of patent or registration of utility model

Ref document number: 7384743

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150