JP6184331B2 - 検索システム、検索装置、検索方法及びプログラム - Google Patents
検索システム、検索装置、検索方法及びプログラム Download PDFInfo
- Publication number
- JP6184331B2 JP6184331B2 JP2014003054A JP2014003054A JP6184331B2 JP 6184331 B2 JP6184331 B2 JP 6184331B2 JP 2014003054 A JP2014003054 A JP 2014003054A JP 2014003054 A JP2014003054 A JP 2014003054A JP 6184331 B2 JP6184331 B2 JP 6184331B2
- Authority
- JP
- Japan
- Prior art keywords
- search
- term
- information
- unit
- terms
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Stored Programmes (AREA)
Description
本発明は、検索システム、検索装置、検索方法及びプログラムに関するものであり、特に、システム開発におけるガイドラインからガイド項目を検索する検索システム、検索装置、検索方法及びプログラムに関する。
情報システムの開発において、セキュリティ脆弱性(以降、脆弱性とする)を混入させない方法の一つとして、セキュリティガイドライン(以降、ガイドラインとする)の適用がある。ガイドラインは、情報システムにおける脆弱性対策の様々なベストプラクティスを集めて文書化されたものである。ガイドラインにしたがって情報システムを開発することにより、情報システムへの脆弱性の混入を防止できる。以降、ガイドラインに含まれる個々のベストプラクティスをガイド項目とする。
ガイドラインを適用する際、個々のガイド項目について、適用対象の情報システムに適用すべき項目かどうかを判断する必要があるが、一般的にガイド項目は数が多く、適用には大きなコストがかかる。
判断を効率化する方法の一つとして、適用対象の情報システムの特徴を表すキーワードといった検索条件によるガイド項目の絞り込みがある。ガイドライン利用者(以降、ユーザとする)の指定する検索キーワードとガイド項目の文書中に含まれる用語とが、完全に一致するとは限らない。このため、一般的には検索キーワードの類義語などを取得できる概念辞書データベースをあらかじめ用意し、検索実行時に概念辞書データベースから検索キーワードの類義語を取得し、検索キーワードとその類義語とを用いて検索することで、適切なガイド項目を絞り込む方式が用いられていた。
また、検索キーワードの動詞と目的語とに着目し、相互に関連する動詞と目的語とが2次元の配列で構成され、専門用語等を管理する動詞・目的語データベースをあらかじめ用意し、ユーザが入力した動詞と目的語の組み合わせから専門用語を導き、適当な検索結果を得る方式が用いられていた(例えば、特許文献1参照)。
従来の検索技術は、概念辞書データベースによる検索キーワードの読み替えや、動詞と目的語といった2要素の組み合わせによって検索キーワードを導出する方法である。このため、検索キーワードの類義語からは検索できないガイド項目や、2要素の組み合わせでは紐付かないガイド項目が存在する場合に適切な検索結果が得られないという課題があった。
例えば、遠隔から顧客情報を閲覧する情報システムの場合、「顧客情報の暗号化」といったキーワードで直接紐付けられるガイド項目が抽出される。しかし、セキュリティの有識者であれば、その他にも、情報資産の操作特性から導き出される副次的な要素も抽出する。情報資産の操作特性から導き出される副次的な要素とは、例えば、「顧客情報」を「閲覧」することから導き出される「アクセスログを保護する」こと、「遠隔」から「顧客情報」を「閲覧」することから導き出される「クライアントキャッシュをオフにする」こと等の、情報システムの動作によって現れる要素である。
一方で、従来技術の方法では、「遠隔」、「顧客情報」、「閲覧」といった検索キーワードが考えられるが、キーワード個々の類義語はその概念が変化しないため、副次的な要素を含むことはできず、適切なガイド項目が検索されないという課題がある。また、3要素以上の組み合わせが存在することから、2要素の組み合わせによるガイド項目の紐付け方式を適用するだけでは不十分であるという課題がある。
本発明は、上記のような課題を解決するためになされたもので、ガイドラインからガイド項目を抽出する際に、情報資産の操作特性から導き出される副次的な要素も抽出することで、的確で漏れのないガイド項目の抽出を実現する検索システムを提供することを目的とする。
本発明に係る検索システムは、
検索キーに基づいて検索対象情報を検索する検索システムにおいて、
情報資産を示す情報資産用語と、前記情報資産に関連する操作を示す操作用語と、前記操作に関連する操作関連用語とが対応付けられた1つ以上の用語情報を記憶装置に記憶する用語情報記憶部と、
前記検索キーに基づいて、前記検索キーに関連する関連語を処理装置により取得する関連語取得部と、
前記用語情報記憶部により記憶された前記用語情報のうち、前記情報資産用語と前記操作用語とのそれぞれが前記関連語に含まれている前記用語情報から、前記操作関連用語を処理装置により抽出する抽出部と、
前記検索キーと、前記関連語と、前記抽出部により抽出された前記操作関連用語とを用いて、前記検索対象情報を処理装置により検索する検索部と
を備えることを特徴とする。
検索キーに基づいて検索対象情報を検索する検索システムにおいて、
情報資産を示す情報資産用語と、前記情報資産に関連する操作を示す操作用語と、前記操作に関連する操作関連用語とが対応付けられた1つ以上の用語情報を記憶装置に記憶する用語情報記憶部と、
前記検索キーに基づいて、前記検索キーに関連する関連語を処理装置により取得する関連語取得部と、
前記用語情報記憶部により記憶された前記用語情報のうち、前記情報資産用語と前記操作用語とのそれぞれが前記関連語に含まれている前記用語情報から、前記操作関連用語を処理装置により抽出する抽出部と、
前記検索キーと、前記関連語と、前記抽出部により抽出された前記操作関連用語とを用いて、前記検索対象情報を処理装置により検索する検索部と
を備えることを特徴とする。
本発明に係る検索装置によれば、用語情報記憶部が、情報資産を示す情報資産用語と、前記情報資産に関連する操作を示す操作用語と、前記操作に関連する操作関連用語とが対応付けられた1つ以上の用語情報を記憶装置に記憶し、関連語取得部が、検索キーに関連する関連語を取得し、抽出部が、前記情報資産用語と前記操作用語とのそれぞれが前記関連語に含まれている前記用語情報から前記操作関連用語を抽出するので、情報資産の操作特性から導き出される副次的な要素も抽出することができ、検索対象情報に対し、的確で漏れのない検索をすることができる。
実施の形態1.
図1は、本実施の形態に係る検索システム500のシステム構成の一例を示す図である。
図1に示すように、検索システム500は、検索端末100、検索サーバ200、DBサーバ300(データベースサーバ)を備える。検索端末100と検索サーバ200、検索サーバ200とDBサーバ300は、それぞれネットワークを介して接続される。
図1は、本実施の形態に係る検索システム500のシステム構成の一例を示す図である。
図1に示すように、検索システム500は、検索端末100、検索サーバ200、DBサーバ300(データベースサーバ)を備える。検索端末100と検索サーバ200、検索サーバ200とDBサーバ300は、それぞれネットワークを介して接続される。
検索端末100は、クライアント機能部101を備える。
検索サーバ200は、検索制御部201、類義語取得部202、副次検索部203、ガイド項目検索部204を備える。
DBサーバ300は、概念辞書DB301、副次特性DB302、ガイドラインDB303を備える。
検索システム500は、検索端末100に入力された検索キーに基づいて、検索対象情報であるガイドラインDB303を検索する。
検索サーバ200は、検索制御部201、類義語取得部202、副次検索部203、ガイド項目検索部204を備える。
DBサーバ300は、概念辞書DB301、副次特性DB302、ガイドラインDB303を備える。
検索システム500は、検索端末100に入力された検索キーに基づいて、検索対象情報であるガイドラインDB303を検索する。
なお、各構成要素は異なる端末やサーバに配置されているが、同一の端末もしくはより細かな機能毎に異なる端末やサーバに配置されていてもよい。
また、検索システム500の構成についても、検索端末100、検索サーバ200、DBサーバ300からなる構成に限られず、1つの装置でもよいし、検索端末100と検索サーバ200とを1つの装置で実現してもよい。あるいは、検索サーバ200と、DBサーバ300とを1つの装置で実現してもよい。
また、検索システム500の構成についても、検索端末100、検索サーバ200、DBサーバ300からなる構成に限られず、1つの装置でもよいし、検索端末100と検索サーバ200とを1つの装置で実現してもよい。あるいは、検索サーバ200と、DBサーバ300とを1つの装置で実現してもよい。
検索端末100は、ユーザが検索操作を行う操作端末である。
クライアント機能部101は、ユーザとのインタフェースの機能を実行する。クライアント機能部101は、ユーザからの検索キーワード等の検索キーの入力を検索条件として受け付ける。クライアント機能部101は、受け付けた検索条件を検索要求として検索サーバ200の検索制御部201へ送信する。
クライアント機能部101は、ユーザとのインタフェースの機能を実行する。クライアント機能部101は、ユーザからの検索キーワード等の検索キーの入力を検索条件として受け付ける。クライアント機能部101は、受け付けた検索条件を検索要求として検索サーバ200の検索制御部201へ送信する。
検索サーバ200は、検索端末100により送信された検索要求を受信し、受信した検索要求に基づいて検索処理を実行する。
検索制御部201は、クライアント機能部101から受信した検索要求に含まれる検索条件にしたがって、処理装置により検索処理を制御する。
検索制御部201は、クライアント機能部101から受信した検索要求に含まれる検索条件にしたがって、処理装置により検索処理を制御する。
類義語取得部202は、検索制御部201により入力される検索キーワードを受け取る。類義語取得部202は、受け取った検索キーワードに含まれる各用語の類義語を検索する。類義語取得部202は、検索により取得した類義語の一覧を類義語一覧として検索制御部201に対して出力する。
類義語取得部202は、検索キーである検索キーワードに基づいて、検索キーに関連する類義語(関連語)を取得する関連語取得部の一例である。
類義語取得部202は、検索キーである検索キーワードに基づいて、検索キーに関連する類義語(関連語)を取得する関連語取得部の一例である。
副次検索部203は、検索キーワードの組み合わせに基づいて、セキュリティの有識者が必要と判断する副次的な要素(以下、副次要素とする)を表す用語を検索する。副次検索部203は、検索により取得した副次要素の一覧を副次要素一覧として検索制御部201に対して出力する。
ガイド項目検索部204は、検索キーワードと類義語と副次要素とに基づいて、ガイド項目(脆弱性)を検索する。ガイド項目検索部204は、検索により取得したガイド項目の一覧をガイド項目一覧として検索制御部201に対して出力する。
DBサーバ300は、検索サーバ200の検索処理の対象となるデータを保存しているサーバである。
概念辞書DB301は、用語と、当該用語を言い換えた用語(類義語)との関係を管理する。
副次特性DB302は、用語の組み合わせによってセキュリティの有識者が必要と判断する副次的な要素を管理する。
ガイドラインDB303は、情報システムを開発する上で気をつけるべき脆弱性の一覧を管理する。ここでは、脆弱性はガイド項目の一例であり、脆弱性一覧は、ガイド項目一覧の一例である。
概念辞書DB301は、用語と、当該用語を言い換えた用語(類義語)との関係を管理する。
副次特性DB302は、用語の組み合わせによってセキュリティの有識者が必要と判断する副次的な要素を管理する。
ガイドラインDB303は、情報システムを開発する上で気をつけるべき脆弱性の一覧を管理する。ここでは、脆弱性はガイド項目の一例であり、脆弱性一覧は、ガイド項目一覧の一例である。
図2は、本実施の形態に係る概念辞書DB301のデータ構成の一例を示した図である。
図2では、概念辞書DB301は、用語の類義関係を関係表の構造で管理する形式であるが、ツリー構造やグラフ構造を直接管理できるデータベースで管理しても良い。
図2では、概念辞書DB301は、用語の類義関係を関係表の構造で管理する形式であるが、ツリー構造やグラフ構造を直接管理できるデータベースで管理しても良い。
概念辞書DB301は、用語テーブル3011と、概念紐付けテーブル3012とから構成される。
用語テーブル3011は、用語ID、用語、概念フラグが対応付けられている。用語テーブル3011は、用語を一意に識別するための用語IDカラムと、用語を格納する用語カラムと、類義関係にある用語の代表を示す概念フラグカラムからなるテーブルである。
概念紐付けテーブル3012は、用語ID1、用語ID2が対応付けられている。概念紐付けテーブル3012は、類義関係にある用語を、用語ID1と用語ID2として紐付けて格納するテーブルである。
用語テーブル3011は、用語ID、用語、概念フラグが対応付けられている。用語テーブル3011は、用語を一意に識別するための用語IDカラムと、用語を格納する用語カラムと、類義関係にある用語の代表を示す概念フラグカラムからなるテーブルである。
概念紐付けテーブル3012は、用語ID1、用語ID2が対応付けられている。概念紐付けテーブル3012は、類義関係にある用語を、用語ID1と用語ID2として紐付けて格納するテーブルである。
例えば、用語テーブル3011において、用語ID「W001」は、用語「顧客情報」、概念フラグ「なし」であり、用語ID「W002」は、用語「機密データ」、概念フラグ「あり」である。そして、概念紐付けテーブル3012において、用語ID1「W001」と用語ID2「W002」とが紐付けられている。このことは、「顧客情報」と「機密データ」とは類義語であり、これらの類義語を代表する概念は「機密データ」であることを意味している。
同様に、「閲覧」と「参照」とは類義語であり、これらの類義語を代表する概念は「参照」である。また、「遠隔」と「リモート」とは類義語であり、これらの類義語を代表する概念は「リモート」である。
同様に、「閲覧」と「参照」とは類義語であり、これらの類義語を代表する概念は「参照」である。また、「遠隔」と「リモート」とは類義語であり、これらの類義語を代表する概念は「リモート」である。
図3は、本実施の形態に係る副次特性DB302のグラフ構造の一例を示した図である。
図4は、図3に示す副次特性DB302のグラフ構造を管理する関係表のデータ構造の一例を示した図である。
なお、本実施の形態では、副次特性DB302において、副次特性DB302のグラフ構造を関係表の構造に読み替えて管理しているが、グラフ構造を直接管理できるデータベースで管理してもよい。
図4は、図3に示す副次特性DB302のグラフ構造を管理する関係表のデータ構造の一例を示した図である。
なお、本実施の形態では、副次特性DB302において、副次特性DB302のグラフ構造を関係表の構造に読み替えて管理しているが、グラフ構造を直接管理できるデータベースで管理してもよい。
図3において、平行四辺形で表されるノードは、種別が情報資産であることを意味している。また、楕円形で表されるノードは、種別が操作特性であることを意味している。矢印は、エッジを示している。
機密データは情報資産であり、検索キーなどとして入力される情報資産を示す情報資産用語の一例である。
参照、リモートは、情報資産「機密データ」に関連する操作特性(操作)であり、この操作特性を示す操作用語の一例である。
アクセスログ、クライアントキャッシュは情報資産であるが、特に、エッジで関連付けられている操作特性から副次的に想起される情報資産であり操作関連用語の一例である。操作特性から副次的に想起される情報資産とは、操作特性に応じて注意しなければいけない要素などであり、セキュリティの有識者が必要と判断するであろう要素などである。
エッジは、情報資産、操作特性それぞれの関連性を示すものである。
機密データは情報資産であり、検索キーなどとして入力される情報資産を示す情報資産用語の一例である。
参照、リモートは、情報資産「機密データ」に関連する操作特性(操作)であり、この操作特性を示す操作用語の一例である。
アクセスログ、クライアントキャッシュは情報資産であるが、特に、エッジで関連付けられている操作特性から副次的に想起される情報資産であり操作関連用語の一例である。操作特性から副次的に想起される情報資産とは、操作特性に応じて注意しなければいけない要素などであり、セキュリティの有識者が必要と判断するであろう要素などである。
エッジは、情報資産、操作特性それぞれの関連性を示すものである。
図3に示すように、副次特性DB302は、第一階層に情報資産(情報資産用語)がノードとして設定され、第二階層に操作特性(操作用語)がノードとして設定され、第三階層に、操作関連用語が設定される用語情報記憶部の一例である。
副次特性DB302は、情報資産と、情報資産にエッジで接続された操作特性と、操作特性に関連する副次的な要素である操作関連用語とがノードとして設定されたグラフ構造である。
副次特性DB302は、情報資産と、情報資産にエッジで接続された操作特性と、操作特性に関連する副次的な要素である操作関連用語とがノードとして設定されたグラフ構造である。
具体的には、機密データ(情報資産)からエッジにより関連付けられている参照(操作特性)には、アクセスログ(操作関連用語)とクライアントキャッシュ(操作関連用語)が対応付けられている。また、機密データ(情報資産)からエッジにより関連付けられているリモート(操作特性)には、クライアントキャッシュ(操作関連用語)が対応付けられている。
このように、副次特性DB302は、複数の異なる操作特性に対応付けられた操作関連用語を副次特性(用語情報)として記憶する。
言い換えると、副次特性DB302は、情報資産に関連する操作を示す操作用語に関連付けられた操作関連用語を用語情報として記憶装置に記憶するものである。図3,図4に示す副次特性DB302では、機密データに関連する参照に関連付けられるアクセスログの情報、機密データに関連する参照に関連付けられるクライアントキャッシュの情報、機密データに関連するリモートに関連付けられるクライアントキャッシュの情報が用語情報として記憶されている。
したがって、副次特性DB302は、情報資産に関連する操作を示す操作用語に関連付けられた操作関連用語を用語情報として記憶することができれば、グラフ構造及び関係表の形式を有するデータベースでなくてもよい。
言い換えると、副次特性DB302は、情報資産に関連する操作を示す操作用語に関連付けられた操作関連用語を用語情報として記憶装置に記憶するものである。図3,図4に示す副次特性DB302では、機密データに関連する参照に関連付けられるアクセスログの情報、機密データに関連する参照に関連付けられるクライアントキャッシュの情報、機密データに関連するリモートに関連付けられるクライアントキャッシュの情報が用語情報として記憶されている。
したがって、副次特性DB302は、情報資産に関連する操作を示す操作用語に関連付けられた操作関連用語を用語情報として記憶することができれば、グラフ構造及び関係表の形式を有するデータベースでなくてもよい。
図4では、図3に示す副次特性DB302のグラフ構造を関係表の構造で示している。副次特性DB302は、ノードテーブル3021と、エッジテーブル3022で管理されている。
ノードテーブル3021は、ノードID、名称、種別から構成される。ノードテーブル3021は、グラフのノードを一意に識別するためのノードIDカラムと、用語をノードの名称として格納する名称カラムと、用語の種別が情報資産であるか操作特性であるかを区別する種別カラムとからなるテーブルである。
エッジテーブル3022は、始点ノードID、終点ノードIDから構成される。エッジテーブル3022は、ノード間のエッジを始点ノードIDと終点ノードIDとで格納するテーブルである。
ノードテーブル3021は、ノードID、名称、種別から構成される。ノードテーブル3021は、グラフのノードを一意に識別するためのノードIDカラムと、用語をノードの名称として格納する名称カラムと、用語の種別が情報資産であるか操作特性であるかを区別する種別カラムとからなるテーブルである。
エッジテーブル3022は、始点ノードID、終点ノードIDから構成される。エッジテーブル3022は、ノード間のエッジを始点ノードIDと終点ノードIDとで格納するテーブルである。
図5は、本実施の形態に係るガイドラインDB303のデータ構成の一例を示した図である。
なお、この例では、脆弱性をガイド項目とした関係表の構造で管理しているが、全文検索ができるファイルもしくは検索キーワードと紐付けた構造で管理してもよい。
なお、この例では、脆弱性をガイド項目とした関係表の構造で管理しているが、全文検索ができるファイルもしくは検索キーワードと紐付けた構造で管理してもよい。
ガイドラインDB303は、脆弱性テーブル3031からなる。
脆弱性テーブル3031は、脆弱性ID、脆弱性内容から構成される。
脆弱性テーブル3031は、脆弱性を一意に識別するための脆弱性IDカラムと、脆弱性の内容を格納する脆弱性内容カラムからなるテーブルである。
脆弱性テーブル3031は、脆弱性ID、脆弱性内容から構成される。
脆弱性テーブル3031は、脆弱性を一意に識別するための脆弱性IDカラムと、脆弱性の内容を格納する脆弱性内容カラムからなるテーブルである。
例えば、脆弱性テーブル3031において、脆弱性ID「V001」は、脆弱性内容「機密データを暗号化して保存していない」であり、脆弱性ID「V002」は、脆弱性内容「機密データ参照の通信経路が暗号化されていない」である。
図6は、本実施の形態に係る検索端末100、検索サーバ200、DBサーバ300のハードウェア構成の一例を示す図である。
図6を用いて、検索端末100、検索サーバ200、DBサーバ300のハードウェア構成例について説明する。
図6を用いて、検索端末100、検索サーバ200、DBサーバ300のハードウェア構成例について説明する。
検索端末100、検索サーバ200、DBサーバ300はコンピュータであり、検索端末100、検索サーバ200、DBサーバ300の各要素をプログラムで実現することができる。
検索端末100、検索サーバ200、DBサーバ300のハードウェア構成としては、バスに、演算装置901、外部記憶装置902、主記憶装置903、通信装置904、入出力装置905が接続されている。
検索端末100、検索サーバ200、DBサーバ300のハードウェア構成としては、バスに、演算装置901、外部記憶装置902、主記憶装置903、通信装置904、入出力装置905が接続されている。
演算装置901は、プログラムを実行するCPU(Central・Processing・Unit)(処理装置)である。
外部記憶装置902は、例えばROM(Read・Only・Memory)やフラッシュメモリ、ハードディスク装置である。
主記憶装置903は、RAM(Random・Access・Memory)である。
通信装置904は、例えば通信ボード等であり、LAN(Local・Area・Network)等に接続されている。通信装置904は、LANに限らず、IP−VPN(Internet・Protocol・Virtual・Private・Network)、広域LAN、ATM(Asynchronous・Transfer・Mode)ネットワークといったWAN(Wide・Area・Network)、あるいは、インターネットに接続されていても構わない。LAN、WAN、インターネットは、ネットワークの一例である。
入出力装置905は、例えばマウス、キーボード、ディスプレイ装置等である。マウスの代わりに、タッチパネル、タッチパッド、トラックボール、ペンタブレット、あるいは、その他のポインティングデバイスが用いられてもよい。ディスプレイ装置は、LCD(Liquid・Crystal・Display)、CRT(Cathode・Ray・Tube)、あるいは、その他の表示装置でもよい。
外部記憶装置902は、例えばROM(Read・Only・Memory)やフラッシュメモリ、ハードディスク装置である。
主記憶装置903は、RAM(Random・Access・Memory)である。
通信装置904は、例えば通信ボード等であり、LAN(Local・Area・Network)等に接続されている。通信装置904は、LANに限らず、IP−VPN(Internet・Protocol・Virtual・Private・Network)、広域LAN、ATM(Asynchronous・Transfer・Mode)ネットワークといったWAN(Wide・Area・Network)、あるいは、インターネットに接続されていても構わない。LAN、WAN、インターネットは、ネットワークの一例である。
入出力装置905は、例えばマウス、キーボード、ディスプレイ装置等である。マウスの代わりに、タッチパネル、タッチパッド、トラックボール、ペンタブレット、あるいは、その他のポインティングデバイスが用いられてもよい。ディスプレイ装置は、LCD(Liquid・Crystal・Display)、CRT(Cathode・Ray・Tube)、あるいは、その他の表示装置でもよい。
プログラムは、通常は外部記憶装置902に記憶されており、主記憶装置903にロードされた状態で、順次演算装置901に読み込まれ、実行される。
プログラムは、ブロック構成図に示す「〜部」として説明している機能を実現するプログラムである。
プログラムプロダクト(コンピュータプログラムプロダクト)は、図1などに示す「〜部」の機能を実現するプログラムが記録された記憶媒体、記憶装置などである。なお、プログラムプロダクトは、見た目の形式に限られず、コンピュータ読み取り可能なプログラムをロードしているものであればよい。
プログラムは、ブロック構成図に示す「〜部」として説明している機能を実現するプログラムである。
プログラムプロダクト(コンピュータプログラムプロダクト)は、図1などに示す「〜部」の機能を実現するプログラムが記録された記憶媒体、記憶装置などである。なお、プログラムプロダクトは、見た目の形式に限られず、コンピュータ読み取り可能なプログラムをロードしているものであればよい。
更に、外部記憶装置902にはオペレーティングシステム(OS)も記憶されており、OSの少なくとも一部が主記憶装置903にロードされ、演算装置901はOSを実行しながら、ブロック構成図に示す「〜部」の機能を実現するプログラムを実行する。
また、アプリケーションプログラムも外部記憶装置902に記憶されており、主記憶装置903にロードされた状態で、順次演算装置901により実行される。
また、「〜テーブル」等の情報も外部記憶装置902に記憶されている。
また、アプリケーションプログラムも外部記憶装置902に記憶されており、主記憶装置903にロードされた状態で、順次演算装置901により実行される。
また、「〜テーブル」等の情報も外部記憶装置902に記憶されている。
また、「〜の判断」、「〜の判定」、「〜の抽出」、「〜の検知」、「〜の設定」、「〜の登録」、「〜の選択」、「〜の生成」、「〜の入力」、「〜の出力」等の処理の結果を示す情報やデータや信号値や変数値が主記憶装置903にファイルとして記憶されている。
また、検索端末100、検索サーバ200、DBサーバ300が受信したデータが主記憶装置903に記憶される。
また、暗号鍵・復号鍵や乱数値やパラメータが、主記憶装置903にファイルとして記憶されてもよい。
また、検索端末100、検索サーバ200、DBサーバ300が受信したデータが主記憶装置903に記憶される。
また、暗号鍵・復号鍵や乱数値やパラメータが、主記憶装置903にファイルとして記憶されてもよい。
なお、図6の構成は、あくまでも検索端末100、検索サーバ200、DBサーバ300のハードウェア構成の一例を示すものであり、検索端末100、検索サーバ200、DBサーバ300のハードウェア構成は図6に記載の構成に限らず、他の構成であってもよい。
次に、本実施の形態に係る検索システム500の動作について説明する。
ここで、検索システム500の動作について説明するにあたり、DBサーバ300に格納されているデータの前提について説明する。
概念辞書DB301には、検索に用いるキーワードとその類義語との関係が格納されている。
副次特性DB302には、情報資産とその操作特性とに基づく副次要素の関係が格納されている。副次要素の関係は、エッジが種別の異なるノードを接続するように格納されているものとする。副次要素とは、セキュリティの有識者が必要と判断するであろう要素である。
ガイドラインDB303には、ガイド項目として全ての脆弱性が格納されているものとする。
ここで、検索システム500の動作について説明するにあたり、DBサーバ300に格納されているデータの前提について説明する。
概念辞書DB301には、検索に用いるキーワードとその類義語との関係が格納されている。
副次特性DB302には、情報資産とその操作特性とに基づく副次要素の関係が格納されている。副次要素の関係は、エッジが種別の異なるノードを接続するように格納されているものとする。副次要素とは、セキュリティの有識者が必要と判断するであろう要素である。
ガイドラインDB303には、ガイド項目として全ての脆弱性が格納されているものとする。
図7は、本実施の形態に係る検索システム500の検索方法を示した処理シーケンス図である。
図7を用いて、本実施の形態に係る検索システム500の検索処理の概要について説明する。
例えば、検索システム500の各部の機能はプログラムにより実現される。検索システム500の各部の機能を有するプログラムは、検索端末100、検索サーバ200、DBサーバ300の外部記憶装置に記憶され、処理装置により主記憶装置に読み込まれ、実行される。
図7を用いて、本実施の形態に係る検索システム500の検索処理の概要について説明する。
例えば、検索システム500の各部の機能はプログラムにより実現される。検索システム500の各部の機能を有するプログラムは、検索端末100、検索サーバ200、DBサーバ300の外部記憶装置に記憶され、処理装置により主記憶装置に読み込まれ、実行される。
<M100の処理>
クライアント機能部101は、ユーザからの検索キーワードの入力を入力装置により受け付ける。クライアント機能部101は、受け付けた検索キーワードを検索条件とした検索条件一覧を処理装置により生成する。クライアント機能部101は、生成した検索条件一覧を検索要求として、検索サーバ200の検索制御部201へ送信する。クライアント機能部101は、検索サーバ200の検索制御部201から、検索結果として脆弱性一覧を受信する。
クライアント機能部101は、ユーザからの検索キーワードの入力を入力装置により受け付ける。クライアント機能部101は、受け付けた検索キーワードを検索条件とした検索条件一覧を処理装置により生成する。クライアント機能部101は、生成した検索条件一覧を検索要求として、検索サーバ200の検索制御部201へ送信する。クライアント機能部101は、検索サーバ200の検索制御部201から、検索結果として脆弱性一覧を受信する。
<M101の処理>
検索制御部201は、検索条件一覧を類義語取得要求として、類義語取得部202に対して出力する。検索制御部201は、類義語取得要求に対する応答として、類義語一覧を取得する。
<M102の処理(類義語取得処理(工程))>
類義語取得部202は、検索条件一覧に含まれる各検索条件について、概念辞書DB301を検索し、検索結果である類義語を類義語一覧として取得する。
検索制御部201は、検索条件一覧を類義語取得要求として、類義語取得部202に対して出力する。検索制御部201は、類義語取得要求に対する応答として、類義語一覧を取得する。
<M102の処理(類義語取得処理(工程))>
類義語取得部202は、検索条件一覧に含まれる各検索条件について、概念辞書DB301を検索し、検索結果である類義語を類義語一覧として取得する。
<M103の処理(概念語一覧取得処理(工程)(関連語取得処理(工程))>
検索制御部201は、類義語一覧のうち概念フラグが付いた用語を抽出し、抽出した用語を概念語一覧として生成する。検索制御部201は、概念語一覧を副次要素取得要求として、副次検索部203に対して出力する。検索制御部201は、副次要素取得要求に対する応答として、副次要素一覧を取得する。
<M104の処理(副次要素取得処理(工程)(抽出処理(工程)))>
副次検索部203は、概念語一覧に含まれる各概念語について、副次特性DB302を検索し、検索結果である副次要素を副次要素一覧として取得する。
検索制御部201は、類義語一覧のうち概念フラグが付いた用語を抽出し、抽出した用語を概念語一覧として生成する。検索制御部201は、概念語一覧を副次要素取得要求として、副次検索部203に対して出力する。検索制御部201は、副次要素取得要求に対する応答として、副次要素一覧を取得する。
<M104の処理(副次要素取得処理(工程)(抽出処理(工程)))>
副次検索部203は、概念語一覧に含まれる各概念語について、副次特性DB302を検索し、検索結果である副次要素を副次要素一覧として取得する。
<M105の処理>
検索制御部201は、検索条件一覧と類義語一覧と副次要素一覧とをガイドライン検索要求として、ガイド項目検索部204に対して出力する。検索制御部201は、ガイドライン検索要求に対する応答として、脆弱性一覧を取得する。
<M106の処理(検索処理(工程))>
ガイド項目検索部204は、検索条件一覧と類義語一覧と副次要素一覧とに含まれる各用語について、ガイドラインDB303を検索し、検索結果である脆弱性を脆弱性一覧として取得する。
検索制御部201は、検索条件一覧と類義語一覧と副次要素一覧とをガイドライン検索要求として、ガイド項目検索部204に対して出力する。検索制御部201は、ガイドライン検索要求に対する応答として、脆弱性一覧を取得する。
<M106の処理(検索処理(工程))>
ガイド項目検索部204は、検索条件一覧と類義語一覧と副次要素一覧とに含まれる各用語について、ガイドラインDB303を検索し、検索結果である脆弱性を脆弱性一覧として取得する。
次に、検索制御部201、類義語取得部202、副次検索部203、ガイド項目検索部204の詳しい動作について説明する。
図8は、本実施の形態に係る類義語取得部202の類義語取得処理(工程)を示すフローチャートである。
図8を用いて、図7のM102の処理である類義語取得処理(工程)について説明する。
図8は、本実施の形態に係る類義語取得部202の類義語取得処理(工程)を示すフローチャートである。
図8を用いて、図7のM102の処理である類義語取得処理(工程)について説明する。
S100において、類義語取得部202は、検索制御部201から類義語取得要求として、検索条件一覧を受け取る。
S101〜S101aの繰り返し処理では、類義語取得部202は、検索条件一覧の各検索条件についてS102〜S103の処理を繰り返し、全ての検索条件について処理を終えたら繰り返しを抜ける。類義語取得部202は、S101aにおいて繰り返しを抜けると、S104に進む。
S101〜S101aの繰り返し処理では、類義語取得部202は、検索条件一覧の各検索条件についてS102〜S103の処理を繰り返し、全ての検索条件について処理を終えたら繰り返しを抜ける。類義語取得部202は、S101aにおいて繰り返しを抜けると、S104に進む。
S102において、類義語取得部202は、概念辞書DB301から検索条件に紐づく用語を検索する。
S103において、類義語取得部202は、検索により得られた用語を概念フラグとともに類義語一覧(R100)に保持する。
S104において、類義語取得部202は、類義語取得要求に対する応答として、保持していた類義語一覧(R100)を検索制御部201に対して出力する。
S103において、類義語取得部202は、検索により得られた用語を概念フラグとともに類義語一覧(R100)に保持する。
S104において、類義語取得部202は、類義語取得要求に対する応答として、保持していた類義語一覧(R100)を検索制御部201に対して出力する。
例えば、ユーザにより「顧客情報」、「閲覧」、「遠隔」が検索条件として入力された場合、類義語取得部202は、概念辞書DB301(図2参照)に基づいて、検索条件に紐づく「機密データ(概念フラグオン)」、「参照(概念フラグオン)」、「リモート(概念フラグオン)」をそれぞれの類義語として取得する。
類義語取得部202は、「顧客情報」、「閲覧」、「遠隔」と、「機密データ(概念フラグオン)」、「参照(概念フラグオン)」、「リモート(概念フラグオン)」とは、互いに類義語であることから、「顧客情報」、「閲覧」、「遠隔」、「機密データ(概念フラグオン)」、「参照(概念フラグオン)」、「リモート(概念フラグオン)」をすべて類義語一覧として取得する。
類義語取得部202は、「顧客情報」、「閲覧」、「遠隔」と、「機密データ(概念フラグオン)」、「参照(概念フラグオン)」、「リモート(概念フラグオン)」とは、互いに類義語であることから、「顧客情報」、「閲覧」、「遠隔」、「機密データ(概念フラグオン)」、「参照(概念フラグオン)」、「リモート(概念フラグオン)」をすべて類義語一覧として取得する。
図9は、(a)が本実施の形態に係る検索制御部201の関連語取得処理(工程)を示すフローチャート、(b)が副次検索部203の副次要素取得処理(工程)((抽出処理(工程))を示すフローチャートである。
図9(a)(b)を用いて、図7のM103の関連語取得処理(工程)、M104の副次要素取得処理(工程)について説明する。
図9(a)(b)を用いて、図7のM103の関連語取得処理(工程)、M104の副次要素取得処理(工程)について説明する。
図9(a)のS200aにおいて、検索制御部201は、類義語取得部202から複数の類義語が含まれる類義語一覧を取得し、取得した類義語一覧のうちの概念フラグが付いた用語の一覧を処理装置により抽出し、抽出した概念フラグが付いた用語の一覧を概念語一覧(関連語)として生成する関連語取得部の一例である。
概念語一覧とは、取得した複数の類義語を概念毎に分類した場合、分類した概念毎に当該概念を表す概念語を一覧としたものである。
S200bにおいて、検索制御部201は、概念語一覧を副次検索部203に対して出力する。
概念語一覧とは、取得した複数の類義語を概念毎に分類した場合、分類した概念毎に当該概念を表す概念語を一覧としたものである。
S200bにおいて、検索制御部201は、概念語一覧を副次検索部203に対して出力する。
図9(b)のS200において、副次検索部203は、検索制御部201から副次検索要求として、概念語一覧を受け取る。
S201において、副次検索部203は、副次特性DB302から概念語一覧に対応するノード一覧(R200)を取得する。
S201において、副次検索部203は、副次特性DB302から概念語一覧に対応するノード一覧(R200)を取得する。
ここで、S201の処理(ノード一覧取得処理(工程)ともいう)の詳しい動作について説明する。
図10は、本実施の形態に係る副次検索部203のノード一覧取得処理(工程)(S201)を示すフローチャートである。
図10は、本実施の形態に係る副次検索部203のノード一覧取得処理(工程)(S201)を示すフローチャートである。
S300〜S300aの繰り返し処理では、副次検索部203は、概念語一覧の各概念語について、S301〜S302の処理を繰り返し、全ての概念語について処理を終えたら繰り返しを抜け、図9のS202に進む。ここで、処理対象の概念語を対象概念語とする。
S301において、副次検索部203は、副次特性DB302のノードテーブル3021から対象概念語に一致する名称を持つノードを検索する。
S302において、副次検索部203は、検索により得られたノードを種別とともにノード一覧(R200)に保持する。
S301において、副次検索部203は、副次特性DB302のノードテーブル3021から対象概念語に一致する名称を持つノードを検索する。
S302において、副次検索部203は、検索により得られたノードを種別とともにノード一覧(R200)に保持する。
例えば、「機密データ(概念フラグオン)」、「参照(概念フラグオン)」、「リモート(概念フラグオン)」が概念語一覧であるとする。
このとき、副次検索部203は、副次特性DB302のノードテーブル3021(図4参照)から、「機密データ」・種別「情報資産」、「参照」・種別「操作特性」、「リモート」・種別「操作特性」を検索により抽出し、ノード一覧に含むことになる。
以上で、S201のノード一覧取得処理についての詳細説明を終わり、図9(b)に戻りS202の処理から説明を続ける。
このとき、副次検索部203は、副次特性DB302のノードテーブル3021(図4参照)から、「機密データ」・種別「情報資産」、「参照」・種別「操作特性」、「リモート」・種別「操作特性」を検索により抽出し、ノード一覧に含むことになる。
以上で、S201のノード一覧取得処理についての詳細説明を終わり、図9(b)に戻りS202の処理から説明を続ける。
図9(b)のS202において、副次検索部203は、ノード一覧(R200)をもとに副次特性DB302のエッジテーブル3022から種別が情報資産であるノードを始点とし種別が操作特性であるノードを終点とするエッジ一覧A(R201)と、種別が操作特性であるノードを始点とし任意のノードを終点とするエッジ一覧B(R202)とを取得する。
ここで、S202の処理(エッジ一覧取得処理(工程)ともいう)の詳しい動作について説明する。
図11は、本実施の形態に係る副次検索部203のエッジ一覧取得処理(工程)(S202)を示すフローチャートである。
図11は、本実施の形態に係る副次検索部203のエッジ一覧取得処理(工程)(S202)を示すフローチャートである。
S202に処理が進むと、S400〜S400aの繰り返し処理において、副次検索部203は、ノード一覧(R200)の各ノードについてS401〜S405の処理を繰り返し、全てのノードについて処理を終えたら繰り返しを抜け、S203に処理を進める。ここで、処理対象のノードを対象ノードとする。
S401において、副次検索部203は、対象ノードの種別を処理装置により判定する。
対象ノードの種別が情報資産の場合(S401で情報資産)、副次検索部203はS402〜S403を処理する。
対象ノードの種別が操作特性の場合(S401で操作特性)、副次検索部203はS404〜S405を処理する。
対象ノードの種別が情報資産の場合(S401で情報資産)、副次検索部203はS402〜S403を処理する。
対象ノードの種別が操作特性の場合(S401で操作特性)、副次検索部203はS404〜S405を処理する。
S402において、副次検索部203は、副次特性DB302のエッジテーブル3022から、対象ノード(種別は情報資産)を始点に持ち、かつ、ノード一覧(R200)のうちノードの種別が操作特性のノードを終点に持つエッジを検索する。
S403において、副次検索部203は、S402で得られたエッジをエッジ一覧A(R201)に保持する。
S403において、副次検索部203は、S402で得られたエッジをエッジ一覧A(R201)に保持する。
S404において、副次検索部203は、副次特性DB302のエッジテーブル3022から、対象ノード(種別は操作特性)を始点に持ち、かつ、ノード一覧(R200)のうちノードの種別が情報資産のノードを終点に持つエッジを検索する。
S405において、副次検索部203は、S404で得られたエッジをエッジ一覧B(R202)に保持する。
S405において、副次検索部203は、S404で得られたエッジをエッジ一覧B(R202)に保持する。
例えば、ノード一覧に、「機密データ(N001)」・種別「情報資産」、「参照(N102)」・種別「操作特性」、「リモート(N203)」・種別「操作特性」が含まれるとする。
S402〜S403の処理により、エッジテーブル3022からエッジe1(始点:N001、終点:N102)と、エッジe2(始点:N001、終点:N203)とが抽出され、エッジ一覧A(R201)に保持される(図4参照)。
S404〜S405の処理により、エッジテーブル3022からエッジe3(始点:N102、終点:N304)と、エッジe4(始点:N102、終点:N405)と、エッジe5(始点:N203、終点:N405)とが抽出され、エッジ一覧B(R202)に保持される(図4参照)。
S402〜S403の処理により、エッジテーブル3022からエッジe1(始点:N001、終点:N102)と、エッジe2(始点:N001、終点:N203)とが抽出され、エッジ一覧A(R201)に保持される(図4参照)。
S404〜S405の処理により、エッジテーブル3022からエッジe3(始点:N102、終点:N304)と、エッジe4(始点:N102、終点:N405)と、エッジe5(始点:N203、終点:N405)とが抽出され、エッジ一覧B(R202)に保持される(図4参照)。
以上で、S202のエッジ一覧取得処理についての詳細説明を終わり、図9(b)に戻りS203の処理から説明を続ける。
図9(b)のS203において、副次検索部203は、エッジ一覧A(R201)とエッジ一覧B(R202)をもとに副次要素一覧(R203)を取得する(S203)。
ここで、S203の処理(副次要素一覧取得処理(工程)ともいう)の詳しい動作について説明する。
図12は、本実施の形態に係る副次検索部203の副次要素一覧取得処理(工程)(S203)を示すフローチャートである。
図12は、本実施の形態に係る副次検索部203の副次要素一覧取得処理(工程)(S203)を示すフローチャートである。
S203に処理が進むと、S500〜S500aの繰り返し処理において、副次検索部203は、エッジ一覧B(R202)についてS501〜S505の処理を繰り返し、全てのエッジについて処理を終えたら繰り返しを抜ける(S500a)。ここで、処理対象のエッジを対象エッジとする。
S501において、副次検索部203は、繰り返し中のエッジ(対象エッジ)の始点ノードがエッジ一覧A(R201)の終点に含まれるか否かを判定する。
対象エッジ)の始点ノードがエッジ一覧A(R201)の終点に含まれる場合(S501でYES)、S502に進む。
対象エッジ)の始点ノードがエッジ一覧A(R201)の終点に含まれない場合(S501でNO)、S500に戻り処理を繰り返す。
対象エッジ)の始点ノードがエッジ一覧A(R201)の終点に含まれる場合(S501でYES)、S502に進む。
対象エッジ)の始点ノードがエッジ一覧A(R201)の終点に含まれない場合(S501でNO)、S500に戻り処理を繰り返す。
S502において、副次検索部203は、繰り返し中のエッジ(対象エッジ)の終点ノードの名称が副次要素一覧(R203)に含まれるか否かを判定する。
対象エッジ)の終点ノードの名称が副次要素一覧(R203)に含まれない場合(S502でNO)、S503に進む。
対象エッジ)の終点ノードの名称が副次要素一覧(R203)に含まれる場合(S502でYES)、S505に進む。
対象エッジ)の終点ノードの名称が副次要素一覧(R203)に含まれない場合(S502でNO)、S503に進む。
対象エッジ)の終点ノードの名称が副次要素一覧(R203)に含まれる場合(S502でYES)、S505に進む。
S503において、副次検索部203は、副次特性DB302から、繰り返し中のエッジ(対象エッジ)の終点ノードを終点ノードとして持つエッジの数を検索し、総エッジ数として取得する。
S504において、副次検索部203は、繰り返し中のエッジ(対象エッジ)の終点ノードの名称と、総エッジ数とエッジ数(=0)を副次要素一覧(R203)に副次要素として保持する。対象エッジの終点ノードの名称は、操作関連用語の一例である。
S505において、副次検索部203は、副次要素のエッジ数に1を加える。
S504において、副次検索部203は、繰り返し中のエッジ(対象エッジ)の終点ノードの名称と、総エッジ数とエッジ数(=0)を副次要素一覧(R203)に副次要素として保持する。対象エッジの終点ノードの名称は、操作関連用語の一例である。
S505において、副次検索部203は、副次要素のエッジ数に1を加える。
S502において対象エッジの終点ノードの名称が副次要素一覧(R203)に含まれる場合は、対象エッジの終点ノードを終点ノードとするエッジが、既に対象ノードとして処理されたことを意味するので、S505のエッジ数をインクリメントする処理のみを実行する。
以上で、S203の副次要素一覧取得処理についての詳細説明を終わり、図9(b)に戻りS204の処理から説明を続ける。
図9(b)のS204において、副次検索部203は、保持していた副次要素一覧(R203)を検索制御部201に出力する。
以上のように、副次検索部203は、副次特性DB302から、情報資産(情報資産用語)と操作特性(操作用語)とのそれぞれが概念語一覧(関連語)に含まれている用語情報から、操作関連用語を処理装置により抽出する抽出部の一例である。
また、副次検索部203は、操作関連用語を抽出するとともに、抽出した操作関連用語に関連する操作であって、この操作を示す操作特性と、この操作特性に関連する情報資産とのそれぞれが概念語一覧に含まれている操作の数をエッジ数(対応操作数)として抽出する。
また、副次検索部203は、操作関連用語と、そのエッジ数(対応操作数)とを抽出するとともに、この操作関連用語に関連する全ての操作の数(総エッジ数)を抽出する。
また、副次検索部203は、操作関連用語を抽出するとともに、抽出した操作関連用語に関連する操作であって、この操作を示す操作特性と、この操作特性に関連する情報資産とのそれぞれが概念語一覧に含まれている操作の数をエッジ数(対応操作数)として抽出する。
また、副次検索部203は、操作関連用語と、そのエッジ数(対応操作数)とを抽出するとともに、この操作関連用語に関連する全ての操作の数(総エッジ数)を抽出する。
図13は、本実施の形態に係るガイド項目検索部204のガイド項目検索処理(工程)(検索処理(工程))を示すフローチャートである。
S600において、ガイド項目検索部204は、検索制御部201から類義語一覧と副次要素一覧とを受け取る。類義語一覧に検索条件一覧が含まれない場合には、ガイド項目検索部204は、さらに検索条件一覧も受け取る。ここでは、類義語一覧に検索条件一覧が含まれるものとする。
S600において、ガイド項目検索部204は、検索制御部201から類義語一覧と副次要素一覧とを受け取る。類義語一覧に検索条件一覧が含まれない場合には、ガイド項目検索部204は、さらに検索条件一覧も受け取る。ここでは、類義語一覧に検索条件一覧が含まれるものとする。
ガイド項目検索部204は、ガイドラインDB303から、類義語一覧と副次要素一覧とが示す文字列を含む脆弱性を検索する(S601)。
ガイド項目検索部204は、副次要素の文字列(すなわち、操作関連用語)から得られた脆弱性については、エッジ数(対応操作数)と総エッジ数(総操作数)の値によってフィルタ処理を行う(S602)。
ガイド項目検索部204は、検索により得られた脆弱性一覧を検索端末100のクライアント機能部101に送信する(S603)。
ガイド項目検索部204は、副次要素の文字列(すなわち、操作関連用語)から得られた脆弱性については、エッジ数(対応操作数)と総エッジ数(総操作数)の値によってフィルタ処理を行う(S602)。
ガイド項目検索部204は、検索により得られた脆弱性一覧を検索端末100のクライアント機能部101に送信する(S603)。
S602のフィルタ処理では、例えば、ガイド項目検索部204は、副次要素の文字列から得られた脆弱性から、エッジ数/総エッジ数(エッジ数と総エッジ数との割合)の値が一定の閾値(第2閾値の一例)以上のもののみを選ぶ。あるいは、ガイド項目検索部204は、副次要素の文字列から得られた脆弱性を、エッジ数/総エッジ数の値の大きさによってソートする。
全ての脆弱性を同じ一覧に示す場合は前者の方法、副次要素に関する脆弱性を優先度順に別途一覧に示す場合は後者の方法といった使い分けを行う。
あるいは、ガイド項目検索部204は、副次要素の文字列から得られた脆弱性から、エッジ数が第1閾値以上のものを選ぶとしてもよい。
全ての脆弱性を同じ一覧に示す場合は前者の方法、副次要素に関する脆弱性を優先度順に別途一覧に示す場合は後者の方法といった使い分けを行う。
あるいは、ガイド項目検索部204は、副次要素の文字列から得られた脆弱性から、エッジ数が第1閾値以上のものを選ぶとしてもよい。
あるいは、S601でガイド項目検索部204が脆弱性を検索する時点で、副次要素に対して上記のフィルタ処理を実行してもよい。ガイド項目検索部204は、フィルタ処理により抽出された副次要素と、類義語一覧とが示す文字列を用いて、ガイドラインDB303から脆弱性を検索するとしてもよい。
以上のように、ガイド項目検索部204は、検索条件一覧と、検索条件の類義語の一覧と、検索条件の類義語の一覧から取得される副次要素の一覧とを用いて、ガイドラインDB303を処理装置により検索する検索部の一例である。
また、ガイド項目検索部204は、類義語一覧(検索キー、関連語)と、エッジ数(対応操作数)が第1閾値以上の副次要素の文字列(操作関連用語)とにより、ガイドラインDB303を検索する。あるいは、ガイド項目検索部204は、類義語一覧(検索キー、関連語)と、エッジ数と総エッジ数との割合が第2閾値以上の副次要素の文字列とにより、ガイドラインDB303を検索する。
また、ガイド項目検索部204は、類義語一覧(検索キー、関連語)と、エッジ数(対応操作数)が第1閾値以上の副次要素の文字列(操作関連用語)とにより、ガイドラインDB303を検索する。あるいは、ガイド項目検索部204は、類義語一覧(検索キー、関連語)と、エッジ数と総エッジ数との割合が第2閾値以上の副次要素の文字列とにより、ガイドラインDB303を検索する。
以上のように、本実施の形態に係る検索システム500は、検索キーワードを検索条件としてガイドラインを検索する場合において、検索キーワードの類義語と、情報システムが持つ情報資産とその動作の複数条件からセキュリティの有識者が紐付ける副次要素をあらかじめ用意する。そして、検索処理時にそれら類義語と副次要素を検索条件に追加することにより、検索キーワードもしくはその類義語から検索できるガイド項目だけでなく、検索キーワードもしくは類義語からだけでは抽出できないガイド項目や、検索条件2要素の組み合わせでは紐付かないガイド項目を検索することができる。
例えば、図2〜図5に示したようにDBサーバ300にデータが格納されているとする。このとき、「顧客情報」と「閲覧」と「遠隔」を検索条件として入力した場合、類義語取得部202によって「顧客情報」は「機密データ(概念語)」、「閲覧」は「参照(概念語)」、「遠隔」は「リモート(概念語)」という類義語が取得される。これをもとに副次検索部203は、「アクセスログ(エッジ数1、総エッジ数2)」と「クライアントキャッシュ(エッジ数2、総エッジ数2)」という副次要素を取得する。
これらをもとにガイド項目検索部204によって「機密データを暗号化して保存していない。(V001)」、「機密データ参照の通信経路が暗号化されていない。(V002)」、「機密データへのアクセスログが記録されていない。(V003)」という検索条件として入力された文字列もしくは概念から紐付けられる脆弱性だけでなく、「アクセスログが保護されていない。(V104)」や「クライアントキャッシュをオフにしていない。(V205)」といった検索条件として入力された文字列もしくは概念からは紐付けられないがセキュリティの有識者は必要と判断する脆弱性も検索することができる。
これらをもとにガイド項目検索部204によって「機密データを暗号化して保存していない。(V001)」、「機密データ参照の通信経路が暗号化されていない。(V002)」、「機密データへのアクセスログが記録されていない。(V003)」という検索条件として入力された文字列もしくは概念から紐付けられる脆弱性だけでなく、「アクセスログが保護されていない。(V104)」や「クライアントキャッシュをオフにしていない。(V205)」といった検索条件として入力された文字列もしくは概念からは紐付けられないがセキュリティの有識者は必要と判断する脆弱性も検索することができる。
副次要素に含まれるエッジ数と総エッジ数は、エッジ数/総エッジ数が1に近いほど、副次要素の特定条件が揃っているとみなすことができる。このため、このような副次要素は、情報システム全般に当てはまる副次要素ではなく、その情報システム特有の副次要素である可能性が高い。よって、このような副次要素は、検索条件つまりは情報システムが持つ情報資産とその操作特性に特有の脆弱性である可能性が高いことがわかる。このように、副次要素に含まれるエッジ数と総エッジ数は、対処すべきガイド項目の優先度として利用することができる。
また、情報システム特有の脆弱性は一般的に知られている脆弱性、つまりは情報システム全般に言える脆弱性とは異なり、検出するために対象の情報システムとセキュリティ全般の両方に対して深い知識を必要とする。しかし、本実施の形態に係る検索システム500では、セキュリティの有識者が紐付ける副次要素を取得することができるので、対象の情報システムに関する知識のみを必要とするため、脆弱性の検出漏れを低減する効果がある。
なお、検索端末100、検索サーバ200、DBサーバ300の機能ブロックの構成は、以上の実施の形態において説明したブロック構成に限られない。機能ブロックの構成は、他のどのような構成でも構わない。検索端末100、検索サーバ200、DBサーバ300が備える構成部は任意である。
以上、本発明の実施の形態について説明したが、この実施の形態に含まれる態様のうち、2つ以上を組み合わせて実施しても構わない。あるいは、この実施の形態に含まれる態様のうち、1つを部分的に実施しても構わない。あるいは、この実施の形態に含まれる態様のうち、2つ以上を部分的に組み合わせて実施しても構わない。
また、実施の形態1で説明したブロック構成を、矛盾しない範囲で、検索端末100、検索サーバ200、DBサーバ300にどのように分散して配置しても構わない。
なお、以上の実施の形態は、本質的に好ましい例示であって、本発明、その適用物や用途の範囲を制限することを意図するものではなく、矛盾しない範囲であれば必要に応じて種々の変更が可能である。
また、実施の形態1で説明したブロック構成を、矛盾しない範囲で、検索端末100、検索サーバ200、DBサーバ300にどのように分散して配置しても構わない。
なお、以上の実施の形態は、本質的に好ましい例示であって、本発明、その適用物や用途の範囲を制限することを意図するものではなく、矛盾しない範囲であれば必要に応じて種々の変更が可能である。
100 検索端末、101 クライアント機能部、200 検索サーバ、201 検索制御部、202 類義語取得部、203 副次検索部、204 ガイド項目検索部、300 DBサーバ、301 概念辞書DB、302 副次特性DB、303 ガイドラインDB、500 検索システム、901 演算装置、902 外部記憶装置、903 主記憶装置、904 通信装置、905 入出力装置、3011 用語テーブル、3012 概念紐付けテーブル、3021 ノードテーブル、3022 エッジテーブル、3031 脆弱性テーブル。
Claims (8)
- 検索キーに基づいて検索対象情報を検索する検索システムにおいて、
情報資産を示す情報資産用語と、前記情報資産に関連する操作を示す操作用語と、前記操作に関連する操作関連用語とが対応付けられた1つ以上の用語情報を記憶装置に記憶する用語情報記憶部と、
前記検索キーに基づいて、前記検索キーに関連する関連語を処理装置により取得する関連語取得部と、
前記用語情報記憶部により記憶された前記用語情報のうち、前記情報資産用語と前記操作用語とのそれぞれが前記関連語に含まれている前記用語情報から、前記操作関連用語を処理装置により抽出する抽出部と、
前記検索キーと、前記関連語と、前記抽出部により抽出された前記操作関連用語とを用いて、前記検索対象情報を処理装置により検索する検索部と
を備えることを特徴とする検索システム。 - 前記用語情報記憶部は、
複数の異なる前記操作に関連する前記操作関連用語を前記用語情報として記憶し、
前記抽出部は、
前記操作関連用語と、前記操作関連用語に関連する前記操作であって、前記操作を示す前記操作用語と、前記操作用語に関連する前記情報資産用語とのそれぞれが前記関連語に含まれている前記操作の数を対応操作数として抽出し、
前記検索部は、
前記検索キーと、前記関連語と、前記対応操作数が第1閾値以上の前記操作関連用語とにより、前記検索対象情報を検索することを特徴とする請求項1に記載の検索システム。 - 前記用語情報記憶部は、
第一階層に、前記情報資産用語がノードとして設定され、第二階層に、前記第一階層に設定された前記情報資産用語に関連する前記操作用語がノードとして設定され、第三階層に、前記第二階層に設定された前記操作用語に関連する前記操作関連用語がノードとして設定され、前記第一階層のノードの各々と前記第二階層のノードの各々との関連性と、第二階層のノードの各々と前記第三階層のノードの各々との関連性とが、各々エッジで表されたグラフ構造により構成された前記用語情報を記憶する
ことを特徴とする請求項2に記載の検索システム。 - 前記抽出部は、
前記操作関連用語と前記対応操作数と前記操作関連用語に接続されたエッジの数とを抽出し、
前記検索部は、
前記検索キーと、前記関連語と、前記エッジの数と前記対応操作数との割合が第2閾値以上の前記操作関連用語とにより、前記検索対象情報を検索する
ことを特徴とする請求項3に記載の検索システム。 - 前記関連語取得部は、
前記検索キーに基づいて、前記検索キーの類義語を複数取得し、取得した複数の類義語を概念毎に分類した場合に、概念毎に当該概念を表す概念語を前記関連語として取得することを特徴とする請求項1〜4のいずれかに記載の検索システム。 - 情報資産を示す情報資産用語と、前記情報資産に関連する操作を示す操作用語と、前記操作に関連する操作関連用語とが対応付けられた1つ以上の用語情報を記憶装置に記憶する用語情報記憶部に接続され、検索キーに基づいて検索対象情報を検索する検索装置において、
前記検索キーに基づいて、前記検索キーに関連する関連語を取得する関連語取得部と、
前記用語情報記憶部により記憶された前記用語情報のうち、前記情報資産用語と前記操作用語とのそれぞれが前記関連語に含まれている前記用語情報から前記操作関連用語を抽出する抽出部と、
前記検索キーと、前記関連語と、前記抽出部により抽出された前記操作関連用語とを用いて、前記検索対象情報を検索する検索部と
を備えることを特徴とする検索装置。 - 検索キーに基づいて検索対象情報を検索する検索システムであって、情報資産を示す情報資産用語と、前記情報資産に関連する操作を示す操作用語と、前記操作に関連する操作関連用語とが対応付けられた1つ以上の用語情報を記憶装置に記憶する用語情報記憶部を備える検索システムの検索方法において、
関連語取得部が、前記検索キーに基づいて、前記検索キーに関連する関連語を処理装置により取得する関連語取得工程と、
抽出部が、前記用語情報記憶部により記憶された前記用語情報のうち、前記情報資産用語と前記操作用語とのそれぞれが前記関連語に含まれている前記用語情報から、前記操作関連用語を処理装置により抽出する抽出工程と、
検索部が、前記検索キーと、前記関連語と、前記抽出工程により抽出された前記操作関連用語とを用いて、前記検索対象情報を処理装置により検索する検索工程と
を備えることを特徴とする検索方法。 - 検索キーに基づいて検索対象情報を検索する検索装置であって、情報資産を示す情報資産用語と、前記情報資産に関連する操作を示す操作用語と、前記操作に関連する操作関連用語とが対応付けられた1つ以上の用語情報を記憶装置に記憶する用語情報記憶部と接続された検索装置のプログラムにおいて、
前記検索キーに基づいて、前記検索キーに関連する関連語を処理装置により取得する関連語取得処理と、
前記用語情報記憶部により記憶された前記用語情報のうち、前記情報資産用語と前記操作用語とのそれぞれが前記関連語に含まれている前記用語情報から、前記操作関連用語を処理装置により抽出する抽出処理と、
前記検索キーと、前記関連語と、前記抽出処理により抽出された前記操作関連用語とを用いて、前記検索対象情報を処理装置により検索する検索処理と
をコンピュータである前記検索装置に実行させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014003054A JP6184331B2 (ja) | 2014-01-10 | 2014-01-10 | 検索システム、検索装置、検索方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014003054A JP6184331B2 (ja) | 2014-01-10 | 2014-01-10 | 検索システム、検索装置、検索方法及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015132915A JP2015132915A (ja) | 2015-07-23 |
JP6184331B2 true JP6184331B2 (ja) | 2017-08-23 |
Family
ID=53900703
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014003054A Expired - Fee Related JP6184331B2 (ja) | 2014-01-10 | 2014-01-10 | 検索システム、検索装置、検索方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6184331B2 (ja) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006215717A (ja) * | 2005-02-02 | 2006-08-17 | Toshiba Corp | 情報検索装置、情報検索方法および情報検索プログラム |
WO2011114389A1 (ja) * | 2010-03-19 | 2011-09-22 | 富士通株式会社 | 資産管理装置、資産管理方法および資産管理プログラム |
JP5718630B2 (ja) * | 2010-12-21 | 2015-05-13 | キヤノンマーケティングジャパン株式会社 | 情報処理装置、情報資産管理システム、情報資産管理方法、及びプログラム |
-
2014
- 2014-01-10 JP JP2014003054A patent/JP6184331B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2015132915A (ja) | 2015-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9489350B2 (en) | Systems and methods for semantic search, content correlation and visualization | |
CN101911042B (zh) | 用户的浏览器历史的相关性排序 | |
US20060195435A1 (en) | System and method for providing query assistance | |
KR102008466B1 (ko) | 검색 질의들 중 질의 패턴 및 관련된 합계 통계의 식별 | |
US20110029952A1 (en) | Method and system for constructing a document redundancy graph | |
Kuc et al. | Elasticsearch server | |
US9268768B2 (en) | Non-standard and standard clause detection | |
US9563691B2 (en) | Providing search suggestions from user selected data sources for an input string | |
US8458187B2 (en) | Methods and systems for visualizing topic location in a document redundancy graph | |
WO2018160939A1 (en) | Characterizing files for similarity searching | |
US9721000B2 (en) | Generating and using a customized index | |
JP2004280280A (ja) | 語義関連ネットワークを用いた文書検索システム | |
KR20190138037A (ko) | 사이버 보안 특화의 지식 베이스를 이용한 정보 검색 시스템 및 그 방법 | |
US8001138B2 (en) | Word relationship driven search | |
CN110929185A (zh) | 网站目录检测方法、装置、计算机设备及计算机存储介质 | |
CN112347324A (zh) | 一种文档查询方法、装置、电子设备及存储介质 | |
US10262026B2 (en) | Relational file database and graphic interface for managing such a database | |
JP5710129B2 (ja) | キーストローク作働の動的タスク | |
US20090327466A1 (en) | Internal uniform resource locator formulation and testing | |
JP6184331B2 (ja) | 検索システム、検索装置、検索方法及びプログラム | |
JP6194180B2 (ja) | 文章マスク装置及び文章マスクプログラム | |
JP5127553B2 (ja) | 情報処理装置、情報処理方法、プログラム及び記録媒体 | |
US20160092459A1 (en) | Translating a keyword search into a structured query | |
US20160092511A1 (en) | Interactive construction of queries | |
WO2015109835A1 (zh) | 一种搜索方法及终端设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20161109 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20170627 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170725 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6184331 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |