図面 (/)

技術 診断プログラム、診断方法および診断装置

出願人 富士通株式会社
発明者 國分明彦
出願日 2015年9月30日 (5年3ヶ月経過) 出願番号 2015-195042
公開日 2017年4月6日 (3年9ヶ月経過) 公開番号 2017-068691
状態 特許登録済
技術分野 ストアードプログラムにおける機密保護 デジタル計算機の試験診断
主要キーワード オープンポート 検出リスト 診断対象装置 診断ルール 担当員 診断パケット 所定レベル未満 バナー情報
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2017年4月6日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (13)

課題

情報処理装置に対する脆弱性診断を効率的に行う。

解決手段

診断装置1は、第1の診断ルールに基づく脆弱性診断を実行した際に診断対象の情報処理装置2から取得した装置情報を記憶する記憶部14と、前記脆弱性診断の実行後に、第1の診断ルールと異なる第2の診断ルールに基づいて新たな脆弱性診断を行う場合、記憶部14に記憶された装置情報に基づいて、診断対象の情報処理装置2についての脆弱性診断を行う診断部23と、を含む。

概要

背景

情報処理装置で動作するOperating System(OS)やミドルウェアアプリケーションプログラム等には脆弱性が存在する場合がある。脆弱性を調査するために、例えば、シグネチャに沿った診断パケットを情報処理装置に送信し、情報処理装置からの反応に基づいて、脆弱性の診断を行う技術が用いられている。

関連する技術として、セキュリティを診断するエージェントセキュリティ診断の指示を行い、エージェントから受信したセキュリティの診断データ解析する技術が提案されている(例えば、特許文献1参照)。

概要

情報処理装置に対する脆弱性の診断を効率的に行う。診断装置1は、第1の診断ルールに基づく脆弱性診断を実行した際に診断対象の情報処理装置2から取得した装置情報を記憶する記憶部14と、前記脆弱性診断の実行後に、第1の診断ルールと異なる第2の診断ルールに基づいて新たな脆弱性診断を行う場合、記憶部14に記憶された装置情報に基づいて、診断対象の情報処理装置2についての脆弱性診断を行う診断部23と、を含む。

目的

本発明は、情報処理装置に対する脆弱性診断の負荷低減を図ることを目的とする

効果

実績

技術文献被引用数
0件
牽制数
0件

この技術が所属する分野

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

コンピュータに、第1の診断ルールに基づく脆弱性診断を実行した際に診断対象情報処理装置から取得された装置情報を記憶部に記憶し、前記脆弱性診断の実行後に、前記第1の診断ルールと異なる第2の診断ルールに基づいて新たな脆弱性診断を行う場合、前記記憶部に記憶された前記装置情報に基づいて、診断対象の前記情報処理装置についての脆弱性診断を行う、処理を実行させることを特徴とする診断プログラム

請求項2

前記コンピュータに、さらに、有効な前記装置情報が前記記憶部に記憶されていない場合、前記情報処理装置に対して前記第1の診断ルールに基づく脆弱性診断を実行し、有効な前記装置情報が前記記憶部に記憶されている場合、前記第2の診断ルールに基づく脆弱性診断を実行する、処理を実行させることを特徴とする請求項1記載の診断プログラム。

請求項3

前記コンピュータに、さらに、前記装置情報が前記記憶部に記憶されてから所定時間経過後に、前記装置情報を無効にする、処理を実行させることを特徴とする請求項1または2記載の診断プログラム。

請求項4

前記コンピュータに、さらに、前記第2の診断ルールに基づく新たな脆弱性診断を行う際に、該脆弱性診断に使用される情報が不足している場合、不足している情報のみを前記情報処理装置から取得する、処理を実行させることを特徴とする請求項1乃至3のうち何れか1項に記載の診断プログラム。

請求項5

前記コンピュータに、さらに、前記第2の診断ルールに基づく新たな脆弱性診断を行った結果に基づいて、前記情報処理装置に存在することが検出された脆弱性情報を第1のリストに記録し、前記第2の診断ルールに基づく新たな脆弱性診断を行った結果に基づいて、前記情報処理装置に存在する可能性があることが検出された脆弱性情報を第2のリストに記録し、前記第1のリストおよび前記第2のリストを提示する、処理を実行させることを特徴とする請求項1乃至4のうち何れか1項に記載の診断プログラム。

請求項6

前記コンピュータに、前記第2の診断ルールに基づく新たな脆弱性診断を行った結果、前記装置情報の条件を全て満たし、且つ脆弱性レベル所定レベル以上の脆弱性情報を前記第1のリストに記録し、前記第2の診断ルールに基づく新たな脆弱性診断を行った結果、前記装置情報の一部の条件が不足しているか、または前記脆弱性レベルが前記所定レベル未満の脆弱性情報を前記第2のリストに記録する、処理を実行させることを特徴とする請求項5記載の診断プログラム。

請求項7

コンピュータが、第1の診断ルールに基づく脆弱性診断を実行した際に診断対象の情報処理装置から取得された装置情報を記憶部に記憶し、前記脆弱性診断の実行後に、前記第1の診断ルールと異なる第2の診断ルールに基づいて新たな脆弱性診断を行う場合、前記記憶部に記憶された前記装置情報に基づいて、診断対象の前記情報処理装置についての脆弱性診断を行う、処理を実行することを特徴とする診断方法

請求項8

第1の診断ルールに基づく脆弱性診断を実行した際に診断対象の情報処理装置から取得された装置情報を記憶する記憶部と、前記脆弱性診断の実行後に、前記第1の診断ルールと異なる第2の診断ルールに基づいて新たな脆弱性診断を行う場合、前記記憶部に記憶された前記装置情報に基づいて、診断対象の前記情報処理装置についての脆弱性診断を行う診断部と、を備えることを特徴とする診断装置

技術分野

0001

本発明は、診断プログラム診断方法および診断装置に関する。

背景技術

0002

情報処理装置で動作するOperating System(OS)やミドルウェアアプリケーションプログラム等には脆弱性が存在する場合がある。脆弱性を調査するために、例えば、シグネチャに沿った診断パケットを情報処理装置に送信し、情報処理装置からの反応に基づいて、脆弱性の診断を行う技術が用いられている。

0003

関連する技術として、セキュリティを診断するエージェントセキュリティ診断の指示を行い、エージェントから受信したセキュリティの診断データ解析する技術が提案されている(例えば、特許文献1参照)。

先行技術

0004

特開2012−48556号公報

発明が解決しようとする課題

0005

診断対象の情報処理装置に対する脆弱性診断の頻度が低くなると、脆弱性診断が行われない時間が長くなるため、この時間の間に追加された脆弱性情報についての脆弱性診断が情報処理装置に対して行われない。脆弱性診断が、長い間、情報処理装置に対して行われないことは、セキュリティの観点から好ましくない。

0006

一方、診断対象の情報処理装置に対する脆弱性診断の頻度が高くなると、情報処理装置に対する診断負荷が高くなる。また、診断パケットを用いた通信により脆弱性診断が行われるため、ネットワーク負荷も高くなる。

0007

1つの側面として、本発明は、情報処理装置に対する脆弱性診断の負荷低減を図ることを目的とする。

課題を解決するための手段

0008

1つの態様では、診断プログラムは、コンピュータに、第1の診断ルールに基づく脆弱性診断を実行した際に診断対象の情報処理装置から取得された装置情報を記憶部に記憶し、前記脆弱性診断の実行後に、前記第1の診断ルールと異なる第2の診断ルールに基づいて新たな脆弱性診断を行う場合、前記記憶部に記憶された前記装置情報に基づいて、診断対象の前記情報処理装置についての脆弱性診断を行う、処理を実行させる。

発明の効果

0009

1つの側面によれば、情報処理装置に対する脆弱性診断の負荷を低減できる。

図面の簡単な説明

0010

診断装置および診断対象端末の一例を示す図である。
脆弱性診断の第1の例におけるデータベースの一例を示す図である。
脆弱性診断の第1の例を説明するための図である。
脆弱性診断の第1の例におけるデータベースおよびリストの一例を示す図である。
脆弱性診断の第2の例におけるデータベースの一例を示す図である。
脆弱性診断の第2の例を説明するための図である。
脆弱性診断の第2の例におけるデータベースおよびリストの一例を示す図である。
脆弱性診断の第3の例におけるデータベースの一例を示す図である。
実施形態の処理の一例を示すフローチャート(その1)である。
実施形態の処理の一例を示すフローチャート(その2)である。
実施形態の処理の一例を示すフローチャート(その3)である。
診断装置のハードウェア構成の一例を示す図である。

実施例

0011

<実施形態の診断装置の一例>
以下、図面を参照して、実施形態について説明する。図1は、実施形態の診断装置1および診断対象端末2の一例を示す。診断装置1は、診断対象端末2の脆弱性の診断を行うコンピュータである。診断対象端末2は、情報処理装置の一例である。

0012

診断対象端末2ではOSが実行されており、OS上でミドルウェアが動作する。また、ミドルウェア上では、1または複数のアプリケーションプログラム(以下、アプリケーションと称する)が動作する。実施形態では、ミドルウェア上で複数のアプリケーションが動作しているものとする。

0013

OS、ミドルウェアおよびアプリケーションは、Central Processing Unit(CPU)により実行されるプログラムである。これらのプログラムには、それぞれ脆弱性が存在する可能性がある。

0014

セキュリティの観点から、脆弱性があるプログラムが診断対象端末2で動作することは好ましくない。診断装置1は、診断対象端末2で動作するプログラムのそれぞれについて、脆弱性が存在するか否か、または脆弱性が存在する可能性があるか否かの診断を行う。

0015

以下、診断装置1が診断対象端末2に対して行う上記の診断を脆弱性診断と称する。診断装置1は、OS、ミドルウェアおよびアプリケーションのそれぞれに対して脆弱性診断を行う。

0016

次に、診断装置1の各部について説明する。診断装置1は、処理部11と通信部12と画面部13とスキャン情報DB14と脆弱性情報DB15とリスト記憶部16とを含む。DBはデータベースの略称である。スキャン情報DB14は、記憶部の一例である。

0017

処理部11は、取得部21と推定部22と診断部23とリスト処理部24と有効期限管理部25とを含む。

0018

取得部21は、診断対象端末2から、脆弱性診断を行うための各種の情報(以下、装置情報と称する)を取得する。取得部21が取得した装置情報は、スキャン情報として、スキャン情報DB14に記憶される。

0019

取得部21は、診断対象端末2またはスキャン情報DB14から装置情報を取得する。取得部21が診断対象端末2から装置情報を取得する場合、診断装置1と診断対象端末2との間で通信が発生する。

0020

つまり、この場合、オンラインにより装置情報が取得される。以下、取得部21が診断対象端末2から装置情報を取得することをネットワークスキャンと称する。

0021

取得部21は、スキャン情報DB14から装置情報を取得することもある。取得部21がスキャン情報DB14から取得する装置情報をスキャン情報と称する。取得部21がスキャン情報DB14からスキャン情報を取得する場合、診断装置1と診断対象端末2との間に通信は発生しない。

0022

つまり、この場合、オフラインにより、装置情報(スキャン情報)が取得される。以下、取得部21がスキャン情報DB14からスキャン情報を取得することをキャッシュスキャンと称する。

0023

推定部22は、装置情報(スキャン情報)に基づいて、診断対象端末2で動作しているOSおよびミドルウェアの種別を推定する。実施形態では、装置情報は、診断対象端末2で動作しているOS、ミドルウェア、アプリケーションに関する情報を含む。

0024

実施形態では、OSに関する情報には、例えば、OSのフィンガープリントバナー情報(OSの名称等を示す情報)等が含まれ、ミドルウェアに関する情報には、例えば、オープンポートやフィンガープリント、バナー情報等が含まれるものとする。ただし、OSに関する情報およびミドルウェアに関する情報は、上記の例には限定されない。

0025

推定部22は、これらの情報に基づいて、診断対象端末2で動作しているOSおよびミドルウェアの種別を推定する。例えば、推定部22は、OSおよびミドルウェアの種類やバージョン等を種別として推定する。

0026

診断部23は、診断対象端末2の脆弱性診断を行う。診断部23は、推定されたOS種別やミドルウェア種別、アプリケーションが動作しているか否かの情報と、脆弱性情報DB15に記憶されている脆弱性情報とを照合して、診断対象端末2の脆弱性診断を行う。

0027

リスト処理部24は、診断部23による脆弱性診断の結果を示すリストに対して記録や更新等の処理を行う。実施形態では、リスト処理部24は、脆弱性検出リストと脆弱性可能性リストとの2つのリストに対して記録や更新等の処理を行う。

0028

脆弱性検出リストは、診断部23による脆弱性診断の結果、診断対象端末2から検出された脆弱性を示すリストである。脆弱性検出リストは、第1のリストの一例である。

0029

脆弱性可能性リストは、診断部23による脆弱性診断の結果、診断対象端末2に存在する可能性がある脆弱性を示すリストである。脆弱性可能性リストは、第2のリストの一例である。

0030

有効期限管理部25は、スキャン情報DB14に記憶されているスキャン情報の有効期限を管理する。スキャン情報には、所定の有効期限が設定されており、有効期限管理部25は、有効期限を超過したスキャン情報を無効化する。

0031

通信部12は、診断対象端末2と通信を行う。画面部13は、所定の情報を表示する。スキャン情報DB14は、取得部21が取得した装置情報をスキャン情報として記憶する。取得部21が装置情報を取得するごとに、スキャン情報DB14にスキャン情報が記憶される。

0032

脆弱性情報DB15は、脆弱性情報を記憶する。脆弱性情報は、OSやミドルウェア、アプリケーション等に存在する脆弱性に関する情報である。新たな脆弱性情報が検出されるごとに、脆弱性情報DB15には、脆弱性情報が記憶されていく。

0033

例えば、脆弱性情報の収集を行っている不図示の装置が、新たな脆弱性情報を検出した場合、該装置から、診断装置1は新たに検出された脆弱性情報を取得してもよい。取得された新たな脆弱性情報は、脆弱性情報DB15に記憶される。

0034

<個別要求および個別反応の一例>
次に、個別要求および個別反応について説明する。個別要求は、アプリケーションを実行させるための命令に関する情報を含むリクエストである。個別要求は、診断対象端末2に送信される。

0035

診断対象端末2で、個別要求に対応するアプリケーションが有効に動作している場合、該アプリケーションは、個別要求に基づくアプリケーションが実行されたことを示す情報を診断装置1に送信する。

0036

診断対象端末2で、個別要求に対応するアプリケーションが有効に動作していない場合、該アプリケーションは、個別要求に基づくアプリケーションが実行されなかったことを示す情報を診断装置1に送信する。

0037

個別要求に基づくアプリケーションが実行されたか否かを示す情報が個別反応である。この個別反応がレスポンスとして、診断対象端末2から診断装置1に送信される。個別要求は、アプリケーション以外の所定の機能を実行させるリクエストであってもよい。

0038

例えば、「GET /usage/index.cgiHTTP/1.1」という命令は、個別要求の一例である。この命令のうち「index.cgi」はアプリケーションを示す。診断対象端末2で該アプリケーションが有効に動作している場合、個別要求の命令が実行される。

0039

例えば、診断対象端末2で上記の個別要求に対応するアプリケーションが有効に動作している場合、該アプリケーションは、「HTTP/1.1 200 OK」という実行結果を出力する。個別反応は、この実行結果を含む。該個別反応は、診断対象端末2で個別要求に対応するアプリケーションが有効に動作していることを示す。

0040

例えば、診断対象端末2で上記の個別要求に対応するアプリケーションが有効に動作していない場合、該アプリケーションは、「HTTP/1.1 404 NOT FOUND」という実行結果を出力する。個別反応は、この実行結果を含む。該個別反応は、診断対象端末2で個別要求に対応するアプリケーションが有効に動作していないことを示す。

0041

従って、診断装置1は、個別反応に基づいて、個別要求に対応するアプリケーションが、診断対象端末2で有効に動作しているか否かを認識することができる。

0042

<脆弱性診断の第1の例>
次に、脆弱性診断の第1の例について説明する。図2は、「2015/02/26」におけるスキャン情報DB14および脆弱性情報DB15の一例を示す。スキャン情報DB14に記憶されるスキャン情報について説明する。

0043

スキャン情報のうち、「Target IP」は、端末のInternet Protocol(IP)アドレスを示す。図2の例では、IPアドレスが「10.y.y.y」および「10.z.z.z」である2つの端末のスキャン情報がスキャン情報DB14に記憶されている。

0044

「Time to Live」は、スキャン情報の有効期限を示す。この有効期限を超過したスキャン情報は、有効期限管理部25により無効化される。無効化されたスキャン情報は、スキャン情報DB14から削除されてもよいし、上書きがされてもよい。

0045

上記の有効期限は、任意の期間に設定されてもよい。実施形態では、有効期限が1ヶ月に設定されている例について説明するが、有効期限は、1週間であってもよいし、2ヶ月であってもよい。

0046

「OS Fingerprint」はOSのフィンガープリントを示す。「OS Barner」はOSのバナー情報を示す。「Mid port No.」は、ミドルウェアのオープンポートの番号を示す。「Mid Fingerprint」は、ミドルウェアのフィンガープリントを示す。「Mid Barner」は、ミドルウェアのバナー情報を示す。

0047

個別反応は、上述した個別反応である。図2の例では、個別要求1に対する反応を示す個別反応1、個別要求2に対する反応を示す個別反応2および個別要求3に対する反応を示す個別反応3がスキャン情報DB14に記憶されている。

0048

次に、脆弱性情報DB15に記憶される脆弱性情報について説明する。図2の例の場合、脆弱性情報DB15には、脆弱性1〜脆弱性4の4つの脆弱性情報が記憶されている。脆弱性情報は、レベルと条件との項目を含む。

0049

レベルは、脆弱性情報の脆弱性レベルを示す。図2において、脆弱性レベルは「高」、「中」および「低」の3段階である例を示している。脆弱性レベルの4段階以上であってもよいし、2段階であってもよい。

0050

条件は、脆弱性があるOS種別を特定する条件である。条件には、さらに、ミドルウェア種別を特定する条件と、個別要求に対する個別反応の条件との何れか一方または両方が含まれる場合がある。

0051

脆弱性情報の条件のうち、「個別要求=個別反応」は、個別要求に対応するアプリケーションが有効に動作していることを個別反応が示すものであるとする。

0052

例えば、図2の例において、脆弱性1の脆弱性情報は、OS種別が「OS1」であり、且つミドルウェア種別が「Mid1」である環境には、レベルの高い脆弱性が存在することを示す。

0053

脆弱性2の脆弱性情報は、OS種別が「OS2」であり、個別要求1に対する反応が個別反応1である環境(個別要求1に対応するアプリケーションが有効に動作している環境)には、レベルが「中」の脆弱性が存在することを示す。

0054

例えば、脆弱性3は、OS種別が「OS3」であり、ミドルウェア種別が「Mid2」であり、個別要求3に対する反応が個別反応3であるアプリケーションが動作する環境には、レベルの低い脆弱性が存在することを示す。

0055

図2の例では、「2015/02/26」の時点で、スキャン情報DB14には、2つの端末2のスキャン情報が記憶され、脆弱性情報DB15には、4つの脆弱性情報が記憶されている。

0056

以下、診断装置1は、IPアドレスが「10.x.x.x」である端末を脆弱性診断の対象の診断対象端末2とした場合について説明する。取得部21は、スキャン情報DB14に診断対象端末2(IPアドレスが「10.x.x.x」)のスキャン情報が記憶されているか否かを確認する。

0057

図2の例の場合、診断対象端末2のスキャン情報(装置情報)はスキャン情報DB14に記憶されていない。この場合、取得部21は、通信部12を制御して、ネットワークスキャンを行う。

0058

通信部12は、装置情報を取得するリクエストを診断対象端末2に送信する。図3は、脆弱性診断の第1の例を説明するための図である。図3において、ネットワークスキャンは「NWスキャン」と表記される。取得部21は、診断対象端末2に対して、ネットワークスキャンを行う。

0059

診断対象端末2のIPアドレスは、上述したように、「10.x.x.x」である。この診断対象端末2で動作しているOS種別は「OS1」であり、ミドルウェア種別は「Mid1」であるとする。

0060

また、取得部21は、脆弱性情報DB15に記憶されている各脆弱性情報に含まれる個別要求を、ネットワークスキャンのリクエストに含める。図2の例の場合、取得部21は、個別要求1および個別要求3をネットワークスキャンのリクエストに含める。

0061

例えば、個別要求1が上述した「GET /usage/index.cgiHTTP/1.1」という命令の情報であるとする。診断対象端末2で個別要求1に対応するアプリケーションが有効に動作している場合、個別反応1は、例えば、「HTTP/1.1 200 OK」という情報になる。

0062

一方、診断対象端末2で個別要求1に対応するアプリケーションが有効に動作していない場合、個別反応1は、例えば、「HTTP/1.1 404 NOT FOUND」という情報になる。

0063

装置情報には、OSに関する情報(フィンガープリントやバナー情報等)、ミドルウェアに関する情報(オープンポートやフィンガープリント、バナー情報等)および個別反応の情報が含まれる。

0064

診断対象端末2は、レスポンスとして、上記の装置情報を診断装置1に送信する。これにより、取得部21は、装置情報を取得する。取得部21は、取得した装置情報をスキャン情報DB14に記憶する。

0065

図4は、IPアドレスが「10.x.x.x」である診断対象端末2の装置情報(スキャン情報)がスキャン情報DB14に追加された例を示す。

0066

図4の例において、個別反応1である「aaaaaaa」は、個別要求1に対応するアプリケーションが有効に動作していることを示す。同様に、個別反応3である「ccccccc」は、個別要求3に対応するアプリケーションが有効に動作していることを示す。

0067

取得部21は、スキャン情報DB14から、診断対象端末2のスキャン情報を取得する。この取得は、スキャン情報DB14からのスキャン情報の取得であるため、キャッシュスキャンである。

0068

推定部22は、取得部21が取得したスキャン情報に基づいて、OS種別およびミドルウェア種別を推定する。

0069

診断部23は、脆弱性情報DB15に記憶されている全ての脆弱性情報と、推定されたOS種別、推定されたミドルウェア種別および個別反応とを照合して、診断対象端末2の脆弱性診断を行う。

0070

推定されたOS種別、推定されたミドルウェア種別および個別反応が、脆弱性情報DB15に記憶されている脆弱性情報の条件と全て一致する脆弱性情報がある場合、診断部23は、診断対象端末2に該脆弱性情報の脆弱性が存在することを検出する。

0071

また、診断部23は、上記の脆弱性情報の条件のうち、推定されたOS種別およびミドルウェア種別が一致し、且つスキャン情報に個別反応が不足している場合、診断対象端末2に脆弱性が存在する可能性があることを検出する。

0072

診断対象端末2に脆弱性が存在することが検出された場合、リスト処理部24は、脆弱性が検出されたことを示す情報を脆弱性検出リストに追加する。診断対象端末2に脆弱性が存在する可能性があることが検出された場合、リスト処理部24は、脆弱性の存在の可能性を示す情報を脆弱性可能性リストに追加する。

0073

ネットワークスキャンが行われ、取得された装置情報がスキャン情報DB14に記憶された際に、診断部23は、その時点で脆弱性情報DB15に記憶されている脆弱性情報に基づいて、脆弱性診断を行う。

0074

この場合の脆弱性情報は、第1の診断ルールの一例である。また、実行される脆弱性診断は、第1の診断ルールに基づく脆弱性診断の一例である。

0075

ネットワークスキャンを行うためのリクエストには、脆弱性情報DB15に記憶されている全ての個別要求が含まれる。よって、診断対象端末2から取得される装置情報には、各個別要求のそれぞれに対応する個別反応が含まれる。

0076

従って、スキャン情報DB14には、診断対象端末2について、脆弱性診断の対象となる全ての個別反応が記憶されるため、スキャン情報に個別反応が不足することはない。つまり、ネットワークスキャンが行われた場合、診断部23は、脆弱性を可能性としては検出しない。

0077

このため、図4の例に示されるように、脆弱性可能リストには、脆弱性可能性情報が記録されない。一方、診断部23が脆弱性を検出した脆弱性1については、リスト処理部24により、脆弱性検出リストに追加される。

0078

<脆弱性診断の第2の例>
次に、脆弱性診断の第2の例について説明する。図5は、「2015/02/27」の時点でのスキャン情報DB14および脆弱性情報DB15の一例を示す。スキャン情報DB14に記憶されているスキャン情報のうち、IPアドレスが「10.y.y.y」および「10.z.z.z」の端末のスキャン情報は、有効期限である「2015/02/26」を超過している。

0079

このため、有効期限管理部25は、これらのスキャン情報を無効化する。無効化されたスキャン情報に対しては、網掛けが施されている。また、「2015/02/27」の時点では、脆弱性情報DB15に脆弱性5および脆弱性6の脆弱性情報が追加されている。

0080

図6は、脆弱性診断の第2の例を説明するための図である。取得部21は、スキャン情報DB14に、診断対象端末2(IPアドレスが「10.x.x.x」)の有効なスキャン情報が記憶されているか否かを確認する。

0081

