IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ Cloudbase株式会社の特許一覧

特許7479741情報処理システム、情報処理方法、プログラム、及び記録媒体
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2024-04-26
(45)【発行日】2024-05-09
(54)【発明の名称】情報処理システム、情報処理方法、プログラム、及び記録媒体
(51)【国際特許分類】
   G06F 8/70 20180101AFI20240430BHJP
【FI】
G06F8/70
【請求項の数】 9
(21)【出願番号】P 2023220558
(22)【出願日】2023-12-27
【審査請求日】2024-01-24
【早期審査対象出願】
(73)【特許権者】
【識別番号】522092170
【氏名又は名称】Cloudbase株式会社
(74)【代理人】
【識別番号】110002790
【氏名又は名称】One ip弁理士法人
(72)【発明者】
【氏名】大峠 和基
(72)【発明者】
【氏名】宮川 竜太朗
【審査官】円子 英紀
(56)【参考文献】
【文献】米国特許出願公開第2020/0201620(US,A1)
【文献】中国特許出願公開第116991469(CN,A)
【文献】米国特許出願公開第2023/0208880(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 8/00-8/38
G06F 8/60-8/77
G06F 9/44-9/445
G06F 9/451
(57)【特許請求の範囲】
【請求項1】
処理部により、
所定のソフトウェアを構成する一以上のソフトウェア部品に関するソフトウェア部品情報と履歴タイミング情報に基づき、前記ソフトウェア部品情報の変更履歴を示す履歴情報を生成し、
記憶部に記憶された欠陥情報と、前記履歴情報に基づいて、欠陥情報に対応する部品が含まれていた時点、期間またはソフトウェア部品情報の少なくとも何れかを示す情報を特定し、
部品単位、または、ソフトウェア部品情報単位の少なくとも何れかにおいて設定された重要度情報に基づき、前記欠陥を含む部品に関する通知の送信要否を決定し、
決定された前記送信要否に応じた送信先の端末に前記通知を送信し、
前記履歴タイミング情報は、ソフトウェア部品情報の生成時点から前記履歴情報の記憶時点における1以上の時点のタイミングを示す情報である、
情報処理システム。
【請求項2】
前記処理部により、さらに、
前記欠陥を含む部品を使用していた使用期間に関する通知、または、前記欠陥を含む部品を含むソフトウェアの使用禁止に関する通知、もしくは、前記欠陥を含まない部品を含むソフトウェアの使用推奨に関する通知の少なくともいずれかを所定の端末に送信する、
請求項に記載の情報処理システム。
【請求項3】
前記処理部により、さらに、
二時点のタイミングで記憶されたソフトウェア部品情報同士を互いに比較した結果を示す比較結果情報を生成する、
請求項1に記載の情報処理システム。
【請求項4】
前記比較結果情報と、前記結果に関連する条件を示す結果条件情報に基づいて、前記条件に合致したことを示す通知を所定の端末へ送信する、
請求項に記載の情報処理システム。
【請求項5】
前記比較結果は、ソフトウェア部品情報同士の差分に基づく差分値情報であって、前記条件は、前記差分値情報が示す差分値が基準差分値を超えることを含む、
請求項に記載の情報処理システム。
【請求項6】
前記ソフトウェア部品情報は、ソフトウェアに関する情報に含まれる階層化情報を解析することで取得される、
請求項1乃至請求項のいずれかに記載の情報処理システム。
【請求項7】
前記ソフトウェアに関する情報は、他のコンピュータの記憶領域から読み出された情報である、
請求項に記載の情報処理システム。
【請求項8】
処理部により、
所定のソフトウェアを構成する一以上のソフトウェア部品に関するソフトウェア部品情報と履歴タイミング情報に基づき、前記ソフトウェア部品情報の変更履歴を示す履歴情報を生成し、
記憶部に記憶された欠陥情報と、前記履歴情報に基づいて、欠陥情報に対応する部品が含まれていた時点、期間またはソフトウェア部品情報の少なくとも何れかを示す情報を特定し、
部品単位、または、ソフトウェア部品情報単位の少なくとも何れかにおいて設定された重要度情報に基づき、前記欠陥を含む部品に関する通知の送信要否を決定し、
決定された前記送信要否に応じた送信先の端末に前記通知を送信し、
前記履歴タイミング情報は、ソフトウェア部品情報の生成時点から前記履歴情報の記憶時点における1以上の時点のタイミングを示す情報である、
情報処理方法。
【請求項9】
処理部により、
所定のソフトウェアを構成する一以上のソフトウェア部品に関するソフトウェア部品情報と履歴タイミング情報に基づき、前記ソフトウェア部品情報の変更履歴を示す履歴情報を生成し、
記憶部に記憶された欠陥情報と、前記履歴情報に基づいて、欠陥情報に対応する部品が含まれていた時点、期間またはソフトウェア部品情報の少なくとも何れかを示す情報を特定し、
部品単位、または、ソフトウェア部品情報単位の少なくとも何れかにおいて設定された重要度情報に基づき、前記欠陥を含む部品に関する通知の送信要否を決定し、
決定された前記送信要否に応じた送信先の端末に前記通知を送信し、
前記履歴タイミング情報は、ソフトウェア部品情報の生成時点から前記履歴情報の記憶時点における1以上の時点のタイミングを示す情報である、
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、情報処理システム、情報処理方法、プログラム、及び記録媒体に関する。
【背景技術】
【0002】
特許文献1に記載の管理装置は、システムにおいて、異常が起こりうる箇所を把握することを目的する。前記した管理装置は、前記した目的を達成すべく、システムの構成要素毎に当該構成要素の構成を示す構成情報を記憶している。前記管理装置は、異常が発生した第1の構成要素を特定し、前記記憶された構成情報から、前記特定された第1の構成要素と共通する第2構成要素を特定する、との動作を行う。
【0003】
前記した管理装置では、前記した動作に関連して、ソフトウェアの構成情報であるSBOM(Software Bill Of Materials)が、例えば、脆弱性情報を含み得る。
【先行技術文献】
【特許文献】
【0004】
【文献】国際公開第2023-084671号
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上記した管理装置では、例えば、ソフトウェアが過去に脆弱性を有していたとしても、当該ソフトウェアをいつ使用していたかを特定することができないとの課題があった。
【0006】
本開示の目的は、ソフトウェアが過去に脆弱性を有していたとしても、当該ソフトウェアをいつ使用していたかを特定することができる、情報処理システム、情報処理方法、プログラム、及び記録媒体を提供することにある。
【課題を解決するための手段】
【0007】
上記した課題を解決すべく、本開示に係る情報処理システムは、処理部により、所定のソフトウェアを構成する一以上のソフトウェア部品に関するソフトウェア部品情報(SBOMを含む)と履歴タイミング情報に基づき、前記ソフトウェア部品情報の変更履歴を示す履歴情報を生成し、
前記履歴タイミング情報は、ソフトウェア部品情報の生成時点から前記履歴情報の記憶時点における1以上の時点のタイミングを示す情報である。
【発明の効果】
【0008】
本開示に係る情報処理システムによれば、ソフトウェアが過去に脆弱性を有していたとしても、当該ソフトウェアをいつ使用していたかを特定することができる。
【図面の簡単な説明】
【0009】
図1】実施形態1の情報処理システムJSSの構成を示す。
図2】実施形態1の端末TMの構成を示す。
図3】実施形態1のサーバSVの構成を示す。
図4】実施形態1の情報処理システムJSSの動作を示すフローチャートである。
図5】実施形態1の情報処理システムJSSの動作を示すタイムチャートである。
図6】実施形態1の構成情報KJ0(時刻t0のとき)を示す。
図7】実施形態1の時刻情報JJ0(時刻t0のとき)を示す。
図8】実施形態1の構成情報KJ1(時刻t1のとき)を示す。
図9】実施形態1の時刻情報JJ1(時刻t1のとき)を示す。
図10】実施形態1の構成情報KJ2(時刻t2のとき)を示す。
図11】実施形態1の時刻情報JJ2(時刻t2のとき)を示す。
図12】実施形態1の構成情報KJ3(時刻t3のとき)を示す。
図13】実施形態1の時刻情報JJ3(時刻t3のとき)を示す。
図14】実施形態1の構成情報KJ4(時刻t4のとき)を示す。
図15】実施形態1の時刻情報JJ4(時刻t4のとき)を示す。
図16】実施形態1の構成情報KJ5(時刻t5のとき)を示す。
図17】実施形態1の時刻情報JJ5(時刻t5のとき)を示す。
図18】実施形態1の履歴情報RJ(時刻t0のとき)を示す。
図19】実施形態1の履歴情報RJ(時刻t1のとき)を示す。
図20】実施形態1の履歴情報RJ(時刻t2のとき)を示す。
図21】実施形態1の履歴情報RJ(時刻t3のとき)を示す。
図22】実施形態1の履歴情報RJ(時刻t4のとき)を示す。
図23】実施形態1の履歴情報RJ(時刻t5のとき)を示す。
図24】実施形態2の履歴情報RJを示す。
図25】実施形態2の構成情報KJ0、構成情報KJ1を示す。
図26】実施形態2の構成情報(階層)KJ0(KS)、構成情報(階層)KJ1(KS)を示す。
図27】実施形態2の構成情報(関係)KJ0(KK)、構成情報(関係)KJ1(KK)を示す。
図28】実施形態3の構成情報KJ11の表示態様を示す。
図29】実施形態3の構成情報KJ12の表示態様を示す。
図30】実施形態3の構成情報KJ13の表示態様を示す。
図31】実施形態3の構成情報KJ14の表示態様を示す。
図32】実施形態1~3の情報処理システムJSSのハードウェアによる構成を示す。
図33】実施形態1~3の情報処理システムJSSのソフトウェアによる実現に基づくハードウェアの構成を示す。
【発明を実施するための形態】
【0010】
本開示に係る情報処理システムJSSの実施形態について説明する。
【0011】
〈実施形態1〉
実施形態1の情報処理システムJSSについて説明する。
【0012】
〈実施形態1の構成〉
〈情報処理システムJSSの構成〉
図1は、実施形態1の情報処理システムJSSの構成を示す。
【0013】
実施形態1の情報処理システムJSSは、図1に示されるように、端末TM1~TMm(mは、1以上の整数)と、サーバSVと、を含む。端末TM1~TMm及び、サーバSVは、図1に示されるように、ネットワークNW(例えば、インターネット)を介して、相互に接続されている。
【0014】
端末TM1~TMmは、例えば、サーバSVが管理すべきソフトウェアSWを開発し、使用するユーザUS1~USmにより使用される。例えば、端末TM1は、ユーザUS1により使用され、端末TM2は、ユーザUS2により使用され、、、、端末TMmは、ユーザUSmにより使用される。
【0015】
サーバSVは、管理者KAにより使用される。サーバSVは、図1に示されるように、ソフトウェアSWを記憶し、また、構成情報KJ(特に、ソフトウェアSWに含まれる部品情報(以下、「ソフトウェア部品情報」とも呼ぶ)である。)及び履歴タイミング情報(例えば、時刻情報JJ)を有する履歴情報RJを生成及び記憶する。履歴タイミング情報は、履歴情報として記憶されるタイミング情報であって、特にソフトウェア部品情報(例えば、構成情報KJ)の生成時点から履歴情報RJの記憶時点における1以上の時点のタイミング情報(例えば、少なくとも日付を含む情報であって、以下、説明では「時刻情報JJ」とも呼ぶ。)であり得る。より具体的には、履歴タイミング情報は、例えば、ソフトウェア部品情報を処理部SY(SV)にて生成した時点や、ソフトウェア部品情報をサーバSVで取得した時点(例えば、本サーバSV外で生成された場合)、ソフトウェア部品情報をサーバSVで記憶した時点、履歴情報を処理部SY(SV)にて生成した時点、履歴情報をサーバSVで記憶した時点などであり得る。なお、サーバSVが論理的に構成される場合(例えば、クラウドサーバなど)には、端末TMを管理者KAが操作することにより、サーバSVに対する操作を行うようにしてもよい。
【0016】
以下では、説明及び理解を容易にすべく、例えば、複数の同一の装置を1つの名称で総称することがあり、例えば、端末TM1~TMmを端末TMと総称することがある。
【0017】
〈端末TMの構成〉
図2は、実施形態1の端末TMの構成を示す。
【0018】
実施形態1の端末TMは、図2に示されるように、入出力部NS(TM)と、処理部SY(TM)と、記憶部KI(TM)と、通信部TU(TM)と、を有する。
【0019】
入出力部NS(TM)は、ユーザUSが、例えば、ソフトウェアSWを更新すべく、ソフトウェアSWを構成する部品(例えば、図6に図示。)を変更、追加、削除等するための入力を行うために用いられ、また、サーバSVから入手するソフトウェアSWの構成を出力するために用いられる。入出力部NS(TM)は、例えば、タッチパネル、キーボード、マウス、液晶モニター、プリンタである。
【0020】
処理部SY(TM)は、例えば、上記したソフトウェアSWの更新のための入力、及び、上記したソフトウェアSWの構成の出力に関連する処理を行う。処理部SY(TM)は、また、ユーザUSの必要に応じて、ユーザUSが入手するソフトウェアSWを実行する。
【0021】
記憶部KI(TM)は、例えば、処理部SY(TM)の処理に必要なデータを記憶する。
【0022】
通信部TU(TM)は、ネットワークNWを介した通信を行い、例えば、上記の更新したソフトウェアSWをサーバSVへ送信し、また、サーバSVにより管理されているソフトウェアSWをサーバSVから受信する。
【0023】
〈サーバSVの構成〉
図3は、実施形態1のサーバSVの構成を示す。
【0024】
実施形態1のサーバSVは、図3に示されるように、入出力部NS(SV)と、処理部SY(SV)と、記憶部KI(SV)と、通信部TU(SV)と、を有する。
【0025】
入出力部NS(SV)は、例えば、ソフトウェアSWの更新に関連して、ソフトウェアSWの履歴情報RJ(例えば、図1に図示。)を出力するために用いられ、また、履歴情報RJに補足的な情報(例えば、書誌的な情報)を追加するための入力を行うために用いられる。入出力部NS(TM)は、例えば、タッチパネル、キーボード、マウス、液晶モニター、プリンタである。なお、上述のとおり、サーバSVがネットワークを介して論理的に構成される場合(例えば、クラウドサーバなど)には、管理者KAの端末TMが備える入出力部NSにより代替されてもよい。
【0026】
処理部SY(SV)は、例えば、上記した履歴情報RJの出力、履歴情報RJへの入力に関連する処理を行う。処理部SY(SV)は、また、履歴情報RJに基づき、必要に応じて、ユーザUSへの通知、ソフトウェアSWのライセンス管理を行う。
【0027】
記憶部KI(SV)は、例えば、処理部SY(SV)の処理に必要なデータを記憶する。
【0028】
通信部TU(SV)は、ネットワークNWを介した通信を行い、例えば、ユーザUSから更新されたソフトウェアSWを受信し、また、サーバSVが管理するソフトウェアSWを端末TMへ送信する。
【0029】
〈実施形態1の動作〉
図4は、実施形態1の情報処理システムJSSの動作を示すフローチャートである。
【0030】
図5は、実施形態1の情報処理システムJSSの動作を示すタイムチャートである。
実施形態1の情報処理システムJSSの動作について、図4のフローチャート及び図5のタイムチャートを参照して説明する。
【0031】
以下では、説明及び理解を容易にすべく、以下を想定する。
(1)ユーザUS1~USmのうちのユーザUS1~US3が、ソフトウェアSWの開発に関与していること(図4に図示。)
(2)上記したソフトウェアSWの初期版が、1つ以上の部品(例えば、部品A、B、C、、、W)を含むこと(図6に図示。)
(3)ソフトウェアSWの初期版の構成を示す構成情報KJ0(図6に図示。)と、ソフトウェアSW(初期版)が保存された時刻t0(2023年2月3日12時34分)を示す時刻情報JJ0(図7に図示。)とが相互に紐づけられた履歴情報RJ(図18に図示。)が、サーバSVに保存されていること
【0032】
ステップST11(時刻t1のとき):端末TM1は、ユーザUS1により「部品Daddが追加」されたソフトウェアSW、即ち、構成情報KJ1(図8に図示。)をサーバSVへ送信する。
【0033】
ステップST12:サーバSVは、「部品Daddが追加」されたソフトウェアSW、即ち、構成情報KJ1を受信すると、即ち、取得すると、例えば、情報処理システムJSS内の時計から、時刻t1「2023年3月4日13時45分」を示す時刻情報JJ1(図9に図示。)を取得する。サーバSVは、更に、構成情報KJ1と時刻情報JJ1とを相互に紐づけることにより、履歴情報RJを更新する(図19に図示。)。
【0034】
ステップST13(時刻t2のとき):端末TM2は、ユーザUS2により「部品Tを部品Tchgに変更」されたソフトウェアSW、即ち、構成情報KJ2(図10に図示。)をサーバSVへ送信する。
【0035】
ステップST14:サーバSVは、「部品Tを部品Tchgに変更」されたソフトウェアSW、即ち、構成情報KJ2を受信すると、時刻t2「2023年4月5日14時32分」を示す時刻情報JJ2(図11に図示。)を取得する。サーバSVは、更に、構成情報KJ2と時刻情報JJ2とを相互に紐づけることにより、履歴情報RJを更新する(図20に図示。)。
【0036】
ステップST15(時刻t3のとき):端末TM3は、ユーザUS3により「部品Uを部品Uchgに変更」されたソフトウェアSW、即ち、構成情報KJ3(図12に図示。)をサーバSVへ送信する。
【0037】
ステップST16:サーバSVは、「部品Uを部品Uchgに変更」されたソフトウェアSW、即ち、構成情報KJ3を受信すると、時刻t3「2023年5月6日15時21分」を示す時刻情報JJ3(図13に図示。)を取得する。サーバSVは、更に、構成情報KJ3と時刻情報JJ3とを相互に紐づけることにより、履歴情報RJを更新する(図21に図示。)。
【0038】
ステップST17(時刻t4のとき):端末TM2は、ユーザUS2により「部品Tchg1を部品Tchg2に変更」されたソフトウェアSW、即ち、構成情報KJ4(図14に図示。)をサーバSVへ送信する。
【0039】
ステップST18:サーバSVは、「部品Tchg1を部品Tchg2に変更」されたソフトウェアSW、即ち、構成情報KJ4を受信すると、時刻t4「2023年6月7日16時10分」を示す時刻情報JJ4(図15に図示。)を取得する。サーバSVは、更に、構成情報KJ4と時刻情報JJ4とを相互に紐づけることにより、履歴情報RJを更新する(図22に図示。)。
【0040】
ステップST19(時刻t5のとき):端末TM1は、ユーザUS1により「部品Wを部品Wchgに変更」されたソフトウェアSW、即ち、構成情報KJ5(図16に図示。)をサーバSVへ送信する。
【0041】
ステップST20:サーバSVは、「部品Wを部品Wchgに変更」されたソフトウェアSW、即ち、構成情報KJ5を受信すると、時刻t5「2023年7月8日17時05分」を示す時刻情報JJ5(図17に図示。)を取得する。サーバSVは、更に、構成情報KJ5と時刻情報JJ5とを相互に紐づけることにより、履歴情報RJを更新する(図23に図示。)。
【0042】
なお、上述の例示では、構成情報KJをサーバSVへ送信する構成が記載されているが、これに代えて、ソフトウェアSWの構成情報(特に、ソフトウェア部品情報)は、ソフトウェアSWに関する情報(例えば、フォルダの階層化情報や、プログラムのソースの階層化情報など)をサーバSVの処理部SYにより解析することで、階層化された部品情報を含む構成情報KJを構築してもよい。また、ソフトウェアに関する情報は、端末TMから送信されてもよいし、若しくは、他のコンピュータ(例えば、クラウドサーバなど)の記憶領域から所定の経路にて読み出された情報であってもよい。所定の経路とは、例えば、ネットワークまたは有線ケーブルを介して(特に、他のコンピュータの記憶領域へのアクセス権限を付与されるなどして)サーバSVの処理部SYまたは端末TMにより読み出すようにしてもよいし、もしくは、メモリカードなどの外部記憶装置に一旦記憶して、当該外部記憶装置を端末TMなどのサーバSVにアクセス可能なコンピュータに接続して読み出すようにしてもよく、これによってサーバSVの記憶部KIに記憶するようにしてもよい。
【0043】
〈実施形態1の効果〉
上述したように、実施形態1の情報処理システムJSSでは、ユーザUS1~US3によりソフトウェアSWの内容の更新(内容の追加、変更、削除等)が行われる毎に、サーバSVが、構成情報KJ及び時刻情報JJを相互に紐づけることにより、履歴情報RJを生成する。これにより、ソフトウェアSWが過去に欠陥(例えば、脆弱性、バグやクラッシュ等の不具合を含み、また、ライセンス許諾を受けている部品のライセンサー側に起因するライセンス関連欠陥(例えば、ライセンスで定められた範囲外の利用、オープンソースソフトウェアがオープンソースでなくなる、有償ライセンス切れなど)を含む。)を有していたとしても、ソフトウェアSWをいつ使用していたかを履歴情報RJを確認して特定することが可能となる。
【0044】
例えば、部品Tchg1が脆弱性を有していたとしても、図5に示されるように、部品Tchg1が使用されていて使用期間SKが、時刻t2と時刻t4との間であり、より詳しくは、「2023年4月5日14時32分」から「2023年6月7日16時10分」までの間であることを特定することが可能となる。
【0045】
〈変形例1-1〉
ソフトウェアSWに含まれる部品A~W等が脆弱性を有するか否かの情報(以下、「脆弱性情報」とも呼ぶ)は、例えば、ソフトウェアSWを開発するユーザUSの端末TMからの入力を受け付けて脆弱性情報がサーバSVの記憶部KIに記憶されてもよいし、また、サーバSVの処理部SYにより独自に解析することで脆弱性情報が生成されサーバSVの記憶部KIに記憶されてもよい。また、ソフトウェアSWの脆弱性情報が記憶される脆弱性データベースが公開されている場合(特にオープンソースである場合)には、当該脆弱性情報を、サーバSVの処理部SYが、ネットワークNW(例えば、インターネット)を介して脆弱性データベースへアクセスして収集(クローリング)及び記憶してもよい。
【0046】
そして、サーバSVの処理部SYは、サーバSVの記憶部KIに記憶された脆弱性情報と、履歴情報RJに含まれる構成情報KJ(特に、部品A~Wに関する情報)とを比較し、脆弱情報に対応する部品が含まれていた期間またはソフトウェア情報(バージョン情報を含む)、構成情報KJの少なくとも何れかを示す情報(以下、「脆弱性対象情報)とも呼ぶ)を特定する処理を実行してもよい。
【0047】
なお、説明及び理解を容易にすべく脆弱性情報について記載したが、これに限らず、サーバSVの記憶部KIに記憶されたソフトウェアSW(特に、ソフトウェアSWに含まれる部品A~W)の欠陥に関する情報(以下、「欠陥情報」とも呼ぶ)であれば何れの情報(例えば、上述したような、脆弱性情報、不具合情報、ライセンス関連欠陥情報など)であってもよい。すなわち、サーバSVの処理部SYは、サーバSVの記憶部KIに記憶された欠陥情報と、履歴情報RJに含まれる構成情報KJ(特に、部品A~Wに関する情報)とを比較し、履歴情報RJにおいて欠陥情報に対応する部品が含まれていた期間またはバージョン、構成情報KJの少なくとも何れかを示す情報(以下、「欠陥該当情報」とも呼ぶ)を特定(生成)する処理を実行してもよい。なお、欠陥情報の「記憶」とは、記憶部KIに含まれる一次記憶装置(メインメモリ)や二次記憶装置、キャッシュメモリなどのいずれかへの記憶を含み、例えば、ユーザUSまたは管理者KAによる登録操作に応じた登録処理による記憶や、外部のデータベースなどから取得して参照する際の一時記憶などであってもよい。
【0048】
〈変形例1-1の効果〉
変形例1-1の構成により、ソフトウェアSWが過去に欠陥(例えば、脆弱性、バグやクラッシュ等の不具合を含み、また、ライセンス許諾を受けている部品のライセンサー側に起因するライセンス関連欠陥(例えば、ライセンスで定められた範囲外の利用、オープンソースソフトウェアがオープンソースでなくなる、有償ライセンス切れなど)を含む。)を有していたとしても、サーバSVの処理部SYの処理によって、欠陥該当情報を特定することが可能となる。
【0049】
〈変形例1-2〉
また、サーバSVの処理部SYは、例えば実施形態1のように管理者KA等が履歴情報RJを確認した後の欠陥該当指定操作により履歴情報RJにおいて欠陥情報に対応する部品が含まれていた期間またはバージョン、構成情報KJの少なくとも何れかを指定する欠陥該当指定処理に基づき、または、上記変形例1-1のように処理部SYの処理に基づき、脆弱性等の欠陥を有する期間等の欠陥該当情報が特定(生成)されたことに応じて、端末TM1~TMmに、例えば、「使用期間SK(図6に図示。)に、ソフトウェアSWが、欠陥を有する部品Tchg1を含んでいた。」旨の通知(すなわち、欠陥を含む部品を使用していた使用期間SKに関する通知)や「部品Tchg1を含むソフトウェアSWの使用を禁止する。」旨の通知(すなわち、欠陥を含む部品を含むソフトウェアの使用禁止に関する通知)、「脆弱性を有しない部品Tchg2を含むソフトウェアSWの使用を推奨する。」旨の通知(すなわち、欠陥を含まない部品を含むソフトウェアの使用推奨に関する通知)を端末TM1~TMmに送信してもよい。
【0050】
〈変形例1-2の効果〉
変形例1-2の構成により、特定された欠陥を有するソフトウェア部品に関する通知をユーザUSの端末TMに送信することで、ユーザUSが欠陥について円滑に認識することが可能となる。
【0051】
〈変形例1-3〉
また、サーバSVの処理部SYは、ソフトウェア部品単位、または、ソフトウェアSW単位の少なくとも何れかにおいて、それぞれの重要度を示す重要度情報(「影響度を示す影響度」と呼んでもよい)が関連付けられてサーバSVの記憶部KIに記憶されていてもよい。
【0052】
重要度情報(影響度情報)は、例えば、ユーザUSまたは管理者KAの少なくともいずれか一方からの入力操作を受け付けてサーバSVの記憶部KIにソフトウェア部品ごとおよび/またはソフトウェアSWごとに任意の重要度が設定されてもよいし、および/または、サーバSVの処理部SYにより、各重要度を設定する条件を示す重要度条件情報を参照して、重要度を設定する設定処理を実行してもよい。ここで、各重要度を設定する条件は、例えば、以下の6つのうち少なくともいずれかであり得る。
(1)対象のソフトウェアSWまたはソフトウェア部品の少なくともいずれか(以下、ソフトウェア部品等と呼ぶ)がインターネットに接続されているか否か(すなわち、接続関係情報に基づく条件)、
(2)対象のソフトウェア部品等がアクセス対象を制限された領域に接続されているか否か(すなわち、アクセス制限情報に基づく条件)、
(3)対象のソフトウェア部品等において、重要データ情報(例えば、機密情報、顧客情報、個人情報、クレジットカード情報など)が含まれているか否か(すなわち、重要データ情報に基づく条件)
(4)対象のソフトウェア部品等がいずれのソフトウェア環境(テスト環境、開発環境、本番環境など)を目的とするものであるか(すなわち、ソフトウェア環境情報に基づく条件)
(5)対象のソフトウェア部品等が他のリソース(コンピュータ、データベース、ネットワークなど)に対するアクセス権限を持っているか否か(すなわち、アクセス権限情報に基づく条件)
(6)ソフトウェア部品自体に紐づけられた欠陥(特に脆弱性)の脅威度はどのレベルか(すなわち、欠陥脅威度情報に基づく条件)
【0053】
そして、変更されたソフトウェア部品等(特に、後述する実施形態2において特定された変更の差分が基準より大きいソフトウェア部品等)に対応する重要度を示す重要度情報と基準情報を比較して、重要度が基準よりも高いことを判定する判定処理を処理部SYにて行い、重要度が基準よりも高いと判定された場合に限り、変更されたソフトウェア部品等の重要度に関する情報を含む通知(例えば、重要度が高いソフトウェア部品等が変更されたことを伝える通知など)を送信するようにしてもよい(すなわち、重要度に基づいて、通知の要否を決定してもよい)。この時、サーバSVの記憶部KIに一以上の基準情報を記憶して、二以上の比較結果が得られる場合(例えば、重要度が条件に合わせてCritical、High、Medium、Lowと4段階設定されている場合に、基準が1つであれば、Critical以上とHigh以下という二つの比較結果、または、High以上とMedium以下という二つの比較結果などであり、基準が3つであれば、CriticalからLowまでのそれぞれの重みが4つの比較結果となる、など)に、各比較結果に応じた通知先情報を設定してもよい。すなわち、通知先情報は、宛先情報(例えば、メールアドレスなど)を含み、例えば、基準が1つであれば、変更されたソフトウェア部品等の重要度がCriticalである場合に、グループ全員のメーリングリストを示す宛先情報に基づき通知を送信し、High以下である場合に、特定の責任者1名のみを示す宛先情報に基づき通知を送信するようにしてもよい。言い換えると、比較結果に応じて異なる通知先(例えば、メーリングリストか、責任者1名のみか)または異なる通知範囲(例えば、メーリングリストと責任者1名か、責任者1名のみか)に上述の通知を送信するようにしてもよい。
【0054】
もしくは、これに代えて、または、加えて、欠陥該当情報として特定されたソフトウェア部品等に対応する重要度を示す重要度情報と基準情報を比較して、重要度が基準よりも高いことを判定する判定処理を処理部SYにて行い、重要度が基準よりも高いと判定された場合に限り、変形例1-2に記載の通知を送信するようにしてもよい(すなわち、重要度に基づいて、上述の通知の要否を決定してもよい)。この時、サーバSVの記憶部KIに一以上の基準情報を記憶して、二以上の比較結果が得られる場合に、各比較結果に応じた通知先情報を設定してもよい。すなわち、通知先情報は、宛先情報(例えば、メールアドレスなど)を含み、例えば、基準が1つであれば、変更されたソフトウェア部品等の重要度がCriticalである場合に、グループ全員のメーリングリストを示す宛先情報に基づき通知を送信し、High以下である場合に、特定の責任者1名のみを示す宛先情報に基づき通知を送信するようにしてもよい。言い換えると、比較結果に応じて異なる通知先(例えば、メーリングリストか、責任者1名のみか)または異なる通知範囲(例えば、メーリングリストと責任者1名か、責任者1名のみか)に上述の通知を送信するようにしてもよい。
【0055】
〈変形例1-3の効果〉
変形例1-3の構成により、ソフトウェアの更新頻度が高い場合に変更したソフトウェア部品等(もしくは、欠陥が特定されたソフトウェア部品等)の重要度(影響度)を確認することで効率的な対応が可能となる。特に、通知を行う場合には、所定の重要度(基準よりも高い重要度)を示す場合に限ることで、通知の数を抑えることが可能となる。
【0056】
〈実施形態2〉
実施形態2の情報処理システムJSSについて説明する。
【0057】
〈実施形態2の構成〉
実施形態2の情報処理システムJSSは、実施形態1の情報処理システムJSSの構成(図1図2図3に図示。)と同様な構成を有する。
【0058】
〈実施形態2の動作〉
実施形態2の情報処理システムJSSは、基本的には、実施形態1の情報処理システムJSSの動作(図4図5に図示。)と動作を行う。
【0059】
実施形態2の情報処理システムJSSは、他方で、時刻情報JJと構成情報KJとからなる履歴情報RJ(図18図23に図示。)を記憶する実施形態1の情報処理システムJSSと相違し、または、加えて、図24に示されるように、時刻情報JJと差分情報SJとからなる履歴情報RJを記憶する。すなわち、二時点のタイミングで記憶されたソフトウェア部品情報同士を互いに比較した結果(差分)を示す比較結果情報(以下、「差分情報」とも呼ぶ)を生成する。なお、差分情報SJは、例えば、端末TMからの入力を受け付けてサーバSVの記憶部KIに記憶されてもよいし、および/または、サーバSVの処理部SYにより、樹形図状の構成情報KJ(すなわち、ソフトウェア部品間の関係性を示す構成情報KJ)、マトリクス状の構成情報KJ、相互関係の構成情報KJのうちのいずれの形式の構成情報KJ同士を比較処理(例えば、文字ベースで探索などによる文字比較、または、画像ベースで画像解析などによる画像比較など)を実行して、当該比較の結果が差分情報としてサーバSVの記憶部KIに記憶されてもよい。
【0060】
履歴情報RJでは、図24に示されるように、時刻情報JJと差分情報SJとが相互に紐づけられており、例えば、時刻t1のときの時刻情報JJ1と、時刻t1のときの差分情報SJ1とが相互に紐づけられている。
【0061】
実施形態1の構成情報KJに代わる実施形態2の差分情報SJは、ソフトウェアSWが更新される前後のソフトウェアSWの差分、即ち、構成情報KJ間の差分を示す。
【0062】
例えば、差分情報SJ1は、時刻情報JJ0により示される時刻t0での、樹形図状である構成情報KJ0(図25上に図示。)と、時刻情報JJ1により示される時刻t1での、樹形図状である構成情報KJ1(図25下に図示。)とを比較した結果である、即ち、差分である「部品Daddの追加」(図24図25に図示。)を示す。
【0063】
差分情報SJ1は、また、時刻情報JJ0により示される時刻t0での、マトリクス状である構成情報(階層)KJ0(KS)(図26上に図示。)と、時刻情報JJ1により示される時刻t1での、マトリクス状である構成情報(階層)KJ1(KS)(図26下に図示。)との差分「部品Daddの追加」(図24図26に図示。)を示す。
【0064】
差分情報SJ1は、更に、時刻情報JJ0により示される時刻t0での、部品間の相互関係(例えば、親子関係)を示す構成情報(関係)KJ0(KK)(図27上に図示。)と、時刻情報JJ1により示される時刻t1での、部品間の相互関係を示す構成情報(関係)KJ1(KK)(図27下に図示。)との差分「部品Daddの追加」(図24図27に図示。)を示す。
【0065】
〈実施形態2の効果〉
上述したように、実施形態2の情報処理システムJSSでは、実施形態1での構成情報KJ及び時刻情報JJが相互に紐づけされた履歴情報RJに代えて、差分情報SJと時刻情報JJとが相互に紐づけられた履歴情報RJを生成する。これにより、実施形態1と同様に、ソフトウェアSWが過去に脆弱性を有していたとしても、ソフトウェアSWをいつ使用していたかを特定することが可能となる。
【0066】
〈変形例2-1〉
上述の差分情報は部品名が記載されているが、これに代えて、または、加えて、差分の量に応じた差分値を紐づけてもよい。差分値は、例えば、差分の数に基づく値であってもよい。もしくは、差分値は、部品ごとに設定される重み付け係数と差分の数を乗じた値であってもよい。
【0067】
〈変形例2-1の効果〉
変形例2-1の構成により、差分情報として部品名に代えて、または、加えて、差分の量に応じた差分値を紐づけることにより、ソフトウェアの構成上の違いだけでなく、より定量的に変化を認識することが可能となる。これにより、例えば「変更後の差分量が基準値を超えているか確認し、超えている場合には不具合が起きていないかチェックする」といった運用が可能となる。
【0068】
〈変形例2-2〉
また、比較結果に関連する条件を示す結果条件情報を設定しておいてもよく、比較結果情報(差分値)と結果条件情報(例えば、基準値が設定され、差分値が基準差分値を超える、など)とに基づいて、端末TMへ条件に合致したことを示す通知を送信してもよい。
【0069】
〈変形例2-2の効果〉
変形例2-2の構成により、所定の基準以上の差分量を有するソフトウェア部品に関する通知をユーザUSの端末TMに送信することで、ユーザUSがソフトウェアSWの変更(特に、差分量の大きな変更)について円滑に認識することが可能となる。
【0070】
〈実施形態3〉
実施形態3の情報処理システムJSSについて説明する。
【0071】
〈実施形態3の構成〉
実施形態3の情報処理システムJSSは、実施形態1の情報処理システムJSSの構成(図1図2図3に図示。)と同様な構成を有する。
【0072】
〈実施形態3の動作〉
実施形態3の情報処理システムJSSでは、端末TM1~TMmの入出力部NS(TM)(図2に図示。)は、実施形態1の構成情報KJ(例えば、構成情報KJ0(図6に図示。))に代えて、または、加えて、例えば、ソフトウェアSWの構成を構成情報KJ11~KJ4(図28図31に図示。)の態様で表示する。
【0073】
構成情報KJ11の態様では、図28に示されるように、ソフトウェアSWを構成する部品A~Wが、メインルーチンとサブルーチンとに分けて表示されてもよい。
【0074】
構成情報KJ12の態様では、図29に示されるように、ソフトウェアSWを構成する部品A~Wが、ソフトウェアSW中で使用される回数が付記されて表示されてもよい。
【0075】
構成情報KJ13の態様では、図30に示されるように、ソフトウェアSWを構成する部品A~Wが、サブルーチンを有する部品と、サブルーチンを有しない部品とに分けて表示されてもよい。
【0076】
構成情報KJ14の態様では、図31に示されるように、ソフトウェアSWを構成する部品A~Wのうち、メインルーチンである部品A、B、C、Dの所要時間T(A)、T(B)、T(C)、T(D)と、部品A、B、C、Dを構成する部品(例えば、部品Aを構成する部品S、T)とが、時系列に表示されてもよい。
【0077】
〈実施形態3の効果〉
上述したように、実施形態3の情報処理システムJSSでは、実施形態1の情報処理システムJSSでの表示態様に代えて、または、加えて、構成情報KJ11~構成情報KJ14の表示態様で表示する。これにより、実施形態1と同様に、ソフトウェアSWが過去に欠陥を有していたとしても、ソフトウェアSWをいつ使用していたかを特定することが可能となる。実施形態1の情報処理システムJSSは、しかも、構成情報KJ11~構成情報KJ14の表示態様の視認性がより優れていることから、上記の特定をより容易に行うことが可能となる。
【0078】
〈実施形態1~3のハードウェアによる構成〉
図32は、実施形態1~3の情報処理システムJSSのハードウェアによる構成を示す。
【0079】
実施形態1~3の情報処理システムJSSは、上述した機能を果たすべく、図32に示されるように、処理回路SYOを含み、必要に応じて、入力回路NYUと、出力回路SYUと、を更に含む。
【0080】
処理回路SYOは、専用のハードウェアである。処理回路SYOは、主に、端末TMの処理部SY(TM)、サーバSVの処理部SY(SV)(図2図3に図示。)の機能を実現する。
【0081】
処理回路SYOは、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)、またはこれらを組み合わせたものである。
【0082】
入力回路NYU及び出力回路SYUは、例えば、端末TM、サーバSVの外部との間で、処理回路SYOの動作に関連する入力及び出力をやりとりする。
【0083】
〈実施形態1~3のソフトウェアによる実現に基づくハードウェアの構成〉
図33は、実施形態1~3の情報処理システムJSSのソフトウェアによる実現に基づくハードウェアの構成を示す。
【0084】
実施形態1~3の情報処理システムJSSは、図32に示されるように、プロセッサPROと、記憶回路KIOと、を含み、必要に応じて、入力回路NYUと、出力回路SYUと、を更に含む。
【0085】
プロセッサPROは、プログラムを実行するCPU(Central Processing Unit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、DSP(Digital Signal Processing)ともいう。)である。プロセッサPROは、主に、端末TMの処理部SY(TM)、サーバSVの処理部SY(SV)の機能を実現する。
【0086】
プロセッサPROは、上記した機能の実現を、ソフトウェア、ファームウェア、またはソフトウェアとファームウェアとの組み合わせにより行う。ソフトウェア及びファームウェアは、プログラムPRGとして記述され、記憶回路KIOに記憶されている。
【0087】
プロセッサPROは、記憶回路KIOから上記したプログラムPRGを読み出して実行することにより、上記した機能を実現する。上記したプログラムPRGは、主に、端末TMの処理部SY(TM)、サーバSVの処理部SY(SV)の手順及び方法をコンピュータに実行させるものであるともいえる。
【0088】
ここで、記憶回路KIOは、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、EPROM(Erasable Programmable Read Only Memory)、EEPROM(Electrically Erasable Programmable Read-Only Memory)等の、不揮発性または揮発性の半導体メモリ、並びに、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD(Digital Versatile Disc)等である。
【0089】
端末TMの入出力部NS(TM)~通信部TU(TM)、サーバSVの入出力部NS(SV)~通信部TU(SV)の各機能のうち、一部の機能を処理回路SYO(図32に図示。)により実現し、他方で、他の一部の機能をプロセッサPRO(図33に図示。)により実現してもよい。
【0090】
上述したように、端末TMの入出力部NS(TM)~通信部TU(TM)、サーバSVの入出力部NS(SV)~通信部TU(SV)の機能は、ハードウェア、ソフトウェア、ファームウェア、またはこれらの組み合わせにより実現可能である。
【0091】
入力回路NYU及び出力回路SYUは、例えば、端末TM、サーバSVの外部との間でプロセッサPROの動作に関連する入力及び出力をやりとりする。
【0092】
〈構成の例示〉
本開示に係る情報処理システム、情報処理システム方法、プログラム、及び記録媒体は、例えば、以下の構成を有する。
【0093】
[項目1]
処理部により、
所定のソフトウェアを構成する一以上のソフトウェア部品に関するソフトウェア部品情報と履歴タイミング情報に基づき、前記ソフトウェア部品情報の変更履歴を示す履歴情報を生成し、
前記履歴タイミング情報は、ソフトウェア部品情報の生成時点から前記履歴情報の記憶時点における1以上の時点のタイミングを示す情報である、
情報処理システム。
[項目2]
前記処理部により、さらに、
記憶部に記憶された欠陥情報と、前記履歴情報に基づいて、欠陥情報に対応する部品が含まれていた期間またはソフトウェア部品情報の少なくとも何れかを示す情報を特定する、
項目1に記載の情報処理システム。
[項目3]
前記処理部により、さらに、
前記欠陥を含む部品を使用していた使用期間に関する通知、または、前記欠陥を含む部品を含むソフトウェアの使用禁止に関する通知、もしくは、前記欠陥を含まない部品を含むソフトウェアの使用推奨に関する通知の少なくともいずれかを所定の端末に送信する、
項目2に記載の情報処理システム。
[項目4]
前記処理部により、さらに、
部品単位、または、ソフトウェア部品情報単位の少なくとも何れかにおいて設定された重要度情報に基づき、前記通知の送信要否を決定する、
項目3に記載の情報処理システム。
[項目5]
二時点のタイミングで記憶されたソフトウェア部品情報同士を互いに比較した結果を示す比較結果情報を生成する、
項目1乃至4のいずれかに記載の情報処理システム。
[項目6]
前記比較結果情報と、前記結果に関連する条件を示す結果条件情報に基づいて、前記条件に合致したことを示す通知を所定の端末へ送信する、
項目5に記載の情報処理システム。
[項目7]
前記比較結果は、ソフトウェア部品情報同士の差分に基づく差分値情報であって、前記条件は、前記差分値情報が示す差分値が基準差分値を超えることを含む、
項目6に記載の情報処理システム。
[項目8]
前記ソフトウェア部品情報は、ソフトウェアに関する情報に含まれる階層化情報を解析することで取得される、
項目1乃至項目7のいずれかに記載の情報処理システム。
[項目9]
前記ソフトウェアに関する情報は、他のコンピュータの記憶領域から読み出された情報である、
項目8に記載の情報処理システム。
[項目10]
処理部により、
所定のソフトウェアを構成する一以上のソフトウェア部品に関するソフトウェア部品情報と履歴タイミング情報に基づき、前記ソフトウェア部品情報の変更履歴を示す履歴情報を生成し、
前記履歴タイミング情報は、ソフトウェア部品情報の生成時点から前記履歴情報の記憶時点における1以上の時点のタイミングを示す情報である、 情報処理方法。
[項目10]
処理部により、
所定のソフトウェアを構成する一以上のソフトウェア部品に関するソフトウェア部品情報と履歴タイミング情報に基づき、前記ソフトウェア部品情報の変更履歴を示す履歴情報を生成し、
前記履歴タイミング情報は、ソフトウェア部品情報の生成時点から前記履歴情報の記憶時点における1以上の時点のタイミングを示す情報である、
プログラム。
【符号の説明】
【0094】
JSS 情報処理システム
TM 端末
SV サーバ
US ユーザ
KA 管理者
NW ネットワーク
SW ソフトウェア
RJ 履歴情報
KJ 構成情報
JJ 時刻情報

【要約】
【課題】ソフトウェアが過去に欠陥を有していたとしても、ソフトウェアをいつ使用していたかを特定する。
【解決手段】情報処理システムは、処理部により、所定のソフトウェアを構成する一以上のソフトウェア部品に関するソフトウェア部品情報と履歴タイミング情報に基づき、前記ソフトウェア部品情報の変更履歴を示す履歴情報を生成し、前記履歴タイミング情報は、ソフトウェア部品情報の生成時点から前記履歴情報の記憶時点における1以上の時点のタイミングを示す情報である。また、前記処理部により、さらに、記憶部に記憶された欠陥情報と、前記履歴情報に基づいて、欠陥情報に対応する部品が含まれていた期間またはソフトウェア部品情報の少なくとも何れかを示す情報を特定する。
【選択図】図1
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26
図27
図28
図29
図30
図31
図32
図33