(57)【要約】【課題】セキュリティ設計対象に関する攻撃方法および脅威の特定を効率的かつ確実に行える技術を提供する。【解決手段】メタテンプレートの情報を表示し、システム構成に該当する対応要素をデータに含むメタテンプレートの指定を入力インターフェイスから受け付けて、メタテンプレートの情報を記憶装置に格納する手段と、前記格納したメタテンプレート間において、外部エンティティが共通し、一方の攻撃対象が他方のエントリポイントとなる関係になるメタテンプレートの連なりを特定し、この連なりを構成する各メタテンプレート群の情報を攻撃経路パターンとして記憶装置に格納する手段と、攻撃経路に対応するメタテンプレート群が含む各メタテンプレートから、外部エンティティ、エントリポイント、および攻撃対象の各データを読み出して攻撃経路の始点から終点の方向で順次連結させることで脅威の記述データを生成する手段とからシステムセキュリティ設計装置１００を構成する。【選択図】図１
2009070084.tif 000002
【特許請求の範囲】
【請求項１】
情報システムに関するセキュリティ設計を行う設計装置であって、
情報システムに対する攻撃主体たる外部エンティティと、前記外部エンティティが前記情報システムに対し攻撃を行う際の侵入口たるエントリポイントと、前記侵入口から情報システムに侵入した前記外部エンティティが目標とする攻撃対象とを対応付けたデータであるメタテンプレートを、外部エンティティ、エントリポイント、攻撃対象の各要素の組合せパターン毎に記憶する記憶装置と、
前記記憶装置に記憶された前記メタテンプレートの情報を出力インターフェイスに表示し、前記情報システムのシステム構成のうち前記各要素いずれかに該当するものについて、対応要素をデータに含むメタテンプレートの指定を入力インターフェイスから受け付けて、ここで指定されたメタテンプレートの情報を記憶装置に格納するテンプレート特定処理と、
前記記憶装置に情報を格納したメタテンプレート間において、外部エンティティが共通し、一方の攻撃対象が他方のエントリポイントとなる関係になるメタテンプレートの連なりを特定し、この連なりを構成する各メタテンプレート群の情報を、外部エンティティによる攻撃経路のパターンとして記憶装置に格納する経路特定処理と、
攻撃経路に対応するメタテンプレート群が含む各メタテンプレートから、外部エンティティ、エントリポイント、および攻撃対象の各データを読み出して、これらを攻撃経路の始点から終点の方向で順次連結させることで脅威の記述データを生成する脅威記述処理と、を実行する演算装置と、
を備えるセキュリティ設計装置。
【請求項２】
前記テンプレート特定処理において、前記情報システムのシステム構成のうち前記各要素に該当するものについて、対応要素をデータに含むメタテンプレートを、前記記憶装置に記憶された前記メタテンプレートから検索し、ここで検索したメタテンプレートの情報を記憶装置に格納するものとする、ことを特徴とする請求項１に記載のセキュリティ設計装置。
【請求項３】
前記記憶装置におけるメタテンプレートが、前記要素に加えて、外部エンティティがエントリポイントの通過権限を持つ場合のエントリポイント通過方法、外部エンティティがエントリポイントの通過権限を持たない場合のエントリポイント通過方法、エントリポイント通過後の外部エンティティによる攻撃対象への攻撃方法、を更に対応付けたデータであり、外部エンティティ、エントリポイント、攻撃対象、エントリポイント通過方法、攻撃方法の各要素の組合せパターン毎に記憶装置に記憶され、
前記テンプレート特定処理において、前記対応要素をデータに含むメタテンプレートとして、前記外部エンティティとしての情報システムの関与者と前記関与者毎の各エントリポイントにおける通過権限有無にマッチするメタテンプレートの指定を入力インターフェイスから受け付けて、ここで指定されたメタテンプレートの情報を記憶装置に格納し、
前記脅威記述処理において、前記攻撃経路に対応するメタテンプレート群が含む各メタテンプレートから、外部エンティティ、エントリポイント、エントリポイント通過方法、攻撃対象、および攻撃方法の各データを読み出し、各エントリポイントにおける外部エンティティたる前記関与者の通過権限有無に応じてエントリポイント通過方法を選択し、外部エンティティたる関与者、エントリポイント、エントリポイント通過方法、攻撃対象、攻撃方法の各データを、前記攻撃経路の始点から終点の方向で順次連結させることで脅威の記述データを生成する、
ことを特徴とする請求項１または２に記載のセキュリティ設計装置。
【請求項４】
前記記憶装置におけるメタテンプレートが、前記要素に加えて、エントリポイントの通過方法に対抗するためのセキュリティ対策方針、攻撃対象への攻撃方法に対抗するためのセキュリティ対策方針、を更に対応付けたデータであり、
前記脅威記述処理において、各エントリポイントにおける外部エンティティたる前記関与者の通過権限有無に応じて選択したエントリポイント通過方法、攻撃対象に対する攻撃方法のそれぞれについて、対応するセキュリティ対策方針のデータをメタテンプレートから抽出し、ここで抽出したセキュリティ対策方針データ群を前記攻撃経路に対応付けて記憶装置に格納する、
ことを特徴とする請求項３に記載のセキュリティ設計装置。
【請求項５】
前記情報システムのシステム構成について、建築物などの物理領域やその物理領域内に配置される機器、前記機器内の物理的な構成要素といった物理的要素、および、前記機器により実現される論理ユニットなどの論理領域やその論理領域内に存在するプログラムやデータなどといった論理的要素、のそれぞれについての設定指示を入力インターフェイスから受け付けて、物理領域に配置された機器とその構成要素ならびに、前記機器により実現される論理領域とその論理領域内に存在するプログラムやデータの情報からなるシステム構成データを取得し、このシステム構成データを記憶装置に格納する、システム構成取得処理を実行することを特徴とする請求項１〜４のいずれかに記載のセキュリティ設計装置。
【請求項６】
前記テンプレート特定処理において、  前記記憶装置に記憶された前記システム構成データおよびメタテンプレートの情報を出力インターフェイスに表示し、前記情報システムのシステム構成のうち前記各要素いずれかに該当するものについて、対応要素をデータに含むメタテンプレートの指定を入力インターフェイスから受け付けて、ここで指定されたメタテンプレートの情報を記憶装置に格納し、
前記経路特定処理において、出力インターフェイスにおける、前記連なりを構成する各メタテンプレートの表示データの間を、外部エンティティの攻撃方向に向けた矢印で結ぶ描画処理を行い、メタテンプレートの表示データが攻撃方向に沿って矢印で互いに連結されツリー表示データを生成し、前記攻撃経路のパターンとして記憶装置に格納する、
ことを特徴とする請求項５に記載のセキュリティ設計装置。
【請求項７】
前記脅威記述処理において、前記ツリー表示データを出力インターフェイスに表示することを特徴とする請求項６に記載のシステムセキュリティ設計装置。
【請求項８】
外部エンティティ、エントリポイント、および攻撃対象のそれぞれの組合せ毎に推定される脅威に応じたリスク値のデータを入力インターフェイスから受け付けて記憶装置に格納し、前記脅威の記述データを構成する外部エンティティ、エントリポイント、および攻撃対象の組合せ毎の脅威に応じたリスク値を算定する、リスク算定処理を実行することを特徴とする請求項１〜７のいずれかに記載のシステムセキュリティ設計装置。
【請求項９】
前記システム構成データ、攻撃対象、関与者、攻撃経路パターン、攻撃対象−脅威−セキュリティ対策方針の対応関係、およびリスク値、の各データをセットにしたセキュリティ設計データを記憶装置に格納する格納処理、を実行することを特徴とする請求項８に記載のシステムセキュリティ設計装置。
【請求項１０】
前記セキュリティ設計データと、当該セキュリティ設計データの設計対象に関するカテゴリ情報との対応関係を記述したカテゴリ対応テーブルを記憶装置に備えて、
セキュリティ設計対象システムのカテゴリ情報の指定を入力インターフェイスにおいて受付けるカテゴリ受付処理と、
前記カテゴリ対応テーブル中から、前記指定がなされたカテゴリ情報に該当するセキュリティ設計データを選択する設計データ選択処理と、
選択したセキュリティ設計データを出力インターフェイスに表示し、システム構成データ、攻撃対象、関与者の各データの修正を入力インターフェイスにて受付けて、その修正箇所を記憶装置に記憶する修正受付処理と、
前記修正され記憶装置に記憶されたシステム構成データ、攻撃対象、関与者の各データに基づいて、前記経路特定処理、脅威記述処理、およびリスク算定処理を実行して新たなセキュリティ設計データを生成し記憶装置に記憶する変更特定処理と、
を実行することを特徴とする請求項９に記載のシステムセキュリティ設計装置。
【請求項１１】
情報システムに関するセキュリティ設計を行うコンピュータが、
情報システムに対する攻撃主体たる外部エンティティと、前記外部エンティティが前記情報システムに対し攻撃を行う際の侵入口たるエントリポイントと、前記侵入口から情報システムに侵入した前記外部エンティティが目標とする攻撃対象とを対応付けたデータであるメタテンプレートを、外部エンティティ、エントリポイント、攻撃対象の各要素の組合せパターン毎に記憶する記憶装置と、演算装置とを備えて、
前記記憶装置に記憶された前記メタテンプレートの情報を出力インターフェイスに表示し、前記情報システムのシステム構成のうち前記各要素いずれかに該当するものについて、対応要素をデータに含むメタテンプレートの指定を入力インターフェイスから受け付けて、ここで指定されたメタテンプレートの情報を記憶装置に格納するテンプレート特定処理と、
前記記憶装置に情報を格納したメタテンプレート間において、外部エンティティが共通し、一方の攻撃対象が他方のエントリポイントとなる関係になるメタテンプレートの連なりを特定し、この連なりを構成する各メタテンプレート群の情報を、外部エンティティによる攻撃経路のパターンとして記憶装置に格納する経路特定処理と、
攻撃経路に対応するメタテンプレート群が含む各メタテンプレートから、外部エンティティ、エントリポイント、および攻撃対象の各データを読み出して、これらを攻撃経路の始点から終点の方向で順次連結させることで脅威の記述データを生成する脅威記述処理と、
を実行することを特徴とするシステムセキュリティ設計方法。
【請求項１２】
情報システムに関するセキュリティ設計を行うべく、情報システムに対する攻撃主体たる外部エンティティと、前記外部エンティティが前記情報システムに対し攻撃を行う際の侵入口たるエントリポイントと、前記侵入口から情報システムに侵入した前記外部エンティティが目標とする攻撃対象とを対応付けたデータであるメタテンプレートを、外部エンティティ、エントリポイント、攻撃対象の各要素の組合せパターン毎に記憶する記憶装置を備えたコンピュータに、
前記記憶装置に記憶された前記メタテンプレートの情報を出力インターフェイスに表示し、前記情報システムのシステム構成のうち前記各要素いずれかに該当するものについて、対応要素をデータに含むメタテンプレートの指定を入力インターフェイスから受け付けて、ここで指定されたメタテンプレートの情報を記憶装置に格納するテンプレート特定ステップと、
前記記憶装置に情報を格納したメタテンプレート間において、外部エンティティが共通し、一方の攻撃対象が他方のエントリポイントとなる関係になるメタテンプレートの連なりを特定し、この連なりを構成する各メタテンプレート群の情報を、外部エンティティによる攻撃経路のパターンとして記憶装置に格納する経路特定ステップと、
攻撃経路に対応するメタテンプレート群が含む各メタテンプレートから、外部エンティティ、エントリポイント、および攻撃対象の各データを読み出して、これらを攻撃経路の始点から終点の方向で順次連結させることで脅威の記述データを生成する脅威記述ステップと、
を実行させるシステムセキュリティ設計プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、システムセキュリティ設計装置、システムセキュリティ設計方法、システムセキュリティ設計プログラムに関するものであり、具体的には、情報システムの計画・設計段階において、脅威抽出・リスク評価を行ない、それに基づいたセキュリティ対策方針を導出するシステムセキュリティ設計技術に関する。
【背景技術】
【０００２】
セキュリティ上の脅威増加や法規制対応等により、情報システムを対象としたセキュリティ設計のニーズが増加してきている。このシステムセキュリティ設計を行なうためには、一般に、システム定義、脅威抽出、リスク評価、セキュリティ対策の立案、を行なう必要がある。これらのうち、脅威抽出において重大な脅威を見逃していた場合、組織が大きな被害を被る可能性があるため、脅威を網羅的に洗い出すことが非常に重要である。
【０００３】
ところで、脅威は、（ａ）資産、（ｂ）脅威エージェント、（ｃ）攻撃方法、の観点で識別することが要求されている（「ＩＳＯ／ＩＥＣ  ＴＲ  １５４４６：２００４」（非特許文献１）の８章「Ｔｈｅ  ＴＯＥ  ｓｅｃｕｒｉｔｙ  ｅｎｖｉｒｏｎｍｅｎｔ」の８．３「Ｈｏｗ  ｔｏ  ｉｄｅｎｔｉｆｙ  ａｎｄ  ｓｐｅｃｉｆｙ  ｔｈｅ  ｔｈｒｅａｔｓ」）。これらのうち、（ｃ）攻撃方法、を特定するためには、脆弱性、攻撃手段、攻撃経路等の専門知識が必要であり、脅威を網羅的に導出することは困難である。また、現状では、脅威や（ｃ）の攻撃方法を網羅的に導出するための標準的・統一的な方法はない。
【０００４】
これを解決する従来技術として、「Ｔｈｒｅａｔ  Ｍｏｄｅｌｉｎｇ」がある（非特許文献２）。この従来技術では、システムの外側から内側に入るアプローチによって攻撃者の視点をモデル化し、このモデルを用いることで複数人の話し合いによって「攻撃者がどのようにして資産に影響を及ぼそうとするのか」を識別できる、とされている（Ｐ．３０〜３３）。この攻撃者の視点として、「エントリポイント」（データやコントロールが移動する中継点、敵がシステムを攻撃できる場所）、「資産」（システムやコンポーネントが持つリソース、脅威の目標）、「外部エンティティの信頼レベル」（外部エンティティがエントリポイントにおいてエントリポイントや機能を正当に使用できる権限）を挙げている。
【非特許文献１】ＩＳＯ／ＩＥＣ  ＴＲ  １５４４６：２００４「Ｉｎｆｏｒｍａｔｉｏｎ  ｔｅｃｈｎｏｌｏｇｙ−Ｓｅｃｕｒｉｔｙ  ｔｅｃｈｎｉｑｕｅｓ−Ｇｕｉｄｅ  ｆｏｒ  ｔｈｅ  ｐｒｏｄｕｃｔｉｏｎ  ｏｆ  Ｐｒｏｔｅｃｔｉｏｎ  Ｐｒｏｆｉｌｅｓ  ａｎｄ  Ｓｅｃｕｒｉｔｙ  Ｔａｒｇｅｔｓ」（情報技術−セキュリティ技術−プロテクションプロファイルおよびセキュリティターゲット作成ガイド）
【非特許文献２】「Ｔｈｒｅａｔ  Ｍｏｄｅｌｉｎｇ」、Ｍｉｃｒｏｓｏｆｔ  Ｐｒｅｓｓ、Ｐ．３０〜３３
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上述した従来技術を用いれば、複数人が集まって時間を掛けて作業を行なうことで、網羅性のある脅威を導出することが期待できる。しかし、脅威抽出を行なうために複数人の技術者を集めた上で、多くの時間を割いて作業を行なうことは難しいのが現状である。また、１人でこの作業を行なった場合、システムに存在する３要素（エントリポイント、資産、外部エンティティの信頼レベル）の組合せを漏れなく列挙することと、エントリポイントに対してどのような攻撃方法があるのかを正しく導出することが難しい。
【０００６】
この問題を解決する手段として、上記３要素の組合せの一覧リストと、３要素組合せ毎に想定される攻撃方法を事前にデータベース化して、これらを再利用する方法も考えられる。しかし、１つの脅威における３要素は、各要素が１つずつではなく、エントリポイントは複数になる場合がある。例えば、外部の第三者がオフィスに設置されたサーバ内のデータを改ざんするという脅威の場合、「建屋のドア」、「オフィスのドア」、「サーバのＯＳ」等の複数のエントリポイントが存在する。特に規模の大きなシステムではエントリポイントが多重になりやすく、想定される３要素組合せを事前に洗い出すことと、これら３要素組合せ単位で攻撃方法をデータベース化することが非常に困難である。
【０００７】
そこで本発明は上記課題を鑑みてなされたものであり、セキュリティ設計対象に関する攻撃方法および脅威の特定を効率的かつ確実に行える技術の提供を主たる目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決する本発明のシステムセキュリティ設計装置は、情報システムに関するセキュリティ設計を行う設計装置であって、情報システムに対する攻撃主体たる外部エンティティと、前記外部エンティティが前記情報システムに対し攻撃を行う際の侵入口たるエントリポイントと、前記侵入口から情報システムに侵入した前記外部エンティティが目標とする攻撃対象とを対応付けたデータであるメタテンプレートを、外部エンティティ、エントリポイント、攻撃対象の各要素の組合せパターン毎に記憶する記憶装置と、前記記憶装置に記憶された前記メタテンプレートの情報を出力インターフェイスに表示し、前記情報システムのシステム構成のうち前記各要素いずれかに該当するものについて、対応要素をデータに含むメタテンプレートの指定を入力インターフェイスから受け付けて、ここで指定されたメタテンプレートの情報を記憶装置に格納するテンプレート特定処理と、前記記憶装置に情報を格納したメタテンプレート間において、外部エンティティが共通し、一方の攻撃対象が他方のエントリポイントとなる関係になるメタテンプレートの連なりを特定し、この連なりを構成する各メタテンプレート群の情報を、外部エンティティによる攻撃経路のパターンとして記憶装置に格納する経路特定処理と、攻撃経路に対応するメタテンプレート群が含む各メタテンプレートから、外部エンティティ、エントリポイント、および攻撃対象の各データを読み出して、これらを攻撃経路の始点から終点の方向で順次連結させることで脅威の記述データを生成する脅威記述処理と、を実行する演算装置と、を備える。
【０００９】
これによれば、外部エンティティ、エントリポイント、および攻撃対象等について記述したメタテンプレートが予め網羅的（外部エンティティ、エントリポイント、攻撃対象等の各要素の組合せパターンを全て用意）に記憶装置にて用意されており、例えば、セキュリティ設計担当者がごく少人数であっても、入力インターフェイスから前記メタテンプレートのうち設計対象の情報システムが含む事象に該当要素があるメタテンプレートを選択することで（情報システムのシステム構成について、作業担当者等の多寡やスキルの違いなどによる設計・認識ミス等は少ないとされている）、セキュリティ設計装置側で攻撃方法（攻撃経路、通過方法）、脅威、セキュリティ対策方針を効率的かつ漏れ少なく導出することとなる。このことは、システムセキュリティ設計時あるいは再設計時に行なう脅威抽出およびセキュリティ対策方針立案の工数削減および、作業担当者の多寡やスキルに影響を受けにくい均質的な設計結果の取得を実現できる。したがって、セキュリティ設計対象に関する攻撃方法および脅威の特定を効率的かつ確実に行える。
【００１０】
また、前記セキュリティ設計装置の前記テンプレート特定処理において、前記情報システムのシステム構成のうち前記各要素に該当するものについて、対応要素をデータに含むメタテンプレートを、前記記憶装置に記憶された前記メタテンプレートから検索し、ここで検索したメタテンプレートの情報を記憶装置に格納するものとする、としてもよい。これによれば、設計対象の情報システムが含む事象に該当要素があるメタテンプレートの選択処理を自動化できるので、更なる設計効率の向上が望める。
【００１１】
また、前記セキュリティ設計装置の前記記憶装置におけるメタテンプレートが、前記要素に加えて、外部エンティティがエントリポイントの通過権限を持つ場合のエントリポイント通過方法、外部エンティティがエントリポイントの通過権限を持たない場合のエントリポイント通過方法、エントリポイント通過後の外部エンティティによる攻撃対象への攻撃方法、を更に対応付けたデータであり、外部エンティティ、エントリポイント、攻撃対象、エントリポイント通過方法、攻撃方法の各要素の組合せパターン毎に記憶装置に記憶され、前記テンプレート特定処理において、前記対応要素をデータに含むメタテンプレートとして、前記外部エンティティとしての情報システムの関与者と前記関与者毎の各エントリポイントにおける通過権限有無にマッチするメタテンプレートの指定を入力インターフェイスから受け付けて、ここで指定されたメタテンプレートの情報を記憶装置に格納し、前記脅威記述処理において、前記攻撃経路に対応するメタテンプレート群が含む各メタテンプレートから、外部エンティティ、エントリポイント、エントリポイント通過方法、攻撃対象、および攻撃方法の各データを読み出し、各エントリポイントにおける外部エンティティたる前記関与者の通過権限有無に応じてエントリポイント通過方法を選択し、外部エンティティたる関与者、エントリポイント、エントリポイント通過方法、攻撃対象、攻撃方法の各データを、前記攻撃経路の始点から終点の方向で順次連結させることで脅威の記述データを生成する、としてもよい。これによれば、外部エンティティたる関与者についてのエントリポイントの通過権限有無およびエントリポイント通過方法に基づいて脅威の記述を更に精密化できる。
【００１２】
また、前記セキュリティ設計装置の記憶装置におけるメタテンプレートが、前記要素に加えて、エントリポイントの通過方法に対抗するためのセキュリティ対策方針、攻撃対象への攻撃方法に対抗するためのセキュリティ対策方針、を更に対応付けたデータであり、前記脅威記述処理において、各エントリポイントにおける外部エンティティたる前記関与者の通過権限有無に応じて選択したエントリポイント通過方法、攻撃対象に対する攻撃方法のそれぞれについて、対応するセキュリティ対策方針のデータをメタテンプレートから抽出し、ここで抽出したセキュリティ対策方針データ群を前記攻撃経路に対応付けて記憶装置に格納する、としてもよい。これによれば、導出した脅威に対応するセキュリティ対策方針についても網羅的に抽出でき、セキュリティ対策の漏れを抑制できる。
【００１３】
また、前記セキュリティ設計装置において、前記情報システムのシステム構成について、建築物などの物理領域やその物理領域内に配置される機器、前記機器内の物理的な構成要素といった物理的要素、および、前記機器により実現される論理ユニットなどの論理領域やその論理領域内に存在するプログラムやデータなどといった論理的要素、のそれぞれについての設定指示を入力インターフェイスから受け付けて、物理領域に配置された機器とその構成要素ならびに、前記機器により実現される論理領域とその論理領域内に存在するプログラムやデータの情報からなるシステム構成データを取得し、このシステム構成データを記憶装置に格納する、システム構成取得処理を実行するとしてもよい。これによれば、セキュリティ設計対象となる情報システムのシステム構成について、物理的、論理的な観点から詳細なシステム構成データを得ることが出来、これを用いたセキュリティ設計処理においても設計精度が向上し、セキュリティ対策漏れを抑制できる。
【００１４】
また、前記セキュリティ設計装置の前記テンプレート特定処理において、前記記憶装置に記憶された前記システム構成データおよびメタテンプレートの情報を出力インターフェイスに表示し、前記情報システムのシステム構成のうち前記各要素いずれかに該当するものについて、対応要素をデータに含むメタテンプレートの指定を入力インターフェイスから受け付けて、ここで指定されたメタテンプレートの情報を記憶装置に格納し、前記経路特定処理において、出力インターフェイスにおける、前記連なりを構成する各メタテンプレートの表示データの間を、外部エンティティの攻撃方向に向けた矢印で結ぶ描画処理を行い、メタテンプレートの表示データが攻撃方向に沿って矢印で互いに連結されツリー表示データを生成し、前記攻撃経路のパターンとして記憶装置に格納する、としてもよい。これによれば、設計対象の情報システムについて作業者がシステム構成を出力インターフェイスで視認しながらメタテンプレートの選択作業を行うことができ、作業性の向上やメタテンプレートの選択ミス等を低減しやすくなる。また、外部エンティティがエントリポイントから情報システムに侵入し一定の攻撃方向に沿って攻撃対象に至る攻撃経路のパターンを網羅的かつ視覚的なデータとして取得でき、脅威の記述を行う処理において利用可能である。
【００１５】
また、前記セキュリティ設計装置の前記脅威記述処理において、前記ツリー表示データを出力インターフェイスに表示するとしてもよい。これによれば、例えば、出力インターフェイスに表示した前記ツリー表示データを以て作業者による確認作業に供することも出来る。
【００１６】
また、前記セキュリティ設計装置において、外部エンティティ、エントリポイント、および攻撃対象のそれぞれの組合せ毎に推定される脅威に応じたリスク値のデータを入力インターフェイスから受け付けて記憶装置に格納し、前記脅威の記述データを構成する外部エンティティ、エントリポイント、および攻撃対象の組合せ毎の脅威に応じたリスク値を算定する、リスク算定処理を実行するとしてもよい。これによれば、設計対象の情報システムに関して網羅的で確度の高い前記脅威の記述データに基づいて、どのようなリスクが設計対象の情報システムに生じうるのかを高精度で推定することができる。
【００１７】
また、前記セキュリティ設計装置において、前記システム構成データ、攻撃対象、関与者、攻撃経路パターン、攻撃対象−脅威−セキュリティ対策方針の対応関係、およびリスク値、の各データをセットにしたセキュリティ設計データを記憶装置に格納する格納処理、を実行するとしてもよい。これによれば、設計結果であるセキュリティ設計データを保存しておくことができ、以後の再利用等に利用しやすくなり、設計効率の更なる向上が見込まれる。
【００１８】
また、前記セキュリティ設計装置において、前記セキュリティ設計データと、当該セキュリティ設計データの設計対象に関するカテゴリ情報との対応関係を記述したカテゴリ対応テーブルを記憶装置に備えて、セキュリティ設計対象システムのカテゴリ情報の指定を入力インターフェイスにおいて受付けるカテゴリ受付処理と、前記カテゴリ対応テーブル中から、前記指定がなされたカテゴリ情報に該当するセキュリティ設計データを選択する設計データ選択処理と、選択したセキュリティ設計データを出力インターフェイスに表示し、システム構成データ、攻撃対象、関与者の各データの修正を入力インターフェイスにて受付けて、その修正箇所を記憶装置に記憶する修正受付処理と、前記修正され記憶装置に記憶されたシステム構成データ、攻撃対象、関与者の各データに基づいて、前記経路特定処理、脅威記述処理、およびリスク算定処理を実行して新たなセキュリティ設計データを生成し記憶装置に記憶する変更特定処理と、を実行するとしてもよい。これによれば、過去に設計済みのセキュリティ設計データをひな形（テンプレート）として今次の設計対象に再使用し、更には修正箇所について指示を受け入れて以後の脅威の記述データの生成処理まで行うことができる。過去の設計データ資産を有効活用し、ひいては以後のセキュリティ設計作業をさらに簡便かつ効率的ならしめる。
【００１９】
また、本発明のセキュリティ設計方法は、情報システムに関するセキュリティ設計を行うコンピュータが、情報システムに対する攻撃主体たる外部エンティティと、前記外部エンティティが前記情報システムに対し攻撃を行う際の侵入口たるエントリポイントと、前記侵入口から情報システムに侵入した前記外部エンティティが目標とする攻撃対象とを対応付けたデータであるメタテンプレートを、外部エンティティ、エントリポイント、攻撃対象の各要素の組合せパターン毎に記憶する記憶装置と、演算装置とを備えて、前記記憶装置に記憶された前記メタテンプレートの情報を出力インターフェイスに表示し、前記情報システムのシステム構成のうち前記各要素いずれかに該当するものについて、対応要素をデータに含むメタテンプレートの指定を入力インターフェイスから受け付けて、ここで指定されたメタテンプレートの情報を記憶装置に格納するテンプレート特定処理と、前記記憶装置に情報を格納したメタテンプレート間において、外部エンティティが共通し、一方の攻撃対象が他方のエントリポイントとなる関係になるメタテンプレートの連なりを特定し、この連なりを構成する各メタテンプレート群の情報を、外部エンティティによる攻撃経路のパターンとして記憶装置に格納する経路特定処理と、攻撃経路に対応するメタテンプレート群が含む各メタテンプレートから、外部エンティティ、エントリポイント、および攻撃対象の各データを読み出して、これらを攻撃経路の始点から終点の方向で順次連結させることで脅威の記述データを生成する脅威記述処理と、を実行することを特徴とする。
【００２０】
これによれば、外部エンティティ、エントリポイント、および攻撃対象等について記述したメタテンプレートが予め網羅的（外部エンティティ、エントリポイント、攻撃対象等の各要素の組合せパターンを全て用意）に記憶装置にて用意されており、例えば、セキュリティ設計担当者がごく少人数であっても、入力インターフェイスから前記メタテンプレートのうち設計対象の情報システムが含む事象に該当要素があるメタテンプレートを選択することで（情報システムのシステム構成について、作業担当者等の多寡やスキルの違いなどによる設計・認識ミス等は少ないとされている）、セキュリティ設計装置側で攻撃方法（攻撃経路、通過方法）、脅威、セキュリティ対策方針を効率的かつ漏れ少なく導出することとなる。このことは、システムセキュリティ設計時あるいは再設計時に行なう脅威抽出およびセキュリティ対策方針立案の工数削減および、作業担当者の多寡やスキルに影響を受けにくい均質的な設計結果の取得を実現できる。したがって、セキュリティ設計対象に関する攻撃方法および脅威の特定を効率的かつ確実に行える。
【００２１】
また、本発明のセキュリティ設計プログラムは、情報システムに関するセキュリティ設計を行うべく、情報システムに対する攻撃主体たる外部エンティティと、前記外部エンティティが前記情報システムに対し攻撃を行う際の侵入口たるエントリポイントと、前記侵入口から情報システムに侵入した前記外部エンティティが目標とする攻撃対象とを対応付けたデータであるメタテンプレートを、外部エンティティ、エントリポイント、攻撃対象の各要素の組合せパターン毎に記憶する記憶装置を備えたコンピュータに、前記記憶装置に記憶された前記メタテンプレートの情報を出力インターフェイスに表示し、前記情報システムのシステム構成のうち前記各要素いずれかに該当するものについて、対応要素をデータに含むメタテンプレートの指定を入力インターフェイスから受け付けて、ここで指定されたメタテンプレートの情報を記憶装置に格納するテンプレート特定ステップと、前記記憶装置に情報を格納したメタテンプレート間において、外部エンティティが共通し、一方の攻撃対象が他方のエントリポイントとなる関係になるメタテンプレートの連なりを特定し、この連なりを構成する各メタテンプレート群の情報を、外部エンティティによる攻撃経路のパターンとして記憶装置に格納する経路特定ステップと、攻撃経路に対応するメタテンプレート群が含む各メタテンプレートから、外部エンティティ、エントリポイント、および攻撃対象の各データを読み出して、これらを攻撃経路の始点から終点の方向で順次連結させることで脅威の記述データを生成する脅威記述ステップと、を実行させるプログラムである。
【００２２】
これによれば、外部エンティティ、エントリポイント、および攻撃対象等について記述したメタテンプレートが予め網羅的（外部エンティティ、エントリポイント、攻撃対象等の各要素の組合せパターンを全て用意）に記憶装置にて用意されており、例えば、セキュリティ設計担当者がごく少人数であっても、入力インターフェイスから前記メタテンプレートのうち設計対象の情報システムが含む事象に該当要素があるメタテンプレートを選択することで（情報システムのシステム構成について、作業担当者等の多寡やスキルの違いなどによる設計・認識ミス等は少ないとされている）、セキュリティ設計装置側で攻撃方法（攻撃経路、通過方法）、脅威、セキュリティ対策方針を効率的かつ漏れ少なく導出することとなる。このことは、システムセキュリティ設計時あるいは再設計時に行なう脅威抽出およびセキュリティ対策方針立案の工数削減および、作業担当者の多寡やスキルに影響を受けにくい均質的な設計結果の取得を実現できる。したがって、セキュリティ設計対象に関する攻撃方法および脅威の特定を効率的かつ確実に行える。
【００２３】
その他、本願が開示する課題、及びその解決方法は、発明の実施の形態の欄、及び図面により明らかにされる。
【発明の効果】
【００２４】
本発明によれば、セキュリティ設計対象に関する攻撃方法および脅威の特定を効率的かつ確実に行える。
【発明を実施するための最良の形態】
【００２５】
−−−定義について−−−
はじめに、本実施形態で使用する用語について定義する。情報システムに対する攻撃の目標を攻撃対象、この攻撃対象を攻撃する主体を外部エンティティ、外部エンティティが攻撃対象を攻撃する際の侵入口をエントリポイントと定義する。これら３つの用語は、後述するメタテンプレートに関する用語であり、前記用語を総称して３要素としている。これに対し、セキュリティ設計対象の情報システム全体では、攻撃の目標を「資産」（攻撃される側から見れば保護すべき対象となるもの）、攻撃をする主体は「脅威エージェント」と呼ぶこととする。また、外部の人も攻撃者としてシステムに関与する可能性があるため、本実施例ではシステムの関与者として外部の第三者等も含むものとする。
【００２６】
また、本実施形態のセキュリティ設計方法を実施して得られるセキュリティ設計データを、後に再利用可能なひな形として意味で「テンプレート」と称する。このテンプレートは、セキュリティ設計において再利用可能なデータであり、システム構成図、資産、関与者、３要素組合せツリー（ツリー表示データ）、資産−脅威−セキュリティ対策方針の対応関係、リスク値、をセットにしたものとする。
【００２７】
また、「メタテンプレート」は、上記テンプレート（セキュリティ設計データ）を作成するための部品群であり、メタテンプレートを組合わせてセキュリティ設計方法に使用することでテンプレート（セキュリティ設計データ）を効率的に作成可能とする。このメタテンプレートは、ある１つのエントリポイントに注目し、そのエントリポイントにアクセスできる一番近くにある外部エンティティと、その外部エンティティがエントリポイントを通過して一番最初に到達する目標を攻撃対象とした３要素（攻撃対象、エントリポイント、外部エンティティ）の組合せ単位で作成するものとする。
【００２８】
−−−装置構成−−−
図１は、システムセキュリティ設計装置１００の概略構成図である。本装置１００は、装置内の各ハードウェアを制御しプログラムを実行するＣＰＵ１０４、入出力を制御する端末入出力制御装置１０５、バス１０３、メモリ１０１、ディスク１０２（ハードディスクドライブなど）、入出力画面を表示するディスプレイ１０６、入力を受付けるキーボード１０７、他機器と接続するための通信ハードウェア１０８から構成される。
【００２９】
ここで、前記メモリ１０１には、作成するテンプレートに関する情報を設定させるテンプレート情報取得処理部１１１（テンプレート特定処理、システム構成取得処理を実行）、システム構成図をもとに３要素組合せツリーを生成する３要素組合せツリー生成処理部１１２（経路特定処理を実行）、３要素組合せツリーとメタテンプレートを用いて脅威を導出する脅威導出処理部１１３（脅威記述処理を実行）、脅威のリスク値を算出するリスク評価処理部１１４（リスク算定処理を実行）、脅威に対抗するために実施すべきセキュリティ対策方針を導出するセキュリティ対策方針導出処理部１１５、テンプレート作成の作業結果をテンプレートとして登録するテンプレート登録処理部１１６（格納処理を実行）、セキュリティ設計対象システムのカテゴリ情報を設定させるカテゴリ情報取得処理部１１７（カテゴリ受付処理を実行）、カテゴリ情報をもとにテンプレートを選択するテンプレート選定処理部１１８（設計データ選択処理を実行）、選択したテンプレートを補正するテンプレート補正処理部１１９（修正受付処理を実行）、セキュリティ設計の作業結果をセキュリティ設計データとして保存するセキュリティ設計データ保存処理部１２０（変更特定処理を実行）が格納されている。この各処理部はプログラムとして実現されることを想定する。
【００３０】
また、ハードディスクドライブなどの不揮発性記憶装置たるディスク１０２は、攻撃対象・エントリポイント・外部エンティティの３要素に関して、想定されうる全ての３要素組合せのパターンが格納されている３要素組合せ一覧シート１３１、前記３要素組合せ一覧シートに記載されている３要素組合せ単位でエントリポイントの通過方法および攻撃対象への攻撃方法とこれらに対抗するためのセキュリティ対策方針が格納されているメタテンプレート１３２、業種やシステムタイプ等のカテゴリ毎に分類して格納されたテンプレート１３３、テンプレート識別子とテンプレートのカテゴリ情報との対応関係が格納されているテンプレート識別子−カテゴリ情報の対応関係１３４、セキュリティ設計の結果であるセキュリティ設計データ１３５、テンプレート作成を支援するテンプレート作成支援プログラム１３６、テンプレートを利用したセキュリティ設計を行なうシステムセキュリティ設計プログラム１３７を記憶している。
【００３１】
なお、本実施例は、図１に示す構成だけに限定せず、前記処理部を分担して備える複数のシステムセキュリティ設計装置が、前記ディスク１０２内のテンプレートおよびメタテンプレートを複数の装置で共有可能なデータベース（テンプレートＤＢと呼ぶ）に格納し、システムセキュリティ設計装置らとテンプレートＤＢとをネットワークで接続した形態も採用可能とする。このような形態の場合、前記テンプレートＤＢを複数の装置で共有できるので、テンプレートおよびメタテンプレートの蓄積・洗練を効率化できる。
【００３２】
なお、これまで示した  システムセキュリティ設計装置１００における各処理部１１１〜１２０等は、ハードウェアとして実現してもよいし、メモリやＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）などの適宜な記憶装置に格納したプログラムとして実現するとしてもよい。この場合、前記ＣＰＵ１０４がプログラム実行に合わせて記憶装置より該当プログラムをメモリ１０１に読み出して、これを実行することとなる。
【００３３】
−−−メタテンプレート−−−
図２は、システムセキュリティ設計装置１００で使用する３要素組合せ一覧シート１３１のデータ構造である。このデータ構造において、列２０１はメタテンプレート識別子、列２０２は外部エンティティ、列２０３はエントリポイント、列２０４は攻撃対象を示す。同じ行の外部エンティティとエントリポイントと攻撃対象が１つの組合せになっており、この３要素の組合せ１つに対してメタテンプレート識別子が１つ割り当てられている。なお、３要素は抽象度や分け方等によって変わるものであり、図２に示した３要素はあくまで具体例であって本実施形態ではこれに限定しないものとする。
【００３４】
図３はシステムセキュリティ設計装置１００で使用するメタテンプレート１３２のデータ構造である。メタテンプレート１３２は、ある３要素組合せ単位で作成し、（１）エントリポイントの通過方法とそれに対するセキュリティ対策方針と、（２）攻撃対象への攻撃方法とそれに対するセキュリティ対策方針、がそれぞれ記載されている。
【００３５】
図３（ａ）に示すデータ３０１は、メタテンプレートの識別子とそれに対応する３要素の組合せを示すデータであり、同図（ｂ）に示すデータ３１１は、前記（１）エントリポイントの通過方法とそれに対するセキュリティ対策方針、同図（ｃ）に示すデータ３２２は前記（２）攻撃対象への攻撃方法とそれに対するセキュリティ対策方針を示すデータとなる。
【００３６】
前記データ３１１において、列３１２は脅威エージェントの持つエントリポイントの通過権限、列３１３は外部エンティティによるエントリポイントの通過方法、列３１４は列３１３の通過方法に対抗するためのセキュリティ対策方針を示す。なお、列３１３の通過方法および列３１４のセキュリティ対策方針は、列３１２の通過権限の有無によって２つに分けている。また、列３１４はセキュリティ対策方針を適用する対象（外部エンティティ、エントリポイント、攻撃対象）毎に分類している。
【００３７】
一方、データ３２１において、列３２２は攻撃対象への攻撃方法、列３２３は列３２２の攻撃方法に対抗するためのセキュリティ対策方針を示す。なお、列３２３は列３１４と同様に、セキュリティ対策方針を適用する対象（外部エンティティ、エントリポイント、攻撃対象）毎に分類している。例えば、図３に示す例では、外部エンティティが「アプリケーションソフト」、エントリポイントが「ＯＳ」、攻撃対象が「データ」の３要素組合せのメタテンプレートを示しており、エントリポイントの通過権限を持たない外部エンティティの場合、エントリポイントの通過方法として「不正なアプリケーションソフトがデータにアクセスし」があり、それに対するエントリポイント（ＯＳ）のセキュリティ対策方針として「アクセス制御」があることを示す。
【００３８】
なお、図４〜図６においても同様に、システムセキュリティ設計装置１００で使用するメタテンプレート１３２のデータ構造を示している。図４の例では、外部エンティティが「ノードに触れる人」、エントリポイントが「ノード」、攻撃対象が「アプリケーションソフト」の３要素組合せのメタテンプレートを示し、図５の例では、外部エンティティが「ドアに触れる人」、エントリポイントが「ドア」、攻撃対象が「ノード」の３要素組合せのメタテンプレートを示し、図６の例では、外部エンティティが「ドアに触れる人」、エントリポイントが「ドア」、攻撃対象が「ドア（前記エントリポイントを通過後に現れるドア）」の３要素組合せのメタテンプレートを示している。
【００３９】
−−−セキュリティ設計対象の例−−−
図７は、本実施形態でのセキュリティ設計対象となる情報システムに関する、システム構成の概要を示したものである。この例での情報システムのシステム構成は、物理的な領域として「建屋」と「オフィス」と「サーバ室」とがそれぞれ分かれており、「」オフィス」内には「クライアント端末」、「サーバ室」には「公開サーバ」と「内部サーバ」の２つが設定されている。一方、ネットワークはＤＭＺ（DeMilitarized Zone）と内部ＮＷに分かれており、ＤＭＺがインターネットに接続されている。そして、ＤＭＺには「公開サーバ」、内部ＮＷには「内部サーバ」と「クライアント端末」が接続されている。
【００４０】
−−−テンプレート類−−−
図８〜図１１は、システムセキュリティ設計装置１００で使用するテンプレート１３３およびセキュリティ設計データ１３５のデータ構造の一部である。なお、テンプレート１３３およびセキュリティ設計データ１３５は、図８〜図１１以外に、システム構成データ（図１７、図１８）と、３要素組合せツリー（図２０）がある。
【００４１】
図８は、資産−脅威−セキュリティ対策方針の対応関係データを示したものである。このデータにおいて、列８０１は資産、列８０２は脅威の識別子、列８０３は脅威要素の識別子、列８０４は脅威エージェントの識別子あるいはメタテンプレートの識別子、列８０５は列８０２の脅威を表現するための要素である脅威要素、列８０６は列８０４および列８０５に対応する外部エンティティ／エントリポイント／攻撃対象、列８０７は列８０６の外部エンティティ／エントリポイント／攻撃対象に対して実施するセキュリティ対策方針を示す。
【００４２】
なお、列８０２の脅威は、列８０５の脅威要素を前記データ中の上から順番に繋げることによって表現する。例えば、脅威Ｔ１は「外部の第三者が、ドア（建屋）を不正に開けて内部のドア（オフィス）を触り、ドア（オフィス）を不正に開けて内部のドア（サーバ室）を触り、ドア（サーバ室）を不正に開けて内部のノード（内部サーバ）を触り、ノード（内部サーバ）に不正にログインしてアプリケーションソフト（内部サーバ）にアクセスし、正規のアプリケーションソフトが正規の権限でデータ（内部サーバ）にアクセスし、データ（内部サーバ）を変更する」という脅威となる。
【００４３】
また、列８０７においては、外部エンティティ／エントリポイント／攻撃対象とセキュリティ対策方針との対応関係が「○」の場合、列８０２の脅威に対抗するためには外部エンティティ／エントリポイント／攻撃対象でセキュリティ対策方針を実施することが有効であることを意味する。逆に「−」の場合はセキュリティ対策方針が有効でないことを意味する。例えば、脅威要素Ｔ１＿６の「ＯＳ（内部サーバ）」とセキュリティ対策方針Ｏｂ２（ユーザの識別・認証）との対応関係が「○」なので、脅威Ｔ１に対して内部サーバのＯＳでアクセス制御することは有効であることを示している。
【００４４】
図９は、図８の列８０４に示した脅威エージェント（関与者）を示したものである。列９０１は脅威エージェントの識別子、列９０２は脅威エージェントの名称、列９０３は列９０２の脅威エージェントの持つエントリポイントの通過権限を示す。列９０３では、「○」が通過権限があること、「−」が通過権限がないことを示す。例えば、管理者はドア（建屋）を通過する権限を持っていることを示している。
【００４５】
図１０は、図８の列８０２に示した脅威のリスク値を示したものである。列１００１は脅威の識別子、列１００２は脅威発生時の被害の大きさ（資産の価値）、列１００３は脅威の発生頻度、列１００４は脆弱性の大きさ、列１００５はリスク値を示す。なお、リスク値は、列１００２、列１００３、列１００４に記載された３つの値を掛け算した値とする。
【００４６】
図１１は、図８の列８０７に示したセキュリティ対策方針の識別子の詳細を示したものである。列１１０１はセキュリティ対策方針の識別子、列１１０２はセキュリティ対策方針を示す。
【００４７】
図１２は、システムセキュリティ設計装置で使用するテンプレート識別子−カテゴリ情報の対応関係１３４のデータ構造である。列１２０１はテンプレート識別子、列１２０２はテンプレートの名称、列１２０３はテンプレートのカテゴリ情報を示す。なお、列１２０３では、「○」がテンプレートとカテゴリ情報との間に対応関係があること、「−」が対応関係がないことを示す。また、本実施例では、カテゴリを２つに大別しており、１つめは業務で「自治体」、「金融」、２つめはシステムタイプで「情報収集」、「情報発信」、「情報収集・発信」というカテゴリを用意している。ただし、これらはあくまで一例であり、他にも様々なカテゴリが考えられる。
【００４８】
以上が本方式によるシステムセキュリティ設計装置における構成とデータ構造の概要である。
【００４９】
−−−処理例−−−
次に、上記構成を持つシステムセキュリティ設計装置１００の動作説明と、出力結果の例を示す。本装置１００は、図１３に示すように、フェーズ１（テンプレート作成）と、フェーズ２（フェーズ１で作成したテンプレートを用いたテンプレート利用セキュリティ設計）の２つから構成されている。フェーズ１は、システム構成、資産、関与者、および、メタテンプレートを入力データとし、テンプレートを出力するものである。一方、フェーズ２は、設計対象システムのカテゴリ情報、システム構成、資産、関与者、テンプレートおよびメタテンプレートを入力データとし、セキュリティ設計データを出力するものである。以下では、これらを順番に説明する。
【００５０】
−−−フェーズ１−−−
まずはフェーズ１のテンプレート作成フェーズについて説明する。図１４はシステムセキュリティ設計装置１００におけるテンプレート作成支援プログラム１３６の動作を説明するためのフローチャート図である。まず始めに、テンプレート情報取得処理部１１１が、テンプレート作成のために必要な情報（システム構成、資産、関与者）をキーボード１０７など入力インターフェイスを介して作業者に設定させる（ステップ１４０１）。システム構成の設定に際しては、物理構成と論理構成について図１７に示す入力画面をディスプレイ１０６など出力インターフェイスに表示して設定を受付ける。
【００５１】
前記物理構成の設定では、物理的な領域（サーバ室等）、これらの物理的な領域間の境界（ドア等）、物理的な領域内に存在するノード（内部サーバ等）、ノード内に存在するコンポーネント（記憶装置等）の設定を受付ける。具体的には、図１７に示す画面上のタブ１７０１の押下を以て、入力領域１７０３を表示し、システム構成の部品群１７０４（領域、境界、ノード、コンポーネント）を用いた作図指示を受付ける。例として、図７に示したシステム構成の物理構成を図示したものを図１７の入力領域１７０３に示した。
【００５２】
一方、論理構成の設定では、論理的な領域（内部ＮＷ等）、これらの論理的な領域間の境界（ファイアウォール等）、論理的な領域に存在するノード（内部サーバ等）、ノード内に存在するコンポーネント（ＯＳ等）の設定を受付ける。具体的には、図１７に示す画面上のタブ１７０２を押下を以て、入力領域１７０３を表示し、システム構成の部品群１７０４を用いた作図指示を受付ける。例として、図７に示したシステム構成の論理構成を図示したものを図１８の入力領域１７０３に示した。
【００５３】
また、資産の設定では、図１７に示す入力画面において、例えば、配置した領域・境界・ノード・コンポーネントの枠を太くする作図指示を受付けることで、それが資産であることの設定を受付ける。例えば、図１８に示す入力画面では、クライアント端末内のデータ、内部サーバ内のデータ、公開サーバ内のデータ、を資産として設定している。
【００５４】
さらに、関与者の設定では、脅威エージェントとなりうるものの設定を受付ける。例えば、図７に示したシステム構成では、関与者として「管理者」（サーバ室に入ってサーバを管理できる人）、「一般従業員」（サーバ室に入れないがオフィス内でクライアント端末を操作できる人）、「外部の第三者」（前記２つ以外の人）がいるので、これらの設定を受付けることとなる。
【００５５】
次に、３要素組合せツリー生成処理部１１２は、前記ステップ１４０１で設定した情報を用いて３要素組合せツリーを自動生成する（ステップ１４０２）。このステップは（１）〜（２）の処理に分かれており、これらを以下に説明する。
【００５６】
（１）まず、システム構成図（図１７，１８等）で設定された資産と、システム構成図における関係からその資産のある場所名（領域名あるいはノード名）を特定する。そして、括弧で場所名を付加したものを資産名とすることで、資産名を一覧表にした資産リストを作成する。例えば、図１８のシステム構成図では内部サーバ内のデータを資産として設定しているので、システム構成図からこのデータは「内部サーバ」に存在することが分かるので、「データ（内部サーバ）」という資産名にして資産リストに入れる。
【００５７】
（２）次に、前記資産リストの中から、１つずつ資産を選択・入力して処理Ａをそれぞれ実行する。処理Ａのフローチャートを図１５に示す。まず、処理Ａの入力データである資産を攻撃対象とみなす（ステップ１５０１）。そして、攻撃対象とみなしたものと同じ攻撃対象が含まれる３要素組合せを、３要素組合せ一覧シートの中から検索・抽出する（ステップ１５０２）。更に、前記ステップ１５０２で抽出した３要素組合せが１つでもあるかどうかを判定し、１つでもある場合にはステップ１５０４へ、１つもない場合には処理Ａを終了する（ステップ１５０３）。
【００５８】
また、前記ステップ１５０２で抽出した３要素組合せが、システム構成図に存在するかどうかを判別する（ステップ１５０４）。そして、前記抽出した３要素組合せがシステム構成図に１つでも存在する場合にはステップ１５０６へ、１つも存在しない場合には処理Ａを終了する（ステップ１５０５）。
【００５９】
次に、前記ステップ１５０２で抽出した３要素組合せについて、システム構成図を用いて場所名（領域名あるいはノード名）を特定し、その場所名を括弧内に追記することで３要素を具体化して図示する（ステップ１５０６）。そして、ステップ１５０７にて、本ステップを通過するのが１回目かどうかを判別し、１回目であればステップ１５０９へ、２回目以降であればステップ１５０８に進む。
【００６０】
続いて、１つ前に図示した３要素組合せと、今回図示した３要素組合せとの間を、前者側を指した矢印の線で結ぶ（ステップ１５０８）。また、図示した３要素組合せの外部エンティティを攻撃対象とみなす（ステップ１５０９）。ただし、外部エンティティが人あるいは通信データの場合にはエントリポイントも攻撃対象とみなす。このステップ１５０９の実施後に前記ステップ１５０２に戻る。
【００６１】
なお、処理Ａの具体例としては、資産として「データ（内部サーバ）」を選択・入力した場合について説明する。なお、図１９は具体例の作業イメージで、図２０は生成した３要素組合せツリーである。前記ステップ１５０１〜１５０３では、「データ（内部サーバ）」を攻撃対象と見なし（図１９の１９０１）、これに対して「データ」、「ＯＳ」、「アプリケーションソフト」という３要素組合せを抽出した（図１９の１９０２）。次に、前記ステップ１５０４〜１５０６では、図１８のシステム構成図を用いると、内部サーバにはデータ、ＯＳ、アプリケーションソフトが存在することが分かるため、それぞれ場所名を追記することで具体化し（図１９の１９０３）、図示した（図２０の１９０３）。次に、通過が１回目なのでステップ１５０７からステップ１５０９に進み、ステップ１５０９では、「アプリケーションソフト（内部サーバ）」を攻撃対象と見なし（図１９の１９０４）、さらに前記ステップ１５０２〜１５０６を繰り返すことで図２０の３要素組合せツリーにおけるメタテンプレートの情報１９０７と１９０８を図示できる。そして、通過が２回目なのでステップ１５０７からステップ１５０８に進み、ステップ１５０８では、図２０のメタテンプレートの情報１９０７から１９０３に矢印を向けた線、および、図２０のメタテンプレートの情報１９０８から１９０３に矢印を向けた線を結ぶ。これらの作業を処理Ａが終了するまで繰り返すことで、図２０に示した３要素組合せツリーが完成できる。
【００６２】
続いて、脅威導出処理部１１４が、前記ステップ１４０２で生成した３要素組合せツリーを用いて、想定される脅威を導出する（ステップ１４０３）。このステップは（１）〜（３）の処理に分かれており、これらを以下に説明する。  
（１）まず、関与者を脅威エージェントとみなして、３要素組合せツリーに存在する各エントリポイントのルール上の通過権限を、前記キーボード１０７など入力インターフェイスを介して脅威エージェント毎に設定を受付ける（設定例を図９に示す）。  
（２）次に、前記ステップ１４０２の（１）で作成した資産リスト内の資産と、脅威エージェントとの全組合せを作成する。  
（３）そして、（２）で作成した組合せの中から、１つずつ選択・入力して処理Ｂをそれぞれ実行する。処理Ｂのフローチャートを図１６に示す。
【００６３】
このフローチャートではまず、処理Ｂの入力データである脅威エージェントと、３要素組合せツリーの末端にある３要素組合せの外部エンティティとを対応付けさせる（ステップ１６０１）。次に、処理Ｂの入力データである資産と、前記ステップ１６０１で対応付けた外部エンティティと、３要素組合せツリーとを用いることで、外部エンティティを始点として３要素組合せツリーの矢印に沿って資産に辿り着く経路（これが攻撃経路となる）を全て洗い出す（ステップ１６０２）。
【００６４】
次に、前記ステップ１６０２で洗い出した攻撃経路のうち、まだ脅威を記述していないものを１つ選択する（ステップ１６０３）。そして、前記ステップ１６０３で選択した攻撃経路が通過する３要素組合せを特定し、この３要素組合せに対応するメタテンプレートを特定する（ステップ１６０４）。
【００６５】
次に、脅威エージェント、脅威エージェントのエントリポイントの通過権限を用いて、前記ステップ１６０４で特定したメタテンプレート記載の「エントリポイントの通過方法」を特定する（ステップ１６０５）。さらに、攻撃経路の終点に対応するメタテンプレートに記載された「攻撃対象への攻撃方法」を特定する。そして、これらを攻撃経路に沿って繋ぎ合わせることで攻撃方法を導出する。なお、１つのメタテンプレートにエントリポイントの通過方法、あるいは、攻撃対象への攻撃方法が複数ある場合には、それぞれ１つずつ選択して繋ぎ合わせる。
【００６６】
次に、処理Ｂの入力データである資産および脅威エージェントと、前記ステップ１６０５で導出した攻撃方法を用いることで、脅威の記述を作成する（ステップ１６０６）。次に、選択していない攻撃経路があるかどうかを判定し、あればステップ１６０２に戻り、なければ処理Ｂを終了する（ステップ１６０７）。
【００６７】
なお、処理Ｂの具体例としては、資産と脅威エージェントの組合せとして、「データ（内部サーバ）」と「外部の第三者」を選択・入力した場合について説明する。なお、図２１は具体例の作業イメージである。まず、ステップ１６０１では、本例では脅威エージェントが「外部の第三者」なので、これは図２０の末端にある３要素組合せ（図２０の２００３）の外部エンティティである「ドアに触れる人（建屋）」に対応付けることができる。次に、ステップ１６０２では、外部エンティティである「ドアに触れる人（建屋）」から資産である「データ（内部サーバ）」までの経路（攻撃経路）として、図２０の２００３→２００２→２００１→１９０８→１９０３が洗い出せる。次に、ステップ１６０３〜１６０６では、この攻撃経路上の３要素組合せとして、図２１に示すように、３要素組合せ２００３に対してメタテンプレートＭ２３、３要素組合せ２００２に対してメタテンプレートＭ２３、３要素組合せ２００１に対してメタテンプレートＭ２１、３要素組合せ１９０８に対してメタテンプレートＭ１３、３要素組合せ１９０３に対してメタテンプレートＭ１１が特定できる。そして、図９に示すエントリポイントの通過権限から、脅威エージェントである「外部の第三者」はこれら全てのエントリポイントに対して通過権限を持たないため、３要素組合せ２００３に対応するメタテンプレートＭ２３の中から、通過権限なしのエントリポイント通過方法（図６の列３１３の一番下）を抽出する（図２１の２１１２）。他についても同様に、図２１の２１１３〜２１１６に示すエントリポイントの通過方法を抽出する。さらに、資産「データ（内部データ）」のある３要素組合せ１９０３に対応するメタテンプレートＭ１１からは、攻撃対象への攻撃方法（図３の列３２２）を抽出する（図２１の２１１７）。ここでは攻撃対象への攻撃方法が３つあるので、本例では「データを変更する」を抽出した。これらに脅威エージェント「外部の第三者」を加えて（図２１の２１１１）、図２１の２１１１〜２１１７まで繋げることによって、「外部の第三者が、ドア（建屋）を不正に開けて内部のドア（オフィス）を触り、ドア（オフィス）を不正に開けて内部のドア（サーバ室）を触り、ドア（サーバ室）を不正に開けて内部のノード（内部サーバ）を触り、ノード（内部サーバ）に不正にログインしてアプリケーションソフト（内部サーバ）にアクセスし、正規のアプリケーションソフトが正規の権限でデータ（内部サーバ）にアクセスし、データ（内部サーバ）を変更する」という脅威を記述できる。
【００６８】
なお、前記ステップ１４０１〜１４０３では、システム構成図を設定させる手段と、システム構成図を入力として３要素組合せツリーを自動生成する手段と、３要素組合せツリーを入力として脅威を導出する手段について説明したが、これらはあくまで１つの具体例であって本発明では実施例に記載した手段に限定しない。
【００６９】
例えば、３要素組合せツリーを図示することは必須ではなく、３要素組合せと、各３要素組合せ間の繋がりの有無と攻撃方向をデータ化できればよい。また、システム構成図を指定された方法で描く必要も無く、システム構成に関する情報を参照しつつ、対象システムに存在する３要素組合せと、各３要素組合せ間の繋がりの有無と攻撃方向をデータ化できる手段であれば良い。例えば、これらのデータを手動で設定する手段でもよく、３要素組合せ一覧シートの３要素組合せ群を選択候補として表示して、その中からシステムに存在する３要素組合せを手動で選択させ、その選択させた各３要素組合せ間の繋がりの有無と攻撃方向を手動で設定させる方法がある。
【００７０】
続いて、リスク評価処理部１１５は、リスク評価のためのデータ（脅威発生時の被害の大きさ、脅威の発生頻度、脆弱性の大きさ）に関する設定を、それぞれ３段階のランク（１、２、３）で受け付けて、これら３つのランク値を乗算することで各脅威のリスク値を算出する（ステップ１４０４）。
【００７１】
次に、セキュリティ対策方針導出処理部１１６は、処理Ｂにおけるステップ１６０５で特定した「エントリポイントの通過方法」と「攻撃対象への攻撃方法」を入力とし、これらに対するセキュリティ対策方針をメタテンプレートから抽出する。そして、ステップ１４０４で算出したリスク値を用いて、これらのセキュリティ対策方針の中から、ユーザに指定させた許容するリスク値以上の脅威に対応するセキュリティ対策方針を特定する（ステップ１４０５）。
【００７２】
また、セキュリティ対策方針抽出の具体例を、処理Ｂの具体例で示した脅威を用いて説明する。この脅威には、エントリポイントの通過方法として「ドア（建屋）を不正に開けて内部のドア（オフィス）を触り」が含まれており、これはメタテンプレートＭ２３の図６の列３１３の一番下から抽出したものである。これに対応するセキュリティ対策方針は図６の列３１４の一番下に記載されており、エントリポイント（ドア）に適用するセキュリティ対策方針として「入退室管理」「ドアの施錠」を抽出できる。さらに、その他のエントリポイントの通過方法および攻撃対象への攻撃方法に対するセキュリティ対策方針も同様の手順で抽出する。
【００７３】
最後に、テンプレート登録処理部１１７が、これまでの作業結果（システム構成図、資産、関与者、３要素組合せツリー、資産−脅威−セキュリティ対策方針の対応関係、リスク値）をテンプレート１３３として、業種やシステムタイプ等のカテゴリ情報を追加してディスク１０２に登録する（ステップ１４０６）。
【００７４】
−−−フェーズ２−−−
続いて、テンプレート利用セキュリティ設計フェーズについて説明する。図２２はシステムセキュリティ設計装置１００におけるシステムセキュリティ設計プログラム１３７の動作を説明するためのフローチャート図である。まず始めに、カテゴリ情報取得処理部１１８は、図２３に示すカテゴリ情報の設定画面をディスプレイ１０６などの出力インターフェイスに表示し、これからセキュリティ設計を行なう対象システムの業種とシステムタイプの指定をキーボード１０７など入力インターフェイスで受付ける（ステップ２２０１）。なお、業種とシステムタイプの候補リスト（２３０２および２３０４）としては、図１２に示すテンプレート識別子−カテゴリ情報の対応関係１３４のカテゴリ情報１２０３に記載されたものを表示する。具体的には、業種には「自治体」「金融」、システムタイプには「情報収集」「情報発信」「情報収集・発信」を表示する。
【００７５】
次に、テンプレート選定処理部１１９は、図２３で指定された業種あるいはシステムタイプと部分的にでも一致するテンプレートを、テンプレート識別子−カテゴリ情報の対応関係１３４を用いて選定し、図２４に示すようなテンプレート選択画面にテンプレート選択候補として表示する。この画面においてテンプレート選択候補の中から、セキュリティ設計に利用するものを作業者に１つ選択させ、ボタン２４０７の押下を受付ける（ステップ２２０２）。
【００７６】
次に、テンプレート補正処理部１２０は、前記ステップ２２０２で選択されたテンプレート（システム構成図、資産、関与者、３要素組合せツリー、資産−脅威−セキュリティ対策方針の対応関係、リスク値）の補正を行なう（ステップ２２０３〜２２０７）。
【００７７】
まず、ステップ２２０３では、選択テンプレートのシステム構成図を表示した状態でシステム構成設定画面（図１７、１８）を表示し、これをセキュリティ設計対象の情報システムの構成や資産に応じて作業者に修正させる（キーボード１０７など入力インターフェイスで受付）ことで、システム構成図および資産の設定を受付ける。また、選択テンプレートの関与者を修正させることで、セキュリティ設計対象の情報システムにおける関与者の設定を受付ける。また、選択テンプレートのシステム構成図と資産と関与者の修正箇所をそれぞれ記録する。
【００７８】
次に、ステップ２２０４では、修正したシステム構成図を入力データとし、前記フェーズ１の前記ステップ１４０２と同じ処理を行なうことで、３要素組合せツリーを自動的に生成する。また、生成した３要素組合せツリーの中で、前記ステップ２２０３で記録した修正箇所に対応する箇所を特定し、その部分を３要素組合せツリーの修正箇所として記録する。
【００７９】
次に、ステップ２２０５では、修正した３要素組合せツリーを入力データとし、前記フェーズ１の前記ステップ１４０３と同じ処理を行なうことで、想定される脅威を自動的に導出する。本ステップでは、導出した脅威の中で、前記ステップ２２０４で記録した修正箇所に対応する箇所を特定し、その部分を脅威の修正箇所として記録する。
【００８０】
次に、ステップ２２０６では、修正した脅威を対象にして、リスク評価のためのデータ追加設定を受付ける。さらに、設定済みのリスク評価のためのデータについても、作業者による見直し結果を受付ける。これらのデータをもとに、前記フェーズ１の前記ステップ１４０４と同じ処理を行なうことで、リスク値を算出する。
【００８１】
そしてテンプレート補正の最後であるステップ２２０７では、前記ステップ２２０５で修正した脅威と、ステップ２２０６で算出したリスク値を入力データとし、前記フェーズ１の前記ステップ１４０５と同じ処理を行なうことでセキュリティ対策方針を導出する。
【００８２】
最後に、セキュリティ設計データ保存処理部１２０が、これまでの作業結果（システム構成図、資産、関与者、３要素組合せツリー、資産−脅威−セキュリティ対策方針の対応関係、リスク値）をセキュリティ設計データ１３５としてディスク１０２に保存する（ステップ２２０８）。こうして、セキュリティ設計データたるテンプレートの生成と再利用とが繰り返し行われ、カテゴリ毎にテンプレートの数や種類の増大、更には再利用の繰り返しによるテンプレート内容の洗練（多くの実例に沿ってテンプレート内容の修正が繰り返され設計精度向上）が行われていく。
【００８３】
本実施形態によれば、外部エンティティ、エントリポイント、および攻撃対象等について記述したメタテンプレートが予め網羅的（外部エンティティ、エントリポイント、攻撃対象等の各要素の組合せパターンを全て用意）に記憶装置にて用意されており、例えば、セキュリティ設計担当者がごく少人数であっても、入力インターフェイスから前記メタテンプレートのうち設計対象の情報システムが含む事象に該当要素があるメタテンプレートを選択することで（情報システムのシステム構成について、作業担当者等の多寡やスキルの違いなどによる設計・認識ミス等は少ないとされている）、セキュリティ設計装置側で攻撃方法（攻撃経路、通過方法）、脅威、セキュリティ対策方針を効率的かつ漏れ少なく導出することとなる。このことは、システムセキュリティ設計時あるいは再設計時に行なう脅威抽出およびセキュリティ対策方針立案の工数削減および、作業担当者の多寡やスキルに影響を受けにくい均質的な設計結果の取得を実現できる。したがって、セキュリティ設計対象に関する攻撃方法および脅威の特定を効率的かつ確実に行える。
【００８４】
以上、本発明の実施の形態について、その実施の形態に基づき具体的に説明したが、これに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
【図面の簡単な説明】
【００８５】
【図１】本実施形態に係るシステムセキュリティ設計装置のシステム構成図である。
【図２】３要素組合せ一覧シート１３１を説明するための図である
【図３】メタテンプレート１３２の例（メタテンプレート識別子Ｍ１１）を示した図である。
【図４】メタテンプレート１３２の例（メタテンプレート識別子Ｍ１３）を示した図である。
【図５】メタテンプレート１３２の例（メタテンプレート識別子Ｍ２１）を示した図である。
【図６】メタテンプレート１３２の例（メタテンプレート識別子Ｍ２３）を示した図である。
【図７】テンプレート作成対象のシステム構成の概要を示した図である。
【図８】テンプレート１３３およびセキュリティ設計データ１３５における資産−脅威−セキュリティ対策方針の対応関係を格納するデータ構造を説明するための図である。
【図９】図８に示した脅威エージェントを説明するための図である。
【図１０】図８に示した脅威のリスク値を説明するための図である。
【図１１】図８に示したセキュリティ対策方針を説明するための図である。
【図１２】テンプレート識別子−カテゴリ情報の対応関係１３４を説明するための図である。
【図１３】システムセキュリティ設計装置におけるフェーズ１およびフェーズ２の全体イメージを示した図である。
【図１４】図１のテンプレート作成支援プログラム１３６の動作を説明するためのフローチャート図である。
【図１５】図１４の処理Ａを示したフローチャート図である。
【図１６】図１４の処理Ｂを示したフローチャート図である。
【図１７】図１４のステップ１４０１で設定するシステム構成図の入力画面を示した図である。
【図１８】図１７の入力領域１７０３において、タブ１７０２を押下したときの図である
【図１９】図１５の処理Ａにおける処理の具体例を示した図である。
【図２０】図１５の処理Ａで生成した３要素組合せツリーの具体例を示した図である。
【図２１】図１６の処理Ｂにおける処理の具体例を示した図である。
【図２２】図１に示すシステムセキュリティ設計プログラム１３７の動作を説明するためのフローチャート図である。
【図２３】図２２のステップ２２０１のカテゴリ情報の設定画面を示した図である。
【図２４】図２２のステップ２２０２のテンプレート選択画面を示した図である。
【符号の説明】
【００８６】
１００  システムセキュリティ設計装置
１０１  メモリ
１０２  ディスク
１０３  バス
１０４  ＣＰＵ
１０５  端末入出力制御部
１０６  ディスプレイ
１０７  キーボード
１０８  通信ハードウェア
１１１  テンプレート情報取得処理部
１１２  ３要素組合せツリー生成処理部
１１３  脅威導出処理部
１１４  リスク評価処理部
１１５  セキュリティ対策方針導出処理部
１１６  テンプレート登録処理部
１１７  カテゴリ情報取得処理部
１１８  テンプレート選定処理部
１１９  テンプレート補正処理部
１２０  セキュリティ設計データ保存処理部
１３１  ３要素組合せ一覧シート
１３２  メタテンプレート
１３３  テンプレート
１３４  テンプレート識別子−カテゴリ情報の対応関係
１３５  セキュリティ設計データ
１３６  テンプレート作成支援プログラム
１３７  システムセキュリティ設計プログラム
【図１】
2009070084.tif 000003
【図２】
2009070084.tif 000004
【図３】
2009070084.tif 000005
【図４】
2009070084.tif 000006
【図５】
2009070084.tif 000007
【図６】
2009070084.tif 000008
【図７】
2009070084.tif 000009
【図８】
2009070084.tif 000010
【図９】
2009070084.tif 000011
【図１０】
2009070084.tif 000012
【図１１】
2009070084.tif 000013
【図１２】
2009070084.tif 000014
【図１３】
2009070084.tif 000015
【図１４】
2009070084.tif 000016
【図１５】
2009070084.tif 000017
【図１６】
2009070084.tif 000018
【図１７】
2009070084.tif 000019
【図１８】
2009070084.tif 000020
【図１９】
2009070084.tif 000021
【図２０】
2009070084.tif 000022
【図２１】
2009070084.tif 000023
【図２２】
2009070084.tif 000024
【図２３】
2009070084.tif 000025
【図２４】
2009070084.tif 000026