「2015/02/27」の時点で、IPアドレスが「10.x.x.x」の診断対象端末2の有効なスキャン情報が記憶されている。この場合、診断部23は、スキャン情報DB14に記憶されている有効なスキャン情報に基づいて、診断対象端末2の脆弱性診断を行う。

0082

第2の例の脆弱性診断は、上述した第1の例の脆弱性診断が実行された後に行われる。また、脆弱性診断の第2の例では、脆弱性診断の第1の例と比べて、脆弱性5および脆弱性6の脆弱性情報が脆弱性情報DB15に追加されている。

0083

このため、脆弱性診断の第2の例では、脆弱性診断の第1の例とは異なる脆弱性情報に基づいて、脆弱性診断が行われる。脆弱性診断の第2の例における脆弱性情報DB15に記憶されている各脆弱性情報は、第2の診断ルールの一例である。

0084

脆弱性診断の第2の例では、取得部21は、ネットワークスキャンを行わず、キャッシュスキャンを行い、スキャン情報DB14から診断対象端末2のスキャン情報を取得する。

0085

推定部22は、取得されたスキャン情報に基づいて、OS種別およびミドルウェア種別を推定する。診断部23は、推定されたOS種別や推定されたミドルウェア種別、個別反応と、脆弱性情報DB15に記憶されている各脆弱性情報とを照合して、脆弱性診断を行う。

0086

診断部23は、脆弱性情報DB15に記憶されている条件の個別反応が、スキャン情報DB14に記憶されている診断対象端末2のスキャン情報に不足しているか否かを判定する。

0087

図5の例の場合、脆弱性情報DB15には、脆弱性5の条件として「個別要求5=個別反応5」が追加されており、脆弱性6の条件として「個別要求6=個別反応6」が追加されている。従って、診断対象端末2のスキャン情報に、個別反応5および個別反応6が不足している。

0088

診断部23は、不足している個別反応に対応する脆弱性情報の脆弱性レベルが所定レベル以上(脆弱性レベルが「高」)であるか否かを判定する。脆弱性5の脆弱性レベルは「中」であり、脆弱性6の脆弱性レベルは「高」である。

0089

取得部21は、診断対象端末2のスキャン情報に不足している個別反応のうち、脆弱性レベルが「高」である個別反応6についてのみ個別的にネットワークスキャンを行う。この個別的なネットワークスキャンを個別ネットワークスキャンと称する。

0090

この場合、個別ネットワークスキャンを行うために、取得部21は、個別要求6のリクエストを診断対象端末2に送信する。診断対象端末2は、個別要求6のリクエストに応じて、個別反応6を診断装置1に送信する。

0091

個別反応6は、個別要求6に応じたアプリケーションが診断対象端末2で有効に動作していることを示している場合もあり、有効に動作していないことを示している場合もある。

0092

図6の例で、「ddddddd」は、個別要求6に応じたアプリケーションが診断対象端末2で有効に動作していることを示すものとする。取得部21は、個別反応6を取得した後、スキャン情報DB14に記憶されている診断対象端末2のスキャン情報に個別反応6を追加する。

0093

取得部21は、スキャン情報DB14から、図7の例に示す診断対象端末2のスキャン情報を取得する。この取得は、キャッシュスキャンである。

0094

診断部23は、脆弱性情報DB15に記憶されている脆弱性情報のうち、推定されたOS種別およびミドルウェア種別と一致し、且つ個別要求に対応する個別反応がある脆弱性情報を検出する。

0095

図7の例の場合、脆弱性6の各条件は、診断対象端末2の推定されたOS種別、ミドルウェア種別および個別反応と一致する。この場合、診断部23は、診断対象端末2に脆弱性6が存在することを検出する。リスト処理部24は、脆弱性検出リストに脆弱性6を追加する。

0096

一方、脆弱性5の脆弱性レベルは「中」であり、「高」ではない。この場合、取得部21は、脆弱性5の個別要求5についての個別ネットワークスキャンは行わない。従って、スキャン情報DB14に記憶されている診断対象端末2のスキャン情報には、個別反応5は含まれていない。

0097

この場合、脆弱性5の各条件のうち、診断対象端末2の推定されたOS種別およびミドルウェア種別は一致するが、スキャン情報に個別情報5が不足している。従って、診断部23は、診断対象端末2に脆弱性5の存在の可能性があることを検出する。リスト処理部24は、脆弱性可能性リストに脆弱性5を追加する。

0098

脆弱性診断の第2の例の場合、診断装置1は、診断対象端末2に対して、スキャン情報に不足している個別要求に応じた個別反応のみを取得する個別ネットワークスキャンを行う。一方、ネットワークスキャンの場合、診断装置1は、診断対象端末2から装置情報を取得する。

0099

装置情報は、OSに関する情報やミドルウェアに関する情報、複数のアプリケーションについての個別要求に対する個別反応を含む。従って、個別ネットワークスキャンは、ネットワークスキャンよりも、診断対象端末2およびネットワークに対する負荷が低くなる。

0100

このため、診断対象端末2やネットワークに対する負荷が高くなることを抑制しつつ、高い頻度で診断対象端末2の脆弱性診断を行うことができる。従って、効率的な脆弱性診断が実現される。

0101

脆弱性診断の第2の例では、スキャン情報DB14に記憶されたスキャン情報を利用して、脆弱性診断を行うための情報が不足している場合には、個別ネットワークスキャンを行い、不足している情報を取得する。

0102

例えば、図7の例において、脆弱性6の脆弱性レベルが「中」である場合、取得部21は、個別ネットワークスキャンを行わない。この場合、診断装置1と診断対象端末2との間に通信は発生せず、診断対象端末2やネットワークに対する脆弱性診断のための負荷は発生しない。

0103

つまり、診断装置1は、オフラインで診断対象端末2の脆弱性診断を行うことができる。このため、高い頻度で脆弱性診断が行われたとしても、診断対象端末2やネットワークに対する負荷が高くなることはない。

0104

ただし、脆弱性レベルが「高」の場合、診断装置1は、迅速に診断対象端末2の最新の情報を取得することが好ましい。従って、この場合、個別ネットワークスキャンが実施される。

0105

なお、診断対象端末2を再現するシステムを用意し、該システムに対して、診断装置1が脆弱性診断を行うことで、診断対象端末2に対する負荷を抑制することが考えられる。ただし、この場合、診断対象端末2と同様のシステムを用意する必要があり、ハードウェア資源の増大を将来する。

0106

また、診断対象端末2を再現するシステムを用意することは難しく、該システムと診断対象端末2との間に差分が生じ、該差分により、脆弱性診断の診断精度が低下する。このため、実際の診断対象端末2に対して脆弱性診断が行われることが好ましい。

0107

<脆弱性診断の第3の例>
図8は、脆弱診断の第3の例におけるスキャン情報DB14および脆弱性情報DB15の一例を示す。図8の例に示すスキャン情報DB14および脆弱性情報DB15は、「2015/03/27」の時点での情報を示す。

0108

「2015/03/27」の時点では、スキャン情報DB14に記憶されている診断対象端末2(IPアドレス「10.x.x.x」)のスキャン情報は有効期限を超過している。有効期限管理部25は、スキャン情報DB14の上記のスキャン情報を無効化する。

0109

取得部21は、診断対象端末2の有効なスキャン情報がスキャン情報DB14に記憶されているか否かを確認する。診断対象端末2の有効なスキャン情報がスキャン情報DB14に記憶されていないため、取得部21は、診断対象端末2に対して、ネットワークスキャンを行う。

0110

ネットワークスキャンが行われると、診断装置1は、診断対象端末2から、脆弱性診断の対象となる全ての個別要求に対する個別反応を取得する。このため、スキャン情報DB14には、全ての個別反応が記憶されるため、診断部23は、スキャン情報に個別反応が不足していると判定することはない。

0111

このため、リスト処理部24は、脆弱性レベルにかかわらず、診断対象端末2の推定されたOS種別およびミドルウェア種別と同一の脆弱性情報を脆弱性検出リストに追加する。一方、スキャン情報に個別反応がないと判定されないため、リスト処理部24は、脆弱性可能性リストに脆弱性情報を記録しない。

0112

<実施形態の処理の流れを示すフローチャートの一例>
次に、実施形態の処理の一例について、フローチャートを参照して説明する。取得部21は、スキャン情報DB14に、診断対象端末2の有効なスキャン情報が記憶されているかを確認する(ステップS1)。

0113

スキャン情報DB14に、診断対象端末2の有効なスキャン情報が記憶されていない場合(ステップS2でNO)、取得部21は、ネットワークキャンを実施する(ステップS3)。これにより、取得部21は、診断対象端末2から装置情報を取得する。

0114

取得部21は、取得した装置情報をスキャン情報としてスキャン情報DB14に記憶する(ステップS4)。ステップS2でYESの場合、ステップS3およびステップS4の処理は行われない。つまり、スキャン情報DB14に、診断対象端末2の有効なスキャン情報が記憶されている場合、ネットワークスキャンは実施されない。

0115

取得部21は、診断対象端末2のスキャン情報をスキャン情報DB14から取得するキャッシュスキャンを実施する(ステップS5)。推定部22は、取得されたスキャン情報に基づいて、診断対象端末2のOS種別およびミドルウェア種別を推定する(ステップS6)。

0116

診断部23は、推定されたOS種別、推定されたミドルウェア種別および個別反応と、脆弱性情報DB15に記憶されている各脆弱性情報の条件と照合する(ステップS7)。そして、処理は「A」に進む。「A」以降の処理について、図10の例を参照して説明する。

0117

診断部23は、脆弱性情報DB15に記憶されている各脆弱性情報の条件のうち、OS種別およびミドルウェア種別が一致し、個別反応が不足している脆弱性情報があるか否かを判定する(ステップS8)。

0118

OS種別およびミドルウェア種別が一致し、個別反応が不足している脆弱性情報がある場合(ステップS8でYES)、診断部23は、その脆弱性情報の脆弱性レベルが「高」であるか否かを判定する(ステップS9)。

0119

判定対象の脆弱性情報の脆弱性レベルが「高」である場合(ステップS10でYES)、取得部21は、不足している個別反応に対応する個別要求を取得する個別ネットワークスキャンを実施する(ステップS10)。

0120

