本発明の実施形態に関する説明に先立って、本発明に関する技術的な検討事項等についてより詳細に説明する。
上記したように、防護側担当者がサイバー攻撃等の脅威に適切に対処するには、当該脅威に関する情報(以下「脅威情報」と記載する場合がある)を適時入手することが求められる。サイバー攻撃の兆候や手法に関する脅威情報は、上記したような各種情報源から、時間の経過とともに徐々に広がる特性がある。即ち、脅威情報が発生(あるいは拡散)してから早期の段階で当該情報を検出可能であれば、例えば、防護側担当者は、サイバー攻撃等に対して迅速に対応することが可能である。
防護側担当者が、例えば、攻撃者の視点と、防護側の視点との双方から、上記のようなサイバー攻撃に関する情報を収集し、その情報を随時更新することが可能であれば、脅威情報を迅速に検出できると考えられる。攻撃者の視点からは、例えば、攻撃者の行動や手口、あるいは、ターゲットシステムの脆弱性等の情報が得られる。また、情報システムを防護する視点からは、例えば、サイバー攻撃を検出するための兆候、サイバー攻撃によって引き起こされる問題、及び、サイバー攻撃に対する対処方法等の情報が得られる。
一般的に、多くの攻撃者は、セキュリティに関する高い水準の知識を有する。係る攻撃者は、入手した攻撃手法に関する情報を理解して、当該攻撃手法を模倣あるいは応用することにより、攻撃を実行する。また、攻撃者は、利用可能な脅威情報を、随時整理あるいは保管していると考えられる。
一方、防護側担当者は、例えば、企業の情報システム部門の担当者等、セキュリティに関する専門家ではない場合もある。よって、防護側担当者のセキュリティに関する知識水準、あるいは、脅威情報の入手能力にはバラつきがある。即ち、防護側担当者が、上記したような各視点から脅威情報を適時に入手して理解し、係る情報を適切に管理することは、容易ではない場合がある。これより、防護側担当者による脅威情報の検出及び対処に関連して、以下のような、システムが求められている。
第1に、攻撃者によりサイバー攻撃等の脅威が生成された後、適切な時期(例えば、なるべく早い時期)に当該脅威に関する脅威情報を検出可能なシステムが求められている。近年、脅威の増加、あるいは、脅威情報の入手経路の多様化等に起因して、脅威が生成されてから検出されるまでの時間が長引く傾向がある。よって、防護側担当者が適時に脅威情報を検出し、関連する情報を入手することが可能なシステムが求められている。
第2に、サイバー攻撃等の脅威が検知された際、防護側担当者が当該脅威に関する情報を適切に確認できるように補助するシステムが求められている。防護側担当者の実務経験が乏しい場合、脅威に関する情報を適切に取得及び確認することが困難であることが多い。この場合、攻撃者に攻撃の機会をより多く与え、被害が拡大する可能性がある。よって、当該脅威に対する対処も含め、関連する情報を簡便かつ適切に確認可能なシステムが求められている。
第3に、サイバー攻撃等の脅威が発生した際、防護側担当者が確認した情報に基づいて、セキュリティ対策を容易に実行可能なシステムが求められている。例えば、情報システムに配置されたセキュリティ機器毎に設定データ(設定ファイル)が異なる場合、防護側担当者が手動でそれらを調整する必要がある。この場合、設定に時間と工数とを要する。そこで、各セキュリティ機器に対するセキュリティ対策を迅速かつ容易に実行可能なシステムが求められる。
以下、各実施形態を用いて、上記した技術的検討事項を考慮した情報分析システムについて具体的に説明する。係る情報分析システムは、例えば、セキュリティに関連するデータの出現傾向(トレンド)に基づいて、脅威情報の発生、拡散、収束等を、適時に検出することができる。当該情報分析システムは、例えば、ある脅威に関連する情報を、まとめて防護側担当者に対して提供することが可能であり、防護側担当者が脅威情報を適切かつ容易に確認することを可能とする。また、当該情報分析システムは、セキュリティ機器に対して特定のセキュリティ設定を適用可能な、標準化されたデータを提供することができる。
なお、以下の各実施形態に記載されている情報分析システムの構成は例示であり、本発明の技術範囲はそれらには限定されない。以下の各実施形態における情報分析システムを構成する構成要素の区分け(例えば、機能的な単位による分割)は、当該情報分析システムを実現可能な一例である。当該情報分析システムの実装に際しては、以下の例示に限定されず、様々な構成が想定される。即ち、以下の各実施形態における情報分析システムを構成する構成要素は、更に分割されてもよく、1以上の構成要素が統合されてもよい。
以下において説明する情報分析システムは、単体の装置(物理的あるいは仮想的な装置)を用いて構成されてもよく、複数の離間した装置(物理的あるいは仮想的な装置)を用いて実現されてもよい。情報分析システムが複数の装置により構成される場合、各装置の間は有線、無線、又はそれらを適切に組合せた通信ネットワーク(通信回線)により通信可能に接続されてもよい。係る通信ネットワークは、物理的な通信ネットワークであってもよく、仮想的な通信ネットワークであってもよい。以下において説明する情報分析システム、あるいは、その構成要素を実現可能なハードウェア構成については、後述する。
<第1の実施形態>
[構成の説明]
以下、発明を実施するための形態について図面を参照して詳細に説明する。図1は、本実施形態における情報分析システム100の機能的な構成を例示するブロック図である。
図1に例示するように、第1の実施形態に係る情報分析システム100は、通信ネットワーク200に通信可能に接続される。
通信ネットワーク200は、例えばインターネット等の広域ネットワークであってもよく、構内LAN(Local Area Network)などの狭域ネットワークでもよく、これらを適宜組み合わせたネットワークであってもよい。また、係る通信ネットワーク200は、周知の仮想化基盤により提供される仮想的な通信ネットワークであってもよい。
以下、本実施形態における情報分析システム100の構成について説明する。図1に例示するように、情報分析システム100は、情報収集部101と、情報保持部102と、情報集約部103と、情報分析部104と、を含む。また、情報分析システム100は、検索情報入力部105と、情報提示部106と、脅威情報出力部107と、を含んでもよい。情報分析システム100を構成するこれらの構成要素の間は、適切な通信方法を用いて通信可能に接続されていてもよい。以下、それぞれの構成要素について説明する。
情報収集部101は、通信ネットワーク200を介して接続された各種情報源において提供される情報(データ)を取得する。情報収集部101が各種情報を取得する情報源は、例えば、設定等により予め定められていてもよい。また、情報収集部101は、ある情報源から取得した情報に含まれるリンク情報(例えば、ハイパーリンク等)を用いて、更に他の情報源から情報を取得してもよい。
情報収集部101が情報源から収集する情報(データ)は、例えば、HTML(Hyper Text Markup Language)、XML(Extensible Markup Language)等のテキストデータであってもよい。また、情報源から収集するデータは、上記に限定されず、画像(図面)データ、動画データ、音声データ、実行ファイル(例えば、マルウェアの実行ファイル等)等のバイナリデータであってもよい。
情報収集部101は、情報源から提供される情報を全て取得してもよく、その一部を取得してもよい。また、情報収集部101は、情報源から、特定の文言(例えば、後述する辞書データベースに登録された検索語)を含む情報のみを取得してもよい。また、情報収集部101は、例えば、通信ネットワーク200において公開された情報を検索可能な検索エンジン等を用いて特定の文言を含む情報を検索し、その検索結果を用いて各種情報を収集してもよい。以下、本実施形態における情報収集部101の構成例について説明する。
情報収集部101は、公開情報収集部101aと、非公開情報収集部101bとを含む。公開情報収集部101aは、通信ネットワーク200を介して、公開された情報(データ)を取得する。公開情報収集部101aは、例えば、ブログ(weblog)、ソーシャルネットワーキングサービス(SNS、Social Networking Service)、電子掲示板、等のソーシャルメディアを情報源として、それらの情報源から各種情報を取得する。あるいは、公開情報収集部101aは、例えば、セキュリティベンダ、研究機関等が提供するWebサイト等を情報源として、それらの情報源から各種情報を取得する。具体的には、公開情報収集部101aは、例えば上記各種サービスを提供するサーバ等の情報処理装置から、上記各種情報を取得する。なお、公開情報収集部101aが情報を取得する情報源は上記に限定されず、その他のソーシャルメディア等が含まれてもよい。
公開情報収集部101aが各種情報源から各種情報を取得するタイミングは、適宜設定可能である。例えば、公開情報収集部101aは、定期的なタイミングで上記情報源から各種情報を取得してもよい。また、公開情報収集部101aは、情報分析システム100のユーザ等により設定されたタイミングで上記情報源から各種情報を取得してもよい。
公開情報収集部101aは、取得した各種情報を、後述する情報保持部102(情報データベース102a)に提供する。公開情報収集部101aは、情報源から取得した各種情報のうち、後述する辞書データベース102bに登録された検索語を含む情報を、脅威情報として情報保持部102に提供してもよい。公開情報収集部101aは、情報源を特定可能な情報と、取得した各種情報に関する時刻(日時)を表す情報とを、併せて情報データベース102aに登録してもよい。上記各種情報に関する時刻は、例えば、当該情報を取得した時刻を表してもよく、当該情報が作成された時刻を表してもよく、当該情報が公開された時刻を表してもよい。
非公開情報収集部101bは、通信ネットワーク200を介して、非公開の情報源(プライベート情報源)から、各種情報を取得する。非公開情報収集部101bは、例えば、非公開の情報源として、信頼関係にある相手と共有した特定の場所(例えば、通信ネットワーク200に接続された共有フォルダ、Webサイト等)から、各種情報を取得してもよい。具体的には、非公開情報収集部101bは、例えば、上記各種サービス(共有フォルダ、Webサイト等)を提供するサーバ等の情報処理装置から、上記各種情報を取得する。
非公開情報収集部101bが各種情報源から各種情報を取得するタイミングは、適宜設定可能である。非公開情報収集部101bは、例えば、定期的なタイミングで非公開情報源から各種情報を取得してもよい。また、非公開情報収集部101bは、例えば、情報分析システム100のユーザ等により設定されたタイミングで上記情報源から各種情報を取得してもよい。
非公開情報収集部101bは、取得した各種情報を、後述する情報保持部102(情報データベース102a)に格納する。非公開情報収集部101bは、取得した各種情報のうち、後述する辞書データベース102bに登録された検索語を含む情報を、脅威情報として情報保持部102に提供してもよい。この際、非公開情報収集部101bは、情報源を特定可能な情報と、当該情報源から取得した各種情報に関する時刻を表す情報とを、情報データベース102aに登録してもよい。各種情報に関する時刻を表す情報は、例えば、当該情報を取得した時刻を表してもよく、当該情報が作成された時刻を表してもよく、当該情報が公開された時刻を表してもよい。
情報保持部102は、情報収集部101が情報源から取得した各種情報(以下、「参照情報」と記載する)を、物理的あるいは仮想的な記憶装置等を用いて保持(記憶)する。情報保持部102は、例えば、周知のファイルシステム、あるいは各種データベース等を用いて構成されてもよい。情報保持部102がファイルシステムにより構成される場合、情報保持部102が保持する参照情報は、ファイルとして保持される。情報保持部102が各種データベースにより構成される場合、情報保持部102が保持する参照情報は、データベースに登録されたレコードとして保持される。
情報保持部102は、情報データベース102aと、辞書データベース102bとを含む。なお、情報データベース102a、辞書データベース102bは、特定のデータベースの形式に限定されず、例えば、ファイル等を用いて構成されてもよい。
情報データベース102aは、上記公開情報収集部101a、非公開情報収集部101bから提供された参照情報を保持する。情報データベース102aは、参照情報と、当該参照情報の情報源と、当該参照情報を取得した時刻とを関連付けて、それらを保持してもよい。
情報データベース102aは、例えば、各情報源の種類を表す情報、各情報源を特定可能な情報、参照情報に関する時刻(日時)を表す情報、及び、参照情報の内容等を関連付けて、それらを保持してもよい。各情報源を特定可能な情報は、例えば、通信ネットワークにおけるアドレス(例えばIP(Internet Protocol)アドレス)、URL(Uniform Resource Locator)、ソーシャルメディアの発信者を特定可能な情報等であってもよい。情報データベース102aは、上記以外の情報を更に保持してもよい。情報データベース102aは、上記に加え、後述する情報分析部104における分析結果を保持してもよい。
辞書データベース102bは、セキュリティに関連する文言である1以上の検索語(以下、「第1の文言情報」と記載する場合がある)を保持する。辞書データベース102bに登録される検索語には、例えば、セキュリティ用語だけではなく、セキュリティ用語に関連するその他の文言(例えば、各種技術用語、製品あるいはアプリケーションの名称等)等、幅広い文言が含まれ得る。
辞書データベース102bには、後述する情報集約部103により参照情報から抽出された文言が、新たに検索語として登録される。また、辞書データベース102bには、情報分析システム100のユーザ等により、予め1以上の検索語が登録されていてもよい(例えば、図3)。
情報集約部103は、情報データベース102aに格納された1以上の参照情報を解析し、辞書データベース102bに登録されたいずれかの検索語を含む参照情報を抽出する。具体的には、情報集約部103は、参照情報を解析し、当該参照情報(当該参照情報に含まれるテキストデータ)を品詞毎に単語に分解する。参照情報がテキストデータである場合、情報集約部103は、例えば、係るテキストデータに対して形態素解析を実行することにより、当該テキストデータを単語に分解してもよい。参照情報が画像、動画、音声などの非テキストデータである場合、情報集約部103は、例えば、当該非テキストデータに含まれる文字列を抽出し、抽出した文字列に対して形態素解析等を実行してもよい。この場合、情報集約部103は、非テキストデータにメタデータとして含まれる文字列(例えば、キャプションや字幕等)を抽出してもよい。また、情報集約部103は、非テキストデータに対して各種処理(画像認識、音声認識、バイナリ解析等)を実行することにより、非テキストデータに含まれる文字列を抽出してもよい。非テキストデータから文字列を抽出する具体的な方法は、周知技術を採用可能である。情報集約部103は、例えば、各参照情報の分析結果を情報データベース102aに登録してもよい。
情報集約部103は、例えば、参照情報から抽出され、品詞毎に分解された単語の集合に、辞書データベース102bに登録された検索語が含まれるか否かを確認してもよい。これにより、情報集約部103は、辞書データベース102bに登録された検索語を含む参照情報を特定(抽出)可能である。
情報集約部103は、抽出した参照情報に含まれる、検索語と関連する他の単語(以下「関連語」と記載する場合がある)を抽出する。以下において、関連語を表す情報を、「第2の文言情報」と記載する場合がある。
以下、情報集約部103による、関連語の抽出処理について説明する。まず、情報集約部103は、ある検索語(仮に検索語「X」と記載する)について、当該検索語「X」を含む参照情報に含まれる他の単語(以下「関連語候補」と記載する)を抽出する。この際、情報集約部103は、参照情報に含まれる他の単語のうち、関連語候補として抽出しない単語を、所定のルールに基づいて排除してもよい。
情報集約部103は、例えば、ある検索語「X」と同じ参照情報に含まれる関連語候補に関する統計量を用いて、関連語候補の中から、検索語「X」と関連性を有する関連語を抽出する。情報集約部103は、例えば、ある関連語候補に関する統計量として、当該関連語候補の出現数を用いてもよい。この場合、情報集約部103は、ある検索語「X」と同じ参照情報に含まれる関連語候補を計数する。この際、情報集約部103は、検索語「X」を含む複数の参照情報について、当該参照情報に含まれる関連語候補を計数してもよい。
情報集約部103は、係る計数結果から、検索語「X」と同じ参照情報に含まれる関連語候補の出現数のランキングを作成する。情報集約部103は、例えば、当該ランキングにおける最上位から特定順位までの関連語候補を、検索語「X」と関連性を有する関連語として抽出する。なお、係る特定順位は、例えば、設定パラメータとして適宜設定されてよい。関連語として抽出する個数が多くなるよう特定順位が設定された場合、情報集約部103は、検索語が表すセキュリティ情報に関連する単語を、幅広く関連語として抽出可能である。また、例えば、関連語として抽出する個数が少なくなるよう特定順位が設定された場合、情報集約部103は、抽出される関連語を、検索語と関連性が高い単語に限定することが可能である。
図4に示す具体例を用いて説明する。図4の具体例では、公開情報収集部101aにより取得され参照情報「S1」と、「S2」とが情報データベース102aに登録されており、それぞれに、検索語「X」が含まれることを想定する。また、それぞれの参照情報には「X」と共に、単語「A」、「B」、「C」、「D」が含まれることを想定する。この場合、情報集約部103は、例えば、検索語「X」と同じ参照情報に含まれる単語「A」、「B」、「C」、「D」を抽出してその個数を計数し、ランキングを作成する。そして、情報集約部103は、例えば、当該ランキングの上位3個(この場合は「A」、「B」、「C」)を、関連語として抽出する。
なお、情報集約部103が関連語を抽出する方法は、上記には限定されない。例えば、情報集約部103は、出現数がある基準値以上の関連語候補を、関連語として抽出してもよい。また、情報集約部103は、例えば、ある検索語「X」が含まれる参照情報における、関連語候補の出現確率を算出し、当該出現確率に基づいて、関連語を抽出してもよい。また、例えば、情報集約部103は、1以上の参照情報に含まれる検索語と、関連語候補との間の相関係数を算出し、当該相関係数に基づいて、関連語を抽出してもよい。
情報集約部103は、抽出した関連語を、辞書データベース102bに追加する。これより、辞書データベース102bには、予め登録された検索語だけではなく、各情報源から取得した参照情報に含まれる関連語も登録される。即ち、辞書データベース102bには、情報集約部103によって抽出された関連語が、新たな検索語として登録される。
これにより、例えば、情報分析システム100においては、ユーザが明示的に検索語を追加しなくとも、セキュリティ用語、あるいはセキュリティ用語に関連する単語が辞書データベース102bに登録される。即ち、情報分析システム100は、情報分析システム100のユーザの知識レベル等に依らず、脅威情報の検出に用いられるデータを拡充することが可能である。なお、以下の説明では、検索語と新たに検索語として登録された関連語とをまとめて、単に検索語と記載する場合がある。
情報分析部104は、辞書データベース102bに登録された検索語(関連語を含む)の時系列における出現傾向(以下「トレンド」あるいは「出現トレンド」と記載する)を分析し、出現傾向が変化した検索語を抽出する。情報分析部104は、例えば、後述する情報提示部106に、抽出した検索語を提供してもよい。また、情報分析部104は、後述する検索情報入力部105から受け付けた、特定の検索語を含む参照情報を出力する。この際、情報分析部104は、特定された検索語と、当該特定された検索語を含む参照情報とを、情報提示部106及び脅威情報出力部107に提供してもよい。以下、情報分析部104の具体的な構成について説明する。
情報分析部104は、トレンド検出部104aと、検索部104bとを含む。トレンド検出部104aは、辞書データベース102bに保持された検索語(関連語を含む)と、情報データベース102aに保持された参照情報とに基づいて、各参照情報に含まれる検索語の出現トレンドを分析する。以下、係る出現トレンドの分析処理について説明する。
トレンド検出部104aは、金融工学分野等で用いられるテクニカル分析手法を用いて、検索語の時系列における出現トレンドを表すデータを算出し、その算出したデータに基づいて、検索語の出現トレンドを判定する。
トレンド検出部104aは、例えば、係るテクニカル分析手法のうち、MACD手法(Moving Average Convergence Divergence(移動平均収束拡散法))を用いて、検索語の出現トレンドを判定してもよい。MACD手法は、一般的には、時系列における株価のトレンドを判定する際に用いられる手法である。以下、MACD手法において算出される指標を、単にMACDと記載する場合がある。本実施形態におけるトレンド検出部104aは、株価の代わりに検索語の時系列における出現数を用いることで、検索語の出現トレンドを判定する。トレンド検出部104aは、例えば、ある検索語について、複数(例えば二つ)のタイミングにおけるMACDを算出し、算出したデータの間の関係性に基づいて、当該検索語の出現トレンドを判定する。以下、MACDを用いて検索語の出現トレンドを判定する方法について説明する。
MACDは、二つの異なる期間における検索語の出現数の指数平滑移動平均の差分に基づいて算出される。トレンド検出部104aは、例えば下式により、あるタイミング(T)における検索語の出現数に関する指数平滑移動平均(EMA:Exponential
Moving Average)を算出可能である。
式(1)のEMA(T)は、あるタイミング(T)における、ある検索語(仮に「SW」と記載する)のEMAを表す。また、EMA(T−1)は、あるタイミングに対する直前のタイミング(T−1)における検索語SWのEMAを表す。係るタイミングTは、例えば、「1日」等の日単位、「1時間」等の時間単位等、適切な時間の単位で指定される。なお、一般的な株価に関するEMAを算出する場合、EMA(T)は、特定日(T)のEMAを表し、EMA(T−1)は、当該特定日の前日のEMAを表すことが多い。本実施形態においては、EMA(T)は、例えば、特定時刻におけるEMAを表し、EMA(T−1)は、当該特定時刻の1時間前の時刻におけるEMAを表してもよい。
式(1)においてP(T)は、あるタイミング(T)における、検索語SWの出現数を表す。より具体的には、例えば、P(T)は、タイミング(T−1)から、タイミング(T)までの間に出現した検索語の数を表す。なお、一般的な株価に関するEMAを算出する場合、P(T)は、特定日におけるある銘柄の株価の終値を表すことが多い。
式(1)において、nは、移動平均を算出する期間(例えば、「n日」あるいは「n時間」など)を表す。
トレンド検出部104aは、例えば、出現日時(あるいは、作成日時もしくは取得日時)がタイミング(t−1)からタイミング(t)の間に含まれる参照情報について、辞書データベース102bに保持された各検索語の出現回数P(t)を算出する。トレンド検出部104aは、式(1)を用いて、t=1からt=T−1までの各タイミングについて、P(t)と、EMA(t)とを算出することにより、EMA(T)を算出可能である。
次に、トレンド検出部104aは、下式により、MACDを算出する。
上式(2)において、EMAshortは、例えば、短期間のEMAを表す。また、EMAlongは長期間のEMAを表す。例えば、周知の株価に関するMACDの場合、EMAshortとして12日間(n=12日)の株価のEMAが用いられることが多く、EMAlongとして26日間(n=26日)の株価のEMAが用いられることが多い。本実施形態における、EMAshortあるいは、EMAlongの期間は、情報分析システム100のユーザ等により適宜設定可能である。なお、これらの期間は、例えば、事前実験等に基づいて調整されてもよく、トレンド検出部104aの検出結果に基づいて適宜調整されてもよい。例えば、トレンド検出部104aは、EMAshortとして、12時間(n=12時間)の検索語出現数のEMAを用いてもよい。また、トレンド検出部104aは、EMAlongとして、24時間(n=24時間)の検索語出現数のEMAを用いてもよい。
トレンド検出部104aは、更に、MACDシグナルを算出する。MACDシグナルは、ある期間のMACDの指数平滑移動平均(EMA)として求められる。あるいは、MACDシグナルは、ある期間のMACDの単純平均として求められてもよい。
トレンド検出部104aは、例えば、下式を用いて、MACDシグナル(SIGNAL(T))を算出することができる。
トレンド検出部104aは、上記算出したMACDと、MACDシグナルとを用いて、MACDヒストグラムを算出する。トレンド検出部104aは、下式によりMACDヒストグラム(HISTOGRAM(T))を算出する。
トレンド検出部104aは、上記各式を用いて、異なる2つのタイミングにおけるMACDヒストグラムを算出するとともに、算出したMACDヒストグラムの積を計算する。より具体的には、トレンド検出部104aは、例えば、隣接する2つのタイミングにおけるMACDヒストグラムの積を計算する。
トレンド検出部104aは、例えば、上記積の計算結果に基づいて、検索語の出現トレンドが変化(転換)したか否かを判定する。トレンド検出部104aは、上記積の結果が正の値である場合、検索語の出現トレンドが転換していないと判定する。また、トレンド検出部104aは、上記積の結果が負の値である場合、検索語の出現トレンドが転換したと判定する。換言すると、トレンド検出部104aは、時系列におけるMACDシグナルの値と、基準データ(この場合は基準値”0”)との間の関係性に基づいて、検索語のトレンドを判定する。”0”を基準値(基準データ)と考えた場合、トレンド検出部104aは、MACDシグナルの値が、時系列において基準値”0”以上の値から基準値”0”未満の値に変化した際、検索語のトレンドが転換したと判定する。また、トレンド検出部104aは、MACDシグナルの値が、時系列において基準値”0”未満の値から基準値”0”以上の値に変化した際、検索語のトレンドが転換したと判定する。
なお、上記したようなMACD及びMACDシグナルの時系列における推移をグラフを用いて表した場合、MACDを表すグラフと、MACDシグナルを表すグラフとの交点において、検索語のトレンドが転換したと判定される。
例えば、タイミング(T−1)におけるMACDヒストグラムが負の値であり、タイミング(T)におけるMACDヒストグラムが正の値である場合を想定する。この場合、トレンド検出部104aは、検索語の出現数が増加トレンドに転換したと判定する。係るトレンドの転換は、例えば、当該検索語に関連する何らかのセキュリティ事象が発生(あるいは拡大)している兆候を示すと考えられる。例えば、何らかの脆弱性、あるいは、攻撃手法に関する検索語の出現数が増加トレンドに転換した場合、係るトレンドの転換は、当該脆弱性を攻撃する攻撃手法の発生あるいは拡大の兆候を示すと考えられる。
また、例えば、タイミング(T−1)におけるMACDヒストグラムが正の値であり、タイミング(T)におけるMACDヒストグラムが負の値である場合を想定する。この場合、トレンド検出部104aは、検索語の出現数が減少トレンドに転換したと判定する。これは、当該検索語に関連する何らかのセキュリティ事象が収束する傾向にあることを示す兆候であると考えられる。例えば、何らかの脆弱性、あるいは、攻撃手法に関する検索語の出現数が減少トレンドに転換した場合、係るトレンドの転換は、当該脆弱性に対する攻撃が収束する傾向にあることを示すと考えられる。
例えば、サイバー攻撃等の脅威が発生した場合、防護側担当者は、当該脅威を早期に検知可能であることが望ましい。加えて、防護側担当者は、当該脅威が収束したことを適時に判定可能であることが望ましい。なぜならば、サイバー攻撃に対して、システムの可用性に影響がある対策(例えば、通信遮断、サービス停止等)が実施される場合があり、この場合、適切なタイミングで係る対策を終了することが望ましいからである。上記のようなトレンド検出部104aの処理により、情報分析システム100のユーザは、ある検索語の増加トレンドに基づいて、当該検索語に関連する脅威の発生を適時に検出可能である。また、情報分析システム100のユーザは、ある検索語の減少トレンドに基づいて、当該検索語に関連する脅威の収束を適時に判定可能である。
なお、上記に限定されず、トレンド検出部104aは、例えば、MACDの算出結果が基準値(例えば”0”)以上の値から、基準値より小さい値になったタイミングにおいて、検索語の出現傾向が転換したと判定してもよい。同様に、MACDの算出結果が基準値(例えば”0”)より小さい値から、基準値以上の値になったタイミングにおいて、検索語の出現傾向が転換したと判定してもよい。
また、トレンド検出部104aは、例えば、異なるタイミングにおけるMACD(あるいはMACDシグナル)同士を比較した結果に基づいて、検索語の出現傾向が転換したか否かを判定してもよい。具体的には、トレンド検出部104aは、例えば、時系列に算出した各MACD(あるいはMACDシグナル)の間の大小関係を比較し、MACD(あるいはMACDシグナル)の値が減少から増加に変わったタイミングで、検索語の出現傾向が転換したと判定してもよい。同様に、トレンド検出部104aは、MACD(あるいはMACDシグナル)の値が増加から減少に変わったタイミングで、検索語の出現傾向が転換したと判定してもよい。
更に、トレンド検出部104aはテクニカル分析手法のうち、MACD以外の手法を用いて、検索語のトレンドを判定してもよい。例えば、トレンド検出部104aは、ヒストリカルボラティリティ(HV:Historical Volatility)を用いて、検索語のトレンドを判定してもよい。この場合、トレンド検出部104aは、ある検索語について、複数(例えば二つ)の異なる期間のHVを算出し、算出したデータの間の関係性に基づいて、当該検索語の出現トレンドを判定することができる。
トレンド検出部104aは、HVを用いる場合、過去のある期間における検索語の出現数の変化率の標準偏差を算出する。トレンド検出部104aは、異なる二つのタイミング(例えば、タイミング(T)とタイミング(T−1))の検索語の出現数の比率を計算することで、変化率を求めることができる。
トレンド検出部104aは、あるタイミング(T)から、過去n時点までの変化率の標準偏差を算出することにより、あるタイミング(T)におけるHVを求める。HVの値が大きい場合、検索語の出現回数の変動が大きいことを表し、HVの値が小さい場合、検索語の出現回数の変動が小さいことを表す。
トレンド検出部104aは、例えば、比較的長期間(例えばn=24時間)のHVlongと、短期間(例えばn=12時間)のHVshortとを算出し、それらの間の関係性に基づいて、検索語のトレンドを判定する。具体的には、トレンド検出部104aは、各タイミングにおいて算出したHVlongをプロットしたグラフと、HVshortをプロットしたグラフとの交点において、検索語のトレンドが転換したと判定してもよい。即ち、トレンド検出部104aは、検索語の出現傾向を表す2種類の異なるデータ(HVlongと、HVshort)を算出し、それらを比較した結果に基づいて、当該検索語の出現傾向が転換したか否かを判定する。
また、トレンド検出部104aは、あるタイミングにおける検索語の出現数の変化率と、HVとを比較することで、当該タイミングにおける検索語の出現数の変化率がどの程度大きく変動したのかを判定することが可能である。トレンド検出部104aは、例えば、あるタイミングにおける検索語の出現数の変化率と、HVとの比率が、所定の基準値を超過した場合に、検索語の出現トレンドが転換したと判定してもよい。
上記に限定されず、トレンド検出部104aは、他のテクニカル分析手法を用いて、検索語のトレンドを判定してもよい。トレンド検出部104aは、例えば、RSI(Relative Strength Index)を用いる方法、移動平均乖離率を用いる方法、VR(Volume Ratio)を用いる方法、等を採用してもよい。これらの手法は、一般的に株価の分析等に用いられることが多いが、株価の代わりに、検索語の出現数を用いることで、検索語の出現トレンドの転換を検出することができる。
以下、トレンドが転換したと判定された検索語を、「トレンド転換語」と記載する場合がある。トレンド検出部104aは、トレンド転換語を、後述する情報提示部106に提供する。なお、トレンド検出部104aは、各検索語に関するテクニカル分析の結果(出現トレンド)を、情報提示部106に提供してもよい。
検索部104bは、後述する検索情報入力部105から指定された特定の検索語を含む参照情報を、情報データベース102aにおいて検索し、抽出する。検索部104bは、抽出した参照情報を、情報提示部106に提供する。検索部104bは、指定検索語と、抽出した参照情報とを、後述する脅威情報出力部107に提供してもよい。
検索情報入力部105は、特定の検索語(指定検索語)を指定する入力を受け付ける。例えば、検索情報入力部105は、情報提示部106により提示された検索語の中から、情報分析システム100のユーザが指定した検索語を表す情報を、入力として受け付けてもよい。検索情報入力部105は、例えば、情報提示部106により提示されたユーザインタフェース画面(後述)を介して、指定検索語を指定する入力を受け付けてもよい。検索情報入力部105は、ユーザが指定した検索語を表す文字列を受け付けてもよく、ユーザが指定した検索語を識別可能な識別情報を受け付けてもよい。検索情報入力部105は、指定された検索語(あるいは指定された検索語を特定可能な情報)を、検索部104bに提供する。
情報提示部106は、トレンド検出部104aにより提供されたトレンド転換語を、適切な表示方法を用いて表示する。情報提示部106は、例えば、辞書データベース102bを参照し、トレンド転換語以外の検索語を表示してもよい。また、情報提示部106は、検索部104bから提供された、指定検索語に関する参照情報を表示する。
情報提示部106は、例えば、各種表示装置(例えば、各種液晶モニタ、プロジェクタ、タッチパネル、その他表示機能を有するデバイス)の画面の少なくとも一部に表示可能なユーザインタフェース画面(具体的には、画面データ)を生成してもよい。なお、表示装置は、情報提示部106に含まれてもよく、情報分析システム100に接続されてもよい。
情報提示部106が生成するユーザインタフェース画面は、少なくともトレンド転換語を表示する領域を含む。情報提示部106は、トレンド転換語と、トレンド転換語ではない検索語とを、それぞれを識別可能な形式でユーザインタフェース画面に表示してもよい。
図5及び図6は、情報提示部106により生成されるユーザインタフェース画面の一例を示す説明図である。図5に例示するユーザインタフェース画面500は、検索語を表示可能な領域(表示領域501、「第1の表示領域」と記載する場合がある)を有する。ユーザインタフェース画面500は、参照情報を表示する領域(表示領域502)を有してもよい。ユーザインタフェース画面500は、検索語を入力可能な入力領域503を有してもよい。
表示領域501には、トレンド検出部104aから提供されたトレンド転換語が少なくとも表示される。表示領域501には、トレンド転換語以外の他の検索語が表示されてもよい。図5に示す具体例では、トレンド転換語(トレンド転換語1乃至トレンド転換語6)を表す描画要素(円形状)が実線により描画され、その他の検索語(例えば、検索語7等)を表す描画要素が破線により描画される。上記に限定されず、情報提示部106は、例えば、トレンド転換語とその他の検索語を表す描画要素とを異なる大きさや形状を用いて描画してもよく、異なる配色を用いて描画してもよい。また、情報提示部106は、それぞれを識別可能な識別符号(あるいはアイコン等の識別画像)を描画してもよい。情報分析システム100のユーザが、表示領域501に表示された検索語を選択(例えば、クリックや画面のタッチ等)した際、当該選択された検索語を指定する情報が、検索情報入力部105に提供されてもよい。
表示領域502には、例えば、情報データベース102aに登録された参照情報が表示される。係る参照情報は、例えば、表示領域501に表示されたトレンド転換語、あるいは、その他の検索語を含む参照情報であってもよい。
入力領域503は、情報分析システム100のユーザが、検索語を直接入力可能な領域である。情報分析システム100のユーザは、例えば、適切な入力方法(例えば、キーボードや音声認識等)を用いて、入力領域503に検索語を入力してもよい。入力領域503に入力された検索語は、検索情報入力部105に提供されてもよい。
また、情報提示部106は、検索部104bにより抽出された、指定検索語に関連する参照情報を表示可能なユーザインタフェース画面を生成してもよい。図6に例示するユーザインタフェース画面600は、指定検索語に関する参照情報を表示する領域(表示領域601、「第2の表示領域」と記載する場合がある)を有する。また、ユーザインタフェース画面600は、指定検索語に関するテクニカル分析の結果を表示する領域(表示領域602、「第3の表示領域」と記載する場合がある)を有する。なお、ユーザインタフェース画面600は、指定検索語を表示する領域(表示領域603)を有してもよい。更に、ユーザインタフェース画面600は、操作領域(操作領域604)を有してもよい。
表示領域601には、指定検索語に関連する参照情報が表示される。係る参照情報は、例えば、指定検索語を含むWebページ、SNSデータ等である。なお、表示領域601には、参照情報そのものが表示されてもよく、参照情報に対するリンク等が表示されてもよい。あるいは表示領域601には、参照情報の一部が表示され、情報分析システム100のユーザが参照情報を選択(例えば画面タッチやクリック等)した際に、当該参照情報の全体が表示されてもよい。
表示領域602には、例えば、トレンド検出部104aから取得された指定検索語に関するテクニカル分析の結果が、グラフ等の形式(例えば、指定検索語に関するトレンドを表すグラフ、指定検索語の出現数を表すグラフ等)により表示されてもよい。なお、トレンドを表すグラフにおいて、トレンドが転換したタイミング(トレンド転換点)が強調表示されてもよい。これにより、情報分析システム100のユーザは、トレンドが転換したタイミングを容易に把握することができる。
上記のような情報提示部106により、情報分析システム100のユーザは、トレンドが転換した検索語(トレンド転換語)と、当該トレンド転換語に関連する参照情報と、当該トレンド転換語に関するテクニカル分析の結果とを、関連付けて確認可能である。例えば、ある検索語(トレンド転換語)が、ある脆弱性に関する単語である場合を想定する。この場合、情報分析システムのユーザは、当該検索語に関するテクニカル分析の結果を用いて、当該脆弱性に関する情報の出現数の推移(増加するか減少するか)を確認することができる。情報分析システム100のユーザは、当該検索語を含む参照情報を確認することにより、当該検索語に関連する脆弱性あるいはその攻撃手法に関する情報を入手可能である。
操作領域604は、例えば、プッシュボタン、クリック可能なアイコン、あるはメニューなどのユーザインタフェース部品により構成される。例えば、情報分析システム100のユーザが操作領域604を操作した際、後述する脅威情報出力部107が、指定検索語に関連する脅威を記述したデータ(後述)を生成してもよい。
脅威情報出力部107は、情報分析部104(検索部104b)から提供された指定検索語を含む参照情報に基づいて、当該指定検索語に関連する脅威と、当該脅威に関する対処措置とを記述したデータ(脅威記述データ)を生成する。この際、脅威情報出力部107は、標準化された脅威情報構造化形式を用いて、当該脅威記述データを生成する。具体的には、脅威情報出力部107は、例えば、STIX(Structured Threat Information eXpression)、CybOX(Cyber Observable eXpression)、OpenIOC(Open Indicator of Compromise)等の標準形式を用いて記述された脅威記述データを生成する。なお、これらの標準形式は、周知の技術であることから、具体的な説明を省略する。
脅威情報出力部107は、例えば、検索部104bから提供された参照情報から、所定の形式に適合するデータを抽出する。所定の書式に適合するデータは、例えば、何らかのリソース又はオブジェクトを特定可能なデータであり、予め定められた書式に従って記述される。具体的には、係るデータは、例えば、通信ネットワークにおけるアドレス(例えばIPアドレス)、URL、ファイル名、ファイルのハッシュ値、ドメイン名等であってもよい。
脅威情報出力部107が抽出するURLには、例えば、攻撃者が用意した攻撃用サイトのURL、攻撃対象であるサイトのURL、マルウェアに含まれるURL、あるいは、攻撃方法を記載したURL等が含まれてもよい。
また、脅威情報出力部107が抽出するアドレス情報には、例えば、攻撃者が用意した攻撃用サイトのアドレス、マルウェアが接続する接続先アドレス、マルウェアを提供しているサイトのアドレス等が含まれてもよい。
また、脅威情報出力部107が抽出するファイルを特定可能な情報には、例えば、ファイル名、ファイルのハッシュ値等が含まれてもよい。
脅威情報出力部107は、抽出した情報を用いて、脅威記述データを生成する。例えば、脅威情報出力部107は、STIX形式の脅威記述データを生成してもよい。脅威情報出力部107は、例えば、抽出したファイル名と、ファイルのハッシュ値とを用いて、CybOXにおいて規定された方式で、ファイルを特定する記述を生成してもよい。また、脅威情報出力部107は、例えば、抽出したアドレス情報を用いて、CybOXにおいて規定された方式で、ネットワーク接続先を特定する記述を生成してもよい。また、例えば、脅威情報出力部107は、例えば、STIXにおいて規定された「Course_Of_Action」を表す記述を生成してもよい。これにより、脅威情報出力部107は、例えば、後述するセキュリティ機器300に対して、特定の処理の実行(例えば、通信の遮断等)を通知することができる。
脅威情報出力部107は、生成した脅威記述データを、セキュリティ機器300に提供する。脅威情報出力部107は、脅威記述データをファイルの形式で生成し、当該ファイルをセキュリティ機器300に提供してもよい。なお、セキュリティ機器300が、複数存在する場合、脅威情報出力部107は、それぞれのセキュリティ機器300に対して、適切な脅威記述データを提供する。
セキュリティ機器300は、情報システムにおける各種セキュリティ対策を実行可能な装置である。セキュリティ機器300は、物理的な装置であってもよく、仮想的な装置であってもよい。セキュリティ機器300は、例えば、ルータ、ファイアウォール、IDS(Intrution Detection System)等のネットワーク機器であってもよく、Proxyサーバ、ウェブアプリケーションサーバ、ファイルサーバ、ディレクトリサーバ等の機能を提供可能な情報処理装置であってもよい。
セキュリティ機器300は、例えば、STIX、CybOX、OpenIOC等の標準形式により記述されたデータを解釈可能であり、当該脅威記述データを解釈した結果に基づいて適切な処理を実行する。例えば、セキュリティ機器300は、脅威記述データを解釈して、特定の通信対象(例えば、攻撃者が用意したボットネットの制御サーバ等)との間の通信を遮断してもよい。また、セキュリティ機器300は、脅威記述データを解釈して、特定のファイルの実行を抑制してもよい。セキュリティ機器300が実行する処理は、上記に限定されず、適宜設定可能である。
[動作の説明]
次に、上記のように構成された情報分析システム100の動作について、図7乃至図11に例示するフローチャートを参照して説明する。なお、図7乃至図11に例示するフローチャートは、情報分析システム100の動作の一例であり、本実施形態はこれに限定されるものではない。各フローチャートにおける処理ステップは、処理結果に影響がない範囲で実行順序が変更されてもよく、1以上の処理ステップが並列に実行されてもよい。
まず、情報分析システム100における情報収集部101が、通信ネットワークを介して、情報源から参照情報を取得する。具体的には、公開情報収集部101aが、通信ネットワーク200を介して接続された情報源(Webサイト、ソーシャルメディア等)から、参照情報を収集(ダウンロード)する(ステップS701)。係る参照情報は、上記したように、各種テキストデータであってもよく、画像、映像、音声などのデータであってもよい。
公開情報収集部101aは、ステップS701において取得した参照情報を、情報保持部102(具体的には、情報データベース102a)に提供する。情報データベース102aは、提供された参照情報を登録する(ステップS702)。この際、参照情報を取得したタイミング(時刻等)を表す情報が、情報データベース102aに併せて登録されてもよい。また、情報データベース102aは、提供された参照情報を、当該参照情報を取得したタイミング毎に、時系列に登録してもよい。
非公開情報収集部101bは、通信ネットワーク200を介して、非公開の情報源から、参照情報を収集(ダウンロード)する(ステップS801)。非公開の情報源は、例えば、信頼できる相手と共有した場所(例えば、通信ネットワーク200に接続された共有フォルダ、Webサイト等)である。係る参照情報は、上記したように、各種テキストデータであってもよく、画像、映像、音声などのデータであってもよい。
非公開情報収集部101bは、ステップS801において取得した参照情報を、情報保持部102(具体的には、情報データベース102a)に提供する。情報データベース102aは、提供された参照情報を登録する(ステップS802)。この際、参照情報を取得したタイミング(時刻等)を表す情報が、情報データベース102aに併せて登録されてもよい。また、情報データベース102aは、提供された参照情報を、当該参照情報を取得したタイミング毎に、時系列に登録してもよい。
上記説明した公開情報収集部101aあるいは非公開情報収集部101bによる処理は、定期的(例えば、一定時間毎)に実行されてもよく、他の適切なタイミングで実行されてもよい。また、上記説明した公開情報収集部101aあるいは非公開情報収集部101bによる処理は、逐次的に実行されてもよく、並列的に実行されてもよい。
次に、情報集約部103が、上記のように情報データベース102aに登録された各参照情報を解析する(ステップS901)。具体的には、情報集約部103は、例えば、形態素解析等を用いて、各参照情報を品詞毎に単語に分解する。情報集約部103は、各参照情報の解析結果を情報データベース102aに登録してもよい。
次に、情報集約部103は、辞書データベース102bに登録された検索語を1以上含む参照情報を抽出する(ステップS902)。情報集約部103は、例えば、各参照情報の解析結果である単語の集合に、辞書データベース102bに登録された検索語が含まれるか否かを確認する。れにより、情報集約部103は、辞書データベース102bに登録された検索語を含む参照情報を抽出可能である。情報集約部103は、上記処理を、情報データベース102aに登録された各参照情報と、辞書データベース102bに登録された各検索語とについて実行してもよい。
次に、情報集約部103は、ステップS902において抽出した参照情報から、検索語と関連する関連語を抽出する(ステップS903)。情報集約部103は、上記したように、例えば、ある検索語を含む参照情報に含まれる関連語候補に関する統計量(例えば、関連語候補の出現回数等)に基づいて関連語を抽出してもよい。
次に、情報集約部103は、抽出した関連語を、辞書データベース102bに登録する(ステップS904)。例えば、ある検索語がセキュリティ用語(例えば、なんらかの脆弱性を表す単語等)である場合、情報集約部103は、当該セキュリティ用語に関連する関連語を辞書データベース102bに追加可能である。即ち、情報集約部103は、情報分析システム100のユーザ等の知識あるいは経験等に依らず、セキュリティに関連する単語と関連性が高い単語を収集可能である。
次に、情報分析部104(具体的には、トレンド検出部104a)が、各検索語のトレンドを分析する(ステップS1001)。
以下、トレンド検出部104aにおける処理について、図11に例示するフローチャートを用いて説明する。トレンド検出部104aは、以下の処理(ステップS1101乃至S1106)を定期的なタイミングで実行してもよい。
まず、トレンド検出部104aは、辞書データベース102bに登録された検索語を選択する(ステップS1101)。
次に、トレンド検出部104aは、選択した検索語の出現数について、MACD、MACDシグナル、MACDヒストグラムを算出する(ステップS1102)。トレンド検出部104aは、例えば、所定期間(例えば1時間)毎のタイミングにおけるMACD、MACDシグナル、MACDヒストグラムを算出してもよい。トレンド検出部104aは、算出したMACD、MACDシグナル、及び、MACDヒストグラムを保持しておいてもよい。
次に、トレンド検出部104aは、2つの異なるタイミングにおけるMACDヒストグラムの積を算出する(ステップS1103)。トレンド検出部104aは、例えば、あるタイミング(T)におけるMACDシグナルと、その直前のタイミング(T−1)におけるMACDシグナルとの積を算出する。
トレンド検出部104aは、上記積を計算した結果の符号を確認し(ステップS1104)、その符号が負の場合、当該検索語の出現トレンドが転換したと判定する(ステップS1105)。また、上記積を計算した結果の符号が正の場合、トレンド検出部104aは、当該検索語の出現トレンドが転換していないと判定する(ステップS1106)。
次に、トレンド検出部104aは、上記ステップS1107において、出現トレンドが転換したと判定された検索語を、情報提示部106に提供する(ステップS1002)。
情報提示部106は、適切な表示方法を用いて、情報分析システム100のユーザに対して、出現トレンドが転換した検索語を表示する(ステップS1003)。情報提示部106は、例えば、図5に例示するようなユーザインタフェース画面の画面データを生成、表示装置に対して当該画面データを送信してもよい。
検索情報入力部105は、特定の検索語(指定検索語)を指定する情報の入力を受け付ける(ステップS1004)。例えば、情報分析システム100のユーザが、ステップS1003において表示された検索語から、ある検索語を選択した際、選択された検索語を指定する情報が、上記ユーザインタフェース画面を介して検索情報入力部105に提供される。検索情報入力部105は、指定された検索語(指定検索語)を、検索部104bに提供する。検索情報入力部105は、例えば、検索語を表す文字列を検索部104bに提供してもよく、検索語を特定可能な識別情報を検索部104bに提供してもよい。
検索部104bは、ステップS1004において提供された指定検索語を含む参照情報を、情報データベース102aから抽出する(ステップS1005)。検索部104bは、抽出した参照情報を、情報提示部106と及び脅威情報出力部107に提供する。
情報提示部106は、指定検索語を含む参照情報を、情報分析システム100のユーザに提示する(ステップS1005)。この際、情報提示部106は、例えば図6に例示するような、指定検索語に関するテクニカル分析の結果(出現トレンド)を表示するユーザインタフェース画面の画面データを生成してもよい。
脅威情報出力部107は、指定検索語を含む参照情報に基づいて、脅威記述データを生成する(ステップS1006)。脅威情報出力部107は、具体的には、STIX、CybOX、OpenIOC等の標準形式により記述された脅威記述データを生成する。
脅威情報出力部107は、ステップS1006において生成した脅威記述データを、セキュリティ機器300に提供する(ステップS1007)。
上記のように構成された本実施形態における情報分析システム100は、例えば、セキュリティにおける脅威に関する情報を、適時に検出可能である。その理由は、トレンド検出部104aが、各種情報源から収集した参照情報に基づいて、セキュリティ用語(あるいはセキュリティ用語と関連する単語)を含む検索語の出現トレンドを判定するからである。検索語の出現トレンドは、あるセキュリティ事象の発生、拡大、収束等に関連すると考えられる。よって、情報分析システム100は、係る検索語のトレンドを確認することにより、セキュリティにおける脅威に関する情報を、適時に検出することができる。
また、情報分析システム100は、例えば、当該情報分析システム100のユーザが、脅威情報を適切かつ容易に確認することを可能とする。その理由は、情報提示部106が、指定検索語と、当該指定検索語に関連する参照情報とを、ユーザに対して表示するからである。
また、当該情報分析システム100は、ある検索語(例えばセキュリティ用語)と関連性を有する関連語を、新たな検索語として辞書データベース102bに登録することができる。これにより、情報分析システム100のユーザが明示的に検索語を追加しなくとも、セキュリティ用語、あるいはセキュリティ用語に関連する関連語がトレンド分析の対象として登録される。トレンド検出部104aが当該関連語について出現傾向を分析した結果、当該関連語の出現トレンドが転換している場合には、情報提示部106により、当該関連語に関する参照情報が表示される。これにより、ユーザは、例えば、ある脅威(サイバー攻撃等)に関連して時間の経過とともに出現傾向が変化した検索語及び関連語に関する参照情報を、まとめて確認することが可能である。即ち、情報分析システム100のユーザは、当該ユーザの知識あるいは経験に依らず、ある脅威に関連して時間の経過とともに変化する情報を、まとめて確認することができる。
また、当該情報分析システム100は、セキュリティ機器300に対して、適切なセキュリティ対策を適用可能な標準化された脅威記述データを提供することができる。これにより、例えば、外部サイトに対するアクセス制限、あるいは、ファイルに対するアクセス又は実行の抑制等のセキュリティ対策が実施される。標準化された形式で記述された脅威記述データを解釈可能なセキュリティ機器300は、ユーザ等が手動で設定を調整せずとも、脅威記述データの記述に基づいて、適切な対策を実施可能である。したがって、情報分析システム100によれば、情報漏洩の危険性、マルウェア感染の危険性、その他有害サイトへの接続に起因する危険性等を低減することが可能である。
[具体例]
以下、具体例を用いて、情報分析システム100の動作について説明する。以下の具体例は、説明のための一例であり、本実施形態はこれには限定されない。以下の具体例においては、公開情報収集部101aが、ソーシャルメディア(具体的にはTwitter(登録商標))から、参照情報を取得することを想定する。また、辞書データベース102bには、セキュリティ用語である(「vulnerability」)が検索語として登録されていることを想定する。
情報収集部101(公開情報収集部101a)は、通信ネットワーク200を介して、ソーシャルメディア(本具体例の場合は、例えば、Twitter(登録商標))から各種情報を収集する。本具体例においては、公開情報収集部101aは、例えば、収集した各種情報のうち、「vulnerability」が含まれる情報を、脅威情報として情報データベース102aに提供する。公開情報収集部101aは、上記したソーシャルメディア以外の公開情報を収集してもよい。また、非公開情報収集部101bが、辞書データベース102bに登録された検索語を含む各種情報を取得し、脅威情報として情報データベース102aに提供してもよい。
情報データベース102aは、例えば、図12に例示するような形式により、情報収集部101が取得した参照情報(脅威情報)を保持する。なお、図12においては、一部のデータが伏せ字(”*”)を用いて表されている。また、図12に例示されるURLは、説明のため仮のURLである。
情報集約部103は、情報データベース102aに格納された1以上の参照情報を解析し、例えば、「vulnerability」が含まれる参照情報を抽出する。そして、情報集約部103は、抽出した参照情報に含まれる単語「vulnerability」と関連性を有する文言(単語)を、関連語として抽出する。本具体例においては、例えば、関連語として、「Dyreza」が抽出されることを想定する。なお、「Dyreza」は、周知のマルウェアを表す単語である。
情報集約部103は、抽出した関連語(本具体例の場合は、「Dyreza」)を、新たに検索語として辞書データベース102bに登録する。情報収集部101は、例えば、追加された検索語「Dyreza」を含む情報を情報源から収集し、参照情報として情報データベース102aに登録してもよい。
トレンド検出部104aが、辞書データベース102bに登録された検索語の出現トレンドを、テクニカル分析手法を用いて解析する。トレンド検出部104aは、例えば、各検索語について、定期的(例えば1時間ごと)に、特定のタイミング(例えば現在時刻)におけるMACDヒストグラムの値と、当該特定のタイミングより前のタイミング(例えば1時間前)におけるMACDヒストグラムの値と、の積を算出する。この際、トレンド検出部104aは、各検索語の出現数(カウント)、MACD、MACDシグナルを算出してもよい。また、トレンド検出部104aは、検索語の出現トレンドの判定にHVを用いる場合には、各検索語に関するHVを算出してもよい。
図13は、検索語「vulnerability」について、各タイミングにおいて算出されたMACD、MACDシグナル(図13における「MACD(signal)」)、MACDヒストグラム(図13における「MACD(histogram)」)の具体例を示すグラフである。また、図14は、検索語「vulnerability」の各タイミングにおける出現数の具体例を示すグラフである。また、図15は、検索語「vulnerability」について、各タイミングにおいて算出された長期のHVと、短期のHVとの具体例を示すグラフである。
図13の場合、1301A、1301B、1301Cのそれぞれに示された2つのタイミングにおいて、MACDヒストグラムの積が負になる。なお、本具体例においては、辞書データベース1202bに登録された検索語「Dyreza」についても、あるタイミングにおいてMACDヒストグラムの積が負になることを想定する。この場合、トレンド検出部104aは、検索語「vulnerability」及び「Dyreza」の出現傾向が転換したと判定し、情報提示部106に、これらの検索語を提供する。この際、トレンド検出部104aは、当該検索語に関する参照情報、当該検索語に関するテクニカル分析の結果等を、情報提示部106に提供してもよい。
情報提示部106は、例えば、図16に例示するようなユーザインタフェース画面を生成してもよい。表示領域501には、トレンド転換語(「vulnerability」及び「Dyreza」)が表示される。表示領域501には、例えば、その他の検索語(例えば「Botnet」等)が表示されてもよい。表示領域501には、情報データベース102aに登録された参照情報が表示される。情報提示部106は、例えば、生成したユーザインタフェース画面の画面データを適切な表示装置に提供し、当該表示装置を介して情報分析システム100のユーザに当該画面を表示する。
情報分析システム100のユーザは、例えば、ユーザインタフェース画面に表示された検索語から、ある検索語を指定する。本具体例においては、情報分析システム100のユーザが、検索語として、「Dyreza」を指定することを想定する。この場合、「Dyreza」が指定検索語となる。情報分析システム100のユーザは、例えば、図16に示す表示領域501において、「Dyreza」を選択(クリックあるいはタッチ等)してもよい。また、情報分析システム100のユーザは、例えば、入力領域503に、検索語「Dyreza」を直接入力してもよい。上記ユーザの操作に応じて、検索語「Dyreza」を表す情報が検索情報入力部105に入力される。検索情報入力部105は、ユーザにより指定された検索語(「Dyreza」)を、検索部104bに提供する。
検索部104bは、情報データベース102aから、検索語(「Dyreza」)を含む参照情報を検索する。検索部104bは、検索語(「Dyreza」)と、検索した参照情報とを情報提示部106に提供する。また、検索部104bは、検索語と、検索した参照情報とを、脅威情報出力部107に提供してもよい。
検索部104bにより検索された参照情報を受け付けた情報提示部106は、例えば、図6に例示するような形式のユーザインタフェース画面を生成してもよい。この場合、表示領域601には、検索語(「Dyreza」)を含む参照情報が表示される。また、表示領域602には、検索語(「Dyreza」)に関するテクニカル分析の結果が表示されてもよい。情報提示部106は、生成したユーザインタフェース画面のデータを表示装置に提供し、当該表示装置を介して情報分析システム100のユーザに当該画面を表示する。
脅威情報出力部107は、提供された参照情報を解析し、標準化された脅威情報構造化形式を用いて、当該指定検索語に関連する脅威記述データを生成する。
脅威情報出力部107は、例えば、「Dyreza」を含む参照情報から、アドレス情報と、ファイルを特定可能な情報とを抽出する。アドレス情報は、例えば、マルウェア「Dyreza」が接続するサーバ(攻撃者が用意した制御サーバ)のアドレスを含む。ファイルを特定可能な情報は、例えば、マルウェア「Dyreza」の実行可能ファイル及び実行可能ファイルから呼び出されるライブラリファイルのファイル名、あるいは、そのハッシュ値を含む。
脅威情報出力部107は、例えば、上記抽出した情報を用いて、脅威記述データを生成する。本具体例においては、脅威情報出力部107は、例えば、STIX形式の脅威記述データを生成する。この場合、脅威情報出力部107は、例えば、図17に例示するような形式で、あるIPアドレスを有する通信先(例えば、マルウェアが通信するサーバ)を特定する記述を生成する。また、脅威情報出力部107は、例えば、図18に例示するような形式で、あるファイル名を有するファイル(例えば、マルウェアの実行ファイル)を特定する記述を生成する。
脅威情報出力部107は、生成した脅威記述データをセキュリティ機器300(例えば、ファイアウォールやウェブアプリケーションフィルター)に提供する。セキュリティ機器300は、例えば、脅威情報出力部107から受け付けた脅威記述データに基づいて、各種アクセス制御を実行してもよい。具体的には、セキュリティ機器300は、特定されたIPアドレスに対する通信を遮断してもよい。また、セキュリティ機器300は、特定されたファイルに対するアクセスあるいは実行を抑制してもよい。
以上より、情報分析システム100は、セキュリティにおける脅威に関する情報を、適時に検出可能である。なぜならば、トレンド検出部104aが、テクニカル分析の手法を用いて、セキュリティ用語(例えば「vulnerability」、「Dyreza」)の出現トレンドを判定可能だからである。
また、情報集約部103が、セキュリティ用語(例えば「vulnerability」)と関連性が高い他の単語(「Dyreza」)を抽出し、辞書データベース102bに新たな検索語として追加する。これより、辞書データベース102bに登録されていない、新たな脅威を表す文言(単語)についても、トレンド検出部104aが当該文言の出現トレンドを判定する。即ち、ユーザは、明示的に検索語を追加することなく、新たに発生した脅威を表す情報を適時に確認可能である。
また、脅威情報出力部107が、標準形式により記述された脅威記述データをセキュリティ機器300に提供する。これより、情報分析システム100のユーザが各セキュリティ機器300を直接設定せずとも、各セキュリティ機器300は、当該脅威記述データに基づいて適切なセキュリティ対策を実行可能である。
<第2の実施形態>
次に、本発明の基本的な実施形態である、第2の実施形態について説明する。以下、上記第1の実施形態と同様の構成については、同一の参照符号を付すことにより説明を省略する。
図19は、本実施形態における情報分析システム1900の機能的な構成を例示するブロック図である。図19に例示するように、情報分析システム1900は、情報保持部1901(情報保持手段)と、情報分析部1902(情報分析手段)と、を備える。情報分析システム1900を構成するこれらの構成要素の間は、適切な通信方法を用いて通信可能に接続されている。なお、情報分析システム1900は、通信ネットワークを介して、各種情報源(不図示)と接続されていてもよい。以下、情報分析システム1900の各構成要素について説明する。
情報保持部1901は、情報源から取得された参照情報を保持する。情報保持部1901は、例えば、物理的あるいは仮想的な記憶装置を用いて、参照情報を保持してもよい。情報保持部が保持する参照情報は、上記第1の実施形態と同様、テキストデータであってもよく、音声、画像、動画、実行ファイル等のバイナリデータであってもよい。情報保持部1901は、例えば、上記第1の実施形態における情報保持部102と同様の構成を備えてもよい。また、係る情報保持部1901は、例えば、上記第1の実施形態における情報保持部102と同様の処理を実行可能であってもよい。
情報分析部1902は、時系列において異なるタイミングで取得された参照情報に含まれるセキュリティに関連する文言を表す第1の文言情報の出現傾向が変化したか否かを判定する。情報分析部1902は、第1の文言情報の出現傾向が変化したと判定した場合、当該第1の文言情報を含む参照情報を抽出する。上記第1の文言情報には、例えば、セキュリティの分野で使用されるセキュリティ用語、あるいは、セキュリティ用語と関連性がある文言等、幅広い文言が含まれ得る。第1の文言情報は、例えば、上記第1の実施形態における検索語を表す情報であってもよい。
係る情報分析部1902は、例えば、上記第1の実施形態における情報分析部104と同様の構成を備えてもよい。また、情報分析部1902は、例えば、上記第1の実施形態における情報分析部104と同様の処理を実行可能であってもよい。
上記のように構成された本実施形態における情報分析システム1900によれば、例えば、セキュリティにおける脅威に関する情報を、適時に検出可能である。その理由は、情報分析部1902が、各種情報源から収集した参照情報に基づいて、セキュリティに関連する文言(例えば、セキュリティ用語、あるいはセキュリティ用語と関連する文言)を表す第1の文言情報の出現傾向を分析するからである。また、情報分析部1902が、当該分析結果に基づいて、出現傾向が変化した第1の文言情報を含む参照情報を抽出するからである。第1の文言情報の出現傾向は、あるセキュリティ事象の発生、拡大、収束等に関連すると考えられることから、係る出現傾向を確認することにより、セキュリティにおける脅威に関する情報を、適時に検出することができる。
以上より、上記のように構成された本実施形態における情報分析システム1900によれば、セキュリティにおける脅威に関連する情報(例えば、第1の文言情報)の出現傾向を分析することにより、当該脅威に関する情報を適切に検出することが可能である。
<第2の実施形態の変形例>
以下、上記第2の実施形態の変形例について説明する。本変形例における情報分析システム1900の構成は、上記第2の実施形態と同様としてよい。
本変形例において、情報分析部1902は、例えば、テクニカル分析手法を用いて、参照情報に含まれる第1の文言情報の時系列における出現数を分析し、第1の文言情報の出現傾向を表すデータを1以上算出する。情報分析部1902は、例えば、算出したデータの間の関係性に基づいて、第1の文言情報の出現傾向が変化したか否かを判定する。或いは、情報分析部1902は、例えば、算出したデータと、基準データ(例えば、何らかの基準値)との間の関係性に基づいて、第1の文言情報の出現傾向が変化したか否かを判定する。
情報分析部1902は、例えば、テクニカル分析の手法として、適切な方法(例えば、上記第1の実施形態において説明したMACDを用いる方法、HVを用いる方法、RSIを用いる方法、移動平均乖離率を用いる方法、VRを用いる方法等)を採用してよい。
これにより、本変形例における情報分析システムは、例えば、金融工学等の分野で使用される各種テクニカル分析手法を用いて、第1の文言情報の出現傾向を判定可能である。
また、本変形例において、情報分析部1902は、例えば、少なくとも2つの異なるタイミングにおける第1の文言情報の出現傾向を表すデータを算出してもよい。情報分析部1902は、算出したデータのうち少なくとも一部のデータ同士を比較した結果に基づいて、第1の文言情報の出現傾向が変化したか否かを判定してもよい。また、情報分析部1902は、算出したデータのうち少なくとも一部のデータを基準データ(例えば、何らかの基準値)と比較した結果に基づいて、前記第1の文言情報の出現傾向が変化したか否かを判定してもよい。
具体的には、情報分析部1902は、第1の文言情報について、タイミング(T)における出現傾向を表すデータと、タイミング(T)の一つ前のタイミング(T−1)における出現傾向を表すデータとの間の大小関係、あるいは符号の変化に基づいて、当該第1の文言情報の出現傾向が変化したか否か判定してもよい。また、情報分析部1902は、第1の文言情報の出現傾向を表すデータと、基準データ(例えば基準値”0”)との間の、時系列における大小関係の変化に基づいて、当該第1の文言情報の出現傾向が変化したか否か判定してもよい。この場合、情報分析部1902は、第1の文言情報の出現傾向を表すデータとして、例えば、当該第1の文言情報のMACD、MACDシグナル、又は、MACDヒストグラム等を算出してもよい。
本変形例において、情報分析部1902は、例えば1つの第1の文言情報に関して、当該第1の文言情報の出現傾向を表す異なる2以上の種類のデータを算出してもよい。情報分析部1902は、算出した異なる種類のデータのうち少なくとも一部のデータ同士を比較した結果に基づいて、第1の文言情報の出現傾向が変化したか否かを判定してもよい。また、情報分析部1902は、算出した異なる種類のデータのうち少なくとも一部のデータと基準データとを比較した結果に基づいて、前記第1の文言情報の出現傾向が変化したか否かを判定してもよい。
第1の文言情報の出現傾向を表す異なる2以上の種類のデータは、例えば、第1の文言情報の出現傾向を算出する期間が異なるデータであってもよい。より具体的には、係るデータは、例えば、所定の期間における第1の文言情報の出現傾向を表すデータと、当該所定の期間よりも長い期間における第1の文言情報の出現傾向を表すデータとを含んでもよい。なお、情報分析部1902は、所定の期間における第1の文言情報の出現傾向を表すデータとして、例えば、当該第1の文言情報のHVを算出してもよい。
上記のように構成された本変形例における情報分析システム1900は、各種テクニカル分析手法を用いて、第1の文言情報の出現傾向を分析可能である。
<第3の実施形態>
次に、本発明の第3の実施形態について説明する。以下、上記第各実施形態と同様の構成については、同一の参照符号を付すことにより説明を省略する。
図20は、本実施形態における情報分析システム2000の機能的な構成を例示するブロック図である。図20に例示するように、本実施形態における情報分析システム2000は、情報保持部1901と、情報分析部2002と、情報集約部2001(情報集約手段)と、を備える。情報分析システム2000を構成するこれらの構成要素の間は、適切な通信方法を用いて通信可能に接続されていてもよい。なお、情報保持部1901は、上記第2の実施形態あるいは第2の実施形態の変形例と同様としてよいので、詳細な説明を省略する。
情報集約部2001は、第1の文言情報を含む参照情報に含まれる、第1の文言情報と関連性を有する他の文言を表す第2の文言情報を抽出する。第1の文言情報、及び、参照情報は、上記第2の実施形態と同様である。
情報集約部2001は、例えば、上記第1の実施形態における情報集約部103と同様に構成されてもよい。また、係る情報集約部2001は、例えば、上記第1の実施形態における情報集約部103と同様の処理を実行してもよい。
情報集約部2001は、例えば、第1の文言情報を含む参照情報に含まれる、他の文言を表す情報を抽出し、当該他の文言を表す情報に関する統計量を算出してもよい。情報集約部2001は、係る統計量に基づいて、抽出した他の文言を表す情報のうち、少なくとも一部を、第2の文言情報として選択してもよい。具体的には、情報集約部2001は、例えば、第1の文言情報を含む1以上の参照情報に含まれるテキストデータを品詞毎に1以上の単語に分解するとともに、当該1以上の単語のうち少なくとも一部の単語の出現数を計数してもよい。この場合、係る単語の出現数が、上記統計量に相当する。この場合、情報集約部2001は、算出した出現数が多い順に、所定の数の単語を第2の文言情報として抽出してもよい。また、情報集約部2001は、出現数が所定の基準値以上の単語を第2の文言情報として抽出してもよい。
情報分析部2002は、情報集約部2001により抽出された第2の文言情報を、新たな第1の文言情報として、当該第1の文言情報の出現傾向を分析する。なお、情報分析部2002は、上記第2の実施形態における情報分析部1902と同様の処理を実行可能である。
上記のように構成された情報分析システム2000によれば、第1の文言情報と関連性を有する第2の文言情報についても、その出現傾向が分析される。そして、情報分析システム2000は、係る分析結果に基づいて、当該第2の文言情報を含む参照情報を情報保持部1901から抽出することができる。これにより、情報分析システム2000によれば、例えば、あるセキュリティ事象に関連して出現傾向が変化したセキュリティ用語、あるいは、当該セキュリティ用語に関連する文言を含む参照情報を、まとめて抽出することが可能である。以上より、情報分析システム2000のユーザは、あるセキュリティ事象に関連する事前知識あるいは経験が少ない場合であっても、当該セキュリティ事象に関連する参照情報をまとめて確認することができる。
<第4の実施形態>
次に、本発明の第4の実施形態について説明する。以下、上記第各実施形態と同様の構成については、同一の参照符号を付すことにより説明を省略する。
図21は、本実施形態における情報分析システム2100の機能的な構成を例示するブロック図である。図21に例示するように本実施形態における情報分析システム2100は、情報保持部1901と、情報分析部1902と、情報提示部2101(情報提示手段)と、を備える。情報分析システム2000を構成するこれらの構成要素の間は、適切な通信方法を用いて通信可能に接続されていてもよい。なお、情報保持部1901、情報分析部1902は、上記第2の実施形態あるいは第2の実施形態の変形例と同様としてよいので、詳細な説明を省略する。
情報提示部2101は、第1の表示領域(後述)と、第2の表示領域(後述)との少なくともいずれかを含む画面データを生成する。第1の表示領域は、情報分析部1902により出現傾向が変化したと判定された第1の文言情報を表示可能な領域である。また、第2の表示領域は、第1の表示領域に表示された第1の文言情報の少なくとも一部を含む参照情報の少なくとも一部を表示可能な領域である。第1の文言情報、及び、参照情報は、上記第2の実施形態と同様である。
また、情報提示部2101は、上記第1の表示領域と、上記第2の表示領域と、第3の表示領域(後述)との、少なくともいずれかを含む画面データを生成してもよい。第3の表示領域は、情報分析部1902が、テクニカル分析手法を用いて第1の文言情報の時系列における出現数を分析した結果を表示可能な領域である。
上記第1乃至第3の表示領域は、例えば、それぞれ、上記第1の実施形態における第1乃至第3の表示領域と同様の表示形式を採用してもよい。また、情報提示部2101は、上記第1の実施形態における情報提示部106と同様に構成されてもよい。また、情報提示部2101は、上記第1の実施形態における情報提示部106と同様の処理を実行してもよい。
上記のように構成された情報分析システム2100によれば、情報分析システム2100のユーザが、出現傾向が変化した第1の文言情報と、当該第1の文言情報に関連する各種情報(参照情報)とを容易に確認可能である。その理由は、情報提示部2101が、情報分析部1902による分析結果を表示可能な表示領域を含む画面データを生成するからである。情報提示部2101により、出現傾向が変化した第1の文言情報がユーザに提示されることから、情報分析システムのユーザは、例えば、何らかのセキュリティ事象が発生した際、当該セキュリティ事象に関する情報を適時に確認することが可能である。
<第4の実施形態の変形例>
次に、上記説明した第4の実施形態の変形例について説明する。以下、上記第各実施形態と同様の構成については、同一の参照符号を付すことにより説明を省略する。
図22は、本変形例における情報分析システム2200の機能的な構成を例示するブロック図である。本変形例における情報分析システム2200の機能的な構成は、上記第4の実施形態における情報分析システム2100に対して、情報集約部2001を追加し、情報分析部1902を情報分析部2002に変更した構成と同様である。
本変形例における情報保持部1901、情報集約部2001、情報分析部2002、及び、情報提示部2101は、それぞれ上記各実施形態と同様としてよいので、詳細な説明を省略する。
上記のように構成された本変形例によれば、情報分析システム2200のユーザは、例えば、何らかのセキュリティ事象に関連する情報をまとめて確認することができる。その理由は、情報集約部2001が、第1の文言情報と関連性を有する第2の文言情報を抽出し、情報分析部2002が、当該第2の文言情報を新たな第1の文言情報として、その出現傾向を分析するからである。情報提示部2101により、第1及び第2の文言情報に関する参照情報あるいは分析結果を含む画面データが生成されることから、情報分析システム2200のユーザは、これらの情報をまとめて確認することが可能である。
<ハードウェア及びソフトウェア・プログラム(コンピュータ・プログラム)の構成>
以下、上記説明した各実施形態を実現可能なハードウェア構成について説明する。
以下の説明においては、上記各実施形態において説明した情報分析システム(100、1900、2000、2100、2200)をまとめて、単に「情報分析システム」と記載する。また、これら情報分析システムの各構成要素を、単に「情報分析システムの構成要素」と記載する場合がある。
上記各実施形態において説明した情報分析システムは、1つ又は複数の専用のハードウェア装置により構成されてもよい。その場合、上記各図(図1、図19、図20、図21、図22)に示した各構成要素は、その一部又は全部を統合したハードウェア(処理ロジックを実装した集積回路あるいは記憶デバイス等)を用いて実現されてもよい。
情報分析システムが専用のハードウェアにより実現される場合、係る情報分析システムの構成要素は、例えば、それぞれの機能を提供可能な回路構成(circuitry)により実現されてもよい。係る回路構成は、例えば、SoC(System on a Chip)等の集積回路や、当該集積回路を用いて実現されたチップセット等を含む。この場合、情報分析システムの構成要素が保持するデータは、例えば、SoCとして統合されたRAM(Random Access Memory)領域やフラッシュメモリ領域、あるいは、当該SoCに接続された記憶デバイス(半導体記憶装置等)に記憶されてもよい。また、この場合、情報分析システムの各構成要素を接続する通信回線としては、周知の通信ネットワークを採用してもよい。また、各構成要素を接続する通信回線は、それぞれの構成要素間をピアツーピアで接続してもよい。
また、上述した情報分析システムは、図23に例示するような汎用のハードウェアと、係るハードウェアによって実行される各種ソフトウェア・プログラム(コンピュータ・プログラム)とによって構成されてもよい。この場合、情報分析システムは、任意の数の、汎用のハードウェア装置及びソフトウェア・プログラムにより構成されてもよい。即ち、情報分析システムを構成する構成要素毎に、個別のハードウェア装置が割当てられてもよく、複数の構成要素が、一つのハードウェア装置を用いて実現されてもよい。
図23における演算装置2301は、汎用のCPU(中央処理装置:Central Processing Unit)やマイクロプロセッサ等の演算処理装置である。演算装置2301は、例えば後述する不揮発性記憶装置2303に記憶された各種ソフトウェア・プログラムを記憶装置2302に読み出し、係るソフトウェア・プログラムに従って処理を実行してもよい。例えば、上記各実施形態における情報分析システムの構成要素の機能は、演算装置2301により実行されるソフトウェア・プログラムを用いて実現されてもよい。
記憶装置2302は、演算装置2301から参照可能な、RAM等のメモリ装置であり、ソフトウェア・プログラムや各種データ等を記憶する。なお、記憶装置2302は、揮発性のメモリ装置であってもよい。
不揮発性記憶装置2303は、例えば磁気ディスクドライブや、フラッシュメモリによる半導体記憶装置等の、不揮発性の記憶装置である。不揮発性記憶装置2303は、各種ソフトウェア・プログラムやデータ等を記憶可能である。例えば、情報保持部102における情報データベース102a、辞書データベース102bは、不揮発性記憶装置2303に記憶されてもよい。
ネットワークインタフェース2306は、通信ネットワークに接続するインタフェース装置であり、例えば有線及び無線のLAN接続用インタフェース装置を採用してもよい。例えば、情報分析システムは、ネットワークインタフェース2306を介して、各種通信ネットワーク200に接続可能である。また、例えば、セキュリティ機器300が通信ネットワークに接続されている場合、脅威情報出力部107は、ネットワークインタフェース2306を介して、セキュリティ機器300に脅威記述データを送信してもよい。
ドライブ装置2304は、例えば、後述する記録媒体2305に対するデータの読み込みや書き込みを処理する装置である。
記録媒体2305は、例えば光ディスク、光磁気ディスク、半導体フラッシュメモリ等、データを記録可能な任意の記録媒体である。
入出力インタフェース2307は、外部装置との間の入出力を制御する装置である。例えば、情報提示部(106、2101)は、入出力インタフェース2307を介して接続された表示装置に、画面データを提供してもよい。
上述した各実施形態を例に説明した本発明における情報分析システム、あるいはその構成要素は、例えば、図23に例示するハードウェア装置に対して、上記各実施形態において説明した機能を実現可能なソフトウェア・プログラムを供給することにより、実現されてもよい。より具体的には、例えば、係るハードウェア装置に対して供給したソフトウェア・プログラムを、演算装置2301が実行することによって、本発明が実現されてもよい。この場合、係るハードウェア装置で稼働しているオペレーティングシステムや、データベース管理ソフト、ネットワークソフト、仮想環境基盤等のミドルウェアなどが各処理の一部を実行してもよい。
上述した各実施形態において、上記各図に示した各部は、上述したハードウェアにより実行されるソフトウェア・プログラムの機能(処理)単位である、ソフトウェアモジュールとして実現することができる。ただし、これらの図面に示した各ソフトウェアモジュールの区分けは、説明の便宜上の構成であり、実装に際しては、様々な構成が想定され得る。
図1、図19、図20、図21、及び、図22に例示した情報分析システムの各構成要素をソフトウェアモジュールとして実現する場合、例えば、これらのソフトウェアモジュールが不揮発性記憶装置2303に記憶される。そして、演算装置2301がそれぞれの処理を実行する際に、これらのソフトウェアモジュールを記憶装置2302に読み出す。
また、これらのソフトウェアモジュールは、共有メモリやプロセス間通信等の適宜の方法により、相互に各種データを伝達できるように構成されてもよい。このような構成により、これらのソフトウェアモジュールは、相互に通信可能に接続される。
更に、上記ソフトウェア・プログラムは記録媒体2305に記録されてもよい。この場合、上記ソフトウェア・プログラムは、上記情報分析システムの構成要素の出荷段階、あるいは運用段階等において、適宜ドライブ装置2304を通じて不揮発性記憶装置2303に格納されるよう構成されてもよい。
なお、上記の場合において、上記ハードウェアへの各種ソフトウェア・プログラムの供給方法は、出荷前の製造段階、あるいは出荷後のメンテナンス段階等において、適当な治具を利用して当該装置内にインストールする方法を採用してもよい。また、各種ソフトウェア・プログラムの供給方法は、インターネット等の通信回線を介して外部からダウンロードする方法等のように、現在では一般的な手順を採用してもよい。
そして、このような場合において、本発明は、係るソフトウェア・プログラムを構成するコード、あるいは係るコードが記録されたところの、コンピュータ読み取り可能な記録媒体によって構成されると捉えることができる。この場合、係る記録媒体は、ハードウェア装置と独立した媒体に限らず、LANやインターネットなどにより伝送されたソフトウェア・プログラムをダウンロードして記憶又は一時記憶した記録媒体を含む。
また、上述した情報分析システムの構成要素は、図23に例示するハードウェア装置を仮想化した仮想化環境と、当該仮想化環境において実行される各種ソフトウェア・プログラム(コンピュータ・プログラム)とによって構成されてもよい。この場合、図23に例示するハードウェア装置の構成要素は、当該仮想化環境における仮想デバイスとして提供される。なお、この場合も、図23に例示するハードウェア装置を物理的な装置として構成した場合と同様の構成にて、本発明を実現可能である。上記の実施形態の一部又は全部
は、以下の付記のようにも記載されうるが、以下には限られない。
[付記1]
情報源から取得した参照情報を保持する情報保持手段と、
時系列において異なるタイミングで取得された前記参照情報に含まれるセキュリティに関連する文言を表す第1の文言情報の出現傾向を分析し、出現傾向が変化した前記第1の文言情報を含む前記参照情報を、前記情報保持手段から抽出する情報分析手段と、を備える情報分析システム。
[付記2]
前記情報分析手段は、テクニカル分析手法を用いて、前記参照情報に含まれる前記第1の文言情報の時系列における出現数を分析することにより、前記第1の文言情報の出現傾向を表すデータを1以上算出し、その算出したデータの間の関係性に基づいて、前記第1の文言情報の出現傾向が変化したか否かを判定する付記1に記載の情報分析システム。
[付記3]
前記情報分析手段は、テクニカル分析手法を用いて、前記参照情報に含まれる前記第1の文言情報の時系列における出現数を分析することにより、前記第1の文言情報の出現傾向を表すデータを1以上算出し、その算出したデータと、基準データとの間の関係性に基づいて、前記第1の文言情報の出現傾向が変化したか否かを判定する付記1に記載の情報分析システム。
[付記4]
前記情報分析手段は、少なくとも2つの異なるタイミングにおける前記第1の文言情報の出現傾向を表すデータを算出し、算出したデータのうち少なくとも一部のデータ同士を比較した結果、及び、算出したデータのうち少なくとも一部のデータを基準データと比較した結果の少なくともいずれかに基づいて、前記第1の文言情報の出現傾向が変化したか否かを判定する付記2又は付記3に記載の情報分析システム。
[付記5]
前記情報分析手段は、前記第1の文言情報の時系列における出現数のMACD(Moving Average Convergence Divergence)と、MACDシグナルと、MACDヒストグラムとのいずれかを用いて、異なるタイミングにおける前記第1の文言情報の出現傾向を表すデータを算出する、
付記4に記載の情報分析システム。
[付記6]
前記情報分析手段は、2つの異なるタイミングにおける前記第1の文言情報のMACDヒストグラムをそれぞれ算出し、算出したMACDヒストグラム同士の積の符号が負である場合に、前記第1の文言情報の出現傾向が変化したと判定する付記5に記載の情報分析システム。
[付記7]
前記情報分析手段は、1つの前記第1の文言情報に関して、当該第1の文言情報の出現傾向を表す2以上の異なる種類のデータを算出し、算出したデータのうち少なくとも一部のデータ同士を比較した結果、及び、算出したデータのうち少なくとも一部のデータと基準データとを比較した結果の少なくともいずれかに基づいて、前記第1の文言情報の出現傾向が変化したか否かを判定する付記2又は付記3に記載の情報分析システム。
[付記8]
前記情報分析手段は、前記第1の文言情報について、所定の期間内における当該第1の文言情報の出現数の変化率の標準偏差を求めることにより、前記第1の文言情報の出現傾向を表すデータを算出する、付記7に記載の情報分析システム。
[付記9]
前記第1の文言情報を含む前記参照情報に含まれる、前記第1の文言情報と関連性を有する他の文言を表す第2の文言情報を抽出する情報集約手段を更に備え、
前記情報分析手段は、前記第2の文言情報を新たな前記第1の文言情報として、当該第1の文言情報の出現傾向を分析する付記2乃至付記8のいずれか一項に記載の情報分析システム。
[付記10]
前記情報集約手段は、前記第1の文言情報を含む前記参照情報に含まれる、1以上の他の文言を表す情報を抽出し、当該他の文言を表す情報に関する統計量に基づいて、当該他の文言を表す情報のうちの少なくとも一部を、前記第2の文言情報として選択する付記9に記載の情報分析システム。
[付記11]
前記情報集約手段は、
前記第1の文言情報を含む1以上の前記参照情報に含まれるテキストデータを品詞毎に1以上の単語を表す情報に分解するとともに、当該単語を表す情報の出現数を計数し、 出現数が多い順に、所定の数の前記単語を表す情報を前記第2の文言情報として抽出するか、又は、出現数が所定の基準値以上の前記単語を表す情報を前記第2の文言情報として抽出する付記10に記載の情報分析システム。
[付記12]
前記情報分析手段により出現傾向が変化したと判定された前記第1の文言情報を表示可能な第1の表示領域と、当該第1の表示領域に表示された前記第1の文言情報の少なくとも一部を含む前記参照情報の少なくとも一部を表示可能な第2の表示領域と、の少なくともいずれかを含む画面データを生成する情報提示部を更に備える付記2乃至付記11のいずれか一項に記載の情報分析システム。
[付記13]
前記情報提示部は、前記情報分析手段により前記テクニカル分析手法を用いて分析された、前記第1の文言情報の時系列における出現傾向の分析結果を表示可能な第3の表示領域と、前記第1の表示領域と、前記第2の表示領域と、の少なくともいずれかを含む前記画面データを生成する、付記12に記載の情報分析システム。
[付記14]
前記情報分析手段により出現傾向が変化したと判定された前記第1の文言情報を含む前記参照情報から抽出した、所定の書式に適合するデータを用いて、前記第1の文言情報に関連するセキュリティの脅威と、当該脅威に関する対処措置とを所定の構造化された形式を用いて記述した脅威記述データを生成する脅威情報出力部を更に備える、付記2乃至付記13のいずれか一項に記載の情報分析システム。
[付記15]
前記脅威情報出力部は、前記参照情報から、前記所定の書式に適合するデータとして、通信ネットワークにおけるリソースを特定可能なデータを抽出し、抽出した当該データにより特定されるリソースに対するアクセスを制限する対処措置を記述した前記脅威記述データを生成する、付記14に記載の情報分析システム。
[付記16]
時系列において異なるタイミングで情報源から取得した参照情報に含まれる、セキュリティに関連する文言を表す第1の文言情報の出現傾向を分析し、
出現傾向が変化した前記第1の文言情報を含む前記参照情報を抽出する情報分析方法。
[付記17]
情報源から取得した参照情報を保持する処理と、
時系列において異なるタイミングで取得された前記参照情報に含まれるセキュリティに関連する文言を表す第1の文言情報の出現傾向を分析する処理と、
出現傾向が変化した前記第1の文言情報を含む前記参照情報を抽出する処理と、をコンピュータに実行させるコンピュータ・プログラムが記憶された、記録媒体。
[付記18]
付記1乃至付記15のいずれか一項に記載の情報分析システムを、単体の装置として実現する情報分析装置。
[付記19]
時系列において異なるタイミングで情報源から取得した参照情報に含まれる、セキュリティに関連する文言を表す第1の文言情報の出現傾向を分析し、
出現傾向が変化した前記第1の文言情報と、出現傾向が変化した前記第1の文言情報を含む前記参照情報と、前記第1の文言情報に関する出現傾向の分析結果と、の少なくともいずれかを表示する情報分析方法。
[付記20]
時系列において異なるタイミングで情報源から取得した参照情報に含まれる、セキュリティに関連する文言を表す第1の文言情報の出現傾向を分析し、
前記参照情報に含まれる、前記第1の文言情報と関連性を有する第2の文言情報を抽出するとともに、当該第2の文言情報の出現傾向を分析し、
出現傾向が変化した前記第1又は前記第2の文言情報と、出現傾向が変化した前記第1又は前記第2の文言情報を含む前記参照情報と、前記第1又は前記第2の文言情報に関する出現傾向の分析結果と、の少なくともいずれかを表示する情報分析方法。
以上、本発明を、上述した模範的な実施形態に適用した例として説明した。しかしながら、本発明の技術的範囲は、上述した各実施形態に記載した範囲には限定されない。当業者には、係る実施形態に対して多様な変更又は改良を加えることが可能であることは明らかである。そのような場合、係る変更又は改良を加えた新たな実施形態も、本発明の技術的範囲に含まれ得る。更に、上述した各実施形態、あるいは、係る変更又は改良を加えた新たな実施形態を組合せた実施形態も、本発明の技術的範囲に含まれ得る。そしてこのことは、請求の範囲に記載した事項から明らかである。
この出願は、2015年12月14日に出願された日本出願特願2015−243208を基礎とする優先権を主張し、その開示の全てをここに取り込む。