(57)【特許請求の範囲】
【請求項１】
リスク評価の対象システムを構成する機器、ネットワーク、および前記機器に関する脆弱性の各情報を互いに関連付けたデータベースを保持する記憶装置と、
前記機器、前記ネットワーク、および前記脆弱性の各情報を、グラフ理論に基づく所定アルゴリズムに適用して、前記対象システムを構成する機器と前記機器が保有する脆弱性をノードとし、前記ネットワーク情報が示す前記対象システムのネットワーク構成に基づいて、前記機器と前記脆弱性との間をアークで接続することで、ネットワーク上での各機器の配置に応じた脆弱性の影響関係について規定する非循環有向グラフを、リスク評価モデルとして作成し、前記非循環有向グラフを、ベイジアンネットワークの推論アルゴリズムに適用して、前記対象システムにおける脆弱性がもたらすリスクを評価し、当該評価結果を所定装置に出力する演算装置と、
を備えることを特徴とするリスク評価システム。
【請求項２】
前記演算装置は、
前記非循環有向グラフを作成するに際し、攻撃源となる所定機器を最上位ノードとし、前記攻撃源の所定機器からその他の各機器へ攻撃が届くまでのホップ数に応じて各機器をレベル分けし、上位レベルの機器から下位レベルの機器へのみアークを接続する制約条件に基づいて、前記非循環有向グラフを作成するものである、
ことを特徴とする請求項１に記載のリスク評価システム。
【請求項３】
前記演算装置は、
前記リスク評価モデルを、当該リスク評価モデルに対応する所定の推論アルゴリズムに適用し、前記対象システムにおける脆弱性がもたらすリスクとして、前記機器の各々が侵害される確率、前記脆弱性の各々が攻撃される確率、および、前記脆弱性の各々が前記機器に影響を与える確率、をそれぞれ算定し、当該算定した結果を所定装置に出力するものである、
ことを特徴とする請求項１に記載のリスク評価システム。
【請求項４】
リスク評価の対象システムを構成する機器、ネットワーク、および前記機器に関する脆弱性の各情報を互いに関連付けたデータベースを保持する記憶装置を備えた情報処理装置が、
前記機器、前記ネットワーク、および前記脆弱性の各情報を、グラフ理論に基づく所定アルゴリズムに適用して、前記対象システムを構成する機器と前記機器が保有する脆弱性をノードとし、前記ネットワーク情報が示す前記対象システムのネットワーク構成に基づいて、前記機器と前記脆弱性との間をアークで接続することで、ネットワーク上での各機器の配置に応じた脆弱性の影響関係について規定する非循環有向グラフを、リスク評価モデルとして作成し、前記非循環有向グラフを、ベイジアンネットワークの推論アルゴリズムに適用して、前記対象システムにおける脆弱性がもたらすリスクを評価し、当該評価結果を所定装置に出力する、
ことを特徴とするリスク評価方法。
【請求項５】
前記情報処理装置が、
前記非循環有向グラフを作成するに際し、攻撃源となる所定機器を最上位ノードとし、前記攻撃源の所定機器からその他の各機器へ攻撃が届くまでのホップ数に応じて各機器をレベル分けし、上位レベルの機器から下位レベルの機器へのみアークを接続する制約条件に基づいて、前記非循環有向グラフを作成する、
ことを特徴とする請求項４に記載のリスク評価方法。
【請求項６】
前記情報処理装置が、
前記リスク評価モデルを、当該リスク評価モデルに対応する所定の推論アルゴリズムに適用し、前記対象システムにおける脆弱性がもたらすリスクとして、前記機器の各々が侵害される確率、前記脆弱性の各々が攻撃される確率、および、前記脆弱性の各々が前記機器に影響を与える確率、をそれぞれ算定し、当該算定した結果を所定装置に出力する、
ことを特徴とする請求項４に記載のリスク評価方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、リスク評価システムおよびリスク評価方法に関するものであり、具体的には、脆弱性個々の技術的な特性に加え、システム構成やトポロジに基づいて脆弱性リスクを評価し、現実のシステム状況に対応した有効性の高いリスク評価を可能とする技術に関する。
【背景技術】
【０００２】
情報化社会では、多種多様なソフトウェアが存在し利用されている。一方で、そうしたソフトウェアが、プログラムの不具合や仕様の問題点などに起因するソフトウェア脆弱性を含むことは避けられず、同脆弱性を利用した標的型攻撃によるリスクを予め全て回避することも難しい。特に近年では、年間約５、０００件のソフトウェア脆弱性が発見、公開されており、そうした脆弱性を利用した悪意の攻撃者による攻撃量が、同脆弱性の情報が公開された直後から著しく増加する傾向にあることが報告されている。
【０００３】
そのため、情報システムを運用するシステム管理者は、上述のように発見、公開される膨大な脆弱性情報に関して、効率良く対策を実施していく必要がある。一般的に、脆弱性対策においては、対象となるシステムの情報と脆弱性情報とを取得し、両情報の関係性や、脆弱性情報がもたらすリスク等を評価して、これに基づいて有効な対策手段を立案し、実際に対策の適用が行われる。
【０００４】
しかし、個々のシステムにとって無関係な脆弱性情報も多く公開されるため、システム管理者が、対象システムに関する脆弱性情報を常に漏れなく収集し続けることは困難である。また、脆弱性がシステムにもたらすリスクはシステム構成次第であり、セキュリティ知識と共にシステム知識が必要なところ、システム管理者がそうした高度なセキュリティ知識を持たない場合、脆弱性がもたらすリスクを適切に評価することは困難である。
【０００５】
そこで、システム情報や脆弱性情報を収集、管理して、それら情報を正しく関連付けし、その脆弱性がシステムにもたらすリスクを評価する技術が必要となっている。このような、システムの脆弱性を管理、評価する従来技術としては、例えば、製品ＤＢ及び脆弱性キーワードＤＢに脆弱性の特性を示すキーワードを複数記憶させておき、キーワード抽出部が、脆弱性関連情報収集部により収集した脆弱性情報から、製品ＤＢ及び脆弱性キーワードＤＢに蓄積されているキーワードに合致するキーワードを抽出し、優先度判定部が、優先度判定ＤＢの内容に従い、キーワード抽出結果に基づいて脆弱性情報の優先度を判定し、出力部が優先度の判定結果を出力する情報処理装置（特許文献１参照）などが提案されている。この技術においては、製品情報と脆弱性情報からリスク評価することで、脆弱性対策の効率化を図っている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００７−０５８５１４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
従来技術においては、脆弱性情報と製品情報とを対応付けることで、膨大な脆弱性情報の中から管理対象のシステムに関係するものを選別し、同脆弱性情報が示す脆弱性の技術的な特性に基づいて、同システムに同脆弱性がもたらすリスクの評価を可能にしている。
【０００８】
しかしながら実際のシステムでは、技術的にはリスクが高い脆弱性であってもネットワーク境界面より守られているため対策が不要なケースも存在する。例えば、或る脆弱性に対して外部から容易にアクセス可能となっている機器と、同じ脆弱性を有するがネットワークの奥深くで守られている機器とを比較した場合、外部アクセスが容易な機器上の脆弱性に対して、対策を優先的に行うべきである。そのため、脆弱性リスク評価では、製品情報と脆弱性情報だけでなく、システム構成やトポロジについても踏まえた評価を行うことが望ましい。
【０００９】
そこで本発明の目的は、脆弱性個々の技術的な特性に加え、システム構成やトポロジに基づいて脆弱性リスクを評価し、現実のシステム状況に対応した有効性の高いリスク評価を可能とする技術を提供することにある。
【課題を解決するための手段】
【００１０】
上記課題を解決する本発明のリスク評価システムは、リスク評価の対象システムを構成する機器、ネットワーク、および前記機器に関する脆弱性の各情報を互いに関連付けたデータベースを保持する記憶装置と、前記機器、前記ネットワーク、および前記脆弱性の各情報を、グラフ理論に基づく所定アルゴリズムに適用して、前記対象システムを構成する機器と前記機器が保有する脆弱性をノードとし、前記ネットワーク情報が示す前記対象システムのネットワーク構成に基づいて、前記機器と前記脆弱性との間をアークで接続することで、ネットワーク上での各機器の配置に応じた脆弱性の影響関係について規定する非循環有向グラフを、リスク評価モデルとして作成し、前記非循環有向グラフを、ベイジアンネットワークの推論アルゴリズムに適用して、前記対象システムにおける脆弱性がもたらすリスクを評価し、当該評価結果を所定装置に出力する演算装置と、を備えることを特徴とする。
【００１１】
また、本発明のリスク評価方法は、リスク評価の対象システムを構成する機器、ネットワーク、および前記機器に関する脆弱性の各情報を互いに関連付けたデータベースを保持する記憶装置を備えた情報処理装置が、前記機器、前記ネットワーク、および前記脆弱性の各情報を、グラフ理論に基づく所定アルゴリズムに適用して、前記対象システムを構成する機器と前記機器が保有する脆弱性をノードとし、前記ネットワーク情報が示す前記対象システムのネットワーク構成に基づいて、前記機器と前記脆弱性との間をアークで接続することで、ネットワーク上での各機器の配置に応じた脆弱性の影響関係について規定する非循環有向グラフを、リスク評価モデルとして作成し、前記非循環有向グラフを、ベイジアンネットワークの推論アルゴリズムに適用して、前記対象システムにおける脆弱性がもたらすリスクを評価し、当該評価結果を所定装置に出力する、ことを特徴とする。
【発明の効果】
【００１２】
本発明によれば、脆弱性個々の技術的な特性に加え、システム構成やトポロジに基づいて脆弱性リスクを評価し、現実のシステム状況に対応した有効性の高いリスク評価が可能となる。
【図面の簡単な説明】
【００１３】
【図１】本実施形態におけるリスク評価システムを含むネットワーク構成例を示す図である。
【図２】本実施形態における管理対象機器の機能構成例を示す図である。
【図３】本実施形態における情報収集サーバの機能構成例を示す図である。
【図４】本実施形態におけるセキュリティナレッジ公開機関サーバの機能構成例を示す図である。
【図５】本実施形態におけるクライアントの機能構成例を示す図である。
【図６】本実施形態におけるリスク評価サーバの機能構成例を示す図である。
【図７】本実施形態におけるリスク評価システムを構成するコンピュータ装置のハードウェア構成例を示す図である。
【図８】本実施形態におけるデータベースに格納されるデータテーブル一覧を示す図である。
【図９】本実施形態におけるユーザ情報テーブルの例を示す図である。
【図１０】本実施形態におけるネットワーク情報テーブルの例を示す図である。
【図１１】本実施形態における機器情報テーブルの例を示す図である。
【図１２】本実施形態における脆弱性情報テーブルの例を示す図である。
【図１３】本実施形態における仮想パッチ情報テーブルの例を示す図である。
【図１４】本実施形態におけるリスク評価方法の手順例１を示すフロー図である。
【図１５】本実施形態におけるリスク評価方法の手順例２を示すフロー図である。
【図１６】本実施形態におけるリスク評価方法の手順例３を示すフロー図である。
【図１７】本実施形態における画面例１を示す図である。
【図１８】本実施形態におけるリスク評価方法の手順例４を示すフロー図である。
【図１９】本実施形態におけるリスク評価方法の手順例５を示すフロー図である。
【図２０】本実施形態におけるリスク評価方法の手順例６を示すフロー図である。
【図２１】本実施形態におけるリスク評価方法の手順例７を示すフロー図である。
【図２２】本実施形態におけるリスク評価方法の手順例８を示すフロー図である。
【図２３】本実施形態における非循環有向グラフの例を示す図である。
【図２４】本実施形態における条件付き確率表の例を示す図である。
【図２５】本実施形態における画面例２を示す図である。
【図２６】本実施形態におけるリスク評価方法の手順例９を示すフロー図である。
【図２７】本実施形態におけるリスク評価方法の手順例１０を示すフロー図である。
【図２８】本実施形態における画面例３を示す図である。
【発明を実施するための形態】
【００１４】
−−−システム構成−−−
【００１５】
以下に本発明の実施形態について図面を用いて詳細に説明する。図１は、本実施形態のリスク評価システム１０を含むネットワーク構成図である。図１に示すリスク評価システム１０は、脆弱性個々の技術的な特性に加え、システム構成やトポロジに基づいて脆弱性リスクを評価し、現実のシステム状況に対応した有効性の高いリスク評価を可能とするコンピュータシステムである。
【００１６】
図１に例示する本実施形態のリスク評価システム１０が含まれるネットワーク１０２には、リスク評価の対象システムを構成する管理対象機器１０１、情報収集サーバ１０３、セキュリティナレッジ公開機関サーバ１０４、データベース１０５、クライアント１０６、およびリスク評価サーバ１０７が接続されている。こうした装置らのうち、リスク評価システム１０は少なくともリスク評価サーバ１０７から構成され、このリスク評価サーバ１０７がデータベース１０５にアクセス可能であるとする。勿論、リスク評価システム１０がリスク評価サーバ１０７以外の装置らを適宜含んで構成されるとしてもよい。
【００１７】
上述のネットワーク１０２に接続された装置のうち、管理対象機器１０１は、システム管理者がリスク評価対象として管理するシステムすなわち対象システムを構成する機器であり、複数の管理対象機器１０１＿１〜１０１＿ｎを例示している。本実施形態において評価対象となるのは、この管理対象機器１０１が保有する脆弱性がもたらすリスクである。
【００１８】
また、情報収集サーバ１０３は、リスク評価の対象システム、すなわち上述の管理対象機器１０１に関する情報（システム情報。各管理対象機器１０１の識別情報、所属するネットワークに関する情報など）と、インターネット１０２＿２上でセキュリティナレッジ公開機関サーバ１０４によって公開されたセキュリティ情報（上述の管理対象機器１０１に関連する少なくとも脆弱性情報）を収集する機器である。一方、セキュリティナレッジ公開機関サーバ１０４は、インターネット１０２＿２上でセキュリティナレッジを公開している所定機関のサーバ装置である。このセキュリティナレッジ公開機関サーバ１０４の
運営機関の例としては、コンピュータウィルスの検知と対処など各種セキュリティ対策サービスを提供する企業や、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）の提供企業などが想定できる。こうした運用機関は、特定の情報処理装置やＯＳ、或いはソフトウェアに関して得ている、情報セキュリティに関する脆弱性情報をこのセキュリティナレッジ公開機関サーバ１０４によって公開する。
【００１９】
なお、上述の管理対象機器１０１と情報収集サーバ１０３はネットワーク１０２＿１で接続されており、情報収集サーバ１０３とセキュリティナレッジ公開機関サーバ１０４はインターネット１０２＿２で接続されている。
【００２０】
また、データベース１０５は、情報収集サーバ１０３が収集した上述のシステム情報とセキュリティナレッジを格納する記憶装置であり、ネットワーク１０２＿３を介してリスク評価サーバ１０７と通信可能に結ばれている。或いは、このデータベース１０５は、リスク評価サーバ１０７の外部記憶装置７０４（図７参照）に格納されているとしても好適である。
【００２１】
また、クライアント１０６は、システム管理者が直接操作する一般的なコンピュータ端末であり、リスク評価サーバ１０７による処理結果、すなわちリスク評価結果の主たる出力先となる装置となる。
【００２２】
また、リスク評価サーバ１０７は、データベース１０５上の情報と、クライアント１０６を介して受けたシステム管理者の要求とに基づき、本実施形態のリスク評価方法に対応する各手順を実行するサーバ装置である。このリスク評価サーバ１０７は、上述の情報収集サーバ１０３の機能、構成を含んで構成するとしても良い。
【００２３】
なお、本実施形態においては、ネットワーク１０２＿１、１０２＿２、１０２＿３は異なるネットワークとして例示したが、同一のネットワークであっても良い。また、図１のネットワーク構成において符号を付した構成要素は、実施形態に応じて複数であるとしてもよい。
−−−機能構成−−−
【００２４】
続いて、本実施形態のリスク評価システム１０が備える機能について説明する。ここでは、リスク評価サーバ１０７のみならず、例えばリスク評価システム１０を含む上述のネットワーク構成における各装置が、そのメモリ７０３ないし外部記憶装置７０４にて備える適宜なプログラムを実行することで実装される機能についてそれぞれ説明するものとする。
【００２５】
図２は、本実施形態の管理対象機器１０１の機能構成例を示す図である。図２に例示する管理対象機器１０１は、送受信部２０１および制御部２０２から構成されている。このうち送受信部２０１は、ネットワーク１０２＿１を介し、情報収集サーバ１０３との間で情報の送受信を行う処理部である。
【００２６】
一方、制御部２０２は、システム情報出力部２０３から構成されている。このシステム情報出力部２０３は、管理対象機器１０１の識別情報たるＩＤ、機器名、製品ＩＤ、ネットワークセグメント、および利用する中継機器といった情報を含むシステム情報を収集し、送受信部２０１を介して、情報収集サーバ１０３に送信する処理部である。システム情報出力部２０３におけるシステム情報の収集には、管理対象機器１０１の搭載するＯＳの標準的な機能を利用すれば良いが、その他の手法を採用してもよく、形態は限定しない。
【００２７】
図３は、本実施形態の情報収集サーバ１０３の機能構成例を示す図である。図３に例示
する情報収集サーバ１０３は、送受信部３０１および制御部３０２から構成されている。このうち送受信部３０１は、ネットワーク１０２＿１、１０２＿２、１０２＿３を介して情報の送受信を行う処理部である。
【００２８】
一方、制御部３０２は、システム情報収集部３０３およびセキュリティナレッジ収集部３０４から構成されている。このうちシステム情報収集部３０３は、送受信部３０１を介して、管理対象機器１０１から上述のシステム情報を受信し、これをデータベース１０５に格納する。また、セキュリティナレッジ収集部３０４は、送受信部３０１を介して、セキュリティナレッジ公開機関サーバ１０４からセキュリティナレッジを受信し、これをデータベース１０５に格納する。
【００２９】
図４は、本実施形態のセキュリティナレッジ公開機関サーバ１０４の機能構成例を示す図である。図４に例示するセキュリティナレッジ公開機関サーバ１０４は、送受信部４０１および制御部４０２から構成されている。このうち送受信部４０１は、ネットワーク１０２＿２を介して情報収集サーバ１０３との間で情報の送受信を行う処理部である。
【００３０】
一方、制御部４０２は、セキュリティナレッジ出力部４０３から構成されている。このセキュリティナレッジ出力部４０３は、上述の送受信部４０１を介して、情報収集サーバ１０３に対してセキュリティナレッジを送信する。セキュリティナレッジ公開機関サーバ１０４におけるセキュリティナレッジの収集、管理の手法は、セキュリティナレッジ公開機関サーバ１０４の仕様や当該セキュリティナレッジ公開機関サーバ１０４の運営企業により異なるため、ここでは特に限定しない。
【００３１】
図５は、本実施形態のクライアント１０６の機能構成例を示す図である。図５に例示するクライアント１０６は、送受信部５０１、入出力部５０２、および制御部５０３から構成されている。このうち送受信部５０１は、ネットワーク１０２＿３を介して情報の送受信を行う処理部である。また、入出力部５０２は、キーボード等のインタフェース機器を介してシステム管理者等のユーザからの入力を制御し、モニタ等のインタフェース機器を介してユーザ向けの出力処理を制御する処理部である。
【００３２】
また、上述の制御部５０３は、画面表示処理部５０４、初期画面表示要求部５０５、攻撃源指定処理部５０６、脆弱性リスク表示要求部５０７、仮想パッチ指定処理部５０８、および仮想パッチ効果表示要求部５０９から構成されている。このうち画面表示処理部５０４は、上述の入出力部５０２を介して、ユーザに対して画面表示を行う処理部であり、初期画面表示要求部５０５、脆弱性リスク表示要求部５０７、および仮想パッチ効果表示要求部５０９で取得した画面を表示する。
【００３３】
また、初期画面表示要求部５０５は、上述の送受信部５０１を介して、リスク評価サーバ１０７に対し、当該クライアント１０６からの接続時にユーザに提示する初期画面のデータを要求し、該当データを受信する処理部である。
【００３４】
また、攻撃源指定処理部５０６は、社外の機器やマルウェアに感染した疑いのある機器など、セキュリティ上の攻撃源となる機器の指定を、上述の入出力部５０２を介してシステム管理者等のユーザから受け付けて、送受信部５０１からリスク評価サーバ１０７に送信する処理部である。
【００３５】
また、脆弱性リスク表示要求部５０７は、リスク評価サーバ１０７が行った脆弱性リスクの評価結果に関する表示リクエストを、送受信部５０１を介してリスク評価サーバ１０７に対して送信し、リスク評価サーバ１０７から得た脆弱性リスク評価結果の画面データを受信する処理部である。
【００３６】
また、仮想パッチ指定処理部５０８は、脆弱性に適用した場合の対策効果を検証したい仮想パッチの指定入力を、上述の入出力部５０２を介して受け付ける処理部である。また、仮想パッチ効果表示要求部５０９は、リスク評価サーバ１０７が行った仮想パッチの効果検証結果に関する表示のリクエストを、送受信部５０１を介してリスク評価サーバ１０７に送信し、リスク評価サーバ１０７から得た仮想パッチの効果検証結果の画面データを受信する処理部である。
【００３７】
図６は、本実施形態のリスク評価サーバ１０７の機能構成例を示す図である。図６に例示するリスク評価サーバ１０７は、送受信部６０１および制御部６０２から構成されている。このうち送受信部６０１は、ネットワーク１０２＿３を介して情報の送受信を行う処理部である。
【００３８】
一方、制御部６０２は、初期画面表示処理部６０３、脆弱性リスク表示処理部６０４、仮想パッチ効果表示処理部６０５、リスク評価モデル構築処理部６０６、条件付き確率表設定処理部６０７、およびリスク値計算処理部６０８から構成されている。
【００３９】
このうち、初期画面表示処理部６０３は、送受信部６０１を介してクライアント１０６から初期画面表示リクエストを受信し、初期画面の表示に必要となる画面データを、例えばデータベース１０５（この場合のデータベース１０５は、クライアント１０６での各表示画面の画面データを予め保持している）から取得し、これを返信する処理部である。
【００４０】
また、脆弱性リスク表示処理部６０４は、送受信部６０１を介してクライアント１０６から脆弱性リスク表示リクエストを受信し、リスク評価モデル構築処理部６０６、条件付き確率表設定処理部６０７、およびリスク値計算処理部６０８を利用して得た脆弱性リスク評価結果の画面データを返信する処理部である。
【００４１】
また、仮想パッチ効果表示処理部６０５は、送受信部６０１を介して、クライアント１０６から仮想パッチ効果表示リクエストを受信し、リスク評価モデル構築処理部６０６、条件付き確率表設定処理部６０７、およびリスク値計算処理部６０８を利用して得た、仮想パッチ効果検証結果の画面データを返信する処理部である。
【００４２】
また、リスク評価モデル構築処理部６０６は、データベース１０５上の情報とクライアント１０６からのユーザ入力で指定された攻撃源（の機器）指定とに基づき、脆弱性がもたらすリスクを評価するためのモデル、すなわちリスク評価モデルを構築する処理部である。
【００４３】
また、条件付き確率表設定処理部６０７は、上述のリスク評価モデル構築処理部６０６が構築したリスク評価モデルに基づいてリスク評価を行うための各確率値（図２４参照）を設定する処理部である。
【００４４】
また、リスク値計算処理部６０８は、上述のリスク評価モデル構築処理部６０６が構築したリスク評価モデルに基づいてリスク値を計算する処理部である。
【００４５】
上述のリスク評価サーバ１０７における各機能部による処理の詳細については、フロー図に基づいて後述するものとする。
−−−ハードウェア構成−−−
【００４６】
続いて、本実施形態のリスク評価システム１０を構成する装置のハードウェア構成について説明する。図７は、本実施形態のリスク評価システム１０を構成するコンピュータ装
置７０１のハードウェア構成例を示す図である。
【００４７】
図にて例示するコンピュータ装置７０１は、ＣＰＵ７０２、ＲＡＭなど揮発性記憶素子で構成されるメモリ７０３、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）やハードディスクドライブなど適宜な不揮発性記憶素子で構成される外部記憶装置７０４、ネットワークインターフェイスカード（ＮＩＣ：Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）などの送受信装置７０５、ディスプレイなどの出力装置７０６、およびキーボード等の入力装置７０７から構成されている。このうち出力装置７０６および入力装置７０７については、管理対象機器１０１、セキュリティナレッジ公開機関サーバ１０４、情報収集サーバ１０３、およびリスク評価サーバ１０７のいずれも備えないとしてもよい。
【００４８】
図２〜図６で例示した各装置の制御部２０２、３０２、４０２、５０３、６０２は、ＣＰＵ７０２が上述の外部記憶装置７０４に記憶された適宜なプログラムをメモリ７０３にロードし実行することで実装される。また、図２〜図６で例示した各装置の送受信部２０１、３０１、４０１、５０１、６０１は、送受信装置７０５により実装される。また、図５で例示したクライアント１０６における入出力部５０２は、出力装置７０６、および入力装置７０７により実装される。
−−−データ構成−−−
【００４９】
次に、本実施形態のリスク評価システム１０を構成する装置、すなわちリスク評価サーバ１０７が利用するデータについて、その構成例について説明する。当該リスク評価システム１０にて利用するデータは、少なくとも、システム管理者のユーザ情報、管理対象システムのネットワーク情報、機器情報、セキュリティナレッジとして公開されている脆弱性情報、および仮想パッチ情報となる。
【００５０】
図８は、本実施形態のデータベース１０５上に格納されるデータテーブルの一覧を示す図である。図８に例示するデータベース１０５では、ユーザ情報テーブル８０１、ネットワーク情報テーブル８０２、機器情報テーブル８０３、脆弱性情報テーブル８０４、および仮想パッチ情報テーブル８０５を格納している。これら各テーブル間は、互いのレコードが含む所定のＩＤ等により相互に関連付けられている。
【００５１】
こうしたデータベース１０５が含むテーブルのうち、ユーザ情報テーブル８０１の構成例を図９に示す。図９に例示するユーザ情報テーブル８０１は、ユーザＩＤ９０１、ユーザ情報９０２、およびシステムリスト９０３をデータ項目としたレコードを有する。このうちユーザＩＤは、当該リスク評価システム１０において、システム管理者などのユーザに対してユニークに割り当てられたＩＤである。また、ユーザ情報９０２は、上述のユーザＩＤ９０１に対応するユーザの氏名や連絡先などの情報である。また、システムリスト９０３は、ユーザＩＤ９０１に対応するユーザが管理しているシステム、すなわちリスク評価対象となりうるシステムのＩＤとシステム名の組のリストである。なお、本実施形態では、複数のシステム管理者が複数のシステムを管理する状況を想定するため、こうしたユーザ情報テーブル８０１をデータベース１０５にて保持するものとしているが、単一のシステムのみをリスク評価対象とする状況であれば、このユーザ情報テーブル８０１をデータベース１０５で保持せずともよい。このユーザ情報テーブル８０１は、リスク評価システム１０の管理者等が予め生成してデータベース１０５に格納してあるものとする。
【００５２】
次に、ネットワーク情報テーブル８０２の構成例について図１０に基づき説明する。図１０に例示するネットワーク情報テーブル８０２は、ネットワークセグメントＩＤ１００１、システムＩＤ１００２、および可達セグメントＩＤリスト１００３をデータ項目としたレコードを有する。このうちネットワークセグメントＩＤ１００１は、当該リスク評価システム１０が処理対象に含むネットワークセグメントに対してユニークに割り当てられ
たＩＤである。また、システムＩＤ１００２は、上述のネットワークセグメントＩＤ１００１が関連するシステムのＩＤである。また、可達セグメントＩＤリスト１００３は、ネットワークセグメントＩＤ１００１が示すネットワークセグメントからメッセージが到達可能な隣接するセグメントのＩＤリストである。例えば、ネットワークセグメントＩＤ１００１が“１１１”のネットワークセグメントからネットワークセグメントＩＤ１００１が“２２２”のネットワークセグメントにメッセージが到達する場合、ネットワークセグメントＩＤ１００１が“１１１”のレコードの可達セグメントＩＤリスト１００３には、ネットワークセグメントＩＤ１００１の“２２２”が格納される。このネットワーク情報テーブル８０２は、リスク評価システム１０の管理者等が予め生成してデータベース１０５に格納してあるものとする。
【００５３】
次に、機器情報テーブル８０３の構成例について図１１に基づき説明する。図１１に例示する機器情報テーブル８０３は、上述の情報収集サーバ１０３が収集して当該テーブルに格納した、機器ＩＤ１１０１、機器名１１０２、プロダクトＩＤ１１０３、ネットワークセグメントＩＤリスト１１０４、および中継機器ＩＤマップ１１０５をデータ項目としたレコードを有する。
【００５４】
このうち機器ＩＤ１１０１は、情報収集サーバ１０３が情報収集を行った上述の管理対象機器１０１に対してユニークに割り当てられたＩＤである。また、機器名１１０２は、上述の機器ＩＤ１１０１に対応する管理対象機器１０１に与えられたマシン名である。また、プロダクトＩＤ１１０３は、機器ＩＤ１１０１に対応する管理対象機器１０１を構成する製品ＩＤである。また、ネットワークセグメントＩＤリスト１１０４は、機器ＩＤ１１０１に対応する管理対象機器１０１が所属しているネットワークセグメントのＩＤリストである。また、中継機器ＩＤマップ１１０５は、システム構成上、管理対象機器１０１が中継する通信の送信元と送信先の管理対象機器１０１を示す機器ＩＤのリストである。例えば、管理対象機器である“機器Ａ”から“機器Ｂ”への通信が“機器Ｃ”を経由する場合、当該機器情報テーブル８０３の“機器Ｃ”に関するレコードにおいて、“機器Ａ”をＫＥＹ、“機器Ｂ”をＶＡＬＵＥとした連想配列として格納する。
【００５５】
次に、脆弱性情報テーブル８０４の構成例について図１２に基づき説明する。図１２に例示する脆弱性情報テーブル８０４は、上述の情報収集サーバ１０３がセキュリティナレッジ公開機関サーバ１０４から収集して当該テーブルに格納した、脆弱性ＩＤ１２０１、機器ＩＤ１２０２、脆弱性攻撃確率１２０３、および機器影響確率１２０４をデータ項目としたレコードを有する。
【００５６】
このうち脆弱性ＩＤ１２０１は、脆弱性に対してユニークに割り当てられたＩＤである。この脆弱性ＩＤ１２０１としては、ＭＩＴＲＥ社が採番し、国際的に利用されている共通脆弱性識別子（ＣＶＥ：Ｃｏｍｍｏｎ  Ｖｕｌｎｅｒａｂｉｌｉｔｉｅｓ  ａｎｄ  Ｅｘｐｏｓｕｒｅｓ）や、日本国内で利用されているＪＶＮ番号（ＪＶＮ：Ｊａｐａｎ  Ｖｕｌｎｅｒａｂｉｌｉｔｙ  Ｎｏｔｅｓ）、或いはベンダが独自に採番した脆弱性ＩＤなどを想定出来る。
【００５７】
また、機器ＩＤ１２０２は、上述の脆弱性ＩＤ１２０１に対応する脆弱性が存在する管理対象機器１０１のＩＤである。また、脆弱性攻撃確率１２０３は、上述の脆弱性ＩＤ１２０１に対応する脆弱性単体を突いた攻撃の発生確率、あるいはスコアであり、脆弱性の技術的な特性に基づいたスコアである。また、機器影響確率１２０４は、上述の脆弱性ＩＤ１２０１に対応する脆弱性への攻撃により、該当管理対象機器１０１（機器ＩＤ１２０２が示す機器）に影響を与える確率であり、脆弱性の技術的な特性に基づいたスコアである。一般的にセキュリティナレッジ公開機関サーバ１０４では、ＣＶＳＳ（Ｃｏｍｍｏｎ
Ｖｕｌｎｅｒａｂｉｌｉｔｙ  Ｓｃｏｒｉｎｇ  Ｓｙｓｔｅｍ）などの標準的なセキュ
リティ規格に基づき、個々のソフトウェア脆弱性に対して、技術特性の観点から攻撃容易性や機器への影響度などのスコアを付与して、セキュリティ情報を公開しており、上述の情報収集サーバ１０３は、上述の脆弱性攻撃確率１２０３や機器影響確率１２０４として、同スコアを取得することが可能である。
【００５８】
次に、仮想パッチ情報テーブル８０５の構成例について図１３に基づき説明する。ここで、仮想パッチとは、ソフトウェア脆弱性の代表的な対策手段の１つであり、脆弱性を利用した攻撃をＩＰＳ（Ｉｎｔｒｕｓｉｏｎ  Ｐｒｅｖｅｎｔｉｏｎ  Ｓｙｓｔｅｍ）などのセキュリティ製品により遮断する手段である。一般的に、ソフトウェア脆弱性を解決する最大の方法は該当ソフトウェアに正規のパッチを適用することにより、ソフトウェア脆弱性自体を消滅させることであるが、ソフトウェアの互換性問題などにより必ずしも正規のパッチを適用可能な状況ばかりではない。そのため、迅速な対策が可能で、対象システムに悪影響を与えることがない仮想パッチが利用されるケースが多い。
【００５９】
図１３に例示する仮想パッチ情報テーブル８０５は、仮想パッチＩＤ１３０１、脆弱性ＩＤリスト１３０２、およびプロダクトＩＤ１３０３をデータ項目としたレコードを有する。このうち仮想パッチＩＤ１３０１は、仮想パッチに対して一意に割り当てられたＩＤである。また、脆弱性ＩＤリスト１３０２は、上述の仮想パッチＩＤ１３０１に対応した仮想パッチが遮断できる脆弱性のＩＤリストである。また、プロダクトＩＤ１３０３は、上述の仮想パッチＩＤ１３０１に対応する製品ＩＤである。一般的に、製品を開発したベンダにより、仮想パッチとこの仮想パッチが防御できる脆弱性の情報とがセキュリティナレッジ公開機関サーバ１０４にて公開されており、こうした情報が上述した仮想パッチ情報テーブル８０５の情報として格納されることになる。
【００６０】
なお、本実施形態においては、ユーザ情報テーブル８０１、ネットワーク情報テーブル８０２、機器情報テーブル８０３、脆弱性情報テーブル８０４、および仮想パッチ情報テーブル８０５をデータベース１０５上に構築しているが、あくまでも一例であって、リスク評価サーバ１０７の外部記憶装置７０４にて所定の記憶部を配置し、同記憶部上に配置するとしても良い。また、上述の各テーブル８０１〜８０５のうちいずれか複数のテーブルが互いに結合し、１つのテーブルを構成している形態であってもよい。或いは、上述の各テーブル８０１〜８０５のうちいずれかが、更に細分化されたテーブルであっても良い。
−−−情報収集、登録のフロー例−−−
【００６１】
以下、本実施形態におけるリスク評価方法の実際手順について図に基づき説明する。以下で説明するリスク評価方法に対応する各種動作は、リスク評価システム１０を構成する、例えばリスク評価サーバ１０７がメモリ等に読み出して実行するプログラムによって実現される。そしてこのプログラムは、以下に説明される各種の動作を行うためのコードから構成されている。なお、以下の説明においては、リスク評価サーバ１０７が実行する処理のみならず、他の装置が実行する処理についても適宜説明するものとする。
【００６２】
図１４は、本実施形態におけるリスク評価方法の処理手順例１を示すフロー図である。ここではまず、データベース１０５の生成処理、すなわち情報収集サーバ１０３による管理対象機器１０１のシステム情報およびセキュリ情報の取得と、データベース１０５への格納の処理について説明する。こうした処理は、リスク評価サーバ１０７において、管理対象機器１０１の脆弱性がもたらすリスクの評価処理を行う前（少なくとも直前）に、予め実行しておく必要がある。また、上述のシステム情報（管理対象機器１０１から得られる情報）やセキュリティナレッジ（セキュリティナレッジ公開機関サーバ１０４から得られる情報）は、管理対象機器１０１やセキュリティナレッジ公開機関サーバ１０４にて随時、追加や更新がなされているため、本実施形態のリスク評価システム１０（に含まれる
、或いは協働する管理対象機器１０１、情報収集サーバ１０３。またはリスク評価サーバ１０７）においては、これら各情報の取得処理をバックグラウンドの処理として実行するとすれば好適である。
【００６３】
この場合まず、管理対象機器１０１が、自身のＯＳにおける標準機能が含むスケジューラ機能により、例えば所定時間の到来に応じてシステム情報出力部２０３を起動する（１４０１）。
【００６４】
次に、管理対象機器１０１におけるシステム情報出力部２０３は、当該管理対象機器１０１のシステム情報を取得し、これを情報収集サーバ１０３に送信する（１４０２）。システム情報出力部２０３が取得するシステム情報は、機器情報テーブル８０３やネットワーク情報テーブル８０２における各レコードが含む項目（例：機器ＩＤ、機器名、ネットワークセグメントＩＤ等々）に対応する情報となる。
【００６５】
一方、上述の管理対象機器１０１からシステム情報を受信した情報収集サーバ１０３は、データベース１０５に対して、データの新規追加または更新のリクエストを送信する（１４０３）。データベース１０５は、このリクエストを受けて、リクエストが含むシステム情報のうち、例えば機器ＩＤをキーに機器情報テーブル８０３を検索し、該当機器ＩＤに関するレコードがなければ新規にレコードを生成し、上述のリクエストが含むシステム情報のうち該当項目の値をセットする。また、機器情報テーブル８０３にて該当機器ＩＤに関するレコードが既に存在すれば、該当レコードにおいて、上述のリクエストが含むシステム情報のうち該当項目の値でデータ更新を行う。こうした処理はネットワーク情報テーブル８０２に関しても同様に実行するものとする。
【００６６】
以上の処理、ステップ１４０１〜ステップ１４０３は、管理対象機器１０１毎に実行され、管理対象機器１０１の数だけ反復されることとなる。本実施形態では、管理対象機器１０１と情報収集サーバ１０３との間でクライアントサーバ構成を取っており、上述のシステム情報の取得処理を自動化して運用を効率化している。但し、クライアント１０６などを利用するシステム管理者の手によって、データファイル形式で管理対象機器１０１のシステム情報を記述し、これを情報収集サーバ１０３に入力するとしてもよい。このようにシステム管理者の手によりシステム情報の入力を行うことで、管理対象機器１０１をエージェントレスで動作させることができる利点はある。また本実施形態では、定期的にシステム情報を送信する実施形態としているが、システム情報の変化を検知し、システム情報が変化したタイミングで同システム情報を送信しても良い。
【００６７】
上述のシステム情報の収集、格納に関する説明に引き続き、情報収集サーバ１０３が、セキュリティナレッジ公開機関サーバ１０４から、セキュリティ情報を収集し、データベース１０５に格納する一連の処理について説明する。
【００６８】
図１５は本実施形態におけるリスク評価方法の手順例２を示すフロー図であり、具体的には、情報収集サーバ１０３がバックグラウンド処理として行うセキュリティナレッジの取得処理のフロー例を示す図である。
【００６９】
この場合まず、情報収集サーバ１０３は、例えば上述の管理対象機器１０１における機能と同様に、情報収集サーバ１０３自身のＯＳ等に備わるスケジューラ機能により、所定時間の到来に応じてセキュリティナレッジ収集部３０４を起動し、このセキュリティナレッジ収集部３０４により、セキュリティナレッジ要求を、セキュリティナレッジ公開機関サーバ１０４に送信する（１５０１）。
【００７０】
一方、上述のセキュリティナレッジ要求を受信したセキュリティナレッジ公開機関サー
バ１０４は、セキュリティナレッジ出力部４０３により、自身の記憶装置にて保持するセキュリティナレッジのデータを、情報収集サーバ１０３に対して返信する（１５０２）。ここでセキュリティナレッジ公開機関サーバ１０４が情報収集サーバ１０３に返信するセキュリティナレッジは、脆弱性情報テーブル８０４や仮想パッチ情報テーブル８０５におけるレコードの項目に対応する情報である。
【００７１】
セキュリティナレッジのデータを受信した情報収集サーバ１０３は、データベース１０５に対して、セキュリティナレッジすなわちセキュリティ情報の新規追加または更新のリクエストを送信する（１５０３）。データベース１０５は、このリクエストを受けて、リクエストが含むセキュリティ情報のうち、例えば機器ＩＤないし脆弱性ＩＤをキーに脆弱性情報テーブル８０４を検索し、該当機器ＩＤ等に関するレコードがなければ新規にレコードを生成し、上述のリクエストが含むセキュリティ情報のうち該当項目の値をセットする。また、脆弱性情報テーブル８０４にて該当機器ＩＤ等に関するレコードが既に存在すれば、該当レコードにおいて、上述のリクエストが含むセキュリティ情報のうち該当項目の値でデータ更新を行う。こうした処理は仮想パッチ情報テーブル８０５に関しても同様に実行するものとする。
【００７２】
本実施形態では、セキュリティナレッジ公開機関サーバ１０４と情報収集サーバ１０３との間で、上述のセキュリティ情報の取得処理を自動化して運用を効率化している。但し、セキュリティナレッジ公開機関サーバ１０４と情報収集サーバ１０３との間での情報授受の手法は、セキュリティナレッジ公開機関サーバ１０４の仕様に基づくものとする。
【００７３】
−−−初期画面表示処理のフロー例−−−
【００７４】
次に、システム管理者がクライアント１６０を介してリスク評価サーバ１０７に接続した際に、初期画面を表示する処理について図に基づき説明する。図１６は、本実施形態におけるリスク評価方法の処理手順例３を示すフロー図であり、具体的には、初期画面表示処理のフロー例を示す図である。
【００７５】
この場合まず、システム管理者の指示を入出力部５０２を介して受けたクライアント１０６が、初期画面表示要求部５０５を用いて、リスク評価サーバ１０７に対し接続リクエストを送信する（１６０１）。この接続リクエストには、少なくともユーザＩＤ９０１が含まれる。
【００７６】
一方、リスク評価サーバ１０７の初期画面表示処理部６０３は、上述のクライアント１０６に対して出力すべき初期画面の表示データを、例えばデータベース１０５に要求して取得する（１６０２）。この場合、リスク評価サーバ１０７の外部記憶装置７０４には、例えば、本実施形態のリスク評価方法の各手順に対応する所定画面の雛形データが予め格納されており、リスク評価サーバ１０７は、クライアント１０６からの要求に応じて該当手順に対応する画面の雛形データをこの外部記憶装置７０４から読み出し、これに、データベース１０５への要求に伴って得たデータを設定して出力するものとする。
【００７７】
上述のステップ１６０２にてリスク評価サーバ１０７がデータベース１０５から取得するデータ、すなわち画面の雛形データに設定するデータは、例えば、上述の接続リクエストが含むユーザＩＤ９０１をキーにユーザ情報テーブル８０１、機器情報テーブル８０３のそれぞれから得られるデータとなる。そのデータとは、ユーザＩＤ９０１に関連付けられたユーザ情報９０２、システムリスト９０３、および、このシステムリスト９０３が含むシステムＩＤに関連付けられた機器ＩＤ１１０１、機器名１１０２、ネットワークセグメントＩＤ１１０４等である。  なお、本実施形態では、クライアント１０６からの接続リクエストにユーザＩＤ９０１が含まれている例を示しているが、その他にも、接続リク
エストに対する一般的なユーザ認証等の処理（例：ＩＤ、パスワードの組の真正性を検証する本人認証等）を行い、その認証処理等を通じてユーザＩＤ９０１を特定するとしても良い。このユーザ認証等の処理形態については限定しない。
【００７８】
リスク評価サーバ１０７の初期画面表示処理部６０３は、上述のように、データベース１０５のユーザ情報テーブル８０１および機器情報テーブル８０３のそれぞれから得たデータを、初期画面の雛形データにセットして画面データを生成し、これを上述のクライアント１０６に返す（１６０３）。このすなわち１６０３の処理の結果、クライアント１０６の入出力部５０２にて表示される初期画面１７０１の例を図１７に示す。図１７で例示する初期画面１７０１においては、ユーザＩＤおよびユーザ名の各情報を表示するユーザ情報領域１７０２と、システムリストの情報を表示するシステムリスト表示領域１７０３と、リスク評価ボタン１７０５を含む構成となっている。
【００７９】
このうちシステムリスト表示領域１７０３は、当該領域にて表示されたシステムリストのうちチェックボックス１７０３１でチェックがされたシステムについて、関連する機器ＩＤ、機器名（機器情報テーブル８０３由来）のリスト（より好ましくはこのリストにネットワークセグメントＩＤも含まれる）を表示する関連機器情報リスト表示領域１７０４が含まれている。この関連機器情報リスト表示領域１７０４で表示されるリストには、システム管理者が攻撃源とみなす機器を指定する際にチェックを入れる攻撃源指定ボックス１７０４１が含まれている。
【００８０】
詳細は後述するが、リスク評価ボタン１７０５が押下された場合、その時点でチェックボックス１７０３１にチェックが入っているシステムに関して、攻撃源指定ボックス１７０４１にチェックが入っている機器を攻撃源とした場合のリスク評価が開始されることとなる。
【００８１】
−−−リスク評価処理のフロー例（メインフロー）−−−
【００８２】
次に、上述した初期画面１７０１でリスク評価ボタン１７０５が押下されることで、リスク評価サーバ１０７にて実行される脆弱性のリスク評価処理について図に基づき説明する。図１８は、本実施形態におけるリスク評価方法の処理手順例４を示すフロー図であり、リスク評価処理のメインフロー例を示す図である。
【００８３】
ここでまず、クライアント１０６において、システム管理者が入出力部５０２を介して指定してきた、リスク評価の対象システムと攻撃源となる機器の情報を受け付ける（１８０１）。本実施形態では、クライアント１０６が、対象システムと攻撃源の指定をシステム管理者から受け付けるインターフェイスとして、図１７の初期画面１７０１におけるチェックボックス１７０３１、１７０４１を例示する。システム管理者がチェックボックス１７０４１にて攻撃源として指定できる機器は、管理対象機器１０１、あるいは、管理対象機器１０１の所属ネットワークセグメントに所属する、管理対象外の機器がある。図１７の初期画面１７０１の例では、管理対象機器１０１ではなく、外部機器（管理対象外の機器）が攻撃源として選択されている。
【００８４】
続いてクライアント１０６は、リスク評価サーバ１０７に対し、脆弱性リスク表示要求を送信する（１８０２）。この送信処理は、例えば初期画面１７０１においてリスク評価ボタン１７０５がクリックされたことをトリガーとして実行される。ここで送信される脆弱性リスク表示要求には、初期画面１７０１のチェックボックス１７０３１でチェック対象となったシステムのシステムＩＤと、チェックボックス１７０４１で攻撃源として指定された機器ＩＤが含まれる。或いは、チェックボックス１７０３１でチェック対象となったシステムのシステムＩＤと、チェックボックス１７０４１で攻撃源として指定された管
理対象外の外部機器を表す所定識別子と、その外部機器の所属するネットワークセグメントＩＤ（例：関連機器情報リスト表示領域１７０４のリストが含むもの）が含まれる。
【００８５】
上述の脆弱性リスク表示要求を受けたリスク評価サーバ１０７は、該当要求が示す情報をキーにして、データベース１０５上のネットワーク情報テーブル８０２、機器情報テーブル８０３、脆弱性情報テーブル８０４、および仮想パッチ情報テーブル８０５における該当情報を取得する（１８０３）。本実施形態では、リスク評価サーバ１０７が、脆弱性リスク表示処理に必要となる情報を上述のステップ１８０３にて一括取得し、メモリ上に展開する形態を想定しているが、脆弱性リスク表示処理の各過程で情報が必要となったタイミングで、都度データベース１０５にアクセスし、必要な情報のみに限定して取得するとしても良い。
【００８６】
次に、リスク評価サーバ１０７のリスク評価モデル構築処理部６０６は、上述のステップ１８０３で得た情報に基づいて、リスク評価モデルの構築処理（１８０４）を実行する。本実施形態におけるリスク評価モデル構築処理では、評価対象のシステム構成やネットワークのトポロジに基づいた脆弱性リスク評価を行うため、機器（外部機器や管理対象機器１０１）とその脆弱性の各間の関係性を表した非循環有向グラフを、対応する所定のグラフ理論に基づくアルゴリズムによってリスク評価モデルとして生成する。このアルゴリズムは、後述する図１９〜２２に示すフローに対応するプログラムが実現するものであり、該当プログラムは、リスク評価サーバ１０７のリスク評価モデル構築処理部６０６が保持するものとする。
【００８７】
上述の非循環有向グラフとは、任意のオブジェクトをノードとし、このノード間をアークと呼ばれる一方向性の矢印で接続したグラフが該当する。こうした非循環有向グラフにおいては、上述のノードの間に親ノードと子ノードの関係があり、子ノードから、親を含む先祖のノードにアークを接続することは許容されない。一般的に、子ノードから親ノードに向けたアークの接続関係がないことを“ループがない”と呼ぶ。
【００８８】
本実施形態では、評価対象のシステムを構成する各機器、および機器が保有する脆弱性のそれぞれをノードとしたグラフモデルを構築する。また、脆弱性を保有する機器とこの脆弱性との関係性をアークとして接続する。また、機器からネットワークを介して攻撃メッセージが到達する機器上に脆弱性が存在する場合も、アークとして接続する。上述の２つのケースにおいてノード間を接続することにより、脆弱性と機器の間の関係性を表すグラフモデル、すなわちリスク評価モデルを構築する。
【００８９】
このように非循環有向グラフとしてリスク評価モデルを構築することにより、ベイジアンネットワークと呼ばれる確率推論手法を用いて定量的に脆弱性リスクを評価することが可能になる。ベイジアンネットワーク（Ｂａｙｅｓｉａｎ  Ｎｅｔｗｏｒｋ）とは、詳細は後述するが、ある事象に関する原因と結果の関係を複数組み合わせることにより、原因と結果が互いに影響を及ぼしながら発生する現象をネットワーク図と確率という形で可視化し、過去に発生した原因と結果の積み重ねを統計的に処理し、所定の結果に繋がる原因や或る原因から発生する結果を、確率をもって予測する推論技術である。本実施形態のリスク評価サーバ１０７は、メモリ７０３ないし外部記憶装置７０４において、このベイジアンネットワークに対応する推論プログラムを予め保持し、必要に応じて実行可能であるものとする。
【００９０】
−−−リスク評価モデル構築処理の例−−−
【００９１】
ここで、上述のリスク評価モデル構築処理（１８０４）のフロー例を図１９に基づき説明する。なお、説明の必要上、図２３に例示する、リスク評価モデル構築処理（１８０４
）で生成される非循環有向グラフ２３００を随時参照するものとする。
【００９２】
まず、リスク評価サーバ１０７におけるリスク評価モデル構築処理部６０６は、初期画面１７０１でシステム管理者から指定された攻撃源の機器を、ノードとして配置する（１９０１）。なお、以後の処理でも同様であるが、リスク評価モデルにおけるノードやアークの配置は、リスク評価サーバ１０７が予め備える非循環有向グラフの描画プログラムによって、所定の描画平面内にて、ノードやアークに対応した描画要素（例：アイコンや線分など）を配置する処理により実現される。このステップ１９０１の実行の結果、図２３のリスク評価モデルすなわち非循環有向グラフ２３００において、攻撃源機器ノード２３０１のみが配置された状態となる。
【００９３】
次に、リスク評価サーバ１０７のリスク評価モデル構築処理部６０６は、上述のステップ１８０３で得た情報が示す機器のうち、複数のネットワークに所属する機器とその脆弱性に対応するノードを、上述の非循環有向グラフ２３００において追加する処理を実行する（１９０２）。また、リスク評価サーバ１０７のリスク評価モデル構築処理部６０６は、上述のステップ１８０３で得た情報が示す機器のうち、単一のネットワークに所属する機器とその脆弱性に対応するノードを、上述の非循環有向グラフ２３００において追加する処理を実行する（１９０３）。
【００９４】
上述のステップ１９０２については図２０、図２１を用いて説明し、ステップ１９０３については図２２を用いて説明する。このように、機器が所属するネットワークの数が単数であるか複数であるかにより異なる処理を実行するのは、非循環有向グラフ２３００の構築を効率化するためである。
【００９５】
まず、複数のネットワークに所属する機器とその脆弱性に対応するノードを配置する処理について説明する。この処理においては、攻撃源の機器を、ノード間の親子関係において最上位のノードを意味するレベル０と分類し、その他の機器を、攻撃源から攻撃が到達するまでのホップ数の大きさに応じてレベル分けし、上述の非循環有向グラフ２３００にて該当ノードを追加するものとする。なお、脆弱性攻撃では、攻撃源から機器を直接攻撃できない場合、別の機器を攻撃、支配して踏み台とする踏み台攻撃が存在し、この踏み台攻撃の際に攻撃を中継する機器の数をホップ数と呼ぶ。また、既に述べたように、レベル分けした機器の間で、上位レベルの機器から下位レベルの機器へのみアークを接続する制約条件をおくこととしている。従って、ステップ１９０２においても、この制約条件を満たすように非循環有向グラフ２３００が構築される。
【００９６】
そこでまず、リスク評価サーバ１０７のリスク評価モデル構築処理部６０６は、上述のステップ１８０３でデータベース１０５から得た、機器情報テーブル８０３のネットワークセグメントＩＤリスト１１０４を参照し、複数のネットワークに所属する機器の集合を構築する（２００１）。
【００９７】
次に、リスク評価サーバ１０７のリスク評価モデル構築処理部６０６は、上述の攻撃源とされた機器をレベル０の機器集合“Ｅ０”とし、この機器集合“Ｅ０”に所属する機器“ｅ”全てに対して、以降のステップ２００３〜２００６を実行する。
【００９８】
このうち、ステップ２００３においてリスク評価モデル構築処理部６０６は、ステップ１８０３で得ている、機器情報テーブル８０３のネットワークセグメントＩＤリスト１１０４とネットワーク情報テーブル８０２の可達セグメントＩＤリスト１００３から、機器“ｅ”が所属するネットワークとそのネットワークからメッセージが到達するネットワークのうち、上位のネットワーク以外をレベル１のネットワーク集合“Ｎ１”に追加する。なお、レベル０のネットワークは存在しないため、レベル１では全てが追加される。
【００９９】
次に、ステップ２００４においてリスク評価モデル構築処理部６０６は、同じくネットワークセグメントＩＤリスト１１０４から、レベル１のネットワークの部分集合“Ｎ’１”に所属する機器をレベル１の機器の部分集合“Ｅ’１”に追加する。“Ｅ’１”に追加する場合も同様に上位の機器集合の中に既に存在する機器は除外する。
【０１００】
次に、ステップ２００５においてリスク評価モデル構築処理部６０６は、機器“ｅ”から、機器集合“Ｅ’１”に所属する機器とその脆弱性への接続処理を行う（２００５）。このステップ２００５の詳細を図２１のフローにて示す。
【０１０１】
図２１のフローにおいて、リスク評価モデル構築処理部６０６は、まず機器の部分集合“Ｅ’１”に所属する全ての機器“ｅ’”に対して、ノードとして非循環有向グラフに配置済みかどうか判定する（２１０１、２１０２）。
【０１０２】
上述の判定の結果が「配置済」の場合（２１０２：Ｙｅｓ）、リスク評価モデル構築処理部６０６は、重複して同一の機器を配置する問題を避けるため、ステップ２０１３〜２１０５を省略し、ステップ２１０６へ処理を進める。他方、上述の判定の結果が「未配置」であった場合（２１０２：Ｎｏ）、リスク評価モデル構築処理部６０６は、機器“ｅ’”をノードとして非循環有向グラフにて配置する（２１０３）。図２３の非循環有向グラフ２３００の例では機器ノード２３０２が配置されている。
【０１０３】
次に、リスク評価モデル構築処理部６０６は、上述のステップ１８０３にて既に得ている、脆弱性情報テーブル８０４の機器ＩＤ１２０２から機器“ｅ’”が保有する脆弱性“ｖｅ”全てを脆弱性ノードとして非循環有向グラフに配置する（２１０４）。図２３の非循環有向グラフ２３００の例では脆弱性ノード２３０３が配置されている。
【０１０４】
次に、リスク評価モデル構築処理部６０６は、脆弱性“ｖｅ”のノードから機器“ｅ’”のノードにアークを接続する（２１０５）。図２３の非循環有向グラフ２３００の例では、アーク２３０４が、脆弱性のノード２３０３と機器のノード２３０２の間を接続している。
【０１０５】
次に、リスク評価モデル構築処理部６０６は、機器“ｅ”のノードから脆弱性“ｖｅ”のノードにアークを接続する（２１０６）。図２３の非循環有向グラフ２３００の例では、アーク２３０５が、攻撃源機器のノード２３０１と脆弱性のノード２３０３との間を接続している。
【０１０６】
ここで図２０のフローについての説明に戻る。上述したステップ２００５の終了後、機器の部分集合“Ｅ’１”とネットワークの部分集合“Ｎ’１”をそれぞれ機器集合“Ｅ１”とネットワーク集合“Ｎ１”に追加する（２００６）。
【０１０７】
以上により、レベル０の機器に対してステップ２００２〜２００６を実行することで、レベル０の機器からレベル１への機器の関係性を非循環有向グラフ２３００に追加した。ここまでの一連の処理により、図２３に例示するリスク評価モデルたる非循環有向グラフ２３００において、レベル０の領域２３１０とレベル１の領域２３１１までが構築される。本実施形態では、続けてレベル１の機器に対して、ステップ２００２〜２００６を実行し、レベル２の領域２３１１を構築する。このように上位レベルの機器から順次下位のレベルの機器に対してステップ２００２〜２００６を反復的に実行していくことにより、リスク評価モデルたる非循環有向グラフを構築する。リスク評価モデル構築処理部６０６は、こうした反復処理を、全てのネットワークおよび複数のネットワークに所属する機器全てが追加されるまで反復的に実行する。
【０１０８】
ここで図１９のフローにおけるステップ１９０３、すなわち単一のネットワークに所属する機器とその脆弱性のノードを、非循環有向グラフに追加する処理の詳細について説明する。図２２は、本実施形態におけるリスク評価方法の処理手順例８を示すフロー図である。
【０１０９】
この場合、リスク評価モデル構築処理部６０６は、上述のステップ１８０３で得た情報が示す機器を、各機器が所属するネットワークの単複により集合“Ｅｍ”（複数）、“Ｅｓ”（単数）に分類し、単一のネットワークに所属する機器“ｅ”全てに対して、以降のステップ２２０１〜２２０６を実行するものとする。
【０１１０】
まず、リスク評価モデル構築処理部６０６は、機器“ｅ”をノードとして非循環有向グラフにて配置する（２２０２）。図２３の非循環有向グラフ２３００の例では、機器ノード２３０６が配置されている。
【０１１１】
次に、リスク評価モデル構築処理部６０６は、上述のステップ１８０３で既に得ている、脆弱性情報テーブル８０４の機器ＩＤ１２０２に対応する、機器“ｅ”が保有する脆弱性“ｖｅ”全てを脆弱性ノードとして非循環有向グラフにて配置する（２２０３）。図２３の非循環有向グラフ２３００の例では、脆弱性ノード２３０７が配置されている。
【０１１２】
次に、リスク評価モデル構築処理部６０６は、脆弱性“ｖｅ”のノードから機器“ｅ”のノードにアークを接続する（２２０４）。図２３の非循環有向グラフ２３００の例では、アーク２３０８が、脆弱性のノード２３０７と機器のノード２３０６との間を接続している。
【０１１３】
次に、リスク評価モデル構築処理部６０６は、機器“ｅ”と同一のネットワークに所属し、複数のネットワークに所属している機器の集合“Ｅ’”を構築する（２２０５）。また、リスク評価モデル構築処理部６０６は、機器集合“Ｅ’”に含まれる機器のノードから脆弱性“ｖｅ”のノードにアークを接続する（２２０６）。図２３の非循環有向グラフ２３００の例では、アーク２３０９が、機器のノード２３０２と脆弱性のノード２３０７との間を接続している。
【０１１４】
こうして図２３の例示した非循環有向グラフ２３００すなわち、リスク評価モデルが生成されることとなる。本実施形態とは異なり、ベイジアンネットワーク等の推論手法を適用する従来における評価モデルの構築では、システム管理者に上述のアークの接続関係などを入力させ、手動によりモデルを構築することが一般的であった。一方、本実施形態では、攻撃源となる機器を最上位ノードとし、この攻撃源の機器から攻撃が届くまでのホップ数によりその他の各機器をレベル分けし、上位レベルの機器から下位レベルの機器へのみアークを接続する制約条件を導入することにより、リスク評価モデル構築処理（１８０４）のプロセスで自動的にリスク評価モデルを構築することが可能となっている。
【０１１５】
ここで図１８のフローに関する説明に戻る。ここではまず、非循環有向グラフにおける特定の脆弱性に限定せず、脆弱性全体の分布状態から各脆弱性が攻撃される確率と各機器が侵害される確率を計算するものとする。
【０１１６】
上述のようにリスク評価モデルの構築処理（１８０４）が完了した後、リスク評価サーバ１０７の条件付確率表設定処理部６０７は、非循環有向グラフ２３００における各ノードに対して、条件付き確率表を設定する（１８０５）。この条件付き確率表とは、対象ノードが取り得る状態を規定し、対象ノードの親ノードがとる状態の組み合わせ全てに対して、対象ノードの状態が発生する確率を条件付き確率として記述した表のことである。ま
た、条件付き確率とは、或る事象が起こるという条件の下で別の事象が発生する確率である。本実施形態においては、各ノードが取り得る状態として、攻撃により侵害された状態とされていない状態の２つの状態を定義する。
【０１１７】
上述の条件付き確率表の例を図２４に示す。図２４に例示する条件付き確率表２５０１は、図２３の非循環有向グラフ２３００における脆弱性ノード２３０７の条件付き確率表の例となっている。図２３における脆弱性ノード２３０７は、２つの親ノード（機器Ａと機器Ｂの各ノード）を持つため、図２４の条件付き確率表２５０１では、これら親ノードが持つ状態の組み合わせとして、２の２乗すなわち４通りに対して、条件付き確率を設定している。図２４の条件付き確率表２５０１においては、親ノードのいずれかが侵害されている場合は、どちらの親ノードからも脆弱性のノード２３０７に対して同様の攻撃ができると仮定し、脆弱性の技術的な特性のみに基づく脆弱性情報テーブル８０４（図１２）の脆弱性攻撃確率１２０３の値を条件付き確率２５０２として設定している。一方、いずれの親ノードも侵害されていない場合は、脆弱性のノード２３０７に対する攻撃は不可能であると仮定し、条件付き確率２５０３は“０”としている。なお、この条件付き確率表の設定処理（１８０５）において、攻撃源ノードの条件付き確率表は、攻撃源として定義しているため、侵害されていた状態を“１”としている。
【０１１８】
次に、リスク値計算処理部６０８は、ベイジアンネットワークの推論プログラムを利用した確率推論を実行し、各脆弱性が攻撃される確率と各機器が侵害される確率を計算する（１８０６）。ベイジアンネットワークは、非循環有向グラフと条件付き確率表から、各ノードがとる状態の周辺確率（事前条件のない一般的な確率）を計算する手法のことである。また、ベイジアンネットワークにおける確率推論の方法としては一般的に公知な方法を採用するものとし、限定はしない。ベイジアンネットワークを用いた確率推論では、結果として非循環有向グラフを構成する全てのノードの周辺確率が求められる。
【０１１９】
続いて、リスク値計算処理６０８は、非循環有向グラフにおける特定の脆弱性に限定し、その脆弱性が原因となって機器に影響を与えてしまう確率を計算する。そのため、条件付確率表設定処理部６０７は、非循環有向グラフにおける全ての脆弱性１つ１つに対して、異なる条件確率表を設定するものとする。そして、上述同様の確率推論を行うため、条件付確率表設定処理部６０７による条件付き確率表設定処理（１８０７）、リスク値計算処理部６０８によるリスク値計算（１８０８）が反復実行される。
【０１２０】
このうち条件付き確率表設定処理（１８０７）において、条件付確率表設定処理部６０７は、条件付き確率表設定処理（１８０５）の結果を修正する。この場合、攻撃源ノードの条件付き確率表を、侵害されていた状態が“０”となるように再設定し、対象の脆弱性の条件付き確率表のみ周辺確率がリスク値計算（１８０６）の結果と一致するように更新する。また、リスク値計算（１８０８）において、リスク値計算処理部６０８は、リスク値計算（１８０６）と同様にリスク値を計算する。このリスク値計算（１８０８）により、対象とした脆弱性を介した攻撃のみに限定した各機器への侵害確率を計算することが可能となる。
【０１２１】
図１８の処理の結果、クライアント１０６にてユーザに表示される脆弱性表示画面２５０１の例を図２５にて示す。図２５で例示する脆弱性リスク表示画面２５０１では、ユーザＩＤやユーザ情報などの表示形態は初期画面１７０１と同様である。一方、リスク評価サーバ１０７の脆弱性リスク表示処理部６０４は、上述のリスク評価モデル構築処理（１８０４）で構築したリスク評価モデルを、当該画面２５０１における領域１２５０２にて表示する。また脆弱性リスク表示処理部６０４は、上述のリスク値計算（１８０６）で計算した、各機器が侵害される確率は、当該画面２５０１において、危険度２５０３として機器ＩＤ１１０１に対応付けてリスト化し、表示する。また、脆弱性リスク表示処理部６
０４は、上述のリスク値計算（１８０６）で計算した、各脆弱性が攻撃される確率を可達度２５０４とし、当該画面２５０１において脆弱性ＩＤ１２０１に対応付けてリスト化し、表示する。
【０１２２】
また、脆弱性リスク表示処理部６０４は、上述のリスク値計算（１８０８）で計算した特定の脆弱性を介した攻撃のみに限定した各機器への侵害確率の総計を計算し、当該画面２５０１において、影響度２５０５として、脆弱性ＩＤ１２０１に対応付けてリスト化し、表示する。また、脆弱性リスク表示処理部６０４は、この脆弱性リスク表示画面２５０１において、脆弱性に対処するのに有効な仮想パッチの情報を提供するため、仮想パッチ情報テーブル８０５の脆弱性ＩＤリスト１３０２から、脆弱性に関連する仮想パッチＩＤを領域２５０６にて表示する。領域２５０６のチェックボックス２５０６１および対策効果ボタン２５０７については後述する。
【０１２３】
以上のように、脆弱性と機器の間の関係性を非循環有向グラフとして構築することで、評価対象システムを成す機器のシステム構成やネットワークのトポロジに基づいたリスク値を計算することが可能となる。またリスク評価サーバ１０７が、上述した脆弱性リスク表示画面２５０１をクライアント１０６に表示することにより、これを閲覧するシステム運管理者は、例えば危険度２５０３の情報から現在システムが置かれている状況を素早く把握し、可達度２５０４と影響度２５０５の大きさから対策すべき脆弱性の優先度を容易に把握することができる。その結果、効率的に脆弱性の対策を行うことが可能になる。
【０１２４】
−−−仮想パッチ適用に関する効果の表示処理例−−−
【０１２５】
次に、上述のリスク評価モデルが含む脆弱性に対して仮想パッチを適用する場合の効果を検証、表示する処理について図に基づき説明する。一般的に仮想パッチは、脆弱性に対して攻撃を仕掛けるメッセージを遮断することが可能であるが、他の脆弱性を踏み台にするなど仮想パッチが実装された装置を介さずに攻撃が仕掛けられた場合、有効な対策手段ではない。脆弱性に対する正規のパッチは脆弱性を完全に解消する対策となるが、仮想パッチによる対策は有効であるかどうかはシステム構成やトポロジに依存しているため、システム構成やトポロジに基づいて適切に仮想パッチの効果を評価することで、システム運用者の対策立案の効率化を支援する必要がある。そこで本実施形態のリスク評価サーバ１０７は、仮想パッチ情報テーブル８０５に基づいて仮想パッチを適用した後のシステム状態を評価するリスク評価モデルを再作成し、仮想パッチを未適用のリスク評価モデルと仮想パッチを適用済のリスク評価モデルとの各リスク評価結果の間の差分を計算することで、仮想パッチの効果を評価する。
【０１２６】
図２６は、本実施形態におけるリスク評価方法の処理手順例９を示すフロー図である。このフローは、クライアント１０６が、システム管理者の操作を受けて、上述の脆弱性リスク表示画面２５０１において、或る脆弱性に関して適用する仮想パッチについて、チェックボックス２５０６１でのチェックと、対策効果ボタン２５０７のクリック動作を受け付けたとする（２６０１）。
【０１２７】
なお、図２５の例では、システム管理者によって１つの仮想パッチが指定された例を示しているが、複数の仮想パッチの選択を受けるとしてもよい。その場合、リスク評価サーバ１０７は各仮想パッチを組み合わせた効果を評価するとしても良い。効果の検証対象として指定できる仮想パッチとしては、上述の管理対象機器１０１が保有する脆弱性に効果がある仮想パッチのみでとなる。
【０１２８】
続いて、クライアント１０６は、上述の仮想パッチ効果表示要求リクエストを、リスク評価サーバ１０７に対して送信する（２６０２）。この仮想パッチ効果表示要求リクエス
トには、効果の検証対象として上述のシステム管理者がクライアント１０６にて指定した仮想パッチＩＤ１３０１が含まれる。
【０１２９】
一方、このリクエストを受信したリスク評価サーバ１０７の仮想パッチ効果表示処理部６０５は、上述のテーブル参照処理（１８０３）と同様に、データベース１０５上のテーブル全てを一括して取得し、メモリ上に展開する（２６０３）。
【０１３０】
続いて仮想パッチ効果表示処理部６０５は、リスク評価モデル構築処理（２６０４）を実行する。このリスク評価モデル構築処理（２６０４）は、図１８で例示したリスク評価モデル構築処理（１８０４）と類似した処理である。但し、仮想パッチによる脆弱性の遮断効果を追加したリスク評価モデルを構築する。そのため、複数のネットワークに所属する機器とその脆弱性を追加する処理（１９０２）における、機器とその脆弱性への接続処理（図２０：２００５）の内容が異なってくる。ここでは、図２６に例示する当該処理フローでの接続処理（２００５）を接続処理（２００５＿２）と符番し、接続処理（２００５＿２）のみ説明するものとする。それ以外の処理についての説明は省略する。
【０１３１】
ここで、当該処理フローにおける接続処理（２００５＿２）の例を、図２７のフローに示す。既に述べた接続処理２００５＿１では、機器の部分集合“Ｅ’ｉ＋１”について、ネットワーク構成にのみ基づいてホップ数をカウントしているが、ここでは、仮想パッチの効果により攻撃源からのホップ数が増える機器を除外すべく、まず、機器の部分集合“Ｅ’ｉ＋１”に所属する全ての機器“ｅ’”に対して、機器“ｅ’”が指定された仮想パッチで防げる脆弱性しか持っていないこと、指定された仮想パッチにより機器“ｅ”から機器“ｅ’”への攻撃の遮断していることを判定する（２７０１、２７０２）。
【０１３２】
上述の判定の結果、上記２つの条件のいずれかを満たさない場合（２７０２：Ｎｏ）、仮想パッチ効果表示処理部６０５は、ステップ２７０３〜２７０７を実行する。このステップ２７０３〜２７０８は、図２１のフローで例示したステップ２１０２〜２７０６と同一の処理内容であるため、ここでは説明を省略する。他方、上述の判定の結果、上記２つの条件を満たす場合（２７０２：Ｙｅｓ）、パッチ効果表示処理部６０５は、機器“ｅ’”を機器の部分集合“Ｅ’ｉ＋１”から除外し、上述のステップ２７０１のルーチンに処理を戻す。こうして仮想パッチを適用した後のシステム状態における機器とその脆弱性の関係に基づいたリスク評価モデルが構築される。この仮想パッチ適用後のリスク評価モデルを利用することで、仮想パッチの効果を検証することが可能になる。
【０１３３】
ここで図２６のフローの説明に戻る。上述のように仮想パッチ適用後のシステム状態に基づくリスク評価モデルを構築した後、リスク評価サーバ１０７は、条件付確率表設定処理（２６０５）〜リスク値計算（２６０８）を実行する。この条件付確率表設定処理（２６０５）〜リスク値計算（２６０８）は、既に説明した図１８における条件付確率表設定処理（１８０５）〜リスク値計算（１８０８）と同一の処理であり、ここでは説明を省略する。
【０１３４】
次に、リスク評価サーバ１０７の仮想パッチ効果表示処理部６０５は、図１８のフローにて既に得ている、仮想パッチ未適用時におけるリスク評価モデルにて計算した危険度２５０３、可達度２５０４、および影響度２５０５の各値と、上述のステップ２６０６、２６０８で仮想パッチ適用時におけるリスク評価モデルにて計算した危険度、可達度、および影響度の各値とを照合し、それぞれの差分を計算する（２６０９）。この計算で得られた差分値が大きい程、該当仮想パッチの効果が大きいことを意味している。なお、本実施形態では、上述の差分値が仮想パッチの効果に該当するとしているが、仮想パッチ適用前後での各値の間の割合が仮想パッチの効果に該当するとしても良い。或いは差分計算を実行せず、仮想パッチ適用前後での各値を比較対象として取得し、これをクライアント１０
６にて並列表示させるとしても良い。
【０１３５】
上述のステップ２６０９の計算によって得られた差分の情報を、クライアント１０６にて表示した場合の脆弱性表示画面２８０１の例を図２８にて示す。この脆弱性表示画面２８０１では、ユーザＩＤやユーザ情報などの表示形態は図１７で例示した初期画面１７０１と同様である。一方、差分計算処理（２６０９）により得られた危険度、可達度、および影響度の各差分値については、仮想パッチ効果表示処理部６０５が、領域２８０２にて表２８０２１を生成し表示する。領域２８０２の表２８０２１では、１つの仮想パッチ“ＰＡＴ３０３”に関する情報を表示する構成としているが、複数の仮想パッチに関する情報を表示する構成としても良い。また、危険度２８０３、影響度２８０４、および可達度２８０５には、仮想パッチ未適用時のリスク評価モデルで計算した結果と、仮想パッチ適用時のリスク評価モデルで計算した結果の両方の値を、矢印を介して並列表示し、仮想パッチ適用により変化した値の様子をユーザに明示する形態となっている。
【０１３６】
以上のように、仮想パッチ適用後のシステム状態に基づくリスク評価モデルを構築し、仮想パッチ適用前後にてリスク評価の結果を比較することで、仮想パッチの効果を検証し、その結果をシステム管理者に対して明確に提示することが可能になる。
【０１３７】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加、削除、置換をすることが可能である。
【０１３８】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記録装置、または、ＩＣカード、ＳＤカード、ＤＶＤ等の記録媒体に置くことができる。
【０１３９】
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【０１４０】
本実施形態によれば、システムを運用しているシステム管理者や業務システムを開発したエンジニア（ＳＥ）に対して、リスク評価対象となるシステムにおける情報セキュリティ上の脆弱性とリスクの因果関係を理解しやすく表示できることとなる。また、対象システムの機器やネットワークの構成に基づいたリスク評価が可能となり、その評価結果を、より精度よく対策（例：仮想パッチ適用）の優先度付けをして表示処理することで、システム管理者らが対策の必要性や重要性を容易に判断することを支援できる。また、仮想パッチによる対策効果を算出しシステム管理者に明示することにより、仮想パッチによる対策の有効性の判断を容易にすることもできる。
【０１４１】
従って、脆弱性個々の技術的な特性に加え、システム構成やトポロジに基づいて脆弱性リスクを評価し、現実のシステム状況に対応した有効性の高いリスク評価が可能となる。また本発明により、セキュリティインシデントへの対処支援を効率的なものとすることが可能となる。
【０１４２】
本明細書の記載により、少なくとも次のことが明らかにされる。すなわち、本実施形態のリスク評価システムにおいて、前記演算装置は、前記機器、前記ネットワーク、および前記脆弱性の各情報を、グラフ理論に基づく所定アルゴリズムに適用して、ネットワーク上での各機器の配置に応じた脆弱性の影響関係について規定する非循環有向グラフを、前記リスク評価モデルとして作成し、前記非循環有向グラフをベイジアンネットワークの推論アルゴリズムに適用して、前記対象システムの脆弱性がもたらすリスクを評価し、当該評価結果を所定装置に出力するものである、としてもよい。
【０１４３】
これによれば、例えば多数の機器を含むネットワークでの機器配置に応じた脆弱性の影響伝搬を、矛盾無く規定する非循環有向グラフをリスク評価モデルとし、これをベイジアンネットワークの概念に基づいて評価することで、より現実のシステム状況に対応した有効性の高いリスク評価が可能となる。
【０１４４】
また、本実施形態のリスク評価システムにおいて、前記演算装置は、前記非循環有向グラフを作成するに際し、前記対象システムを構成する機器と前記機器が保有する脆弱性をノードとし、前記ネットワーク情報が示す前記対象システムのネットワーク構成に基づいて、前記機器と前記脆弱性との間をアークで接続して非循環有向グラフを作成するものである、としてもよい。
【０１４５】
これによれば、リスク評価モデルたる非循環有向グラフを、より効率的に作成し、ひいては、より現実のシステム状況に対応した有効性の高いリスク評価を効率的なものとできる。
【０１４６】
また、本実施形態のリスク評価システムにおいて、前記演算装置は、前記非循環有向グラフを作成するに際し、攻撃源となる所定機器を最上位ノードとし、前記攻撃源の所定機器からその他の各機器へ攻撃が届くまでのホップ数に応じて各機器をレベル分けし、上位レベルの機器から下位レベルの機器へのみアークを接続する制約条件に基づいて、前記非循環有向グラフを作成するものである、としてもよい。
【０１４７】
これによれば、例えば多数の機器を含むネットワークでの機器配置に応じた脆弱性の影響伝搬を、より効率的に矛盾無く規定する非循環有向グラフを作成し、これをベイジアンネットワークの概念に基づいて評価することで、より現実のシステム状況に対応した有効性の高いリスク評価が可能となる。
【０１４８】
また、本実施形態のリスク評価システムにおいて、前記演算装置は、前記リスク評価モデルを、当該リスク評価モデルに対応する所定の推論アルゴリズムに適用し、前記対象システムにおける脆弱性がもたらすリスクとして、前記機器の各々が侵害される確率、前記脆弱性の各々が攻撃される確率、および、前記脆弱性の各々が前記機器に影響を与える確率、をそれぞれ算定し、当該算定した結果を所定装置に出力するものである、としてもよい。
【０１４９】
これによれば、リスク評価の結果として上述の各確率の情報を出力することで、リスク評価結果をより具体的に理解しやすい形態でユーザに提示し、当該ユーザにおけるリスク評価の判断精度や効率が向上する。
【０１５０】
また、本実施形態のリスク評価システムにおいて、前記記憶装置は、前記脆弱性の情報に対応付けて、該当脆弱性に対処する仮想パッチの情報を記憶するデータベースを更に保持し、前記演算装置は、前記仮想パッチの情報に基づき、所定の脆弱性に対して仮想パッチを適用した場合の仮想パッチ適用時リスク評価モデルを作成し、前記仮想パッチ適用時
リスク評価モデルを、前記推論アルゴリズムに適用して、前記対象システムにおける脆弱性がもたらすリスクを評価し、前記リスク評価モデルと前記仮想パッチ適用時リスク評価モデルとの間での、評価結果の差分を特定し、当該評価結果の差分を所定装置に出力する処理を更に実行するものである、としてもよい。
【０１５１】
これによれば、仮想パッチ適用前後でのリスク評価結果の差異を、ユーザに対して明確に提示することが可能となり、該当ユーザにおいて、仮想パッチ適用の有効性判断が容易なものとなる。
【０１５２】
また、本実施形態のリスク評価方法において、前記情報処理装置が、前記機器、前記ネットワーク、および前記脆弱性の各情報を、グラフ理論に基づく所定アルゴリズムに適用して、ネットワーク上での各機器の配置に応じた脆弱性の影響関係について規定する非循環有向グラフを、前記リスク評価モデルとして作成し、前記非循環有向グラフをベイジアンネットワークの推論アルゴリズムに適用して、前記対象システムの脆弱性がもたらすリスクを評価し、当該評価結果を所定装置に出力する、としてもよい。
【０１５３】
また、本実施形態のリスク評価方法において、前記情報処理装置が、前記非循環有向グラフを作成するに際し、前記対象システムを構成する機器と前記機器が保有する脆弱性をノードとし、前記ネットワーク情報が示す前記対象システムのネットワーク構成に基づいて、前記機器と前記脆弱性との間をアークで接続して非循環有向グラフを作成する、としてもよい。
【０１５４】
また、本実施形態のリスク評価方法において、前記情報処理装置が、前記非循環有向グラフを作成するに際し、攻撃源となる所定機器を最上位ノードとし、前記攻撃源の所定機器からその他の各機器へ攻撃が届くまでのホップ数に応じて各機器をレベル分けし、上位レベルの機器から下位レベルの機器へのみアークを接続する制約条件に基づいて、前記非循環有向グラフを作成する、としてもよい。
【０１５５】
また、本実施形態のリスク評価方法において、前記情報処理装置が、前記リスク評価モデルを、当該リスク評価モデルに対応する所定の推論アルゴリズムに適用し、前記対象システムにおける脆弱性がもたらすリスクとして、前記機器の各々が侵害される確率、前記脆弱性の各々が攻撃される確率、および、前記脆弱性の各々が前記機器に影響を与える確率、をそれぞれ算定し、当該算定した結果を所定装置に出力する、としてもよい。
【０１５６】
また、本実施形態のリスク評価方法において、前記情報処理装置が、前記記憶装置において、脆弱性の情報に対応付けて、該当脆弱性に対処する仮想パッチの情報を記憶するデータベースを更に保持し、前記仮想パッチの情報に基づき、所定の脆弱性に対して仮想パッチを適用した場合の仮想パッチ適用時リスク評価モデルを作成し、前記仮想パッチ適用時リスク評価モデルを、前記推論アルゴリズムに適用して、前記対象システムにおける脆弱性がもたらすリスクを評価し、前記リスク評価モデルと前記仮想パッチ適用時リスク評価モデルとの間での、評価結果の差分を特定し、当該評価結果の差分を所定装置に出力する処理を更に実行する、としてもよい。
【符号の説明】
【０１５７】
１０  リスク評価システム
１０１  管理対象機器
１０２  ネットワーク
１０３  情報収集サーバ
１０４  セキュリティナレッジ公開機関サーバ
１０５  データベース
１０６  クライアント
１０７  リスク評価サーバ（リスク評価システムの最小構成）
７０２  ＣＰＵ（演算装置）
７０３  メモリ
７０４  外部記憶装置
７０５  送受信装置
７０６  出力装置
７０７  入力装置
８０１  ユーザ情報テーブル
８０２  ネットワーク情報テーブル
８０３  機器情報テーブル
８０４  脆弱性情報テーブル
８０５  仮想パッチ情報テーブル
２３００  非循環有向グラフ
２３０１  攻撃源ノード
２３０２  機器ノード
２３０３  脆弱性ノード
【図１】
0006312578.tif 000002
【図２】
0006312578.tif 000003
【図３】
0006312578.tif 000004
【図４】
0006312578.tif 000005
【図５】
0006312578.tif 000006
【図６】
0006312578.tif 000007
【図７】
0006312578.tif 000008
【図８】
0006312578.tif 000009
【図９】
0006312578.tif 000010
【図１０】
0006312578.tif 000011
【図１１】
0006312578.tif 000012
【図１２】
0006312578.tif 000013
【図１３】
0006312578.tif 000014
【図１４】
0006312578.tif 000015
【図１５】
0006312578.tif 000016
【図１６】
0006312578.tif 000017
【図１７】
0006312578.tif 000018
【図１８】
0006312578.tif 000019
【図１９】
0006312578.tif 000020
【図２０】
0006312578.tif 000021
【図２１】
0006312578.tif 000022
【図２２】
0006312578.tif 000023
【図２３】
0006312578.tif 000024
【図２４】
0006312578.tif 000025
【図２５】
0006312578.tif 000026
【図２６】
0006312578.tif 000027
【図２７】
0006312578.tif 000028
【図２８】
0006312578.tif 000029