取得部21は、診断対象端末2から、個別要求に対応する個別反応の情報を取得する。そして、取得部21は、取得された個別反応の情報をスキャン情報DB14に記憶する(ステップS11)。この際、取得部21は、スキャン情報DB14に記憶されているスキャン情報のうち、診断対象端末2のスキャン情報に、取得された個別反応の情報を追加する。

0121

ステップS8でNOの場合およびステップS9でNOの場合、ステップS10およびステップS11の処理は行われない。この場合、取得部21は、診断対象端末2に対して個別ネットワークスキャンを行わない。

0122

診断部23は、脆弱性情報DB15に記憶されている各脆弱性情報と、診断対象端末2のOS種別、ミドルウェア種別および個別反応とに基づいて、診断対象装置2の脆弱性診断を行う(ステップS12)。

0123

診断部23は、脆弱性情報DB15に記憶されている各脆弱性情報のうち、診断対象端末2のOS種別、ミドルウェア種別および個別反応の全ての条件に一致する脆弱性情報があるか否かを判定する。

0124

上記の脆弱性情報がある場合、リスト処理部24は、該脆弱性情報をリスト記憶部16に記憶されている脆弱性検出リストに記録する(ステップS13)。

0125

診断部23は、脆弱性情報DB15に記憶されている各脆弱性情報の条件のうち、診断対象端末2のOS種別およびミドルウェア種別と一致し、スキャン情報に個別反応が不足している脆弱性情報があるか否かを判定する。

0126

上記の脆弱性情報がある場合、リスト処理部24は、該脆弱性情報をリスト記憶部16に記憶されている脆弱性可能性リストに記録する(ステップS14)。

0127

処理部11は、リスト記憶部16に記憶されている脆弱性検出リストおよび脆弱性可能性リストを提示する(ステップS15)。例えば、処理部11は、脆弱性検出リストおよび脆弱性リストを画面部13に表示することで、提示を行ってもよい。

0128

また、処理部11は、脆弱性検出リストおよび脆弱性リストを、例えばプリンタ等に印刷することで、定時を行ってもよい。これにより、例えば、診断装置1を操作する操作者(例えば、保守担当員)に対して、診断対象端末2に脆弱性が検出されたことだけでなく、脆弱性の可能性があることを提示することもできる。

0129

次に、有効期限管理部25の処理の一例について、図11のフローチャートを参照して説明する。有効期限管理部25は、スキャン情報DB14に記憶されているスキャン情報のうち、有効期限を超過しているスキャン情報があるかを検索する(ステップS21)。

0130

検索の結果、有効期限を超過しているスキャン情報が見つかった場合(ステップS22でYES)、有効期限管理部25は、有効期限を超過しているスキャン情報を無効化する(ステップS23)。検索の結果、有効期限を超過しているスキャン情報が見つからなかった場合(ステップS22でNO)、ステップS23の処理は行われない。

0131

<診断装置のハードウェア構成の一例>
次に、図12の例を参照して、診断装置1のハードウェア構成の一例を説明する。図12の例に示すように、バス100に対して、プロセッサ111とRAM112とROM113と補助記憶装置114と媒体接続部115と通信インタフェース116と入出力インタフェース117とが接続されている。図12において、インタフェースは「IF」と略して示されている。

0132

プロセッサ111は任意の処理回路である。プロセッサ111はRAM112に展開されたプログラムを実行する。実行されるプログラムとしては、実施形態の処理を行う診断プログラムが適用されてもよい。ROM113はRAM112に展開されるプログラムを記憶する不揮発性記憶装置である。

0133

補助記憶装置114は、種々の情報を記憶する記憶装置であり、例えばハードディスクドライブ半導体メモリ等を補助記憶装置114に適用してもよい。媒体接続部115は、可搬型記録媒体119と接続可能に設けられている。

0134

可搬型記録媒体119としては、可搬型メモリ光学式ディスク(例えば、Compact Disc(CD)やDigital Versatile Disc(DVD)等)を適用してもよい。この可搬型記録媒体119に実施形態の処理を行うプログラムが記録されていてもよい。

0135

入出力インタフェース117は、外部の装置と接続するインタフェースである。外部の装置としては、例えば、ディスプレイ117Aやプリンタ117B等が適用されてもよい。

0136

診断装置1のうち、処理部11は、与えられた診断プログラムをプロセッサ111が実行することにより実現されてもよい。通信部12には、通信インタフェース116が適用されてもよい。

0137

画面部13には、ディスプレイ117Aが適用されてもよい。スキャン情報DB14、脆弱性情報DBおよびリスト記憶部16には、RAM112や補助記憶装置114等が適用されてもよい。

0138

RAM112、ROM113、補助記憶装置114および可搬型記録媒体119は、何れもコンピュータ読み取り可能な有形記憶媒体の一例である。これらの有形な記憶媒体は、信号搬送波のような一時的な媒体ではない。

0139

<その他>
本実施形態は、以上に述べた実施の形態に限定されるものではなく、本実施形態の要旨を逸脱しない範囲内で種々の構成または実施形態を取ることができる。

0140

1診断装置
2診断対象端末
11 処理部
12通信部
13画面部
14スキャン情報DB
15脆弱性情報DB
16リスト記憶部
21 処理部
22推定部
23診断部
24リスト処理部
25有効期限管理部
111プロセッサ
112 RAM
113 ROM

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