(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-08-15
(45)【発行日】2022-08-23
(54)【発明の名称】脆弱性管理装置、脆弱性管理方法及びプログラム
(51)【国際特許分類】
G06F 21/57 20130101AFI20220816BHJP
G06F 8/70 20180101ALI20220816BHJP
G06F 8/65 20180101ALI20220816BHJP
【FI】
G06F21/57 370
G06F8/70
G06F8/65
(21)【出願番号】P 2018121905
(22)【出願日】2018-06-27
【審査請求日】2020-11-27
(73)【特許権者】
【識別番号】000102717
【氏名又は名称】NTTテクノクロス株式会社
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(72)【発明者】
【氏名】遠藤 達也
(72)【発明者】
【氏名】鈴木 秀昭
(72)【発明者】
【氏名】鷲東 文武
(72)【発明者】
【氏名】松井 俊之
【審査官】吉田 歩
(56)【参考文献】
【文献】特開2011-014094(JP,A)
【文献】特開2015-138509(JP,A)
【文献】特開2004-258777(JP,A)
【文献】特開2015-219665(JP,A)
【文献】米国特許出願公開第2015/0193624(US,A1)
【文献】特開2008-146163(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/57
G06F 8/70
G06F 8/65
(57)【特許請求の範囲】
【請求項1】
機器に搭載されているソフトウェアの脆弱性を管理する脆弱性管理装置であって、
ソフトウェアに存在する脆弱性を示す情報と、該脆弱性を解消するためのパッチを示す情報とを関連付けた対処済脆弱性情報を記憶する第1の記憶部と、
前記パッチを配布するサーバを監視し、新たなパッチの配布が開始された場合、該新たなパッチを取得する取得手段と、
前記取得手段により取得された新たなパッチの適用によって解消される脆弱性を示す情報と、該新たなパッチを示す情報とが含まれる対処済脆弱性情報を作成し、作成した対処済脆弱性情報を前記第1の記憶部に記憶させる保存手段と、
前記機器から収集した機器情報に基づいて、前記機器に搭載されているソフトウェアに脆弱性が存在するか否かを判定する第1の判定手段と、
前記第1の記憶部を参照して、前記第1の判定手段により前記ソフトウェアに前記脆弱性が存在すると判定された場合、前記脆弱性を解消するためのパッチが前記ソフトウェアに適用されているか否かを判定する第2の判定手段と、
前記第2の判定手段により前記パッチが前記ソフトウェアに適用されていないと判定された場合
には前記ソフトウェアに存在する前記脆弱性を管理するための管理情報を作成
し、前記第2の判定手段により前記パッチが前記ソフトウェアに適用されていると判定された場合には前記管理情報を作成しない管理手段と、
を有することを特徴とする脆弱性管理装置。
【請求項2】
前記機器情報には、前記機器に
搭載されているソフトウェアに適用されたパッチを示す情報が含まれ、
前記第2の判定手段は、
前記第1の記憶部を参照して、前記機器情報に含まれるパッチを示す情報と、前記第1の判定手段により前記ソフトウェアに存在すると判定された前記脆弱性を示す情報とが含まれる対処済脆弱性情報が前記第1の記憶部に記憶されているか否かを判定することで、前記脆弱性を解消するためのパッチが前記ソフトウェアに適用されているか否かを判定する、
ことを特徴とする請求項1に記載の脆弱性管理装置。
【請求項3】
前記機器情報に含まれるソフトウェア名をCPE名に正規化する正規化手段を有し、
前記第1の判定手段は、
CPE名と、該CPE名に対応するソフトウェアの脆弱性を識別するCVE番号とを関連付けた脆弱性CPE情報を記憶する第2の記憶部を参照して、前記正規化手段により正規化されたCPE名が含まれる脆弱性CPE情報が前記第2の記憶部に記憶されているか否かを判定することで、前記機器に搭載されているソフトウェアに脆弱性が存在するか否かを判定する、
ことを特徴とする請求項1
又は2に記載の脆弱性管理装置。
【請求項4】
前記脆弱性管理装置とネットワークを介して接続される端末からの要求に応じて、前記管理手段により作成された管理情報に基づく画面を前記端末に表示させる表示手段を有する、ことを特徴とする請求項1乃至
3の何れか一項に記載の脆弱性管理装置。
【請求項5】
前記画面には、脆弱性のリスク毎に、前記脆弱性に関するパッチが適用されていないソフトウェアが搭載されている機器の台数が含まれる、ことを特徴とする請求項4に記載の脆弱性管理装置。
【請求項6】
機器に搭載されているソフトウェアの脆弱性を管理する脆弱性管理装置
であって、ソフトウェアに存在する脆弱性を示す情報と、該脆弱性を解消するためのパッチを示す情報とを関連付けた対処済脆弱性情報を記憶する第1の記憶部を有する脆弱性管理装置が、
前記パッチを配布するサーバを監視し、新たなパッチの配布が開始された場合、該新たなパッチを取得する取得手順と、
前記取得手順により取得された新たなパッチの適用によって解消される脆弱性を示す情報と、該新たなパッチを示す情報とが含まれる対処済脆弱性情報を作成し、作成した対処済脆弱性情報を前記第1の記憶部に記憶させる保存手順と、
前記機器から収集した機器情報に基づいて、前記機器に搭載されているソフトウェアに脆弱性が存在するか否かを判定する第1の判定手順と、
前記第1の記憶部を参照して、前記第1の判定手順により前記ソフトウェアに前記脆弱性が存在すると判定された場合、前記脆弱性を解消するためのパッチが前記ソフトウェアに適用されているか否かを判定する第2の判定手順と、
前記第2の判定手順により前記パッチが前記ソフトウェアに適用されていないと判定された場合
には前記ソフトウェアに存在する前記脆弱性を管理するための管理情報を作成
し、前記第2の判定手順により前記パッチが前記ソフトウェアに適用されていると判定された場合には前記管理情報を作成しない管理手順と、
を実行することを特徴とする脆弱性管理方法。
【請求項7】
コンピュータを、請求項1乃至5の何れか一項に記載の脆弱性管理装
置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、脆弱性管理装置、脆弱性管理方法及びプログラムに関する。
【背景技術】
【0002】
近年、サイバー攻撃が高度化・多様化し続けており、企業活動を守るためにも継続的なセキュリティ対策を施すことが求められている。しかしながら、一般に、ITシステム等の機器が利用するOS(Operating System)やアプリケーション等では、その脆弱性が日々発見されており、脆弱性情報の収集や脆弱性に対する対応を継続的に行うことは、企業のシステム管理者等にとって大きな負担となっている。
【0003】
これに対して、ITシステム等の機器が有する脆弱性を自動で検出して、システム管理者等のユーザに脆弱性情報を通知する技術が知られている(例えば、特許文献1参照)。このような脆弱性の検出は、例えば、個別製品(OSやアプリケーション等)中の脆弱性を識別するCVE(Common Vulnerabilities and Exposures)と呼ばれる識別子を用いて、CVEが付与されている個別製品を機器が利用しているか否かを判定することにより行われる場合が多い。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、OSやアプリケーション等の個別製品に脆弱性が発見された場合、この個別製品のベンダ(ソフトウェアベンダ)等によって、当該脆弱性を解消するためのパッチが配布されることが多い。しかしながら、従来技術では、CVEが付与されている個別製品を機器が利用しているか否かを判定するため、パッチが適用された後も脆弱性が検出される場合があった。このため、例えばシステム管理者等のユーザは、パッチの適用により脆弱性が解消しているにも関わらず、脆弱性が検出されたことを示す通知等を受け取ることがあった。
【0006】
本発明の実施の形態は、上記の点に鑑みてなされたもので、パッチ適用を考慮した脆弱性管理を行うことを目的とする。
【課題を解決するための手段】
【0007】
上記目的を達成するため、本発明の実施の形態は、機器に搭載されているソフトウェアの脆弱性を管理する脆弱性管理装置であって、前記機器から収集した機器情報に基づいて、前記機器に搭載されているソフトウェアに脆弱性が存在するか否かを判定する第1の判定手段と、前記第1の判定手段により前記ソフトウェアに前記脆弱性が存在すると判定された場合、前記脆弱性を解消するためのパッチが前記ソフトウェアに適用されているか否かを判定する第2の判定手段と、前記第2の判定手段により前記パッチが前記ソフトウェアに適用されていないと判定された場合、前記ソフトウェアに存在する前記脆弱性を管理するための管理情報を作成する管理手段と、を有することを特徴とする。
【発明の効果】
【0008】
本発明の実施の形態によれば、パッチ適用を考慮した脆弱性管理を行うことができる。
【図面の簡単な説明】
【0009】
【
図1】本実施形態に係る脆弱性管理システムの全体構成の一例を示す図である。
【
図2】本実施形態に係る脆弱性管理システムの機能構成の一例を示す図である。
【
図9】機器搭載CPE情報の保存処理の一例を示すフローチャートである。
【
図10】脆弱性管理情報の保存処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0010】
以下、本発明の実施の形態(以降、「本実施形態」と表す。)について説明する。以降では、パッチの適用を考慮した脆弱性管理を行う脆弱性管理システム1について説明する。
【0011】
<全体構成>
まず、本実施形態に係る脆弱性管理システム1の全体構成について、
図1を参照しながら説明する。
図1は、本実施形態に係る脆弱性管理システム1の全体構成の一例を示す図である。
【0012】
図1に示すように本実施形態に係る脆弱性管理システム1には、脆弱性管理装置10と、1以上の機器20と、1以上の管理者端末30とが含まれる。また、脆弱性管理装置10と、機器20と、管理者端末30とは、例えば、インターネット等のネットワークNを介して通信可能に接続される。
【0013】
脆弱性管理装置10は、機器20の脆弱性を管理するコンピュータ又はコンピュータシステムである。脆弱性管理装置10は、機器20から収集した情報(機器情報)を用いて、当該機器20に搭載されているソフトウェア(すなわち、OSやミドルウェア、アプリケーション等の種々のソフトウェア)に脆弱性があるか否かを判定する。このとき、脆弱性管理装置10は、機器20に搭載されているソフトウェアに対するパッチも考慮して脆弱性があるか否かを判定する。なお、パッチとは、ソフトウェアに内在するバグ等を原因とした脆弱性を解消するためのデータのことである。パッチは、「修正プログラム」や「更新プログラム」、「アップデート(又はアップデートプログラム)」、「セキュリティパッチ」等とも称される。
【0014】
機器20は、脆弱性が管理される任意の電子機器又は装置である。機器20としては、例えば、PC(パーソナルコンピュータ)、サーバ装置、スマートフォン、タブレット端末、プリンタ、ルータ等が挙げられる。なお、機器20は、これらに限られず、何等かのソフトウェアが搭載されるものであれば任意の電子機器又は装置としても良い。
【0015】
管理者端末30は、例えば、機器20を管理するシステム管理者等が利用するPC等である。システム管理者等のユーザは、管理者端末30を用いて、脆弱性管理装置10にアクセスすることで、脆弱性が存在する機器20の一覧や機器20に存在する脆弱性の一覧等を確認することができる。これにより、システム管理者等のユーザは、脆弱性に対する種々の対処(例えば、パッチを適用する、WAF(Web Application Firewall)を設置する等)の検討や実施を行うことができるようになる。
【0016】
なお、
図1に示す脆弱性管理システム1の構成は一例であって、他の構成であっても良い。例えば、
図1に示す脆弱性管理システム1では、脆弱性管理装置10が機器20や管理者端末30等とネットワークNを介して接続される場合を示したが、これに限られず、例えば、脆弱性管理装置10が機器20や管理者端末30等と同一ネットワーク内に設置されていても良い。すなわち、脆弱性管理装置10は、オンプレミスとして設置されていても良い。
【0017】
<機能構成>
次に、本実施形態に係る脆弱性管理システム1の機能構成について、
図2を参照しながら説明する。
図2は、本実施形態に係る脆弱性管理システム1の機能構成の一例を示す図である。
【0018】
図2に示すように、本実施形態に係る機器20は、機器情報送信部201を有する。機器情報送信部201は、機器20にインストールされた1以上のプログラムがCPU(Central Processing Unit)等に実行させる処理により実行される。
【0019】
機器情報送信部201は、所定の時間毎(例えば、1日毎や数日毎、数週間毎等)に、機器情報を脆弱性管理装置10に送信する。機器情報とは、機器20に搭載されているソフトウェアやパッチ等に関する情報である。機器情報には、例えば、機器20を識別する機器ID、ソフトウェア名やバージョン、ソフトウェアに適用されたパッチを識別するパッチ番号等が含まれる。機器情報には、これら以下にも、例えば、機器20の名称やソフトウェアのインストール日、パッチの適用日等の種々の情報が含まれていても良い。
【0020】
図2に示すように、本実施形態に係る脆弱性管理装置10は、収集部101と、正規化部102と、機器搭載CPE情報作成部103と、情報管理部104と、脆弱性判定部105と、パッチ適用判定部106と、脆弱性管理情報作成部107とを有する。これら各機能部は、脆弱性管理装置10にインストールされた1以上のプログラムがCPUに実行させる処理により実現される。
【0021】
また、本実施形態に係る脆弱性管理装置10は、CVE情報記憶部111と、CPE情報記憶部112と、脆弱性CPE情報記憶部113と、機器搭載CPE情報記憶部114と、対処済脆弱性情報記憶部115と、脆弱性管理情報記憶部116とを有する。これら各記憶部は、例えば、HDD(Hard Disk Drive)やSSD(Solid State Drive)等の補助記憶装置を用いて実現可能である。なお、これら各記憶部のうちの少なくとも1つが、脆弱性管理装置10とネットワークNを介して接続される記憶装置等を用いて実現されていても良い。
【0022】
収集部101は、機器20から送信された機器情報を収集する。正規化部102は、収集部101が収集した機器情報に含まれるソフトウェア名(製品名)を、CPE(Common Platform Enumeration)名に正規化する。これは、同一のソフトウェアであっても機器20によって異なるソフトウェア名が用いられている場合(例えば、「ABCアプリケーション」と「abcアプリケーション」等)があるためである。
【0023】
機器搭載CPE情報作成部103は、正規化部102が正規化したCPE名を識別するCPE番号と、機器情報に含まれる機器ID及びパッチ番号とから機器搭載CPE情報を作成する。機器搭載CPE情報とは、機器20に搭載されているソフトウェアのCPE名と、当該ソフトウェアに対して適用されたパッチのパッチ番号とが含まれる情報である。機器搭載CPE情報により、機器20に搭載されているソフトウェアと、当該ソフトウェアに対して適用されたパッチとを管理することができる。
【0024】
情報管理部104は、各記憶部に記憶されている情報を管理する。すなわち、情報管理部104は、各記憶部から情報を取得したり、各記憶部へ情報を格納したりする。
【0025】
脆弱性判定部105は、機器20毎に、当該機器20に搭載されているソフトウェアに脆弱性が存在するか否かを判定する。
【0026】
パッチ適用判定部106は、脆弱性判定部105により脆弱性が存在すると判定された場合、当該脆弱性がパッチの適用によって解消されているか否かを判定する。
【0027】
脆弱性管理情報作成部107は、パッチ適用判定部106により脆弱性が解消されていないと判定された場合、脆弱性管理情報を作成する。脆弱性管理情報とは、機器20が有する脆弱性を示すCVE番号と、そのリスクとが含まれる情報である。CVE番号とは、CVEを識別する識別情報であり、「CVE識別番号」又は「CVE-NO」とも称される。脆弱性管理情報により、脆弱性を有し、かつ、この脆弱性を解消するためのパッチが適用されていないソフトウェアが搭載されている機器20を管理することができる。
【0028】
CVE情報記憶部111は、CVE情報を記憶する。ここで、CVE情報記憶部111に記憶されているCVE情報について、
図3を参照しながら説明する。
図3は、CVE情報の一例を示す図である。
【0029】
図3に示すように、CVE情報記憶部111に記憶されている各CVE情報には、CVE番号と、CVE番号と、脆弱性の概要と、参考とが含まれる。CVE番号は、上述した通り、CVEを識別する識別情報である。脆弱性の概要は、CVEにより識別される脆弱性の概要である。参考は、この脆弱性に関して参考となるURL(Uniform Resource Locator)等である。
【0030】
これらのCVE情報は、例えば、NIST(National Institute of Standards and Technology)によって管理されているNVD(National Vulnerability Database)から取得することができる。また、JPCERT/CC及びIPA(Information-technology Promotion Agency, Japan)によって管理されているJVN(Japan Vulnerability Notes)から取得した脆弱性情報をCVE情報に変換しても良い。
【0031】
CPE情報記憶部112は、CPE情報を記憶する。ここで、CPE情報記憶部112に記憶されているCPE情報について、
図4を参照しながら説明する。
図4は、CPE情報の一例を示す図である。
【0032】
図4に示すように、CPE情報記憶部112に記憶されている各CPE情報には、CPE番号と、CPE名とが含まれる。CPE番号は、上述した通り、CPE名を識別する識別情報である。CPE名は、ハードウェアやオペレーティングシステム、アプリケーション等を識別するため名称である。CPE名は、以下の形式で記載される。
【0033】
cpe:/{種別}:{ベンダ名}:{製品名}:{バージョン}:{アップデート}:{エディション}:{言語}
これらのCPE情報に含まれるCPE名は、NISTによって管理されているNVDから取得することができる。そして、取得されたCPE名に対して、情報管理部104によりCPE番号が付与される。
【0034】
脆弱性CPE情報記憶部113は、脆弱性CPE情報を記憶する。脆弱性CPE情報記憶部113に記憶されている脆弱性CPE情報について、
図5を参照しながら説明する。
図5は、脆弱性CPE情報の一例を示す図である。
【0035】
図5に示すように、脆弱性CPE情報記憶部113に記憶されている各脆弱性CPE情報には、CVE番号と、CPE番号リストとが含まれる。CVE番号は、上述した通り、CVEを識別する識別情報である。CPE番号リストは、当該CVE番号のCVEにより識別される脆弱性を有するソフトウェアに対応するCPE番号(すなわち、当該ソフトウェアのCPE名のCPE番号)が含まれるリストである。
【0036】
例えば、
図5に示す例では、CVE番号「CVE-2007-xxxx」に対してCPE番号リスト「CPE001,CPE005,・・・」が対応付けられている。これは、CPE番号「CPE001」のCPE名(のソフトウェア)は、CVE番号「CVE-2007-xxxx」により識別される脆弱性を有することを示している。同様に、CPE番号「CPE005」のCPE名(のソフトウェア)は、CVE番号「CVE-2007-xxxx」により識別される脆弱性を有することを示している。
【0037】
このように、脆弱性CPE情報には、CVE番号によって識別される脆弱性を有するソフトウェアに対応するCPE番号のリストが含まれている。これにより、機器20に搭載されているソフトウェアが脆弱性を有するか否かが判定される。
【0038】
機器搭載CPE情報記憶部114は、機器搭載CPE情報を記憶する。機器搭載CPE情報記憶部114に記憶されている機器搭載CPE情報について、
図6を参照しながら説明する。
図6は、機器搭載CPE情報の一例を示す図である。
【0039】
図6に示すように、機器搭載CPE情報記憶部114に記憶されている各機器搭載CPE情報には、機器IDと、CPE番号リストと、パッチ番号リストとが含まれる。機器IDは、上述した通り、機器20を識別する識別情報である。CPE番号リストは、当該機器20に搭載されているソフトウェアに対応するCPE番号のリストである。パッチ番号リストは、当該機器20に搭載されているソフトウェアに適用されているパッチのパッチ番号のリストである。
【0040】
対処済脆弱性情報記憶部115は、対処済脆弱性情報を記憶する。対処済脆弱性情報記憶部115に記憶されている対処済脆弱性情報について、
図7を参照しながら説明する。
図7は、対処済脆弱性情報の一例を示す図である。
【0041】
図7に示すように、対処済脆弱性情報記憶部115に記憶されている各対処済脆弱性情報には、パッチ番号と、CVE番号リストとが含まれる。パッチ番号は、上述した通り、パッチを識別する識別情報である。CVE番号リストは、当該パッチによって脆弱性が解消されるCVEを識別するCVE番号である。すなわち、CVE番号リストに含まれるCVE番号は、ソフトウェアベンダ等によって既に対処された脆弱性に対応するCVEのCVE番号である。
【0042】
例えば、
図7に示す例では、パッチ番号「KBxxxxxxx」に対してCVE番号リスト「CVE-2007-xxxx,CVE-2008-xxxx,・・・」が対応付けられている。これは、パッチ番号「KBxxxxxxx」により識別されるパッチを適用することによって、CVE番号「CVE-2007-xxxx」により識別されるCVEの脆弱性が解消されることを示している。同様に、パッチ番号「KBxxxxxxx」により識別されるパッチを適用することによって、CVE番号「CVE-2008-xxxx」により識別されるCVEの脆弱性が解消されることを示している。
【0043】
このように、対処済脆弱性情報には、既に配布されたパッチによって解消可能な脆弱性のCVE番号のリストが含まれる。これにより、機器20に搭載されているソフトウェアが脆弱性を有する場合であっても、この脆弱性がパッチの適用によって解消されているか否かが判定される。
【0044】
ここで、対処済脆弱性情報は、例えば、情報管理部104により、ソフトウェアベンダが配布しているパッチを情報管理部104によって取得した上で、当該パッチのパッチ番号と、このパッチによって解消される脆弱性に対応するCVE番号と対応付けることで作成される。このとき、ソフトウェアベンダが配布しているパッチの取得は、例えば、当該パッチの配布サイト等の監視することで、新しいパッチが配布されたタイミングで自動的に取得しても良いし、新しいパッチが配布されたか否かを人手によって確認した上で、新しいパッチの取得を手動で開始しても良い。
【0045】
また、ソフトウェアベンダ等によって配布されたパッチによって解消される脆弱性の特定についても、情報管理部104が当該パッチを取得する際に特定しても良いし、どの脆弱性が解消されるのかを人手によって確認しても良い。
【0046】
脆弱性管理情報記憶部116は、脆弱性管理情報を記憶する。脆弱性管理情報記憶部116に記憶されている脆弱性管理情報について、
図8を参照しながら説明する。
図8は、脆弱性管理情報の一例を示す図である。
【0047】
図8に示すように、脆弱性管理情報記憶部116に記憶されている脆弱性管理情報には、機器IDと、CVE番号と、リスクとが含まれる。機器IDは、上述した通り、機器20を識別する識別情報である。CVE番号は、当該機器20に搭載されたソフトウェアが有する脆弱性を識別するCVEのCVE番号である。リスクは、当該脆弱性のリスクである。脆弱性管理情報により、機器20に搭載されているソフトウェアが有する脆弱性と、この脆弱性のリスクとが管理される。なお、リスクは、例えば、CVSS(Common Vulnerability Scoring System)と呼ばれる評価手法によって評価される。
【0048】
<機器搭載CPE情報の保存処理>
以降では、機器搭載CPE情報を機器搭載CPE情報記憶部114に保存する処理について、
図9を参照しながら説明する。
図9は、機器搭載CPE情報の保存処理の一例を示すフローチャートである。
【0049】
脆弱性管理装置10の収集部101は、機器20から送信された機器情報を収集(受信)する(ステップS101)。機器情報には、例えば、機器20を識別する機器ID、ソフトウェア名(製品名)やバージョン、ソフトウェアに適用されたパッチを識別するパッチ番号等が含まれる。なお、機器20は、所定の時間毎(例えば、1日毎や数日毎、数週間毎等)に、機器情報を脆弱性管理装置10に送信する。
【0050】
次に、脆弱性管理装置10の正規化部102は、収集部101が受信した機器情報に含まれるソフトウェア名を、CPE名に正規化する(ステップS102)。なお、CPE名への正規化は、例えば、ソフトウェア名とCPE名とが対応付けられた辞書データを参照して行われる。このような辞書データは、例えば、予め取得しておき、補助記憶装置等に保存しておけば良い。又は、正規化部102は、ネットワークNを介して、辞書データが格納されているDBサーバ等を参照しても良い。
【0051】
次に、脆弱性管理装置10の機器搭載CPE情報作成部103は、正規化部102が正規化した各CPE名をそれぞれ識別するCPE番号をCPE番号リストとして、機器情報に含まれる機器IDと、当該CPE番号リスト、当該機器情報に含まれるパッチ番号のリスト(パッチ番号リスト)とを対応付けた機器搭載CPE情報を作成する(ステップS103)。
【0052】
そして、脆弱性管理装置10の情報管理部104は、上記のステップS103で作成された機器搭載CPE情報を機器搭載CPE情報記憶部114に保存する(ステップS104)。これにより、機器搭載CPE情報が機器搭載CPE情報記憶部114に保存される。なお、上記のステップS103で作成された機器搭載CPE情報と機器IDが同一の機器搭載CPE情報が機器搭載CPE情報記憶部114に既に存在する場合、情報管理部104は、上記のステップS103で作成された機器搭載CPE情報で、機器搭載CPE情報記憶部114に既に記憶されている機器搭載CPE情報を上書き更新する。
【0053】
以上のように、本実施形態に係る脆弱性管理装置10は、所定の時間毎に、機器20に搭載されているソフトウェアのCPE番号と、当該ソフトウェアに対して適用されているパッチのパッチ番号とを機器搭載CPE情報として収集する。
【0054】
<脆弱性管理情報の保存処理>
以降では、機器20に搭載されたソフトウェアの脆弱性とそのリスクとを示す脆弱性管理情報を作成し、脆弱性管理情報記憶部116に保存する処理について、
図10を参照しながら説明する。
図10は、脆弱性管理情報の保存処理の一例を示すフローチャートである。なお、
図10のステップS201~ステップS206の処理は、機器20の機器ID毎に繰り返し実行される。以降では、或る1つの機器IDを固定した場合について説明する。
【0055】
まず、脆弱性管理装置10の情報管理部104は、当該機器IDが含まれる機器搭載CPE情報を機器搭載CPE情報記憶部114から取得する(ステップS201)。
【0056】
次に、脆弱性管理装置10の情報管理部104は、上記のステップS201で取得した機器搭載CPE情報のCPE番号リストからCPE番号を1つ取得する(ステップS202)。
【0057】
次に、脆弱性管理装置10の脆弱性判定部105は、脆弱性CPE情報記憶部113を参照して、上記のステップS202で取得されたCPE番号が、脆弱性があるCPE名のCPE番号であるか否かを判定する(ステップS203)。すなわち、脆弱性判定部105は、上記のステップS202で取得されたCPE番号が含まれる脆弱性CPE情報が脆弱性CPE情報記憶部113に記憶されているか否かを判定する。このとき、上記のステップS201で取得されたCPE番号が含まれる脆弱性CPE情報が脆弱性CPE情報記憶部113に記憶されている場合、脆弱性判定部105は、脆弱性があるCPE名のCPE番号であると判定する。一方で、上記のステップS201で取得されたCPE番号が含まれる脆弱性CPE情報が脆弱性CPE情報記憶部113に記憶されていない場合、脆弱性判定部105は、脆弱性があるCPE名のCPE番号ではないと判定する。
【0058】
ステップS203で脆弱性があるCPE名のCPE番号であると判定された場合、脆弱性管理装置10のパッチ適用判定部106は、当該脆弱性がパッチ適用によって解消済であるか否かを判定する(ステップS204)。
【0059】
すなわち、パッチ適用判定部106は、以下の(1)~(4)により当該脆弱性がパッチ適用によって解消済であるかを判定すれば良い。
【0060】
(1)まず、パッチ適用判定部106は、当該CPE番号のCPE名が有する脆弱性のCVE番号を特定する。これは、脆弱性CPE情報記憶部113を参照して、当該CPE番号が含まれる脆弱性CPE情報のCVE番号とすれば良い。
【0061】
(2)次に、パッチ適用判定部106は、当該CVE番号のCVEにより識別される脆弱性を解消するパッチがあるか否かを判定する。これは、対処済脆弱性情報記憶部115を参照して、当該CVE番号が含まれる対処済脆弱性情報が存在するか否かを判定すれば良い。なお、当該脆弱性を解消するパッチが存在しない場合は、当該脆弱性を解消するパッチがソフトウェアベンダ等によって未だ配布されていない場合等である。この場合は、パッチ適用判定部106は、当該脆弱性がパッチ適用によって解消済でないと判定すれば良い。
【0062】
(3)次に、当該脆弱性を解消するパッチがあると判定した場合、パッチ適用判定部106は、当該パッチが、当該機器IDの機器20に搭載されたソフトウェアに適用されているか否かを判定する。これは、上記のステップS201で取得された機器搭載CPE情報のパッチ番号リストに、当該パッチのパッチ番号が含まれているか否かを判定すれば良い。
【0063】
(4)そして、パッチ適用判定部106は、上記のステップS201で取得された機器搭載CPE情報のパッチ番号リストに、当該パッチのパッチ番号が含まれている場合、当該脆弱性がパッチ適用によって解消済であると判定する。一方で、パッチ適用判定部106は、当該パッチ番号リストに、当該パッチのパッチ番号が含まれていない場合、当該脆弱性がパッチ適用によって解消済でないと判定する。
【0064】
ステップS204で当該脆弱性がパッチ適用によって解消済でないと判定された場合、脆弱性管理装置10の脆弱性管理情報作成部107は、脆弱性管理情報を作成する(ステップS205)。すなわち、脆弱性管理情報作成部107は、当該機器IDと、上記のステップS202で取得されたCPE番号のCPE名が有する脆弱性を示すCVE番号と、そのリスクとを対応付けた脆弱性管理情報を作成する。
【0065】
そして、脆弱性管理装置10の情報管理部104は、上記のステップS205で作成された脆弱性管理情報を脆弱性管理情報記憶部116に保存する(ステップS206)。
【0066】
ステップS203で脆弱性があるCPE名のCPE番号であると判定されなかった場合、ステップS204で当該脆弱性がパッチ適用によって解消済であると判定された場合、又はステップS206に続いて、脆弱性管理装置10の情報管理部104は、上記のステップS201で取得した機器搭載CPE情報のCPE番号リストに未取得のCPE番号があるか否かを判定する(ステップS207)。
【0067】
そして、当該CPE番号リストに未取得のCPE番号があると判定された場合、脆弱性管理装置10は、ステップS202の処理に戻る。これにより、当該CPE番号リストに含まれる全てのCPE番号に対して上記のステップS203以降の処理が実行される。一方で、当該CPE番号リストに未取得のCPE番号があると判定されなかった場合、脆弱性管理装置10は、処理を終了する。
【0068】
以上のように、本実施形態に係る脆弱性管理装置10では、CVE番号及びCPE名を用いて、機器20に搭載されたソフトウェアに脆弱性があると判定される場合であっても、当該脆弱性がパッチの適用によって解消されている場合には、脆弱性があるとは判定されない。これにより、パッチの適用によって既に脆弱性が解消されているにも関わらず、脆弱性があると判定されてしまう事態を防止することができ、システム管理者等は、機器20の脆弱性をより正確に管理することができるようになる。
【0069】
<脆弱性管理画面>
ここで、システム管理者等のユーザが利用する管理者端末30上に表示される脆弱性管理画面1000を
図11に示す。
図11は、脆弱性管理画面1000の一例を示す図である。
図11に示す脆弱性管理画面1000は、管理者端末30からの表示要求に応じて、脆弱性管理装置10の情報管理部104が脆弱性管理情報を返信することで表示される。
【0070】
図11に示す脆弱性管理画面1000には、リスク毎に脆弱性がある機器20の台数が表示されるリスク保有機器件数表示欄1100と、リスク毎に機器20が有する脆弱性の件数が表示されるリスク保有脆弱性数表示欄1200とが含まれる。
【0071】
システム管理者等のユーザは、リスク保有機器件数表示欄1100やリスク保有脆弱性数表示欄1200を確認することで、脆弱性を有する機器20の台数や脆弱性の件数等を知ることができる。このため、システム管理者等のユーザは、これらの台数や件数、そのリスクの高さ等に応じて、種々の対処の検討や実施を行うことができるようになる。
【0072】
本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【符号の説明】
【0073】
1 脆弱性管理システム
10 脆弱性管理装置
20 機器
30 管理者端末
101 収集部
102 正規化部
103 機器搭載CPE情報作成部
104 情報管理部
105 脆弱性判定部
106 パッチ適用判定部
107 脆弱性管理情報作成部
111 CVE情報記憶部
112 CPE情報記憶部
113 脆弱性CPE情報記憶部
114 機器搭載CPE情報記憶部
115 対処済脆弱性情報記憶部
116 脆弱性管理情報記憶部
201 機器情報送信部
N ネットワーク