(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6959624
(24)【登録日】2021年10月12日
(45)【発行日】2021年11月2日
(54)【発明の名称】セキュリティアセスメントシステム
(51)【国際特許分類】
G06F 21/57 20130101AFI20211021BHJP
【FI】
G06F21/57 370
【請求項の数】10
【全頁数】16
(21)【出願番号】特願2020-547018(P2020-547018)
(86)(22)【出願日】2018年3月14日
(65)【公表番号】特表2021-515942(P2021-515942A)
(43)【公表日】2021年6月24日
(86)【国際出願番号】JP2018010015
(87)【国際公開番号】WO2019176021
(87)【国際公開日】20190919
【審査請求日】2020年9月4日
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(73)【特許権者】
【識別番号】518286264
【氏名又は名称】ビー.ジー.ネゲブ テクノロジーズ アンド アプリケーションズ リミテッド, アット ベン‐グリオン ユニバーシティー
(74)【代理人】
【識別番号】100077838
【弁理士】
【氏名又は名称】池田 憲保
(74)【代理人】
【識別番号】100129023
【弁理士】
【氏名又は名称】佐々木 敬
(72)【発明者】
【氏名】井ノ口 真樹
(72)【発明者】
【氏名】太田 和伸
(72)【発明者】
【氏名】ビットン,ロン
(72)【発明者】
【氏名】スタン,オルリー
(72)【発明者】
【氏名】シャブタイ,アサフ
(72)【発明者】
【氏名】エロビッチ,ユヴァル
【審査官】
金木 陽一
(56)【参考文献】
【文献】
米国特許出願公開第2014/0337000(US,A1)
【文献】
米国特許出願公開第2014/0137257(US,A1)
【文献】
米国特許出願公開第2007/0129926(US,A1)
【文献】
米国特許第7904962(US,B1)
【文献】
LEMAY, A., et al.,An isolated virtual cluster for SCADA network security research,Proceedings of 1st International Symposium for ICS & SCADA Cyber Security Research 2013 (ICS-CSR 2013) [online],2013年09月16日,Retrived from the Internet: <URL: https://www.scienceopen.com/hosted-document?doi=10.14236/ewic/ICSCSR2013.10> [Retrieved on 2021-08-31]
【文献】
GREEN, B., et al.,Pains, Gains and PLCs: Ten Lessons from Building an Industrial Control Systems Testbed for Security Research,Proceedings of 10th USENIX Workshop on Cyber Security Experimentation and Test (CSET 17) [online],2017年08月14日,Retrieved from the Internet: <URL: https://www.usenix.org/conference/cset17/workshop-program/presentation/green> [Retrieved on 2021-08-31]
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/57
(57)【特許請求の範囲】
【請求項1】
複数の物理的コンポーネントを備えるアセスメント対象システムを複製する複製環境を提供するように構成されたセキュリティアセスメントシステムであって、
前記複製環境を設計するためにユーザによって指定された制約条件に基づいて、前記アセスメント対象システムの前記物理的コンポーネントを再現するための、シミュレーションサブモジュール、エミュレーションサブモジュール、および物理的サブモジュールの何れか1つを示す、複製レベルを選択して、複製環境設計を示す設計結果を出力する複製環境設計回路部と、
前記設計結果に基づいて、前記複製レベルの1つによって複製されたコンポーネントを備える、前記複製環境を構築するように構成された複製環境構築回路部と、
を備えるセキュリティアセスメントシステム。
【請求項2】
前記シミュレーションサブモジュールは、前記物理的コンポーネントの仕様と前記物理的コンポーネントの機能の挙動モデルとの少なくとも1つから成り、
前記エミュレーションサブモジュールは、仮想マシンを使用して前記物理的コンポーネントを再現するソフトウェアから成り、
前記物理的サブモジュールは、前記アセスメント対象システムにおける前記物理的コンポーネントと物理的に類似する少なくも1つの物理的マシンから成る、
請求項1に記載のセキュリティアセスメントシステム。
【請求項3】
前記セキュリティアセスメントシステムは、
複数の仕様を示す複数の文書と複数の挙動モデルとを格納する文書/モデルデータベースと、
複数の仮想マシンを格納する仮想マシンプールと、
複数の物理的マシンを格納する物理的マシンプールと、
を更に備え、
前記複製環境構築回路部は、
前記文書/モデルデータベースから前記シミュレーションサブモジュールに、少なくとも1つの文書および/または少なくも1つの挙動モデルを格納し、
前記仮想マシンプールから前記エミュレーションサブモジュールに、少なくとも1つの仮想マシンを構成および格納し、
前記仮想マシンと前記物理的マシンプール内の前記物理的マシンとの間に少なくとも1つのネットワークを構成する、
ように構成されている、請求項2に記載のセキュリティアセスメントシステム。
【請求項4】
前記セキュリティアセスメントシステムは、
前記複製環境において前記仮想マシンおよび/または前記物理的マシンに対してアクティブにスキャンおよび/またはペンテストをして、アクティブスキャン/ペンテストの結果を出力するように構成された、アクティブスキャン/ペンテスト回路部と、
前記アクティブスキャン/ペンテストの結果に基づいて、前記エミュレーションサブモジュールおよび前記物理的サブモジュールにおける各コンポーネントの脆弱性を抽出して、前記抽出した脆弱性を示すリストを生成するように構成された、脆弱性アセスメント回路部と、
前記アクティブスキャン/ペンテストの結果に基づいて、攻撃グラフを生成するように構成された、攻撃グラフ生成回路部と、
を更に備え、
前記複製環境設計回路部は、前記リストと前記攻撃グラフとの少なくとも一方に基づいて、前記複製レベルを選択するように構成されている、
請求項2又は3に記載のセキュリティアセスメントシステム。
【請求項5】
前記セキュリティアセスメントシステムは、
前記制約条件、前記仕様、前記挙動モデル、前記仮想マシン間、前記仮想マシンと前記物理的マシンとの間、および前記物理的マシン間のチャンネル上の任意の信号を入力するように構成された、入力インターフェースと、
前記入力、前記仕様の内容、および前記仮想マシン間、前記仮想マシンと前記物理的マシンとの間、および前記物理的マシンの間の通信情報に応答して、前記挙動モデルの応答を出力するように構成された、出力インターフェースと、
を更に備える請求項2乃至4のいずれか1つに記載のセキュリティアセスメントシステム。
【請求項6】
複数の物理的コンポーネントを備えるアセスメント対象システムを複製する複製環境を提供するために、情報処理装置によって実行される、方法であって、
前記複製環境を設計するためにユーザによって指定された制約条件に基づいて、前記アセスメント対象システムの前記物理的コンポーネントを再現するための、シミュレーションサブモジュール、エミュレーションサブモジュール、および物理的サブモジュールの何れか1つを示す、複製レベルを選択して、複製環境設計を示す設計結果を出力し、
前記設計結果に基づいて、前記複製レベルの1つによって複製されたコンポーネントを備える、前記複製環境を構築する、
方法。
【請求項7】
前記シミュレーションサブモジュールは、前記物理的コンポーネントの仕様と前記物理的コンポーネントの機能の挙動モデルとの少なくとも1つから成り、
前記エミュレーションサブモジュールは、仮想マシンを使用して前記物理的コンポーネントを再現するソフトウェアから成り、
前記物理的サブモジュールは、前記アセスメント対象システムにおける前記物理的コンポーネントと物理的に類似する少なくも1つの物理的マシンから成る、
請求項6に記載の方法。
【請求項8】
前記方法は、更に、
前記複製環境において前記仮想マシンおよび/または前記物理的マシンに対してアクティブにスキャンおよび/またはペンテストをして、アクティブスキャン/ペンテストの結果を出力し、
前記アクティブスキャン/ペンテストの結果に基づいて、前記エミュレーションサブモジュールおよび前記物理的サブモジュールにおける各コンポーネントの脆弱性を抽出して、前記抽出した脆弱性を示すリストを生成し、
前記アクティブスキャン/ペンテストの結果に基づいて、攻撃グラフを生成し、
前記選択することは、前記リストと前記攻撃グラフとに基づいて、前記複製レベルを選択する、
請求項7に記載の方法。
【請求項9】
コンピュータに、複数の物理的コンポーネントを備えるアセスメント対象システムを複製する複製環境を提供するように実行させるセキュリティアセスメントプログラムであって、前記セキュリティアセスメントプログラムは、前記コンピュータに、
前記複製環境を設計するためにユーザによって指定された制約条件に基づいて、前記アセスメント対象システムの前記物理的コンポーネントを再現するための、シミュレーションサブモジュール、エミュレーションサブモジュール、および物理的サブモジュールの何れか1つを示す、複製レベルを選択して、複製環境設計を示す設計結果を出力する工程と、
前記設計結果に基づいて、前記複製レベルの1つによって複製されたコンポーネントを備える、前記複製環境を構築する工程と、
を実行させるセキュリティアセスメントプログラム。
【請求項10】
前記シミュレーションサブモジュールは、前記物理的コンポーネントの仕様と前記物理的コンポーネントの機能の挙動モデルとの少なくとも1つから成り、
前記エミュレーションサブモジュールは、仮想マシンを使用して前記物理的コンポーネントを再現するソフトウェアから成り、
前記物理的サブモジュールは、前記アセスメント対象システムにおける前記物理的コンポーネントと物理的に類似する少なくも1つの物理的マシンから成る、
請求項9に記載のセキュリティアセスメントプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、セキュリティアセスメントシステムに関し、特に、OT(オペレーション・テクノロジー)システムセキュリティ用の要求のような攻撃パスを検出するために必要な、セキュリティアセスメントシステムに関する。
【背景技術】
【0002】
OTは、バルブやポンプなどの物理的な装置の直接監視および/または制御によって物理的な工程の変化を検出したり引き起こしたりするための専用のハードウェアとソフトウェアである。OTは、発電所の制御システムや
鉄道システムの制御ネットワークのような、システムの物理的な状態を監視または改造するためのコンピュータの使用法である。
【0003】
セキュリティアセスメント用の関連技術において、実際のシステムに対するアクティブスキャン、ペンテストに基づくアセスメントや、実ハードウェアを使用することによって完全に複製されたシステム上のアセスメントがある。
【0004】
この技術において知られているように、デジタルツインとは、種々の目的のために使用され得る、物理的な資産、プロセス、およびシステムのデジタルレプリカを指す。デジタル表現は、要素と、モノのインターネット装置がどのように動作し、そのライフサイクルにおいてどのように生きているかの動力学と、の両方を提供する。
【0005】
デジタルツインは、人工知能、機械学習、およびデータでのソフトウェア解析を統合して、それらの物理的なよく似たものの変化として更新および変化する、生き写しのデジタルシミュレーションモデルを作成する。デジタルツインは、連続的に多数の源からそれ自身を学習、更新して、そのよく似た実時間の状態、仕事状況および位置を表す。
【0006】
本発明に関連する種々の技術が知られている。
【0007】
特許文献1は、セキュリティ支援・評価装置を開示している。特許文献1において、セキュリティ支援・評価装置を構築するためのセキュリティ評価・構築支援プログラムは、外部記憶装置に格納されている。CPUが、メモリにロードされたプログラムを実行することにより、施策リスト生成部、セキュリティ評価部、および入出力制御部を、プロセスとして実現する。施策リスト生成部は、操作者が指定した対象システムの構成機器各々に施すべきセキュリティ施策のリストを作成する。セキュリティ評価部は、操作者から受け付けた対象システムの構成機器各々に施すべきセキュリティ施策の実施の有無の情報に基づいて、当該対象システムのセキュリティ状態を評価する。入出力制御部は、入力装置や表示装置を制御して操作者から各種指示を受け付けたり、施策リスト生成部やセキュリティ評価部からの出力を表示する。
【0008】
特許文献2は、予測モデルの予測精度を向上させる予測システムを開示している。特許文献2に開示された予測システムは、センサと、ユーザ端末と、情報提供サーバとを備える。情報提供サーバは、取得部と、情報格納部と、モデル格納部と、モデル決定部と、予測部と備える。モデル決定部は、取得部によって取得された因子の種類に基づいて、現在の予測に用いられるモデルを決定する。モデル決定部は、モデル格納部に格納された各モデルの制約条件と、取得部により取得された情報とを比較して、取得部により取得された情報を用いて利用できる1以上のモデルを抽出してもよい。モデル決定部は、予測精度及び計算時間の少なくとも一方が最も優れているモデルを、予測部において利用されるモデルとして決定する。
【0009】
特許文献3は、利用者の利便性の向上を実現させるシンクライアントシステムを開示している。特許文献3に開示されたシンクライアントシステムは、サーバと、クライアントとを有し、それらはネットワークを介して互いに接続されている。サーバは、ポインタの入力情報が所定条件を満たすか否かを判定する。入力情報が所定条件を満たしている場合、サーバは、クライアントの複製した仮想マシンを作成する。
【0010】
特許文献4は、ICエミュレータを使用して処理能力の向上を図ることにより、そのシミュレーションの範囲を拡大し、ハードウェアの開発に並行してオペレーティング・システムやアプリケーション・プログラムの開発を行うことができるデジタル回路設計支援システムを開示している。特許文献4に開示されたデジタル回路設計支援システムは、また、回路素子が搭載された実際のプリント板をモデリングに加えて、ハードウェアの動作開発、検証、ソフトウェアの開発、デバッグ等を行うことができる。シミュレーション対象となるデジタルシステムにおいて、種々のモデリング手法を用いてシミュレーション/エミュレーションを行うことによってシステム開発を進めることができる。言語で表現された機能モデル、言語で表現された構造モデル、エミュレーション・モデル、あるいは実際のPCB(プリント回路基板)、実チップ等を開発段階、開発対象等に応じて自在に切り換え、シミュレータあるいはハードウェアで構成されたエミュレータを用いてシミュレーション/エミュレーションを行うことができる。
【先行技術文献】
【特許文献】
【0011】
【特許文献1】特開2001−101135号公報(US6,971,026)
【特許文献2】特開2016−146039号公報
【特許文献3】特開2013−171545号公報
【特許文献4】特開平09−193077号公報
【発明の概要】
【発明が解決しようとする課題】
【0012】
上述した関連技術には問題がある。
【0013】
アクティブスキャンに基づくアセスメントは、OTシステムに対して適していない。何故なら、それは、システム上に影響を与える可能性があるからである。
【0014】
実際のシステムでのペンテストも、OTシステムに対して適していない。何故なら、それもまた、システム上に影響を与える可能があるからである。
【0015】
実ハードウェアを使用して完全に複製したシステム上のアセスメントは、高価すぎる。何故なら、実際のシステムにおいて使用される実ハードウェアが複製されるからである。
【0016】
要約すると、上記関連技術は、低価格で、OTシステムに影響を与えない、正確なアセスメントを達成ことができない。実際のOTシステム上のアクティブスキャンは、禁止される。他方、パッシブスキャン結果は、攻撃パスを正確に決定するには十分でない。加えて、あるコンポーネントは、モデル化され得ない。
【0017】
本発明に関連する上述した種々の技術にも問題がある。
【0018】
特許文献1は、単に、操作者に高度な専門的知識がなくとも、操作者が、システムのセキュリティ状態を評価したり、システムのセキュリティ施策の作成を支援することを可能にする、セキュリティ支援・評価システムを開示しているに過ぎない。特許文献1は、デジタルツインを開示も示唆もしていない。
【0019】
特許文献2は、単に、予測モデルにおける予測精度を向上させる予測システムを開示しているに過ぎない。特許文献2でも、デジタルツインを開示も示唆もしていない。
【0020】
特許文献3は、単に、利用者の利便性を向上せることができるシンクライアントシステムを開示しているに過ぎない。特許文献3において、クライアントの複製した仮想マシンは、単に、利用者の利便性を向上させるために作成される。特許文献3は、決して、正確なアセスメントを達成することを目的としていない。
【0021】
特許文献4は、単に、ICエミュレータを使用して処理能力の向上を図ることにより、そのシミュレーションの範囲を拡大し、ハードウェアの開発に並行してオペレーティング・システムやアプリケーション・プログラムの開発を行うことができるデジタル回路設計支援システムを開示しているに過ぎない。特許文献4は、どのようにしてシミュレータやエミュレータを構成するのかを、開示も示唆もしていない。換言すれば、特許文献4において、シミュレータおよびエミュレータとして、現存するものが使用される。
【0022】
要約すると、本願発明に関連する上述した種々の技術もまた、低価格で、OTシステムに影響を与えない、正確なアセスメントを達成することができない。
【課題を解決するための手段】
【0023】
本発明の一様態として、セキュリティアセスメントシステムは、複数の物理的コンポーネントを備えるアセスメント対象システムを複製する複製環境を提供するように構成される。セキュリティアセスメントシステムは、前記複製環境を設計するためにユーザによって指定された制約条件に基づいて、前記アセスメント対象システムの前記物理的コンポーネントを再現するための、シミュレーションサブモジュール、エミュレーションサブモジュール、および物理的サブモジュールの何れか1つを示す、複製レベルを選択して、複製環境設計を示す設計結果を出力する複製環境設計回路部と、前記設計結果に基づいて、前記複製レベルの1つによって複製されたコンポーネントを備える、前記複製環境を構築するように構成された複製環境構築回路部と、を備える。
【発明の効果】
【0024】
本発明の典型的な効果は、ゼロリスクセキュリティアセスメント用の低価格な複製環境を提供できる。
【図面の簡単な説明】
【0025】
【
図1】本発明の第1の実施形態に係るセキュリティアセスメントシステムの構成例を示すブロック図である。
【
図2】
図1に図示されたセキュリティアセスメントシステムに使用される、複製環境設計モジュールの動作を示すフロー図である。
【
図3】
図1に図示されたセキュリティアセスメントシステムに使用される、複製環境構築モジュールの動作を示すブロック図である。
【
図4】
図1に図示されたセキュリティアセスメントシステムに使用される、複製環境の動作を示すブロック図である。
【
図5】本発明の第2の実施形態に係るセキュリティアセスメントシステムの構成例を示すブロック図である。
【
図6】
図5に図示されたセキュリティアセスメントシステムに使用される、複製環境構成モジュールと、文書/モデルDB、仮想マシンプール、および物理的マシンプールとの間の関係を示すブロック図である。
【
図7】本発明の第3の実施形態に係るセキュリティアセスメントシステムの構成例を示すブロック図である。
【
図8】
図7に図示されたセキュリティアセスメントシステムの全体的な動作を示すフロー図である。
【発明を実施するための形態】
【0026】
[第1の実施形態]
次に、本発明の第1の実施形態について説明する。
【0027】
図1は、本発明の第1の実施形態に係るセキュリティアセスメンシステム10の構成例を示すブロック図である。セキュリティアセスメントシステム10は、複数の物理的コンポーネントを備えるアセスメント対象システム(図示せず)を複製する、複製環境200を提供するように構成される。複製環境200は、上述したデジタルツインとして働く。セキュリティアセスメントシステム10は、処理ユニット100と、ユーザインターフェース(UI)400とを備える。処理ユニット100は、複製環境設計モジュール110と、複製環境構築モジュール120とを備える。ユーザインターフェース400は、入力インターフェース410と、出力インターフェース420とを備える。
【0028】
図示の例において、複製環境200は、シミュレーションサブモジュール210と、エミュレーションサブモジュール220と、物理的サブモジュール230とから成る。シミュレーションサブモジュール210は、物理的コンポーネントの仕様302または物理的コンポーネントの機能の挙動モデル304である。入力インターフェース410は、仕様302および/または挙動モデル304を、処理ユニット100へ供給する。エミュレーションサブモジュール220は、VM(仮想マシン)を使用して物理的コンポーネントを再現するソフトウェアから成る。物理的サブモジュール230は、アセスメント対象システムにおける物理的コンポートと物理的に類似する、物理的マシンから成る。
【0029】
詳述すると、シミュレーションサブモジュール210において、物理的コンポーネントの仕様302は、ハードウェア/ソフトウェアと物理的コンポーネントが持つ版とのリストから成る。物理的コンポーネントの仕様302は、典型的には、例えば、ベンダによって提供される仕様や、情報がCPE(Common Product Enumeration)に従って統合された仕様であってよい。物理的コンポーネントの仕様302は、脆弱性スキャナによって発見された脆弱性情報を持ってもよい。シミュレーションサブモジュール210は、ソフトウェアおよびハードウェアの各々の詳細仕様を階層的に持ってもよい。
【0030】
シミュレーションサブモジュール210において、挙動モデル304は、挙動が決定される通信プロトコル等に関係し、挙動を記述するモジュールや挙動に関連づけられたドキュメントから成る。特に、挙動モデル304は、RFC(Request for Comments)のような物理的コンポーネントの挙動を定める挙動文書や、上記挙動文書に基づいて記述された入力に対する応答をまとめることによって得られた文書であってよい。挙動モデル304は、挙動の数学的なモデルであってもよい。例えば、通信プロトコルは、状態遷移図やペトリネットによって記述することができる。挙動モデル304は、入力に対する応答のみを再現するソフトウェアであってもよい。しかしながら、物理的コンポーネントにおける内部状態の挙動を再現するソフトウェアは、次に述べるようなエミュレーションサブモジュール220によって扱われる。
【0031】
エミュレーションサブモジュール220において、物理的コンポーネントは、VMによって再現される。すなわち、エミュレーションサブモジュール220は、物理的コンポーネント内の内部状態の挙動を再現するソフトウェアから成る。エミュレーションサブモジュール220は、アセスメント対象システムと同一のソフトウェアを利用する。
【0032】
上述したように、物理的サブモジュール230は、アセスメント対象システム内の物理的コンポーネントと物理的に類似する、物理的マシンから成る。すなわち、物理的サブモジュール230において、アセスメント対象システム内の同じハードウェアが使用され、アセスメント対象システム内の同じソフトウェアが、その同じ構成で初期的に稼働する。
【0033】
図1に示されるように、複製環境設計モジュール110には、ユーザによって指定された拘束条件310と、システム情報320とが供給される。入力インターフェース
410は、複製環境設計モジュール110に、拘束条件310とシステム情報320とを供給する。拘束条件310は予算のような要件であってよい。複製環境設計モジュール110は、拘束条件310とシステム情報320とに従って、その物理的コンポートをシミュレーションサブモジュール210、エミュレーションサブモジュール220、または物理的サブモジュール230によって診断すべきかを判断し、複製環境設計を示す設計結果330を生成する。出力インターフェース420は設計結果330を出力する。複製環境構築モジュール120は、後述するように、設計結果330に基づいて複製環境200を構築する。複製環境200は、他のソフトウェアや
ユーザ(セキュリティ専門家、ペンテスタ)のための複製環境を提供する。
【0034】
図2を参照して、複製環境設計モジュール110の動作について説明する。複製環境設計モジュール110は、少なくともユーザによって指定された拘束条件310に基づいて、アセスメント対象システムにおける各物理的コンポーネント用の複製レベルを決定する。上述したように、拘束条件310は、例えば、予算の要件であってよい。複製レベルは、シミュレーションサブモジュール210、エミュレーションサブモジュール220、および物理的サブモジュール230の1つを示す。アセスメント対象システムにおける各物理的コンポーネントに、予め、エミュレートされるべきコストが規定されているか、または物理的装置を作成しているとする。
【0035】
複製環境設計モジュール110は、次のように、アセスメント対象システムにおける各物理的コンポーネント用の複製レベルを決定する。
【0036】
最初に、複製環境設計モジュール110は、予算の最も安いコストの順番に、物理的サブモジュール230として物理的コンポーネントを決定する(ステップS201)。
【0037】
同様に、複製環境設計モジュール110は、予算の安い方のコストの順番に、エミュレーションサブモジュール220として物理的コンポーネントを決定する(ステップS202)。
【0038】
最後に、複製環境設計モジュール110は、他の物理的コンポーネントを、シミュレーションサブモジュール210として決定する(ステップS203)。
【0039】
次に
図3を参照して、複製環境構築モジュール120の動作について説明する。複製環境構築モジュール120は、ユーザに設計結果330を示すための外部インターフェース122を持ち、ユーザによって提供された、仕様302および/または挙動モデル304を格納する。
【0040】
複製環境構築モジュール120は、エミュレーション/物理的インターフェース(IF)240を介してエミュレーションサブモジュール(仮想マシン)220と物理的サブモジュール(物理的マシン)230との間の接続を構成する、複製環境
構成サブモジュール124を備える。
【0041】
次に
図4を参照して、複製環境200の動作について説明する。上述したように、複製環境200は、シミュレーションサブモジュール210と、エミュレーションサブモジュール220と、物理的サブモジュール230とから成る。
【0042】
ユーザインターフェース400は、アクティブスキャンまたはペネトレーションテストを含むセキュリティ診断を実行することができる。入力インターフェース410は、複製環境200におけるVMまたはHWの1つ以上のインターフェース用の任意の入力を実行する。詳述すると、入力インターフェース410は、VM間、VMと物理的マシンとの間、および物理的マシン間のチャンネル(仮想チャンネルを含む)上に任意の信号を入力してよい。エミュレーションサブモジュール220内の仮想マシンVM1およびVM2と物理的サブモジュール230内の物理的マシンとは、互いに、仮想的/物理的に、接続されている。複製環境200は、エミュレーションサブモジュール220と物理的サブモジュール230と間のエミュレーション/物理的インターフェース240を備える。
【0043】
出力インターフェース420は、入力に応答して、VMまたはHWにおける応答およびステージ変化を出力してよい。出力インターフェース420は仕様302の内容を出力してよい。出力インターフェース420は、VM間、VMと物理的マシンとの間、および物理的マシン間の通信情報(例えば、パケット捕捉)を出力してよい。複製環境200は、各サブモジュール210、220、230へのアクセスを提供する、外部インターフェース(IF)250を更に備える。外部インターフェース250を介して、ユーザは、エミュレーションサブモジュール220内の任意の仮想マシンVM1、VM2および物理的サブモジュール230内の物理的マシンをアクセスすることができ、仮想マシンVM1、VM2と物理的サブモジュール230内の物理的マシンとの間で通信することができる。したがって、ユーザは、各マシンまたは通信の挙動を観察し、悪意のあるファイルを入力し、悪意のあるパケットを送信する、等をする。セキュリティアセスメントシステム10は、入力インターフェース410と出力インターフェース420とを結合することによってチャンネル上にパケットを変えるように構成されてよい。例えば、セキュリティアセスメントシステム10は、出力インターフェース420から得られたパケットを編集して、編集したパケットを入力インターフェース410へ供給してもよい。
【0044】
本第1の実施形態によれば、ゼロリスクセキュリティアセスメント用の低価格複製環境200を提供することができる。
【0045】
セキュリティアセスメントシステム10内の処理ユニット100の各部は、ハードウェアとソフトウェアとの組み合わせを用いて実現すればよい。ハードウェアとソフトウェアとを組み合わせた形態では、RAM(random access memory)にセキュリティアセスメントプログラムが展開され、該セキュリティアセスメントプログラムに基づいて制御部(CPU(central processing unit))等のハードウェアを動作させることによって、各部を各種手段として実現する。セキュリティアセスメントプログラムは、記録媒体に記録されて頒布されても良い。当該記録媒体に記録されたセキュリティアセスメントプログラムは、有線、無線、又は記録媒体そのものを介して、メモリに読込まれ、制御部等を動作させる。尚、記録媒体を例示すれば、オプティカルディスクや磁気ディスク、半導体メモリ装置、ハードディスクなどが挙げられる。
【0046】
上記第1の実施形態を別の表現で説明すれば、セキュリティアセスメントシステム10内の処理ユニット100を、RAMに展開されたセキュリティアセスメントプログラムに基づき、複製環境設計モジュール110および複製環境構築モジュール120として動作するコンピュータとして実現することが可能である。
【0047】
[第2の実施形態]
次に、本発明の第2の実施形態について説明する。
【0048】
図5は、本発明の第2の実施形態に係るセキュリティアセスメントシステム10Aの構成例を示すブロック図である。セキュリティアセスメントシステム10Aは、上記大1の実施形態における処理ユニット100およびユーザインターフェース400に加えて、更に記憶装置500を備える。記憶装置500は、文書/モデルデータベース(DB)510と、仮想マシンプール520と、物理的マシンプール530とを備える。
【0049】
文書/モデルDB510は、仕様を示す文書と、複数の挙動モデルとを格納する。仮想マシンプール520は、複数の仮想マシンを格納する。物理的マシンプール530は、複数の物理的マシンを格納する。
【0050】
図6は、複製環境構築モジュール120と、文書/モデルDB510、仮想マシンプール520、および物理的マシンプール530との間の関係を示すブロック図である。
【0051】
複製環境
構築モジュール120は、設計結果330とシステム情報320とに基づいて、複製環境200を設定する。複製環境
構築モジュール120は、文書/モデルDB510からシミュレーションサブモジュール210に少なくとも1つの文書および/または少なくとも1つの挙動モデルを格納する。複製環境
構築モジュール120は、仮想マシンプール520からエミュレーションサブモジュール220に少なくとも1つの仮想マシンを構成し格納する。複製環境
構築モジュール120は、仮想マシンと物理的マシンプール530内の物理的マシンとの間の仮想ネットワーク(NW)532を構成する。
【0052】
本第2の実施形態によれば、複製環境200の構築/構成を規定することができる。
【0053】
セキュリティアセスメントシステム10A内の処理ユニット100の各部は、ハードウェアとソフトウェアとの組み合わせを用いて実現すればよい。ハードウェアとソフトウェアとを組み合わせた形態では、RAM(random access memory)にセキュリティアセスメントプログラムが展開され、該セキュリティアセスメントプログラムに基づいて制御部(CPU(central processing unit))等のハードウェアを動作させることによって、各部を各種手段として実現する。セキュリティアセスメントプログラムは、記録媒体に記録されて頒布されても良い。当該記録媒体に記録されたセキュリティアセスメントプログラムは、有線、無線、又は記録媒体そのものを介して、メモリに読込まれ、制御部等を動作させる。尚、記録媒体を例示すれば、オプティカルディスクや磁気ディスク、半導体メモリ装置、ハードディスクなどが挙げられる。
【0054】
上記第2の実施形態を別の表現で説明すれば、セキュリティアセスメントシステム10A内の処理ユニット100を、RAMに展開されたセキュリティアセスメントプログラムに基づき、複製環境設計モジュール110および複製環境構築モジュール120として動作するコンピュータとして実現することが可能である。
【0055】
[第3の実施形態]
次に、本発明の第3の実施形態について説明する。
【0056】
図7は、本発明の第3の実施形態に係るセキュリティアセスメントシステム10Bの構成例を示すブロック図である。セキュリティアセスメントシステム10Bは、処理ユニットが説明を進めるように記載されるように変形されている点を除いて、上記第1の実施形態におけるセキュリティアセスメントシステム10と同様の構成を有し動作をする。従って、処理ユニットを100Bで示す。処理ユニット10Bは、上記第1の実施形態における複製環境設計モジュール110および複製環境構築モジュール120に加えて、脆弱性アセスメントモジュール170、攻撃グラフ生成モジュール180、およびアクティブスキャン/ペンテストモジュール190を更に備える。
【0057】
アクティブスキャン/ペンテストモジュール190は、複製環境200におけるエミュレーションサブモジュール220の仮想マシンおよび/または物理的サブモジュール230の物理的マシンに対して、アクティブにスキャンおよび/またはペンテストをして、アクティブスキャン/ペンテストの結果を出力する。脆弱性アセスメントモジュール170は、アクティブスキャン/ペンテストの結果に基づいて、複製環境200における各コンポーネントの脆弱性を抽出して、抽出した脆弱性を示すリストを生成する。攻撃グラフ生成モジュール180は、アクティブスキャン/ペンテストの結果に基づいて、攻撃に利用される複製環境200におけるコンポーネントが判別識別な攻撃グラフを生成する。複製環境設計モジュール110は、リストと攻撃グラフとに基づいて複製レベルを選択する。セキュリティアセスメントシステム
10Bは、上記プロセスを繰り返し実行し、セキュリティアセスメント結果を詳細化する。
【0058】
次に、脆弱性アセスメントモジュール170、攻撃グラフ生成モジュール180、およびアクティブスキャン/ペンテストモジュール190の動作について詳細に説明する。
【0059】
脆弱性アセスメントモジュール170は、複製環境200における各コンポーネントについてどのような脆弱性があるかを調べる。典型的には、そのような調査は、既存の脆弱性情報データベースの情報とパッシブスキャンで取得したシステム情報とを照らし合わせることで実現できる。情報が不正確な場合、脆弱性アセスメントモジュール170は、本来は存在する脆弱性を見逃したり、存在しない脆弱性を大量に検出することがある。
【0060】
攻撃グラフ生成モジュール180は、攻撃者の攻撃手順をグラフ化した、攻撃グラフを生成する。典型的には、攻撃グラフは、ノードとして、システム状態を示すシステム状態ノードと、攻撃者状態を示す攻撃者状態ノードとを備える。攻撃グラフは、攻撃行動をとるために必要な条件となるシステム状態ノードから、対応する攻撃者状態ノードに、有向辺を備える。また、攻撃グラフは、攻撃者行動状態から、その攻撃者行動によって生み出される状態に、有向辺を備える。攻撃グラフは、どのホストが何通りの攻撃に利用されているかを示す情報や、攻撃にどの脆弱性が利用されるかを示す情報を提示する。
【0061】
アクティブスキャン/ペンテストモジュール190は、他のソフトウェアや他のユーザのために、複製環境200上のエミュレーションサブモジュール220および物理的サブモジュール230に再現されたコンポーネントに対し、アクティブスキャンやペネトレーションテストを行える、インターフェースを備える。また、アクティブスキャン/ペンテストモジュール190は、アクティブスキャンおよびペネトレーションテストの結果を入力させ、その結果を、脆弱性アセスメントモジュール170や攻撃グラフ生成モジュール180に通知するように構成された、インターフェースを備える。アクティブスキャン/ペンテストモジュール190に、アクティブスキャン機能とペネトレーションテスト機能とを持たせて、自動的にアクティブスキャンとペネトレーションテストとを実行させてもよい。例えば、アクティブスキャン/ペンテストモジュール190は、既存のアクティブスキャンツールおよび/または既存のペネトレーションテストツールを備えて、予め決められたアクティブスキャンおよび/または予め決められたペネトレーションテストを実行してもよい。既存のアクティブスキャンツールは、例えば、「Open VAS」であってよく、既存のペネトレーションテストツールは、例えば、「metasploit」であってよい。アクティブスキャン/ペンテストモジュール190は、公開されている脆弱性攻撃コードを収集して、アセスメント対象コンポーネントに対応する脆弱性攻撃コードを利用してペネトレーションテストを行うようにしてもよい。
【0062】
図8を参照して、セキュリティアセスメントシステム10Bの全体の動作について詳細に説明する。
【0063】
処理ユニット100Bには、入力インターフェース410から拘束条件310として、ユーザによって予算xと繰り返し回数nとが供給される(ステップS301)。
【0064】
引き続いて、複製環境設計モジュール110は、予算xを繰り返し回数nで割って、その割った値(x/n)を当該設計における予算とみなし、上記第1の実施形態と同様に複製環境を設計する(ステップS302)。上記第1の実施形態とは異なり、複製環境設計モジュール110は、脆弱性アセスメントモジュール170の結果(上記リスト)と、攻撃グラフ生成モジュール180の結果(攻撃グラフ)とを使うことができる。
【0065】
次に、複製環境構築モジュール120は、上記第1の実施形態と同様に複製環境200を構築し、ステップS301でのユーザとは異なってもよい、ユーザに複製環境200を提供する(ステップS303)。
【0066】
ユーザは、アクティブスキャン/ペンテストモジュール190を使用して、複製環境200に対してアクティブスキャンおよび/またはペネトレーションテストを行うことができる(ステップS304)。
【0067】
処理ユニット100Bは、予算が残っているか否かを判断する(ステップS305)。もし予算が残っていれば(ステップS305のYES)、処理をステップS302に戻す。もし予算が残っていなければ(ステップS305のNO)、処理を終了する。
【0068】
第3の実施形態によれば、アクティブスキャン/ペンテスト、脆弱性アセスメント、および攻撃グラフ生成を繰り返し行うことで、アセスメント結果を向上させることができる。
【0069】
セキュリティアセスメントシステム10B内の処理ユニット100Bの各部は、ハードウェアとソフトウェアとの組み合わせを用いて実現すればよい。ハードウェアとソフトウェアとを組み合わせた形態では、RAM(random access memory)にセキュリティアセスメントプログラムが展開され、該セキュリティアセスメントプログラムに基づいて制御部(CPU(central processing unit))等のハードウェアを動作させることによって、各部を各種手段として実現する。セキュリティアセスメントプログラムは、記録媒体に記録されて頒布されても良い。当該記録媒体に記録されたセキュリティアセスメントプログラムは、有線、無線、又は記録媒体そのものを介して、メモリに読込まれ、制御部等を動作させる。尚、記録媒体を例示すれば、オプティカルディスクや磁気ディスク、半導体メモリ装置、ハードディスクなどが挙げられる。
【0070】
上記第3の実施形態を別の表現で説明すれば、セキュリティアセスメントシステム10B内の処理ユニット100Bを、RAMに展開されたセキュリティアセスメントプログラムに基づき、複製環境設計モジュール110、複製環境構築モジュール120、脆弱性アセスメントモジュール170、攻撃グラフ生成モジュール180、およびアクティブスキャン/ペンテストモジュール190として動作するコンピュータとして実現することが可能である。
【0071】
実施形態を参照して本発明を説明したが、本発明はその実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【0072】
例えば、複製環境200におけるシミュレーションサブモジュール210、エミュレーションサブモジュール220、および物理的サブモジュール230は、典型的には、各ホスト(物理的装置)において決定されているが、本発明はこれに限定されない。ホストについて、シミュレーションサブモジュール210、エミュレーションサブモジュール220、および物理的サブモジュール230は、ホスト内のコンポーネントの各々が決定される。例えば、特定のソフトウェアのみがエミュレートされてもよい。この代わりに、NIC(Network Interface Card)のみが物理的サブモジュール230として構成されてよく、他が、他のハードウェア(HW)上の仮想マシン(VM)を動作することで実現されてよい。
【符号の説明】
【0073】
10,10A,10B セキュリティアセスメントシステム
100,100B 処理ユニット
110 複製環境設計モジュール
120 複製環境構築モジュール
122 外部IF
124 複製環境構成サブモジュール
170 脆弱性アセスメントモジュール
180 攻撃グラフ生成モジュール
190 アクティブスキャン/ペンテストモジュール
200 複製環境
210 シミュレーションサブモジュール
220 エミュレーションサブモジュール(仮想マシン)
230 物理的サブモジュール(物理的マシン)
240 エミュレーション/物理的IF
250 外部IF
310 拘束条件
320 システム情報
330 設計結果
400 ユーザインターフェース
410 入力インターフェース
420 出力インターフェース
500 記憶装置
510 文書/モデルDB
520 仮想マシンプール
530 物理的マシンプール
532 仮想NW