JP6523799B2 - 情報分析システム、情報分析方法 - Google Patents

情報分析システム、情報分析方法 Download PDF

Info

Publication number
JP6523799B2
JP6523799B2 JP2015114777A JP2015114777A JP6523799B2 JP 6523799 B2 JP6523799 B2 JP 6523799B2 JP 2015114777 A JP2015114777 A JP 2015114777A JP 2015114777 A JP2015114777 A JP 2015114777A JP 6523799 B2 JP6523799 B2 JP 6523799B2
Authority
JP
Japan
Prior art keywords
information
analysis
node
type
relationship
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
Application number
JP2015114777A
Other languages
English (en)
Other versions
JP2017004097A (ja
Inventor
林 直樹
直樹 林
仲小路 博史
博史 仲小路
淳弥 楠美
淳弥 楠美
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Systems Ltd
Original Assignee
Hitachi Systems Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Systems Ltd filed Critical Hitachi Systems Ltd
Priority to JP2015114777A priority Critical patent/JP6523799B2/ja
Priority to PCT/JP2016/065535 priority patent/WO2016194752A1/ja
Publication of JP2017004097A publication Critical patent/JP2017004097A/ja
Application granted granted Critical
Publication of JP6523799B2 publication Critical patent/JP6523799B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16ZINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS, NOT OTHERWISE PROVIDED FOR
    • G16Z99/00Subject matter not provided for in other main groups of this subclass

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、情報を分析する情報分析システム、情報分析方法に関する。
近年、組織のITシステムは多種多様且つ多数の機器やアプリケーションを内包する複雑なものとなってきている。したがって、何か異常が起こった際、その異常がどのようなものであるかの調査・把握が困難になっており、長時間を要するようになっている。なお、上記の異常とは、運用に伴ってシステムが物理的に故障したり、実装上の不具合でアプリケーションが停止したり、あるいは、組織を狙った外部からの攻撃によって不具合が発生することなどを意味する。
特に近年においては、組織システムや商用システムの運用オペレーション、セキュリティオペレーションの外部委託が進んでおり、受託側は巨大かつ多様なシステムの異常に対応する必要があるため、異常対応の短時間化、低コスト化のニーズが高まっている。異常への対応は、過去の類似事例など、蓄積したノウハウを用いることで効率的に行えることが多い。すなわち、膨大なログやレポート、公開情報などから適切な類似事例を探し出す技術を活用することで効率化を図ることが可能である。 ただし、ログやレポートは情報源によって様々な形態をしており、また起こる異常もその都度様々な情報を契機として発覚することから、単純な検索では類似事例を見つけ出すことが困難である課題がある。
上記の単純な検索とは、情報をあらかじめ特定のキーごとに分割して保持し、キーを突合せて分析するような検索を指す。
以上に述べた課題を解決する技術としては、特許文献1に記すような技術がある。この技術では、情報をグラフ構造として保持し、検索条件の起点となったノードに指定した初期値を設定して一定比率で減少させながら伝播させ、最終的に閾値以上となったノード集合を検索結果として出力することで、既存の検索においては容易にたどり着かない情報を効率的に取得する方法が開示されている。
特開2010−191902号公報
特許文献1に拠れば、情報と情報の間の関係性をグラフ構造として保持してクラスタリングすることできるため、検索対象情報と何らかの関係がある情報を、その関係性を検索前に意識することなく抽出することができ、既存の検索方式と比較して、それまでに蓄積した情報を効果的に利用できる利点がある。
しかしながら、運用オペレーションやセキュリティオペレーションの事例分析に適用することを考えた場合、例えば、悪性を疑われる通信について過去の類似レポートを調査する場合など、検索結果が間違っていれば正常な通信を誤って遮断してしまうリスクがある。
そのような、システムの動作に悪影響を与え得る重要な判断を行う場合には、対策の決定者が、検索結果を基にして責任を持った判断が行える必要がある。そのために必要となる情報としては、検索結果として提示される情報自体も重要であるが、それに加えて、如何なる理由でその検索結果が検索対象と関係があるのか、という、その検索結果情報を参考情報として採用するに至る、根拠情報が不可欠である。
ここで、上述の責任を持った判断が行える、とは具体的には、検索システムの検索ロジックについて知識を有さない第三者に対して、対策の決定者が、なぜ自らがそのような判断を行ったのかを説明可能であることである。
また同様に、対策の決定者が、如何なる理由で検索結果が検索対象と関係しているのかを理解できなければ、関連事例や対策として、複数の異なる情報が検索結果として出力された場合に、どちらの情報を用いてよいのかそもそも判断が行えないという問題もある。
従来技術には、上述したような問題についての特別な記載はなく、したがって、従来技術のシステムが、操作者が意図せずに検索した情報を、責任を伴った判断の材料として活用することは難しい。
本発明は掛かる課題を鑑みてなされたものであり、探索クエリに対して関係の強い情報を、その根拠と共に利用者に提示することで、重要な意思決定においても検索結果を利用可能にすることを目的とする。
上記課題を解決するために、例えば特許請求の範囲に記載の構成を採用する。
本願は上記課題を解決する手段を複数含んでいるが、その一例を挙げるならば、分析対象となる情報と前記情報の種別を示す分析種別との入力を受け付ける受付部と、情報源に含まれる複数の情報のうち一の情報と他の情報との関係性を示す関係分析情報に基づいて、グラフ構造における前記一の情報および前記他の情報であるノードと、前記ノード間の関係性を示すエッジとを定めた構造化情報を生成する関係情報生成部と、前記構造化情報の中から前記受付部が受け付けた前記分析種別を含む情報を抽出し、抽出した情報を起点ノードとして出力する起点情報検索部と、抽出した情報により表現される前記グラフ構造をクラスタリングして前記起点ノードを含む部分グラフ構造を抽出する分類可達性分析部と、前記分析種別に対応する前記起点ノードの終点となる抽出対象ノードを前記部分グラフ構造の中から検索し、前記起点ノードと前記抽出対象ノードとの間の独立パスの数を算出し、前記独立パスの数が最も多い前記抽出対象ノードを前記起点ノードと最も前記関係性があるノードとして出力する結合性分析部と、を備えることを特徴とする情報分析システムとして構成される。
また、本発明は、上記情報分析システムで行われる情報分析方法としても把握される。
本発明に拠れば、情報を分析する際に、分析クエリに対して関係の強い情報を、その根拠と共に利用者に提示すること可能となる。これにより、分析結果の情報を利用者が納得した上で活用する、あるいは活用しない、といった判断が可能になるため、リスクを伴うような重要な判断を行う場面であっても分析結果を活用できるようになる。
本発明を適用したシステムの構成図の例である。 計算機の構成の例を示す図である。 構造化情報の例である。 関係分析ロジックの例である。 枝重み情報の例である。 抽出対象指定情報の例である。 出力生成ロジックの例である。 構造化情報を形成する処理の例である。 構造化情報を分析する処理の例である。 構造化情報の構造を表す例である。 分類・可達性分析の処理例である。 可達性分析結果を表す例である。 結合性分析を表す例である。 結果の表示例である。
以下、実施例を図面を用いて説明する。
図1は、本願の技術を適用した情報分析システムの構成図の例である。
情報分析システム1000は本発明にかかる情報分析システム、情報分析方法を適用したシステムであり、情報源1100から各種の情報を取得し、関係性を分析した上で情報を構造化情報1051に保持し、また、分析依頼者1200からの分析依頼に基づいて上記の蓄積した情報を分析してその結果を返すシステムである。なお、それぞれの処理の詳細については後述する。
情報取得部1001、および、関係情報生成部1002はいずれも、後述する図8に示す構造化情報の形成処理において用いる機能である。
情報取得部1001は、図8に後述する構造化情報の形成処理において用いる機能であり、情報源1100から各種の情報を取得し、関係情報生成部1002に当該情報を入力する機能である。
情報源1100から機械的に情報を取得する場合には、各情報源1100用のAPI(Application Programming Interface)を具備する。
また、その際、取得する情報のフォーマットは後述の関係分析ロジック1052の入力情報種別4001で規定された種別の何れかでなければならない。
情報源1100が本システムの運用員の手入力である場合には、情報取得部1001は手入力用のUI(User Interface)を備える必要がある。上記UIは、関係分析ロジック1052の入力情報種別4001で規定された種別の何れかを入力するための機構であってもよいし、あるいは、後述の構造化情報1051を直接編集するための機構であってもよい。
情報源1100として手入力を受け付けることで、例えば、「後になってから、以前挙がったアラートAは実はマルウェアBと関係があったことが判明した」といった場合のように、既に入力した特定の情報と別の特定の情報の関係を明示的に編集することができ、その結果、後述する分析処理を行う際に、機械的に分析した情報と人が判断して判る情報とを組み合わせて分析できるようになる。
情報源1100としては、上述の情報源1100の何れか一つのみに限るものではなく、情報源1100として複数種類の機器やWEBサイトなどを用い、それぞれにあわせて情報取得部1001も複数保持することができる。
関係情報生成部1002は、情報取得部1001から受け取った情報について、関係分析ロジック1052を用いて、情報と、情報間の関係性をそれぞれ抽出するための機能であり、抽出結果は、構造化情報1051に格納する。処理の詳細は後述する。
分析受付・応答インタフェース1003、起点情報検索部1004、枝重要度決定部1005、分類・可達性分析部1006、結合性分析部1007、出力生成部1008の6つの機能はいずれも後述の図9に示す構造化情報の分析処理において用いる機能である。
分析受付・応答インタフェース1003は、後述する分析依頼者1200から、分析対象の情報と、分析種別を受け取り、後述の分析処理の結果を上記の分析依頼者1200に返すためのインタフェースである。
起点情報検索部1004は、分析受付・応答インタフェース1003を介して分析依頼者1200から受け取った分析対象の情報について、構造化情報1051の中で適合する情報を検索し、起点ノードである起点情報として返す機能である。処理の詳細については後述する。
枝重要度決定部1005は、分類・可達性分析部1006の前処理として、分析依頼者1200が入力した分析種別情報と、枝重み情報1054を照らし合わせることで、それぞれの枝に重みを入れる処理である。
本処理は分類・可達性分析部1006を実施するために必ずしも必要な処理ではない。すなわち、本処理を行わない場合、分析の種別に関わらず全ての枝を常に重さ1として処理することも可能である。
しかしながら、本処理を行うことで、分析種別毎に、特定の種別の情報や特定の種別の関係性を重要視する、あるいは逆に特定種別の関係性の存在を軽視する、といった処理が可能になり、分析の精度を向上できる効果がある。
分類・可達性分析部1006は、まず、情報の構造を枝の重みも考慮した上でクラスタリングし、起点情報検索部1004の結果である起点情報とその起点情報から到達可能な抽出対象ノードである抽出対象情報が含まれるクラスタを抽出する。さらに、抽出したクラスタの中で、抽出対象指定情報1053に含まれる分析種別を一つ以上含むクラスタのみを抽出する機能である。処理の詳細は後述するが、本処理の結果、分析種別に応じて、関係性の強い情報の一覧を取得することができる。
結合性分析部1007は、本実施例で特に特徴的な機能であり、分類・可達性分析部1006の結果を入力として、起点情報から、各抽出対象情報への独立パスの数を計算する処理である。詳細は後述する。
出力生成部1008は、結合性分析部1007の結果と、出力生成ロジック1055を用いて、分析受付・応答インタフェース1003を介して最終的に分析依頼者1200へ返すための出力を生成する処理である。詳細は後述する。
構造化情報1051は、情報分析システム1000が分析対象とする情報である。保持する情報の詳細については図3を用いて後述する。
関係分析ロジック1052は、関係情報生成部1002が使用する情報である。保持する情報の詳細については図4を用いて後述する。
抽出対象指定情報1053は、分類・可達性分析部1006が使用する情報である。保持する情報の詳細については図6を用いて後述する。
枝重み情報1054は、枝重要度決定部1005が使用する情報である。保持する情報の詳細については図5を用いて後述する。
出力生成ロジック1055は、出力生成部1008が使用する情報である。保持する情報の詳細については図7を用いて後述する。
情報源1100は、本システムが取り扱う情報を取得する際の情報源である。例えば情報源1100は、ネットワーク機器やサーバ機器、あるいはセキュリティ機器であり、ログやアラートを情報として情報取得部1001に渡す。また、例えば情報源1100は、本システムの運用員などにより入力される情報である。人手により入力インタフェースを介して入力された情報源1100は、情報取得部1001に引き渡される。情報源1100は、上記のいずれか一つのみに限るものではなく、それらを組み合わせた複数の情報源であってよい。
分析依頼者1200は、情報分析システム1000の利用者であり、分析したい対象の情報と、希望する分析種別を分析受付・応答インタフェース1003を介して本システムに入力し、その結果を同じく分析受付・応答インタフェース1003を介して受け取る。
図2は、図1の各構成要素の構成を例示した図である。
これらの機器2000は、CPU2001と、メモリ2002と、インターネットやLANを介して他の装置と通信を行うための通信装置2004と、キーボードやマウス等の入力装置2005と、モニタやプリンタ等の出力装置2006と、読取装置2007と、ハードディスク等の外部記憶装置2003とが、インタフェース2008を介して接続されている。また、読取装置2007にはICカードやUSBメモリのような、可搬性を有する記憶媒体2009を接続することができる。
本実施例における情報分析システム1000を実現するための装置や機器は、これらの機能を実現するプログラムがメモリ2002上にロードされ、CPU2001により実行されることにより具現化される。これらのプログラムは、あらかじめ、上記機器2000の外部記憶装置2003に格納されていても良いし、必要なときに、読取装置2007や通信装置2004と当該機器2000が利用可能な媒体を介して、他の装置から上記外部記憶装置に導入されてもよい。
上記機器2000が利用可能な媒体とは、たとえば、読取装置2007に着脱可能な記憶媒体2009、または通信装置2004に接続可能なネットワーク2010またはネットワーク2010を伝搬する搬送波やディジタル信号を指す。そして、プログラムは一旦外部記憶装置2003に格納された後、そこからメモリ2002上にロードされてCPU2001に実行されてもよいし、あるいは外部記憶装置2003に格納されることなく、直接メモリ2002上にロードされて、CPU2001に実行されてもよい。
図3は、情報分析システム1000が保持する構造化情報1051の例を示した図である。
構造化情報1051としては、本システムは大きく、蓄積情報3000と、関係性情報3100の2種の情報を保持する必要がある。
蓄積情報3000とは、本システムが蓄積する情報そのものであり、本実施例においては、例えば具体的には、図示したように、id3001と、種別3002と、内容3003の3つのカテゴリの情報を組にして保持する。
id3001は、個々の情報をユニークに識別するためのID(Identifier)であり、必須ではないが、保持することで処理を簡潔に記載することが可能になる。
種別3002は、ノードが有する個々の情報がどのようなカテゴリのものであるかを識別するための情報であり、本実施例において、抽出指定情報1053や、枝重み情報1054、出力生成ロジック1055と組み合わせて用いることで分析精度を向上したり、出力情報に付加情報を加えたりする効果を得られる。詳細については後述する。
種別3002としては、1つの情報は1つの種別しか保持できないわけではなく、1つ以上の複数の種別を同時に保持してよい。その場合、後述の処理における「種別が一致した場合」の条件を、「いずれかの種別に一つでも一致した場合」と読み替えることで問題なく処理可能である。
また、種別3002として指定可能な種別は、例示したものに限るわけではなく、情報を入力する際、適宜任意の種別を指定できる。すなわち、仮にそれまでに一つも現れなかった種別であっても、特にその他の処理を行わずに新しい種別を追加してよい。ただし、新しい種別は適宜任意に追加してよいが、本実施例の分析処理の精度を保つためには、同じ種別の情報には、同じ種別名が指定されている必要がある。すなわち、内容が従業員の氏名などをあらわすものであれば、それらには少なくとも「従業員」といった、共通の種別が一つは含まれているべきである。
内容3003としては、その情報の内容である実体を保持することができる。本実施例では、任意のkey−valueを保持することで、情報の内容を表現しているが、特にkey−value方式に限定するわけではない。
蓄積情報3000の例としては、例えば1行目は『ファイル名「hoge.exe」という名称のファイル』という情報がID0001、種別fileで登録されていることを示している。その他の行も同様である。
関係性情報3100は、蓄積情報3000の個々の情報がどのような関係にあるかを保持する。本実施例においては、例えば、id3101と、from−id3102と、to−id3103と、種別3104を保持する。
id3001は、ノード間のパスを示すエッジが有する個々の関係性をユニークに識別するためのIDであり、必須ではないが、保持することで処理を簡潔に記載することが可能になる。
from−id3102、to−id3103、種別3104は、蓄積情報3000内のどの情報がどの情報とどのように関係があるかを表すエッジが有する情報である。具体的には、from−id3102は、エッジの起点となるノードのIDであり、to−id3103は、そのエッジの終点となるノードのIDである。種別3104は、そのエッジが有する関係性がどのようなカテゴリのものであるかを識別するための情報である。
関係性情報3100の例としては、例えば1行目のid「r0001」は、『id「0006」が表す情報である、ハッシュ値「abcde1234」のmw(Malware)は、id「0001」が表す、名称「hoge.exe」のファイルを生成する』ことを意味している。その他の行も同様である。
なお、本実施例においては、from−id3102、to−id3103として関係性に有向性を持たせているが、方向性を取り扱わず、無向性の関係性を保持してもよい。
図4は、情報分析システム1000が保持する関係分析ロジック1052の例を示した図である。
関係分析ロジック1052は、情報源1100から取得した情報を機械的に分析して構造化情報1051に保持するためのロジックを規定する情報をあらかじめ保持する。
具体的に本実施例においては、情報源1100から取得した情報の種別を規定する入力情報種別4001と、その分析ロジック4002を保持することで実現する。
例えば1行目は、Webサイト「hoge.security.com」から取得するウェブページについては、同じく1行目に記載したXPathを処理することで、蓄積情報3000と、その関係性情報3100として取り出せることを意味している。
図5は、情報分析システム1000が保持する枝重み情報1054の例を示した図である。
枝重み情報1054は、分析依頼者1200が指定した分析種別に応じ、どの種別の情報や、どの種別の関係性を重要視するか、あるいは軽視するかといった関係の重要性を規定するための情報である。
具体的に本実施例においては、分析種別5001と、カテゴリ5002と、ノードorエッジ5003と、重み5004を保持する。
分析種別5001は、分析依頼者1200が本システムに対して依頼可能な分析の種別の何れかである。
カテゴリ5002は、蓄積情報3000の種別3002(すなわちノードの種別)、あるいは、関係性情報の種別3104(すなわちエッジの種別)のいずれかの値、もしくは任意の関係性を意味する「(その他)」である。
ノードorエッジ5003は、カテゴリ5002が種別3002の値である場合はそのことを意味する「ノード」、逆に、種別3104の場合は、そのことを意味する「エッジ」という情報を保持する。なお、カテゴリ5002が「(その他)」の場合は、エッジとノードのいずれも含みうるため「−」を保持する。
重み5004は、関係性をどの程度重視するかの指標であり、1がもっとも重視する、0は当該分析においては、関係性が存在しないものとみなすことを意味する。
例えば「原因」を分析する際には、「通信」という種別の関係は重み1にする一方、例えば「アナリスト」という種別のノードから出ている全ての関係は重み0.1としてほとんど考慮に入れない、ことを意味している。
図6は、情報分析システム1000が保持する抽出対象指定情報1053の例を示した図である。
抽出対象指定情報1053は、あらかじめ分析の結果として出力する対象の情報のカテゴリを規定する情報である。
具体的に本実施例においては、分析種別6001と、抽出対象カテゴリ6002を保持する。
例えばこの例は、「原因」種別を分析する際には、最終的な結果として「マルウェア」カテゴリか「脆弱性」カテゴリの情報が出力対象とすることを意味している。
図7は、情報分析システム1000が保持する出力生成ロジック1055の例を示した図である。
出力生成ロジックは、分析結果を最終的に分析依頼者に表示する際、どのような情報を表示するかを規定するロジックである。
本実施例においては、情報種別7001と、その種別の情報を表示する際に併せて表示する、付加情報内容7002と、その種別の情報が分析結果として抽出された根拠を文章として表示するための文章化ロジック7003を保持する。
例えばこの例は、「対策」種別の情報は、その対策情報のダウンロードリンクを結果に併せて表示し、文章化ロジックは標準的な処理でよいことを意味している。
なお、本実施例において標準的な文章化ロジックとは、『<from−id3102の情報>は、<to−id3103の情報>を<3104種別>する』のように主語、目的語、述語の順で連結する処理を表す。
文章化ロジックとしては、例示した「従業員」種別のように、例外的な文章化方法を指定してもよい。この例では、関係性の種別が「通信履歴」、あるいは「保持」の場合は<from−id3102の情報>の後に“の端末”という文言を追加することを表している。
以降、図8から図9を用いて、本解析システムの基本的な処理フローを例示し、さらに図10から図13を用いて、構造化情報がどのようなに処理されるかを説明する。
図8は、図3に示した構造化情報を形成する処理を表すフローの例である。
まず処理8001において、情報取得部1001が、情報源1100から情報を取得する。その際、情報取得部1001は自身がどのような種別の情報を取得したかを記憶しておく。
なお、情報の種別とは、関係分析ロジック1052の入力情報種別4001が規定するものの何れかである。
また、情報源1100が手入力だった場合は、以降の処理に進まず図1の説明において説明したように、直接構造化情報1051を編集してもよい。
次に処理8002において、関係情報生成部1002は、処理8001において取得され情報を、関係性ロジック1052の分析ロジック4002に従って分析する。
最後に処理8003において、関係情報生成部1002は、処理8002の分析結果を、蓄積情報3000と、関係性情報3100として保存する。
図10に、そのようにして形成した構造化情報1051の一例をグラフ構造として表現したものを示す。
例えば10001、10003は蓄積情報3000の例のそれぞれ1行目のid「0001」の情報と、id「0006」の情報を表し、また、その2つのノード間のエッジである10002は、関係性情報3100の例の1行目のid「r0001」の関係を表している。その他のノードと、エッジも同様である。また、10004として表したような破線で囲んだグレーの領域は、さらに同様のグラフ構造が連結していることを示している。
図9は、図8に示す処理によって形成された構造化情報1051を用いて、分析依頼者1200から受け取った分析条件と分析種別に従って情報を分析する処理のフローの例を示している。
まず処理9001において、情報分析システム1000は、分析受付・ 応答インタフェース1003を介して、分析依頼者1200から分析対象である情報と、分析種別を受け取る。
本実施例では、分析対象である情報とは具体的には文字列であって、例えば、何らかのセキュリティ機器からアラートが挙がった際のアラートに記載されたホスト名や、IPアドレスであってもよいし、不審なファイルのハッシュ値でもよい。
また、分析種別とは、分析依頼者1200が何を知りたいのかを自ら指定するものであって、枝重み情報1054の分析種別5001のいずれかと一致する必要がある。
次に、処理9002において、起点情報検索部1004は、処理9001で受け取った分析対象の文字列とマッチする内容を保持する蓄積情報3000を検索し、結果を起点情報として返す。
マッチするとは、本実施例では文字列が一致、もしくは部分一致することである。複数マッチした場合は、それら全てを返す。本実施例では、分析対象が通信先の一つにマッチした場合の例を、図11の11002の二重線のノードとして表している。
次に、処理9003において、枝重要度決定部1005は、処理9001で取得した分析種別と、枝重み情報1054を照らし合わせ、各枝に重要度を設定する。
本実施例では、分析種別が例えば「原因」であった場合について、重要度が0.1以下の関係性を、関係性がほとんど存在しないものとして、図11の11001のように破線の矢印で表している。
次に、処理9004において、分類・可達性分析部1006は、処理9003において設定した枝の重みを考慮した上で、グラフをクラスタリングする。グラフ情報のクラスタリング手法は既知の手法が多数あるが、本実施例において非常に好適な手法の一つは、コミュニティ分類と呼ばれる手法である。
コミュニティ分類とは具体的には、グラフ構造をグラフラプラシアンと(あるいはラプラシアン行列とも)呼ばれる行列形式で表現し、そのゼロ固有値(もしくはゼロに近い固有値)と、その固有値に対応する固有ベクトルを計算して求める。最後にグラフ構造からグラフラプラシアンへの写像の逆写像を用いて、固有ベクトルをグラフのノード集合に引き戻すことで、グラフをいくつかの部分グラフに分割する方法である。この分割結果として取得される各部分グラフは、全体のグラフの中でそれぞれ、枝の重みが大きく、さらにそのような枝が密に張られているような部分が優先的に残るように上手く分割されたものであることが知られている。
本処理においては、分類・可達性分析部1006は、分類結果の部分グラフの中で、起点情報であるノードを含む部分グラフを抽出し、処理結果として返す。図11の11003に示したような二重線によって、本実施例においてコミュニティ分類を行った結果としての、全体グラフの分割線を示す。すなわち、本処理の結果は、部分グラフの中でも起点情報である11002を含むものであり、すなわち図12に示すようなグラフが結果として返される。なお、起点情報が複数存在する場合は、各起点情報についてそれぞれ部分グラフを返す。
次に、処理9005において、結合性分析部1007は、処理9004の結果の部分グラフについて(結果が複数存在する場合はそれぞれについて)、抽出対象指定情報1053を参照し、分析種別6001が処理90001で取得したものと一致する行の、抽出対象カテゴリ6002で指定された種別に一致する蓄積情報3000(すなわちノード)を全て検索する。この処理を行うことにより、起点情報に対する終点となる抽出対象情報がわかる。また、その抽出対象情報は、処理9001で入力された分析種別に対応するカテゴリに属する抽出対象情報のみが検索され、最終的に出力生成部1008により出力される。本実施例では、図12の12001のようにグレーで塗り潰した二つのmw種別のノードがその結果の例である。
ここまでの処理で、分析対象情報を入力として、関連の強いとみなせる情報の一覧を取得することができる。本実施例においては、そのような情報の根拠までを分析することが特徴であり、それは具体的には、次に示す処理で行うものである。
さらに、処理9005において、結合性分析部1007は、起点情報(図12内の二十枠のノード)から、抽出対象情報(図12内のグレーで塗りつぶしたノード)それぞれに対して、エッジの向きを無視して、独立パスが何本存在するかを計算する。
ここで、あるノードから別のノードへの二つのパスが独立であるとは、二つのパスが途中でいずれのエッジも共有することがないことを意味する。
例えば、図13(13−a)に示したグラフにおいては、ノードaからノードdへのパスはエッジb−cが常に共通するため、独立パスは1本のみである。
一方で、図13(13−b)に示したグラフにおいては、共通するパスはなく、ノードaからノードgへの独立パスはa−b−d−g、a−d−e−g、a−f−gの3本である。
本実施例においては、この独立パスの本数は、何種類の互いに依存のない周辺情報が、対象情報を関係のある情報として指し示しているか、という意味であり、すなわちいわば状況証拠の数であると捉えることができる。
逆に、図13(13−a)のように、パス自体は多くても、独立パスが少なければ、結局は何らかの少数の情報のみに依存した関係性であり、そこが誤りであった場合には、一度に関係性が切れてしまうものである。したがって、上記のような共通するパスが少ないあるいは上記のような独立パスが多いほど根拠が揃うため情報を多面的に捉えることができ、有用性の高いより強い状況証拠となる。
すなわちまとめると、処理9005は、起点情報から各抽出対象情報への独立パスの本数を計算し、独立パスの多い対象情報ノードをより根拠のそろった情報として、また、各独立パスを状況証拠として返す処理である。
本実施例では、図13(13−c)に示すような、独立パスが1本のmw種別情報と、図13(13−d)に示したような独立パスが2本のmw種別情報が存在するため、後者がより根拠のそろった情報として返される。また、処理9005のさらに効果的な処理としては、独立パスであって、さらに各パスを構成するエッジの種別が異なるものであればさらに強い状況証拠として判断してもよい。
最後に、処理9006において、出力生成部1008は、出力生成ロジック1055を参照し、応答として返す情報種別7001に応じて、付加情報表示内容7002で指定された付加的な情報を生成する。また、グラフ構造を基に抽出根拠を文章化する文章化ロジック7003を用いて、根拠を文章化して分析依頼者1200に通知することも可能である。
本実施例の出力結果の表示例を図14を用いて示す。14001は、分析依頼者1200が入力した分析対象である。図14では、ファイル「hoge.exe」に記述されている文字列「example.com」を分析対象としていることを示している。14002は、分析依頼者1200が入力した分析種別である。図14では、分析種別として「原因」が入力されたことを示している。14003は、分析結果として処理9005の結果返された抽出対象情報の総数である。図14では、2件の分析結果(図13の13−c、13−d)が得られたことを示している。
14004は、分析結果をどのような順で表示するかを指定する機能である。本実施例によれば、独立パスが多いものほど重要であるため、そのような抽出対象情報から優先的に表示することが望ましいが、例えば情報が登録された時系列などの変更させることも可能である。図14では、状況証拠の多い順となる降順で分析結果が表示されることを示している。14005は、それ以下に表示される情報が、MW0007の情報であることを示す。14006は、起点情報となる通信先0012と、抽出対象情報となるMW0007との間の独立パスを図示したものである。本情報により、分析依頼者1200はどのような関係性に基づいて、当該情報が抽出されたのかを理解することができる。また、例えば、14006内の各情報を選択することで、その情報種別に応じた付加情報を動的に生成して表示するなどの付加的な動作も可能である。
14007は、当該情報が抽出された根拠を示しており、起点情報が選ばれた理由と、抽出対象情報の中でもっとも根拠が強い理由を示している。具体的な根拠については、14008と、14009に示すように、グラフ構造を文章化することでそのまま説明可能である。例えば、状況1として、MW0007は通信先0012に通信することを根拠として示している。14010は、抽出対象情報に付加的に追加して提示する情報であって、MW種別の場合はアンチウィルスソフトで検知可能か、など、通常必要となる情報があるならばあわせて提示することが可能である。14011は、表示する分析結果を切り替えるためのページネータである。
以上に例示した構成にすることで、上述した本願の効果を得ることが可能となる。
1000 情報分析システム
1001 情報取得部
1002 関係情報生成部
1003 分析受付・応答インタフェース
1004 起点情報検索部
1005 枝重要度決定部
1006 分類・可達性分析部
1007 結合性分析部
1008 出力生成部
1051 構造化情報
1052 関係分析ロジック
1053 抽出対象指定情報
1054 枝重み情報
1055 出力生成ロジック
1100 情報源
1200 分析依頼者
2000 各構成要素のハードウェア構成要素。

Claims (8)

  1. 分析対象となる情報と前記情報の種別を示す分析種別との入力を受け付ける受付部と、
    情報源に含まれる複数の情報のうち一の情報と他の情報との関係性を示す関係分析情報に基づいて、グラフ構造における前記一の情報および前記他の情報であるノードと、前記ノード間の関係性を示すエッジとを定めた構造化情報を生成する関係情報生成部と、
    前記構造化情報の中から前記受付部が受け付けた前記分析対象となる情報を抽出し、抽出した情報を起点ノードとして出力する起点情報検索部と、
    生成した構造化情報により表現される前記グラフ構造をクラスタリングして前記起点ノードを含む部分グラフ構造を抽出する分類可達性分析部と、
    前記分析種別に対応する前記起点ノードの終点となる抽出対象ノードを前記部分グラフ構造の中から検索し、前記起点ノードと前記抽出対象ノードとの間の独立パスの数を算出し、前記独立パスの数が最も多い前記抽出対象ノードを前記起点ノードと最も前記関係性があるノードとして出力する結合性分析部と、
    を備えることを特徴とする情報分析システム。
  2. 前記分類可達性分析部は、あらかじめ定められた前記ノードの種別または前記エッジの種別と前記分析種別との間の関係の重要性を示す重み情報に基づいて前記グラフ構造をクラスタリングし、前記部分グラフ構造を抽出する、
    ことを特徴とする請求項1に記載の情報分析システム。
  3. 前記結合性分析部は、前記独立パスの数が多いほどまたは前記起点ノードと前記抽出対象ノードとの間の共通パスが少ないほど強い状況証拠として前記ノードを出力する、
    ことを特徴とする請求項1に記載の情報分析システム。
  4. 前記結合分析部は、あらかじめ定められた前記分析種別と出力される前記ノードのカテゴリとを対応付けた抽出対象指定情報に基づいて、前記分析種別に対応する前記カテゴリに属する前記ノードを検索し、検索した前記ノードを前記関係性があるノードとして出力する、
    ことを特徴とする請求項1に記載の情報分析システム。
  5. 情報分析システムが実行する情報分析方法であって、
    受付部が、分析対象となる情報と前記情報の種別を示す分析種別との入力を受け付ける受付ステップと、
    関係情報生成部が、情報源に含まれる複数の情報のうち一の情報と他の情報との関係性を示す関係分析情報に基づいて、グラフ構造における前記一の情報および前記他の情報であるノードと、前記ノード間の関係性を示すエッジとを定めた構造化情報を生成する関係情報生成ステップと、
    起点情報検索部が、前記構造化情報の中から前記受付部が受け付けた前記分析対象となる情報を抽出し、抽出した情報を起点ノードとして出力する起点情報検索ステップと、
    分類可達性分析部が、生成した構造化情報により表現される前記グラフ構造をクラスタリングして前記起点ノードを含む部分グラフ構造を抽出する分類可達性分析ステップと、
    結合性分析部が、前記分析種別に対応する前記起点ノードの終点となる抽出対象ノードを前記部分グラフ構造の中から検索し、前記起点ノードと前記抽出対象ノードとの間の独立パスの数を算出し、前記独立パスの数が最も多い前記抽出対象ノードを前記起点ノードと最も前記関係性があるノードとして出力する結合性分析ステップと、
    を含むことを特徴とする情報分析方法。
  6. 前記分類可達性分析部は、前記分類可達性分析ステップにおいて、あらかじめ定められた前記ノードの種別または前記エッジの種別と前記分析種別との間の関係の重要性を示す重み情報に基づいて前記グラフ構造をクラスタリングし、前記部分グラフ構造を抽出する、
    ことを特徴とする請求項5に記載の情報分析方法。
  7. 前記結合性分析部は、前記結合性分析ステップにおいて、前記独立パスの数が多いほどまたは前記起点ノードと前記抽出対象ノードとの間の共通パスが少ないほど強い状況証拠として前記ノードを出力する、
    ことを特徴とする請求項5に記載の情報分析方法。
  8. 前記結合性分析部は、前記結合分析ステップにおいて、あらかじめ定められた前記分析種別と出力される前記ノードのカテゴリとを対応付けた抽出対象指定情報に基づいて、前記分析種別に対応する前記カテゴリに属する前記ノードを検索し、検索した前記ノードを前記関係性があるノードとして出力する、
    ことを特徴とする請求項5に記載の情報分析方法。
JP2015114777A 2015-06-05 2015-06-05 情報分析システム、情報分析方法 Expired - Fee Related JP6523799B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2015114777A JP6523799B2 (ja) 2015-06-05 2015-06-05 情報分析システム、情報分析方法
PCT/JP2016/065535 WO2016194752A1 (ja) 2015-06-05 2016-05-26 情報分析システム、情報分析方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015114777A JP6523799B2 (ja) 2015-06-05 2015-06-05 情報分析システム、情報分析方法

Publications (2)

Publication Number Publication Date
JP2017004097A JP2017004097A (ja) 2017-01-05
JP6523799B2 true JP6523799B2 (ja) 2019-06-05

Family

ID=57440511

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015114777A Expired - Fee Related JP6523799B2 (ja) 2015-06-05 2015-06-05 情報分析システム、情報分析方法

Country Status (2)

Country Link
JP (1) JP6523799B2 (ja)
WO (1) WO2016194752A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7113661B2 (ja) * 2018-05-18 2022-08-05 ヤフー株式会社 情報処理装置、情報処理方法、および情報処理プログラム
JP6956043B2 (ja) * 2018-05-18 2021-10-27 ヤフー株式会社 演算装置、および検索方法
JP2020140452A (ja) 2019-02-28 2020-09-03 富士通株式会社 ノード情報推定方法、ノード情報推定プログラムおよび情報処理装置
JP2020187419A (ja) 2019-05-10 2020-11-19 富士通株式会社 エンティティリンキング方法、情報処理装置およびエンティティリンキングプログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4935405B2 (ja) * 2007-02-16 2012-05-23 日本電気株式会社 因果関係分析装置、因果関係分析方法及びプログラム
JP2012242859A (ja) * 2011-05-13 2012-12-10 Nippon Hoso Kyokai <Nhk> グラフ生成装置およびプログラム

Also Published As

Publication number Publication date
WO2016194752A1 (ja) 2016-12-08
JP2017004097A (ja) 2017-01-05

Similar Documents

Publication Publication Date Title
US11928144B2 (en) Clustering of log messages
US10243982B2 (en) Log analyzing device, attack detecting device, attack detection method, and program
US9910985B2 (en) Apparatus and method for identifying similarity via dynamic decimation of token sequence N-grams
US9237161B2 (en) Malware detection and identification
US8214372B2 (en) Determining configuration parameter dependencies via analysis of configuration data from multi-tiered enterprise applications
US9245007B2 (en) Dynamically detecting near-duplicate documents
US20210021644A1 (en) Advanced cybersecurity threat mitigation using software supply chain analysis
CN114679329B (zh) 用于基于赝象对恶意软件自动分组的***
JP6503141B2 (ja) アクセス分類装置、アクセス分類方法及びアクセス分類プログラム
KR101260028B1 (ko) 악성코드 그룹 및 변종 자동 관리 시스템
WO2017101301A1 (zh) 数据信息处理方法及装置
US20130283382A1 (en) System and method for detecting malware in file based on genetic map of file
JP6523799B2 (ja) 情報分析システム、情報分析方法
CN106796635A (zh) 确定装置、确定方法及确定程序
US10255436B2 (en) Creating rules describing malicious files based on file properties
JP6557334B2 (ja) アクセス分類装置、アクセス分類方法、及びアクセス分類プログラム
CN111183620B (zh) 入侵调查
Kumar et al. Machine learning based malware detection in cloud environment using clustering approach
JP6691240B2 (ja) 判定装置、判定方法、および、判定プログラム
Piñeiro et al. Web architecture for URL-based phishing detection based on Random Forest, Classification Trees, and Support Vector Machine
US20220121665A1 (en) Computerized Methods and Systems for Selecting a View of Query Results
US11321453B2 (en) Method and system for detecting and classifying malware based on families
Merlo et al. Phishing kits source code similarity distribution: A case study
JP2019175334A (ja) 情報処理装置、制御方法、及びプログラム
Al Fahdi et al. Towards an automated forensic examiner (AFE) based upon criminal profiling & artificial intelligence

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171219

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190129

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190318

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: 20190402

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190426

R150 Certificate of patent or registration of utility model

Ref document number: 6523799

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees