(57)【要約】【課題】パッチの適用に伴う機器の一時停止によるシステムへの影響を考慮して、パッチを適用するための最適な時間を判定するパッチ適用最適時間判定装置を提供する。【解決手段】通信データ取得部において、システムを構成する複数の機器の通信実績を取得する。マッチング部において、何れかの機器の脆弱性が無から有になった場合、通信実績から、脆弱性が無から有になった機器の通信実績を取得する。パッチ適用時間算出部は、マッチング部によって取得された通信実績から得られる通信時間幅に基づいて、システムの動作パターンの周期時間を求め、通信時間幅にわたって通信されたデータサイズを、周期時間毎に分割して得られる周期期間毎データサイズを求め、周期期間毎データサイズから、単位時間毎の平均データサイズを求め、パッチ適用時間内における平均データサイズの合計が最小となる開始時間を当該機器へのパッチの適用を開始する時間として算出する。【選択図】図１
2017162101.tif 000002
【特許請求の範囲】
【請求項１】
システムを構成する機器にパッチを適用する際に、前記機器を一時的に停止することにより前記システムに与える影響を最小化する時間を判定するための装置であって、
前記システムを構成する複数の機器の通信実績をそれぞれ取得する通信データ取得部と、
前記複数の機器のうちの何れかの機器の脆弱性が無から有になった場合、前記通信データ取得部によって取得された通信実績から、前記脆弱性が無から有になった機器の通信実績を取得するマッチング部と、
前記マッチング部によって取得された通信実績から得られる通信時間幅に基づいて、前記システムの動作パターンの周期時間を求め、前記通信時間幅にわたって通信されたデータサイズを、前記周期時間毎に分割して得られる周期期間毎データサイズを求め、前記周期期間毎データサイズから、単位時間毎の平均データサイズを求め、当該機器にパッチを適用するのに必要な時間長さであるパッチ適用時間内における、前記平均データサイズの合計が最小となる開始時間を、当該機器へのパッチの適用を開始する時間として算出する、パッチ適用時間算出部と、
を備えるパッチ適用最適時間判定装置。
【請求項２】
前記パッチ適用時間算出部は、前記平均データサイズの合計が最小となる開始時間の代わりに、前記平均データサイズの合計が、予め定めた閾値よりも小さい場合における開始時間を、当該機器へのパッチの適用を開始する時間として算出する、請求項１に記載のパッチ適用最適時間判定装置。
【請求項３】
システムを構成する機器にパッチを適用する際に、前記機器を一時的に停止することにより前記システムに与える影響を最小化する時間を判定するための装置であって、
前記システムを構成する複数の機器の通信実績をそれぞれ取得する通信データ取得部と、
前記複数の機器のうちの何れかの機器の脆弱性が無から有になった場合、前記通信データ取得部によって取得された通信実績から、前記脆弱性が無から有になった機器の通信実績を取得するマッチング部と、
前記マッチング部によって取得された通信実績から得られる通信時間幅に基づいて、前記システムの動作パターンの周期時間を求め、前記周期時間中における各単位時間毎に当該機器によって使用されたサーバポートを把握し、当該機器にパッチを適用するのに必要な時間長さであるパッチ適用時間内における、前記サーバポートのパターン数が最小となる開始時間を、当該機器へのパッチの適用を開始する時間として算出する、パッチ適用時間算出部と、
を備えるパッチ適用最適時間判定装置。
【請求項４】
前記パッチ適用時間算出部は、前記パターン数が最小となる開始時間の代わりに、前記パターン数が、予め定めた閾値よりも小さい場合における開始時間を、当該機器へのパッチの適用を開始する時間として算出する、請求項３に記載のパッチ適用最適時間判定装置。
【請求項５】
システムを構成する機器にパッチを適用する際に、前記機器を一時的に停止することにより前記システムに与える影響を最小化する時間を判定するための装置であって、
前記システムを構成する複数の機器の通信実績をそれぞれ取得する通信データ取得部と、
前記複数の機器のうちの何れかの機器の脆弱性が無から有になった場合、前記通信データ取得部によって取得された通信実績から、前記脆弱性が無から有になった機器の通信実績を取得するマッチング部と、
前記マッチング部によって取得された通信実績から得られる通信時間幅に基づいて、前記システムの動作パターンの周期時間を求め、前記周期時間中における各単位時間毎に当該機器が通信を行った通信相手数を把握し、当該機器にパッチを適用するのに必要な時間長さであるパッチ適用時間内における通信相手数が最小となる開始時間を、当該機器へのパッチの適用を開始する時間として算出する、パッチ適用時間算出部と、
を備えるパッチ適用最適時間判定装置。
【請求項６】
前記パッチ適用時間算出部は、前記通信相手数が最小となる開始時間の代わりに、前記通信相手数が、予め定めた閾値よりも小さい場合における開始時間を、当該機器へのパッチの適用を開始する時間として算出する、請求項５に記載のパッチ適用最適時間判定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、パッチの適用に伴う機器の一時停止によるシステムへの影響を考慮することによって、パッチを適用するための最適な時間を判定するためのパッチ適用最適時間判定装置に関する。
【背景技術】
【０００２】
近年、ＯＳやミドルウェア、ソフトウェア等のセキュリティ上の脆弱性に関する情報が日々公開されている。
【０００３】
脆弱性に対する対策を講じるために、主として、修正パッチを対象機器に適用することがなされている。しかしながら、修正パッチを有効にするためには、修正パッチを対象機器に適用した後、システムを再起動する必要がある。
【０００４】
このように、修正パッチを有効にするためには、対象機器の一時的な停止を伴う。したがって、修正パッチを有効にする前に、修正パッチの有効化が、対象機器を停止させることに見合うのか否かを判定する必要がある。
【０００５】
たとえば、特許文献１では、脆弱性による影響度の測定がなされている。この測定では、対象機器に対して、公開された脆弱性と関係したソフトウェアが存在するか否か、および、もし関係するソフトウェアが存在するのであれば、外部ネットワークからの攻撃が可能か否か、等を明らかにすることによって、ソフトウェアの脆弱性による影響度が測定されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１２−２０８８６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１のような影響度の測定では、対象機器を一時的に停止させることが、システムに対してどのような影響を及ぼすのかについて、何ら考慮されていない。
【０００８】
本発明が解決しようとする課題は、パッチの適用に伴う機器の一時停止によるシステムへの影響を考慮することによって、パッチを適用するための最適な時間を判定するパッチ適用最適時間判定装置を提供することである。
【課題を解決するための手段】
【０００９】
上記の目的を達成するために、本発明では、以下のような手段を講じる。
【００１０】
実施形態のパッチ適用最適時間判定装置は、システムを構成する機器にパッチを適用する際に、機器を一時的に停止することにより前記システムに与える影響を最小化する時間を判定するための装置であり、通信データ取得部と、マッチング部と、パッチ適用時間算出部とを備える。
【００１１】
通信データ取得部は、システムを構成する複数の機器の通信実績をそれぞれ取得する。
【００１２】
マッチング部は、複数の機器のうちの何れかの機器の脆弱性が無から有になった場合、通信データ取得部によって取得された通信実績から、脆弱性が無から有になった機器の通信実績を取得する。
【００１３】
パッチ適用時間算出部は、マッチング部によって取得された通信実績から得られる通信時間幅に基づいて、システムの動作パターンの周期時間を求め、通信時間幅にわたって通信されたデータサイズを、周期時間毎に分割して得られる周期期間毎データサイズを求め、周期期間毎データサイズから、単位時間毎の平均データサイズを求め、当該機器にパッチを適用するのに必要な時間長さであるパッチ適用時間内における、平均データサイズの合計が最小となる開始時間を、当該機器へのパッチの適用を開始する時間として算出する。
【図面の簡単な説明】
【００１４】
【図１】第１の実施形態のパッチ適用最適時間判定装置およびその周辺構成の例を示すブロック図である。
【図２】同実施形態における通信データ取得部から出力される通信データの構成例を示すデータ構成図である。
【図３】同実施形態における脆弱性管理情報記憶部に記憶される脆弱性管理情報の構成例を示すデータ構成図である。
【図４】同実施形態における脆弱性管理情報転送部の動作例を説明するためのフローチャートである。
【図５】同実施形態における通信データ取得部の動作例を説明するためのフローチャートである。
【図６】同実施形態における各機器の通信情報記憶部に記憶される各機器の通信情報の例を示すデータ構成図である。
【図７】同実施形態における脆弱性管理情報取得部によって出力される脆弱性管理情報の構成例を示すデータ構成図である。
【図８】同実施形態におけるマッチング部の動作例を説明するためのフローチャートである。
【図９】同実施形態における脆弱性のある機器の通信情報記憶部に記憶される脆弱性機器情報およびその通信情報の構成例を示すデータ構成図である。
【図１０】同実施形態におけるシステム周期時間候補記憶部に記憶されるシステム周期時間候補テーブルの構成例を示すデータ構成図である。
【図１１】同実施形態におけるパッチ適用最適時間判定部の動作例を説明するためのフローチャートである。
【図１２】データサイズと周期との関係の例を説明するための模式図である。
【図１３】同実施形態における判定結果表示部からの出力例を示す模式図である。
【図１４】第２の実施形態のパッチ適用最適時間判定装置および周辺構成の例を示すブロック図である。
【図１５】同実施形態における通信データ取得部から出力される通信データの構成例を示すデータ構成図である。
【図１６】同実施形態における脆弱性のある機器の通信情報記憶部に記憶される脆弱性のある機器の脆弱性機器情報および対応する通信情報および脆弱性機器情報の構成例を示すデータ構成図である。
【図１７】同実施形態におけるサーバポート記憶部に記憶されるサーバポートの構成例を示すデータ構成図である。
【図１８】同実施形態におけるサービス判定部の動作例を説明するためのフローチャートである。
【図１９】同実施形態におけるサービス判定部の出力例を示すデータ構成図である。
【図２０】同実施形態における判定結果表示部からの出力例を示す模式図である。
【図２１】第３の実施形態における脆弱性のある機器の通信情報記憶部に記憶される脆弱性のある機器の脆弱性機器情報および対応する通信情報の構成例を示すデータ構成図である。
【図２２】同実施形態における判定結果表示部からの出力例を示す模式図である。
【図２３】第４の実施形態に係るパッチ適用最適時間判定装置およびその周辺構成の例を示すブロック図である。
【図２４】同実施形態における閾値記憶部に記憶される閾値テーブルの構成例を示すデータ構成図である。
【図２５】同実施形態におけるパッチ適用最適時間判定部の動作例を説明するためのフローチャートである。
【図２６】同実施形態における判定結果表示部からの出力例を示す模式図である。
【発明を実施するための形態】
【００１５】
以下に、本発明の各実施形態のパッチ適用最適時間判定装置を、図面を参照して説明する。
（第１の実施形態）
本発明の第１の実施形態を図１乃至図１３を用いて説明する。
【００１６】
図１は、第１の実施形態のパッチ適用最適時間判定装置１０およびその周辺構成の例を示すブロック図である。
【００１７】
すなわち、本実施形態のパッチ適用最適時間判定装置１０は、図示しないシステムを構成するパッチ適用対象機器４１にパッチを適用する際に、パッチ適用対象機器４１を一時的に停止することによりシステムに与える影響を最小化する時間を判定するための装置であって、通信データ取得部１１と、各機器の通信情報記憶部１２と、脆弱性管理情報取得部１３と、マッチング部１４と、脆弱性のある機器の通信情報記憶部１５と、システム周期時間候補記憶部１６と、パッチ適用最適時間判定部１７と、判定結果表示部１８とを備えている。
【００１８】
また、パッチ適用最適時間判定装置１０には、脆弱性管理サーバ３０と、情報システム４０とが接続している。
【００１９】
脆弱性管理サーバ３０は、脆弱性管理情報記憶部３１と、脆弱性管理情報転送部３２とを備えている。
【００２０】
情報システム４０は、通信データ取得部５１および通信データ転送部５２を備えたネットワークスイッチ５０と、複数のパッチ適用対象機器４１１〜４１Ｎとを備えている。
【００２１】
パッチ適用最適時間判定装置１０は、情報システム４０にあるＮ台のパッチ適用対象機器４１1〜４１Ｎ（但し、Ｎ≧１）に対する脆弱性の有無を管理している脆弱性管理サーバ３０の脆弱性管理情報記憶部３１に、パッチ対象機器４１1〜４１Ｎのうちの何れかに脆弱性有りと登録された場合に、ネットワークスイッチ５０より取得した通信データと、脆弱性管理情報記憶部３１に登録されている再起動等のパッチ適用にかかる時間を利用して、パッチ適用対象機器４１1〜４１Ｎにパッチ適用を行う最適な時間を判定する。
【００２２】
なお、パッチ適用最適時間判定装置１０は、通信データ取得部１１において、複数のネットワークスイッチ５０と接続することも可能であるが、図１では、通信データ取得部１１に、１台のネットワークスイッチ５０が接続されている例を示している。
【００２３】
ネットワークスイッチ５０は、マックアドレスおよびＩＰアドレス等の個体識別情報を有する複数のパッチ適用対象機器４１１〜４１Ｎから、有線または無線通信により、通信データを取得し、他のパッチ適用対象機器４１１〜４１Ｎに転送することのできる装置である。なお、ネットワークスイッチ５０は、このような装置に限らず、通信データを記憶してあるファイルを使用し、通信データ取得部１１に入力として与えても良い。
【００２４】
通信データ取得部５１は、通信を行うことのできるパッチ適用対象機器４１１〜４１Ｎから通信データを取得し、取得した通信データを、通信データ転送部５２にそのまま、あるいは加工後に転送する。
【００２５】
図２は、通信データ取得部５１から出力される通信データａの構成例を示すデータ構成図である。図２に示すように、通信データａは、通信取得時刻ａ１、送信元ａ２、送信先ａ３、データサイズａ４を含んでいる。図２中の最上段は、テーブル名、上から２段目は、データの項目名、上から３段目以降は、データを示しており、以降の記載もこの形式を用いることとする。なお、図２では、送信元ａ２と送信先ａ３にＩＰアドレスを使用しているが、パッチ適用対象機器４１１〜４１Ｎを識別することのできる識別子であれば、ＩＰアドレスの代わりにマックアドレス等を使用しても構わない。
【００２６】
通信データ転送部５２は、通信データ取得部５１から受け取った通信データａを、パッチ適用最適時間判定装置１０の通信データ取得部１１に転送する。
【００２７】
脆弱性管理サーバ３０は、情報システム４０に存在するパッチ適用対象機器４１１〜４１Ｎが、脆弱性を有している状態にあるか否かと、再起動等のパッチ適用にかかる時間の情報とが記載された脆弱性管理情報を、脆弱性管理情報記憶部３１に記憶している。
【００２８】
図３は、脆弱性管理情報記憶部３１に記憶される脆弱性管理情報ｂの構成例を示すデータ構成図である。機器名ｂ１には、パッチ適用対象機器４１のＩＰアドレスを、脆弱性の有無ｂ２には、脆弱性の有／無を、パッチ適用時間ｂ３には、再起動等のパッチ適用にかかる時間をそれぞれ記載している。ここで、パッチ適用時間ｂ３は、パッチ適用対象機器４１に依存して定まる時間であるため、必要に応じて変更しても良い。
【００２９】
図４は、脆弱性管理情報転送部３２の動作例を説明するためのフローチャートである。
【００３０】
すなわち、脆弱性管理情報転送部３２は、脆弱性管理情報記憶部３１から脆弱性管理情報ｂを一定間隔で読み込み（ＳＴ１）、脆弱性の有無ｂ２を参照し、脆弱性の有無ｂ２が、「無」から「有」に変化したパッチ適用対象機器４１が存在するか否かを確認する（ＳＴ２）。確認の結果、そのようなパッチ適用対象機器４１があれば（ＳＴ２：ＹＥＳ）、その機器名ｂ１と、パッチ適用時間ｂ３とを、脆弱性管理情報取得部１３に転送する（ＳＴ３）。一方、ＳＴ２において、そのようなパッチ適用対象機器４１が無ければ（ＳＴ２：ＮＯ）、フローを終了する（ＳＴ４）。
【００３１】
なお、脆弱性管理情報転送部３２は、ＯＳおよびソフトウェアを持つ一般的なコンピュータ機能を持つ装置であるが、これに限らず、ＣＤ−ＲＯＭ等の記憶媒体で、新たに脆弱性を有しているパッチ適用対象機器４１が発生した段階で、脆弱性管理情報取得部１３へ脆弱性管理情報ｂを与えるようにしても良い。また、パッチ適用の対象となる機器名ｂ１を把握することが出来れば、新たに脆弱性を有しているパッチ適用対象機器４１が発生したことが分からなくても良い。
【００３２】
次に、パッチ適用最適時間判定装置１０の詳細について説明する。
【００３３】
通信データ取得部１１は、通信データ転送部５２から送られてきた通信データａを随時受け取り、通信データａを、パッチ適用対象機器４１毎に整理し、整理したパッチ適用対象機器４１毎の通信データａを、各機器の通信情報記憶部１２に転送する。
【００３４】
図５は、通信データ取得部１１の動作例を説明するためのフローチャートである。
【００３５】
具体的には、図５のフローチャートに示すように、通信データ転送部５２から、通信データａのレコードを、一行ずつ読み込み（ＳＴ１１）、読み込んだレコードを一行ずつ、各機器の通信情報記憶部１２に転送する（ＳＴ１２）。具体的には、通信取得時刻ａ１と送信元ａ２とデータサイズａ４（集合的に、「送信元情報」とも称する）を、各機器の通信情報記憶部１２に転送する。次に、通信取得時刻ａ１と送信先ａ３とデータサイズａ４（集合的に、「送信先情報」とも称する）を、各機器の通信情報記憶部１２に転送する（ＳＴ１３）。
【００３６】
図６は、各機器の通信情報記憶部１２に記憶される各機器の通信情報ｅ１〜ｅＮの例を示すデータ構成図である。
【００３７】
各機器の通信情報記憶部１２は、図６に示すように、ＳＴ１２およびＳＴ１３において転送された送信元情報および送信先情報に基づいて、通信取得情報ａ１とデータサイズａ４とを、パッチ適用対象機器４１１〜４１Ｎ毎に、通信情報ｅ１〜ｅＮとして記憶している。
【００３８】
図７は、脆弱性管理情報取得部１３によって出力される脆弱性管理情報ｃの構成例を示すデータ構成図である。
【００３９】
脆弱性管理情報取得部１３は、図７に示すように、脆弱性管理情報転送部３２から送られた、脆弱性が「無」から「有」に変わった機器名ｂ１およびパッチ適用時間ｂ３が記載された脆弱性管理情報ｃを、マッチング部１４に転送する。なお、図７では、機器名ｂ１を、１９２．１６８．０．１のＩＰアドレスである１つのパッチ適用対象機器４１しか示していないが、これは一例であって、機器名ｂ１に複数のＩＰアドレスが記載されている場合もある。
【００４０】
マッチング部１４は、脆弱性管理情報取得部１３から脆弱性管理情報ｃが転送されてきたタイミングで動作し、通信情報ｅ１〜ｅＮのうち、脆弱性管理情報ｃの機器名ｂ１とマッチする機器名の通信情報ｅを、各機器の通信情報記憶部１２から探索し、マッチした機器名の通信情報ｅと、脆弱性管理情報ｃとを、脆弱性のある機器の通信情報記憶部１５に送信する。これら動作を、図８のフローチャートを用いてさらに詳しく説明する。
【００４１】
図８は、マッチング部１４の動作例を説明するためのフローチャートである。
【００４２】
すなわち、マッチング部１４は、脆弱性管理情報取得部１３より転送された脆弱性理情報ｃが入力されると（ＳＴ２１）、各機器の通信情報記憶部１２を参照し、ＳＴ２１で入力された脆弱性理情報ｃの機器名ｂ１に対応する通信情報ｅが各機器の通信情報記憶部１２に存在するか否かを判定する（ＳＴ２２）。判定の結果、「ＮＯ」であれば、ＳＴ２１で入力された機器名ｂ１に該当する機器の通信情報ｅ１〜ｅＮが存在せず、この機器は、通信を一切していない機器であるので、判定結果表示部１８から、ＳＴ２１で入力された機器名ｂ１およびパッチ適用時間ｂ３と、この機器名ｂ１を有するパッチ適用対象機器４１に対していつでもパッチ適用が可能であることとを表示させる（ＳＴ２３）。その後、処理を終了する。
【００４３】
一方、ＳＴ２２の判定の結果、「ＹＥＳ」である場合、各機器の通信情報記憶部１２に対して、ＳＴ２１で入力された機器名ｂ１に対応する通信情報ｅを送信するように要求する（ＳＴ２５）。これに応じて、ＳＴ２１で入力された機器名ｂ１に対応する通信情報ｅが、各機器の通信情報記憶部１２から入力される（ＳＴ２６）。その後、ＳＴ２１で入力された脆弱性管理情報ｃと、対応する通信情報ｅとを、脆弱性のある機器の通信情報記憶部１５に送信する（ＳＴ２７）。
【００４４】
図９は、脆弱性のある機器の通信情報記憶部１５に記憶される脆弱性機器情報ｃおよびその通信情報ｅ（ここでは、一例として通信情報ｅ１とする）の構成例を示すデータ構成図である。
【００４５】
脆弱性のある機器の通信情報記憶部１５は、図９の例に示すように、脆弱性機器情報ｃと、脆弱性機器情報ｃの機器名ｂ１に対応する機器の通信情報ｅ（たとえば、通信情報ｅ１）を格納している。
【００４６】
図１０は、システム周期時間候補記憶部１６に記憶されるシステム周期時間候補テーブルｇの構成例を示すデータ構成図である。
【００４７】
システム周期時間候補記憶部１６は、図１０に示すようなシステム周期時間候補テーブルｇに、システムの動作パターンの時間幅であるシステム周期時間候補ｔｉを記憶している。システム周期時間は、具体的には、システムが平日と土日で利用頻度が大きく変わる場合の周期時間は、一週間となる。なお、図１０には、システム周期時間候補ｔｉの件数として、４件のデータ、すなわち１か月（ｉ＝１）、１週間（ｉ＝２）、１日（ｉ＝３）、１時間（ｉ＝４）を挙げているが、これに限らず、データの件数は、４件未満であっても、５件以上であっても良い。また、システム周期時間候補ｔｉも、図１０に示すものの他に、たとえば、３か月、６か月等のように、任意の時間幅を設定することができる。
【００４８】
図１１は、パッチ適用最適時間判定部１７の動作例を説明するためのフローチャートである。
【００４９】
パッチ適用最適時間判定部１７は、図１１のフローチャートに示すように、通信情報ｅとシステム周期時間候補テーブルｇから、システムの周期時間として適切な値を選択し、また、その周期時間におけるパッチ適用の最適時間を算出する。
【００５０】
具体的には、パッチ適用最適時間判定部１７は、脆弱性のある機器の通信情報記憶部１５から、脆弱性機器情報ｃと、対応する機器の通信情報ｅとを読み込むと（ＳＴ３１）、通信情報ｅの最初の時刻と、最後の時刻との差を取ることで、通信情報ｅの時間幅ＴＢを算出する（ＳＴ３２）。次に、システム周期時間候補記憶部１６に記憶されたシステム周期時間候補テーブルｇから、システム周期時間候補ｔｉを読み込み（ＳＴ３３）、システム周期時間候補ｔｉの変数ｉを１に設定する（ＳＴ３４）。変数ｉは、図１０のシステム周期時間候補テーブルｇのデータ行番号を示したものであり、変数ｉを１に設定すると、データ行の最上段の「１か月」が選択されたことを示す。
【００５１】
次に、パッチ適用最適時間判定部１７は、システム周期時間候補テーブルｇにおいて、変数ｉに対応するシステム周期時間候補（ｔｉ）のデータが存在するか否かを確認する（ＳＴ３５）。データが存在する（ＳＴ３５：ＹＥＳ）の場合、パッチ適用最適時間判定部１７は、時間幅ＴＢと、システム周期時間候補ｔｉとの時間単位をそろえた後、時間幅ＴＢを、システム周期時間候補ｔｉで割り算し、その商が３以上であるか否かを確認する（ＳＴ３６）。
【００５２】
商が３以上ではない（ＳＴ３６：ＮＯ）場合、パッチ適用最適時間判定部１７は、変数ｉに１を加え、ＳＴ３５の手前まで戻る（ＳＴ３７）。ＳＴ３６とＳＴ３７を補足すると、これらの処理は、通信を取得した時間が十分ではない場合、周期時間の算出が不適切となってしまう場合を避けるための処理である。たとえば、時間幅ＴＢが１８日間で、システム周期時間候補ｔｉが１か月（３０日間）である場合、１回分の周期しか含まれていない時間帯もあるため、通信を取得した時間は十分とはいえない。従って、ここでは、通信を取得した時間が十分であるとする判断基準の一例として、商が３以上となることを例示している。したがって、前述した商が３以上となることの他に、他の値の判断基準として用いるようにしても良い。
【００５３】
商が３以上である（ＳＴ３６：ＹＥＳ）場合、パッチ適用最適時間判定部１７は、通信情報ｅを、システム周期時間候補ｔｉ毎に分割する（ＳＴ３８）。分割方法は、たとえば、通信情報ｅが０時１０分２０秒から１２時０分０秒まで取得されていたとすると、システム周期時間候補ｔｉが１時間である場合、０時１０分２０秒から０時５９分５９秒までの１時間未満となってしまう時間を切り捨て分割する。また、分割した時間幅の数をｍとする。
【００５４】
各分割した時間の始めの１秒目のデータサイズをＳｋ（ｋ＝１，２・・・ｍ）とする（ＳＴ３９）。なお、ここでは、１秒間隔でデータサイズを定義しているが、１ミリ秒や１分等、パッチ適用時間と比較して十分に小さい値であれば、他の間隔でデータサイズを定義しても良い。
【００５５】
パッチ適用最適時間判定部１７は、下記式（１）により、周期時間における１秒毎の平均データサイズを求める（ＳＴ４０）。なお、ここでは、平均データサイズを使用しているが、平均データサイズの代わりに、最大データサイズｍａｘ（Ｓｋｊ（ｋ＝１，２・・・ｍ））を使用しても良い。
【００５６】
【数１】
2017162101.tif 000003
ここで、ｋは周期を表わし、ｊは周期に含まれる時間区分を表わす。
【００５７】
周期ｋと時間順ｊとの関係を、図１２を用いて説明する。
【００５８】
図１２は、データサイズと周期との関係の例を説明するための模式図である。
【００５９】
図１２に示すように、周期ｋ１は、ｎ秒間からなり、最初の１秒間においてデータサイズＳ１１を有するデータが通信され、次の１秒間においてデータサイズＳ１２を有するデータが送信され、・・・最後の１秒間においてデータサイズＳ１ｎを有するデータが送信されるものとする。そして、このような周期ｋ１が終了すると、同様にｎ秒間からなる周期ｋ２が開始される。
【００６０】
周期ｋ２でも同様に、最初の１秒間においてデータサイズＳ２１を有するデータが通信され、次の１秒間においてデータサイズＳ２２を有するデータが送信され、・・・最後の１秒間においてデータサイズＳ２ｎを有するデータが送信されるものとする。
【００６１】
図１２に示すような例の場合、周期ｋはｋ１からｋｍまでのｍ個あり、１つの周期には、ｎ個の時間区分（この場合、１秒の時間区分が、ｎ個）あることが分かる。すなわち、上記式（１）によれば、全周期（ｋ＝１〜ｍ）を対象としたある時間区分（ｊ＝１〜ｎ）における平均データサイズＳｊが得られる。
【００６２】
さらにパッチ適用最適時間判定部１７は、下記式（２）により、図９に示す脆弱性機器情報ｃの例にあるパッチ適用時間ｂ３で定義された時間幅Ｔｐにある平均データサイズＳｊの合計の最小値Ｄｉを求める（ＳＴ４１）。ただし、時間幅Ｔｐは、平均データサイズＳｊの算出に用いた時間単位に合わせるものとする。たとえば、図１２のように、時間区分が１秒である場合、図９の脆弱性機器情報ｃに示されるパッチ適用時間ｂ３の時間幅Ｔｐである「５分」は、図１２の時間区分ｊの時間単位に合わせるために、「３００秒」として取り扱う。
【００６３】
【数２】
2017162101.tif 000004
式（２）によれば、ある時間区分ｌ（小文字のエル）から、時間幅Ｔｐの範囲までのデータサイズＳｊの総和を求め、そのうちの最小値Ｄｉと、最小値Ｄｉを実現するｌ（小文字のエル）および開始時間区分番号ｉを得ることができる。これによって、パッチ適用最適時間判定部１７は、同じ時間幅Ｔｐであっても、開始時刻Ｔｓｉをいつにすれば、通信されるデータサイズが最も少なくなるのかを把握することができる。
【００６４】
たとえば、システム周期時間候補ｔｉが１時間であり、時間区分ｌ（小文字のエル）が６００であり、さらに、任意の値Ｘを用いた場合、開始時刻ＴｓｉはＸ時１０分００秒となる。従って、候補番号ｉに対応するパッチ適用最適時間は、Ｘ時１０分００秒となる。ここで、ＳＴ４１の処理を完了後、ＳＴ３７へと移行し、候補番号（ｉ＋１）番目のシステム周期時間候補ｔｉで、ＳＴ３５の処理に戻ることとなる。
【００６５】
ＳＴ３５で、「ＮＯ」の場合、全てのシステム周期時間候補ｔｉに対して、ＳＴ３６からＳＴ３５へと戻るまでの処理を行ったことになるので、次の処理ＳＴ４２へと移行する。
【００６６】
ＳＴ４２では、パッチ適用最適時間判定部１７は、最小値Ｄｉに値が１つ以上入っているか否かを判定する。「ＮＯ」の場合、判定結果表示部１８からデータ取得時間が十分ではないことを表示させ（ＳＴ４３）、処理を終了する（ＳＴ４４）。
【００６７】
一方ＳＴ４２の判定が「ＹＥＳ」の場合、システム周期として適切な値を求めるため、パッチ適用最適時間判定部１７は、ｍｉｎ（Ｄｉ（ｉ＝１，２・・・ｍ））となる場合における候補番号iを求め、その時の候補番号iをＡとする（ＳＴ４５）。
【００６８】
そして、パッチ適用最適時間判定部１７は、システム周期時間候補ｔｉの値と、その時のパッチ適用時間内に発生する通信データサイズの最小値ＤＡと、パッチ適用最適時間Ｔｓａと機器名ｂ３を判定結果表示部１８から表示させる（ＳＴ４６）。
【００６９】
図１３は、判定結果表示部１８からの出力例を示す模式図である。
【００７０】
判定結果表示部１８は、図１３のように、パッチ適用最適時間判定部１７による判定結果ｈとして、機器名ｂ１（たとえば、１９２．１６８．０．１）、パッチ適用時間ｂ３（たとえば、５分）、パッチ適用最適時間ｂ４（たとえば、Ｔｓａ）、および通信データサイズの最小値ｂ５（たとえば、ＤＡ）を表示する。なお、判定結果ｈを別の装置に送信する必要があれば、パッチ適用最適時間判定部１７が、判定結果ｈを、別の装置に送信する機能を有していても良い。
【００７１】
上述したように本実施形態によれば、図２に示すような通信データａを利用して、通信データａを取得した情報システム４０に対して影響を与えることなく、各パッチ適用対象機器４１１〜４１Ｎが、通信データａを最も送受信していない時間帯を算出することで、パッチ適用を行う上で必要な再起動等による機器停止の影響が最も少ない時間帯を判定することができる。
【００７２】
したがって、ユーザは、この判定結果に従って、機器停止の影響が最も少ない時間帯に、パッチ適用を実施することが可能となる。
（第２の実施形態）
本発明の第２の実施形態をさらに図１４乃至図２０を用いて説明する。
【００７３】
図１４は、第２の実施形態のパッチ適用最適時間判定装置および周辺構成の例を示すブロック図である。図１４では、図１と略同一部位には同一符号を付してその詳しい説明を省略し、ここでは異なる部分について主に述べる。
【００７４】
図１４に示すように、本実施形態のパッチ適用最適時間判定装置１０’は、図１に示す第１の実施形態のパッチ適用最適時間判定装置１０に加えて、サーバポート記憶部１９とサービス判定部２０とを備えている。
【００７５】
そして、本実施形態は、パッチ適用対象機器４１の通信データａのデータサイズａ４を用いて、パッチ適用対象機器４１の停止時の影響を評価していた第１の実施形態とは異なり、データサイズａ４の代わりに、サービス数を用いて、パッチ適用対象機器４１の停止時の影響を判定し、パッチ適用を行う最適な時間を判定する。
【００７６】
サービス数とは、サーバ機としてサービスを提供するプログラムの数であり、このプログラム数は、パッチ適用対象機器４１１〜４１Ｎ上で動作しているサーバサイドのサーバポート数に紐付いている値である。このサービス数が多いほど、多くのサービスを提供している可能性があるため、一時的に停止する影響が高くなる可能性がある。
【００７７】
図１５は、本実施形態における通信データ取得部５１から出力される通信データａ’の構成例を示すデータ構成図である。
【００７８】
すなわち、通信データ取得部５１は、パッチ適用対象機器４１１〜４１Ｎから取得したデータに基づいて、図１５に例示するような通信データａ’を通信データ転送部５２に出力する。この通信データａ’は、図２に例示するような通信データａに加えて、送信元ポート番号ａ５と送信先ポート番号ａ６とを備えている。
【００７９】
通信データ取得部１１では、第１の実施形態と同様に、通信データａ’を、送信元ａ２と送信先ａ３に分けて、各機器の通信情報記憶部１２に記憶させるが、送信元ａ２で送信する送信元ポートａ５は機器ポート、送信先ポートａ６は通信相手ポートと、列名を変えて記憶させる。また、宛先ａ３で送信する送信元ポート番号ａ５は通信相手ポート、送信先ポート番号ａ６は機器ポートと列名を変えて記憶させる。そして、第１の実施形態と同様に、脆弱性のあるパッチ適用対象機器４１１〜４１Ｎをマッチング部１４で判定し、その結果を図１６のように、脆弱性のある機器の通信情報記憶部１５に送信する。
【００８０】
図１６は、脆弱性のある機器の通信情報記憶部１５に記憶される脆弱性のある機器の脆弱性機器情報ｃおよび対応する通信情報ｅ’（たとえば、通信情報ｅ１’）の構成例を示すデータ構成図である。送信元ポートａ５は機器ポートａ７、送信先ポートａ６は通信相手ポートａ８と、列名を変えて記憶している。
【００８１】
サーバポート記憶部１９は、図１７のように、各機器のサーバポートｑ１〜ｑＮのポート番号を記憶する。
【００８２】
図１７は、サーバポート記憶部１９に記憶されるサーバポートｑ１〜ｑＮの構成例を示すデータ構成図である。
【００８３】
図１７の例では、５種類のポート番号しか登録されていないが、ポート番号は５種類に限定されるものではなく、WELL KNOWNポート番号として、サーバポートとして使用されることが多い０番から１０２４番までを登録しても良く、また、事前にユーザが各パッチ適用対象機器４１１〜４１Ｎのサーバポートを把握している場合、それらの値を記憶しても良い。
【００８４】
図１８は、本実施形態におけるサービス判定部２０の動作例を説明するためのフローチャートである。
【００８５】
サービス判定部２０は、図１８のフローチャートに示すように、図１６に例示されたように、脆弱性のある機器の通信情報記憶部１５に記憶された通信情報ｅ’（たとえば、通信情報ｅ１’）を用いて、パッチ適用対象機器４１１〜４１Ｎ上で動作しているサーバサイドのポート数であるサービス数を算出する。
【００８６】
サービス判定部２０は、具体的には、脆弱性のある機器の通信情報記憶部１５から通信情報ｅ’（たとえば、図１６に示されるような通信情報ｅ１’）を読み込み、図１９に例示するように、通信情報ｅ’（たとえば、通信情報ｅ１’）にサーバ判定結果ａ９の列を追加し（ＳＴ５０）、ＳＴ５０で読み込んだ通信情報ｅ’に対応する機器名のサーバポートｑ１〜ｑＮの情報をサーバポート記憶部１９から読み込む（ＳＴ５１）。
【００８７】
機器ポートａ７と通信相手ポートａ８とに同じ通信情報列がある場合、サービス判定部２０は、その列のサーバ判定結果ａ９にそのポート番号を入力する（ＳＴ５２）。
【００８８】
ＳＴ５２の処理後に、サービス判定部２０は、サーバ判定結果のない通信情報列に対して、サーバポート記憶部１９を参照し、そこに記憶されているサーバポートｑ１〜ｑＮと同じ機器ポートａ７が存在する通信情報ｅ’が存在する場合、その通信情報ｅ’のサーバ判定結果ａ９に、機器ポートａ７の番号を入力する（ＳＴ５３）。
【００８９】
ＳＴ５３の処理後にサーバ判定結果ａ９のない通信情報ｅ’に対して、１つの種類の機器ポートａ７が複数の種類の通信相手ポートａ８と通信を行っている場合、サービス判定部２０は、その機器ポートａ７が存在する通信情報ｅ’のサーバ判定結果ａ９に、機器ポート番号ａ７を入力する（ＳＴ５４）。
【００９０】
ＳＴ５４の処理後にサーバ判定結果ａ９のない通信情報ｅ’に対して、１つの種類の通信相手ポートａ８が複数の種類の機器ポートａ７と通信を行っている場合、サービス判定部２０は、図１９（ｂ）に例示するように、その機器ポートａ８が存在する通信情報ｅ’のサーバポート判定結果ｅ４に「−１」と入力する（ＳＴ５５）。なお、「−１」という値は、後の処理で、機器ポートａ７がクライアントポートであることを知らせるために、便宜上入力した値であり、別の値でも良い。
【００９１】
ＳＴ５５の処理後にサーバ判定結果ａ９のない通信情報ｅ’に対して、サービス判定部２０は、サーバポート判定結果ａ９にポート番号を入力する（ＳＴ５６）。なお、ＳＴ５６の処理は、サーバポート記憶部１９とポート番号からでは、サーバポートを判定できないような通信情報ｅ’に対して行う処理であり、ここでは、サーバポートの数を少なめに見積もってしまうことを避けるため、サーバポート番号を入力しているが、ＳＴ５５のようにクライアントポートとして、「−１」の値を入力しても良い。
【００９２】
最後に、サービス判定部２０は、図１９（ａ）に例示するような脆弱性機器情報ｃと、図１９（ｂ）に示すように、サーバ判定結果ａ９を追加した通信情報ｅ’とを、パッチ適用最適時間判定部１７へ送信する（ＳＴ５７）。
【００９３】
また、パッチ適用最適時間判定部１７では、以下のように、第１の実施形態と異なる処理部分がある。すなわち、第２の実施形態は、図１１のフローチャートにおけるＳＴ３９、ＳＴ４０、ＳＴ４１における処理が第１の実施形態と異なる。
【００９４】
パッチ適用最適時間判定部１７は、第１の実施形態では、周期中の１秒間のデータサイズをＳｋｊ（ｊ＝１，２・・・ｎ）として取り扱っていたが、第２の実施形態では、パッチ適用最適時間判定部１７は、周期中の１秒間のサーバポート判定結果で、サーバポートと判定されたポート番号をＳｋｊとして取り扱う（ＳＴ３９）。なお、Ｓｊｋは、複数の値を持っていても良い。
【００９５】
また、パッチ適用最適時間判定部１７は、第１の実施形態では、周期時間における平均データサイズを求めていたが、第２の実施形態は、Ｓｋ１〜Ｓｋｎに存在するサーバポート番号Ｓｋを求める（ＳＴ４０）。たとえば、Ｓｋ１〜Ｓｋｎに２２，５３，８０，１２３，４４３が存在する場合、Ｓｋ＝｛２２，５３，８０，１２３，４４３｝となる。
【００９６】
さらに、パッチ適用最適時間判定部１７は、第１の実施形態では、パッチ適用最適時間Ｔｐの時間幅にある平均データサイズの合計値の最小値Ｄｉを求めていたが、第２の実施形態では、パッチ適用最適時間ｂ４の時間幅Ｔｐにあるサーバポートｑ１〜ｑＮのパターン数の最小値を求める（ＳＴ４１）。たとえば、パターン数は、Ｓ１〜ＳＴｐまでに２２，５３，８０，１２３，４４３が存在する場合、「５」となる。
【００９７】
これ以降の処理は、第１の実施形態と同じであり、最終的には、判定結果表示部１８から、判定結果が出力される。
【００９８】
図２０は、判定結果表示部１８からの出力例を示す模式図である。
【００９９】
判定結果表示部１８は、図２０のように、パッチ適用最適時間判定部１７による判定結果ｈ’として、機器名ｂ１（たとえば、１９２．１６８．０．１）、パッチ適用時間ｂ２（たとえば、５分）、パッチ適用最適時間ｂ４（たとえば、Ｔｓａ）、ポート数の最小値ｂ７（たとえば、Ｄｉ）を表示する。なお、判定結果ｈ’を別の装置に送信する必要があれば、パッチ適用最適時間判定部１７が、判定結果ｈ’を、別の装置に送信する機能を有していても良い。
【０１００】
前述したように本実施形態によれば、第１の実施形態と異なる変数であるサービス数を用いることによって、第１の実施形態とは異なる観点から、パッチ適用最適時間ｂ４を判定することができる。
【０１０１】
そして、ユーザは、この判定結果に従って、機器停止の影響が最も少ない時間帯に、パッチ適用を実施することが可能となる。
（第３の実施形態）
本発明の第３の実施形態をさらに図２１および図２２を用いて説明する。
【０１０２】
第３の実施形態は、第１の実施形態の変形例である。したがって、本実施形態のパッチ適用最適時間判定装置１０は、図１に示す通りである。そして、以下では、図１と略同一部位には同一符号を付して詳細な説明を省略し、異なる部分について主に述べる。
【０１０３】
すなわち、本実施形態では、機器の通信データサイズを用いて、パッチ適用対象機器４１を停止した際の影響を評価していた第１の実施形態とは異なる値である通信機器数を用いて、パッチ適用対象機器４１の停止時の影響を評価し、パッチ適用を行う最適な時間を判定する。なお、通信機器数とは、パッチ適用対象機器４１の通信相手数のことである。この通信機器数が多いほど、パッチ適用対象機器４１を停止した場合に、多くの機器に影響を与える可能性が高くなる。
【０１０４】
脆弱性管理サーバ３０および情報システム４０の構成は、第１の実施形態と同様である。
【０１０５】
パッチ適用最適時間判定装置１０では、通信データ取得部１１が、第１の実施形態と同様に、通信データ転送部５２から送られた通信データａを、送信元情報と送信先情報に分けて、各機器の通信情報記憶部１２に送信する。しかしながら、本実施形態では、通信データ取得部１１は、送信元情報で送信する宛先を、通信相手機器と列名を変えて送信する。
【０１０６】
図２１は、脆弱性のある機器の通信情報記憶部１５に記憶される脆弱性のある機器の脆弱性機器情報ｃおよび対応する通信情報ｅ’’（例えば、通信情報ｅ１’’）の構成例を示すデータ構成図である。
【０１０７】
通信データ取得部１１は、送信先で送信する送信元は通信相手機器ａ１０と列名を変え送信し、第１の実施形態と同様に、脆弱性のある機器をマッチング部１４で判定し、その結果を図２１に示す通信情報ｅ１’’のように、脆弱性のある機器の通信情報記憶部１５に記憶させる。
【０１０８】
また、パッチ適用最適時間判定部１７は、図１１のフローチャートにおけるＳＴ３９、ＳＴ４０、ＳＴ４１における処理が、第１の実施形態とは異なる。
【０１０９】
すなわち、パッチ適用最適時間判定部１７は、第１の実施形態では、周期中の１秒間のデータサイズをＳｋｊ（ｊ＝１，２・・・ｎ）として取り扱っていたが、本実施形態では、周期中の１秒間の通信相手機器ａ１０をＳｋｊとして取り扱う（ＳＴ３９）。なお、Ｓｋｊは、複数の値を持っていても良い。
【０１１０】
さらに、パッチ適用最適時間判定部１７は、第１の実施形態では、周期時間における平均データサイズを求めていたが、本実施形態では、Ｓｋ１〜Ｓｋｎに存在する通信相手機器ａ１０を求める（ＳＴ４０）。たとえば、Ｓｋ１〜Ｓｋｎに１９２．１６８．０．２、１９２．１６８．０．３が存在する場合、Ｓｋ＝｛１９２．１６８．０．２、１９２．１６８．０．３｝となる。
【０１１１】
さたにまた、パッチ適用最適時間判定部１７は、第１の実施形態では、パッチ適用最適時間ｂ４の時間幅Ｔｐにある平均データサイズの合計値が最小となる時の合計値を求めていたが、本実施形態は、パッチ適用最適時間ｂ４の時間幅Ｔｐにある通信相手機器ａ１０のパターン数が最小となる値として最小値Ｄｉを求める（ＳＴ４１）。たとえば、パターン数は、Ｓ１〜ＳＴｐまでに１９２．１６８．０．２と１９２．１６８．０．３が存在する場合、２となる。
【０１１２】
これ以降の処理は、第１の実施形態と同じであり、最終的には、判定結果表示部１８から、判定結果が出力される。
【０１１３】
図２２は、判定結果表示部１８からの出力例を示す模式図である。
【０１１４】
判定結果表示部１８は、図２２のように、パッチ適用最適時間判定部１７による判定結果ｈ’’として、機器名ｂ１（たとえば、１９２．１６８．０．１）、パッチ適用時間ｂ２（たとえば、５分）、パッチ適用最適時間ｂ４（たとえば、Ｔｓａ）、パターン数の最小値ｂ８（たとえば、Ｄｉ）を表示する。なお、判定結果ｈ’’をを別の装置に送信する必要があれば、パッチ適用最適時間判定部１７が、判定結果ｈ’’を、別の装置に送信する機能を有していても良い。
【０１１５】
前述したように本実施形態によれば、第１の実施形態と異なる変数である通信相手機器ａ１０のパターン数を用いることによって、第１の実施形態とは異なる観点から、パッチ適用最適時間ｂ４を判定することができる。
【０１１６】
そして、ユーザは、この判定結果に従って、機器停止の影響が最も少ない時間帯に、パッチ適用を実施することが可能となる。
（第４の実施形態）
本発明の第４の実施形態をさらに図２３乃至図２６を用いて説明する。
【０１１７】
図２３は、第４の実施形態のパッチ適用最適時間判定装置およびその周辺構成の例を示すブロック図である。
【０１１８】
第４の実施形態は、第１の実施形態の変形例である。したがって、図２３では、図１と略同一部位には同一符号を付してその詳しい説明を省略し、ここでは異なる部分について主に述べる。
【０１１９】
図２０に示すように、本実施形態のパッチ適用最適時間判定装置１０’’は、図１に示す第１の実施形態のパッチ適用最適時間判定装置１０に加えて、閾値入力部２１と閾値記憶部２２とを備えている。
【０１２０】
閾値入力部２１は、パッチ適用時間におけるデータサイズ閾値に関するユーザ入力を、機器名毎に受け付ける。そして、入力された機器名毎のデータサイズ閾値を、閾値記憶部２２に送り、閾値テーブルとして閾値記憶部２２に記憶させる。
【０１２１】
図２４は、閾値記憶部２２に記憶される閾値テーブルｄの構成例を示すデータ構成図である。
【０１２２】
閾値テーブルｄは、図２４に示すように、機器名ｂ１毎の閾値データサイズｂ９を記憶している。
【０１２３】
次に、パッチ適用最適時間判定部１７による処理について説明する。
【０１２４】
図２５は、パッチ適用最適時間判定部１７の動作例を説明するためのフローチャートである。
【０１２５】
すなわち、パッチ適用最適時間判定部１７は、図２５に示すように、脆弱性のある機器の通信情報記憶部１５から、脆弱性機器情報ｃと、対応する機器の通信情報ｅとを読み込み（ＳＴ６０）、閾値記憶部２２から、図２４に示すように、機器名ｂ１と一致する閾値データサイズｂ９を読み込む（ＳＴ６１）。ここで、ＳＴ６２〜ＳＴ７０までの処理は、図１１のフローチャートの処理ＳＴ３２〜ＳＴ４０と同様であるので省略し、ＳＴ７１の処理から説明を行う。
【０１２６】
ＳＴ７１では、パッチ適用最適時間判定部１７は、下記の式（３）のように、パッチ適用時間内の平均データサイズの合計値が、閾値データサイズτ以下となる場合のｊを算出することにより、パッチ適用可能時間範囲Ｔｓｉを求める。
【０１２７】
【数３】
2017162101.tif 000005
たとえば、システム周期時間候補ｔｉが１時間であり、式（３）を満たすｊが６００〜９００、１２００であり、Ｘを任意の値とした場合、パッチ適用可能時間範囲ＴｓｉはＸ時１０分００秒〜Ｘ時１５分００秒、Ｘ時２０分００秒となる。また、この時のパッチ適用可能時間範囲Ｔｓｉの幅をＷｉとして求める。前述した例では、ｊ＝６００〜９００、１２００となり、Ｗｉ＝（９００−３００＋１）＋１となるため、Ｗｉは３０２と求まる。
【０１２８】
ＳＴ７１の処理を完了後、パッチ適用最適時間判定部１７は、ＳＴ６７へ移行し、（ｉ＋１）番目の候補番号に対応するシステム周期候補時間ｔｉで、ＳＴ６５の処理に戻る。
【０１２９】
ＳＴ６５で、「ＮＯ」の場合、全てのシステム周期候補時間ｔｉに対して、ＳＴ３６からＳＴ３５へと戻るまでの処理が行われたことになるので、パッチ適用最適時間判定部１７は、次の処理ＳＴ７２へ移行する。
【０１３０】
パッチ適用最適時間判定部１７は、ＳＴ７２では、パッチ適用可能時間範囲Ｔｓｉの幅Ｗｉに値が１つ以上入っているか否かを判定し、「ＮＯ」の場合、データ取得時間が十分ではないことを表示し（ＳＴ７３）、処理を終了する（ＳＴ７４）。
【０１３１】
一方、ＳＴ７２の判定が「ＹＥＳ」の場合、パッチ適用最適時間判定部１７は、システム周期として適切な値を求めるため、ｍａｘ（Ｗｉ（ｉ＝１，２・・・ｍ））となる時の候補番号ｉを求め、その時の候補番号ｉをＡとする（ＳＴ７５）。補足すると、幅Ｗｉが最大となった時は、パッチ適用可能時間範囲Ｔｓｉが大きく、パッチ適用を行うのに最適な時間が多くあるため、システム周期として好適であると判定する。
【０１３２】
最後に、パッチ適用最適時間判定部１７は、システム周期候補時間ｔｉにおけるＡ列目の値とパッチ適用可能時間範囲Ｔｓｉと機器名ｂ１と、バッチ適用時間ｂ２とを、判定結果表示部１８に送信する（ＳＴ７６）。
【０１３３】
図２６は、判定結果表示部１８からの出力例を示す模式図である。
【０１３４】
判定結果表示部１８は、パッチ適用最適時間判定部１７から送信された情報に基づいて、図２３に示すように、判定結果ｈ’’’として、機器名ｂ１（たとえば、１９２．１６８．０．１）、パッチ適用時間ｂ３（たとえば、５分）、およびパッチ適用可能時間範囲ｂ１０（たとえば、Ｔｓｉ）を表示する。なお、判定結果ｈ’’’を送信する必要があれば、パッチ適用最適時間判定部１７が、判定結果ｈ’’’を、別の装置に送信する機能を有していても良い。
【０１３５】
上述したように本実施形態によれば、図２に示すような通信データａを利用して、通信データａを取得した情報システム４０に対して影響を与えることなく、入力した閾値データサイズ閾値ｂ９よりもデータサイズの低い時間帯を算出することで、パッチ適用対象機器４１に対して、ユーザが想定しているよりも影響の低い時間帯を判定することができる。
【０１３６】
したがって、ユーザは、この判定結果に従って、機器停止の影響が少ない時間帯に、パッチ適用を実施することが可能となる。
【０１３７】
なお、ここでは、第１の実施形態の変形例として、閾値データサイズｂ９を考慮して、パッチ適用可能時間範囲ｂ１０（たとえば、Ｔｓｉ）を算出する例について説明したが、このように、閾値を考慮してパッチ適用可能時間範囲ｂ１０（たとえば、Ｔｓｉ）を算出することは、データサイズに限定されるものではない。
【０１３８】
たとえば、当業者であれば、第２の実施形態に対しても、ここで説明したように、閾値入力部２１と、閾値記憶部２２とを設けることによって、閾値サービス数を考慮して、パッチ適用可能時間範囲ｂ１０（たとえば、Ｔｓｉ）を算出できることを理解することができるであろう。また、第３の実施形態に対しても、ここで説明したように、閾値入力部２１と、閾値記憶部２２とを設けることによって、通信相手数閾値を考慮して、パッチ適用可能時間範囲ｂ１０（たとえば、Ｔｓｉ）を算出できることを理解することができるであろう。
【０１３９】
なお、請求項におけるパッチ適用時間算出部は、実施形態におけるパッチ適用最適時間判定部１７に対応している。
【０１４０】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【０１４１】
１０，１０’，１０’’  パッチ適用最適時間判定装置、１１  通信データ取得部、１２  各機器の通信情報記憶部、１３  脆弱性管理情報取得部、１４  マッチング部、１５  脆弱性のある機器の通信情報記憶部、１６  システム周期時間候補記憶部、１７  パッチ適用最適時間判定部、１８  判定結果表示部、１９  サーバポート記憶部、２０  サービス判定部、２１  閾値入力部、２２  閾値記憶部、３０  脆弱性管理サーバ、３１  脆弱性管理情報記憶部、３２  脆弱性管理情報転送部、４０  情報システム、４１  パッチ適用対象機器、５０  ネットワークスイッチ、５１  通信データ取得部、５２  通信データ転送部。
【図１】
2017162101.tif 000006
【図２】
2017162101.tif 000007
【図３】
2017162101.tif 000008
【図４】
2017162101.tif 000009
【図５】
2017162101.tif 000010
【図６】
2017162101.tif 000011
【図７】
2017162101.tif 000012
【図８】
2017162101.tif 000013
【図９】
2017162101.tif 000014
【図１０】
2017162101.tif 000015
【図１１】
2017162101.tif 000016
【図１２】
2017162101.tif 000017
【図１３】
2017162101.tif 000018
【図１４】
2017162101.tif 000019
【図１５】
2017162101.tif 000020
【図１６】
2017162101.tif 000021
【図１７】
2017162101.tif 000022
【図１８】
2017162101.tif 000023
【図１９】
2017162101.tif 000024
【図２０】
2017162101.tif 000025
【図２１】
2017162101.tif 000026
【図２２】
2017162101.tif 000027
【図２３】
2017162101.tif 000028
【図２４】
2017162101.tif 000029
【図２５】
2017162101.tif 000030
【図２６】
2017162101.tif 000031