特許第5797827号(P5797827)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ 株式会社ラックの特許一覧

特許5797827情報分析システム、情報分析方法およびプログラム
<>
  • 特許5797827-情報分析システム、情報分析方法およびプログラム 図000002
  • 特許5797827-情報分析システム、情報分析方法およびプログラム 図000003
  • 特許5797827-情報分析システム、情報分析方法およびプログラム 図000004
  • 特許5797827-情報分析システム、情報分析方法およびプログラム 図000005
  • 特許5797827-情報分析システム、情報分析方法およびプログラム 図000006
  • 特許5797827-情報分析システム、情報分析方法およびプログラム 図000007
  • 特許5797827-情報分析システム、情報分析方法およびプログラム 図000008
  • 特許5797827-情報分析システム、情報分析方法およびプログラム 図000009
  • 特許5797827-情報分析システム、情報分析方法およびプログラム 図000010
  • 特許5797827-情報分析システム、情報分析方法およびプログラム 図000011
  • 特許5797827-情報分析システム、情報分析方法およびプログラム 図000012
  • 特許5797827-情報分析システム、情報分析方法およびプログラム 図000013
  • 特許5797827-情報分析システム、情報分析方法およびプログラム 図000014
  • 特許5797827-情報分析システム、情報分析方法およびプログラム 図000015
  • 特許5797827-情報分析システム、情報分析方法およびプログラム 図000016
  • 特許5797827-情報分析システム、情報分析方法およびプログラム 図000017
  • 特許5797827-情報分析システム、情報分析方法およびプログラム 図000018
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】5797827
(24)【登録日】2015年8月28日
(45)【発行日】2015年10月21日
(54)【発明の名称】情報分析システム、情報分析方法およびプログラム
(51)【国際特許分類】
   G06F 21/55 20130101AFI20151001BHJP
   G06F 17/30 20060101ALI20151001BHJP
【FI】
   G06F21/55 320
   G06F17/30 220Z
   G06F17/30 210D
【請求項の数】3
【全頁数】25
(21)【出願番号】特願2014-217997(P2014-217997)
(22)【出願日】2014年10月27日
(62)【分割の表示】特願2014-74606(P2014-74606)の分割
【原出願日】2014年3月31日
【審査請求日】2015年6月11日
【早期審査対象出願】
(73)【特許権者】
【識別番号】500072884
【氏名又は名称】株式会社ラック
(74)【代理人】
【識別番号】100104880
【弁理士】
【氏名又は名称】古部 次郎
(74)【代理人】
【識別番号】100118108
【弁理士】
【氏名又は名称】久保 洋之
(72)【発明者】
【氏名】武智 洋
(72)【発明者】
【氏名】土屋 和英
(72)【発明者】
【氏名】阿部 正道
(72)【発明者】
【氏名】影山 徹哉
(72)【発明者】
【氏名】川口 洋
(72)【発明者】
【氏名】鷲尾 浩之
(72)【発明者】
【氏名】馬着 篤
(72)【発明者】
【氏名】塩出 一平
(72)【発明者】
【氏名】木村 雅弘
(72)【発明者】
【氏名】藤本 博史
【審査官】 宮司 卓佳
(56)【参考文献】
【文献】 米国特許出願公開第2003/0188189(US,A1)
【文献】 特開2010−152773(JP,A)
【文献】 特開2008−83751(JP,A)
【文献】 特開2005−202664(JP,A)
【文献】 特開2009−20812(JP,A)
【文献】 特開2006−319633(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F21/00−21/88
G06F17/30
(57)【特許請求の範囲】
【請求項1】
分析対象情報を発生させる事象により発生した分析対象情報に対して、予め設定された規則に基づく共通情報を付加し、当該分析対象情報の内容および当該共通情報に基づいて情報粒度を揃え、分析単位情報として出力する処理ユニットと、
前記処理ユニットから出力された前記分析単位情報を、予め設定された規則に基づいて集積して検出対象の事象の候補とし、予め設定された規則に基づいて当該検出対象の事象の候補により特定される前記分析対象情報を発生させた前記事象が特定の性質を有する事象か否かを判断し、判断結果を出力する処理ユニットと、
を備えることを特徴とする、情報分析システム。
【請求項2】
コンピュータにより分析対象情報を分析する方法であって、
前記コンピュータが、分析対象情報を発生させる事象により発生した分析対象情報に対して、予め設定された規則に基づく共通情報を付加し、当該分析対象情報の内容および当該共通情報に基づいて情報粒度を揃え、分析単位情報に変換するステップと、
前記コンピュータが、前記分析単位情報を、予め設定された規則に基づいて集積して検出対象の事象の候補とするステップと、
前記コンピュータが、予め設定された規則に基づいて当該検出対象の事象の候補により特定される前記分析対象情報を発生させた前記事象が特定の性質を有する事象か否かを判断するステップと、
を含むことを特徴とする、情報分析方法。
【請求項3】
コンピュータを制御して分析対象情報を分析させるプログラムであって、
前記コンピュータに、
分析対象情報を発生させる事象により発生した分析対象情報に対して、予め設定された規則に基づく共通情報を付加し、当該分析対象情報の内容および当該共通情報に基づいて情報粒度を揃え、分析単位情報に変換する処理と、
前記分析単位情報を、予め設定された規則に基づいて集積して検出対象の事象の候補に変換する処理と、
予め設定された規則に基づいて当該検出対象の事象の候補により特定される前記分析対象情報を発生させた前記事象が特定の性質を有する事象か否かを判断する処理と、
を実行させることを特徴とする、プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、所定の事象により発生する分析対象情報を分析する情報分析システムに関する。
【背景技術】
【0002】
インターネット等の情報通信ネットワーク(以下、単にネットワークと記す)を利用して、様々な情報システムにおいて大量のデータの通信や処理が行われている。一方、ネットワーク上で稼働しているサーバや各種の端末装置等の機器に対する不正なアクセスやサーバ等からの不正な情報流出等の問題が生じ得る。
【0003】
例えば、データ通信に関しては、不正な通信による被害を抑えるために、通信ログを後で検査するのではなく、通信をリアルタイムで監視することが望ましい。そのような従来技術として、例えば、各種監視装置からのセキュリティ・イベントを収集し、記憶し、記憶されたセキュリティ・イベントのサブセットを、イベント・ストリームとしてマネージャに供給し、イベント・ストリームにおける1以上の未知のイベント・パターンをマネージャによって発見するものがある(例えば、特許文献1参照)。
【0004】
また従来、ネットワーク上のサーバにおける通信を監視して、不正なアクセスやデータの送受信を検出し、対応処理することが行われている。複数のサーバを監視対象として、その通信をセンターで監視することも行われている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特表2007−536646号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
上記のネットワーク上の情報通信の監視等のように、大量のログを分析して特定の性質を有する処理(例えば問題のある通信)を抽出する情報処理では、通常、分析対象として取得されるログのデータ量は膨大であるが、その一方で、抽出すべき特定の性質を有する処理またはその可能性のある処理に関するログはごくわずかに過ぎない。そのため、分析対象のログを適切に絞り込んで効率良く分析することは、通信の検査に関わらず、広く情報処理の様々な分野で要請されている。
【0007】
本発明の目的は、情報分析において、対象を絞り込んで、効率の良い分析を可能とする情報分析システムを提供することにある。
【課題を解決するための手段】
【0008】
上記の目的を達成するため、本発明は、次のようなシステムとして実現される。このシステムは、分析対象情報を発生させる事象により発生した分析対象情報に対して、予め設定された規則に基づく共通情報を付加し、この分析対象情報の内容および共通情報に基づいて情報粒度を揃え、分析単位情報として出力する処理ユニットと、この処理ユニットから出力された分析単位情報を、予め設定された規則に基づいて集積して検出対象の事象の候補とし、予め設定された規則に基づいて、この検出対象の事象の候補により特定される分析対象情報を発生させた事象が特定の性質を有する事象か否かを判断し、判断結果を出力する処理ユニットと、を備えることを特徴とする。
【0009】
また、本発明は次のような方法としても実現される。この方法は、コンピュータにより分析対象情報を分析する方法であって、分析対象情報を発生させる事象により発生した分析対象情報に対して、予め設定された規則に基づく共通情報を付加し、この分析対象情報の内容および共通情報に基づいて情報粒度を揃え、分析単位情報に変換するステップと、この分析単位情報を、予め設定された規則に基づいて集積して検出対象の事象の候補とするステップと、予め設定された規則に基づいて、この検出対象の事象の候補により特定される分析対象情報を発生させた事象が特定の性質を有する事象か否かを判断するステップと、を含むことを特徴とする。
【0010】
さらに本発明は、コンピュータを制御して上述したシステムの各機能を実現するプログラム、あるいは、コンピュータに上記の各ステップに対応する処理を実行させるプログラムとしても実現される。このプログラムは、磁気ディスクや光ディスク、半導体メモリ、その他の記録媒体に格納して配布したり、ネットワークを介して配信したりすることにより、提供することができる。
【発明の効果】
【0011】
本発明によれば、情報分析において、対象を絞り込んで、効率の良い分析を行うことができる。
【図面の簡単な説明】
【0012】
図1】本実施形態のセキュリティ監視システムの構成例を示す図である。
図2】監視サブシステムを構成する収集ユニットの機能構成例を示す図である。
図3】コンポーネント化された処理単位ブロックにより構成される収集ユニットの構成例を示す図である。
図4】監視サブシステムを構成する検出ユニットの機能構成例を示す図である。
図5】コンポーネント化された処理単位ブロックにより構成される検出ユニットの構成例を示す図である。
図6】監視サブシステムを構成する分析ユニットの機能構成例を示す図である。
図7】相関分析の概念を示す図である。
図8】増分分析の概念を示す図であり、図8(a)は、ある分析時における相関分析の対象となった検出事象候補の構成例を示し、図8(b)は、次の分析時における同じ検出事象候補の構成例を示す図である。
図9】コンポーネント化された処理単位ブロックを含む個別分析処理部、イベント集積処理部、相関分析処理部および増分分析処理部により構成される分析ユニットの構成例を示す図である。
図10】監視サブシステムの手動分析ユニットの機能構成例を示す図である。
図11】本実施形態における通信ログファイルの伝達方式を説明する図である。
図12】本実施形態による通信ログファイルの伝達の一例を示す図である。
図13】本実施形態による通信ログファイルの伝達の他の例を示す図である。
図14】本実施形態による通信ログファイルの伝達のさらに他の例を示す図である。
図15】端末装置の機能構成例を示す図である。
図16】分析用画面の構成例を示す図である。
図17】本実施形態の監視サブシステムの各サーバや端末装置を構成するのに好適なハードウェア構成例を示す図である。
【発明を実施するための形態】
【0013】
以下、添付図面を参照して、本発明の実施形態について詳細に説明する。
以下では、検査対象のシステムから検知対象処理のログ(検知ログ)を取得して分析する本実施形態のログ分析システムを、検知対象処理としてネットワーク上の通信を監視し、検知ログとして通信ログを取得し分析するセキュリティ監視システムに適用した場合を例として説明する。ネットワークに接続されたサーバ等の情報処理装置では、ネットワークを介して様々な通信が行われる。本実施形態のセキュリティ監視システム(SOC(Security Operation Center)システム)は、監視対象装置である情報処理装置の通信を監視し、抽出すべき特定の性質を有する検知対象処理の一例として、外部からの不正なアクセスや内部からの不正な情報流出等のような問題のある通信を抽出する。
【0014】
<システム構成例>
図1は、本実施形態のセキュリティ監視システムの構成例を示す図である。
図1に示すように、本実施形態によるセキュリティ監視システムは、監視対象装置100における通信を監視して通信ログを取得する取得装置としての検知デバイス110、ログ取得エージェント121およびログ管理サブシステム120と、取得された通信ログを処理して問題のある通信を抽出する処理装置としての監視サブシステム200と、監視サブシステム200による処理の結果を出力する出力装置としての端末装置300とを備える。図1に示す構成において、監視対象装置100に搭載される検知デバイス110およびログ取得エージェント121と、ログ管理サブシステム120、監視サブシステム200および端末装置300とを区別するために、監視対象装置100に搭載される構成要素を対象側システムと呼び、ログ管理サブシステム120、監視サブシステム200および端末装置300をセンター側システムと呼ぶ場合がある。なお、図1において、監視対象装置100は1台のみが例示されているが、実際のシステムにおいては、複数の監視対象装置100における通信を監視対象とする。
【0015】
監視対象装置100は、本実施形態によるセキュリティ監視システムの監視対象であり、検知デバイス110およびログ管理サブシステム120により取得されるログを生成する装置である。具体的には、IDS(Intrusion Detection System)やIPS(Intrusion Prevention System)等のセキュリティ・システム、ファイア・ウォールやウィルス対策ソフト等のソフトウェア等が搭載されて動作しているサーバ等である。
なお、本実施形態では、セキュリティ監視システムとしてのログ分析システムが、ネットワーク通信を監視対象として通信ログを取得する例について説明するが、通信以外の種々の処理において生成される様々なログを取得し検査するために本実施形態のログ分析システムを適用することも可能である。
【0016】
検知デバイス110は、センサ111と、センサ・マネージャ112とで構成される。センサ111は、本実施形態によるセキュリティ監視システムの監視対象単位であり、例えば監視対象装置100における通信の検知機能を用いて実現され、通信に関するデータをリアルタイムで取得する。センサ・マネージャ112は、例えば監視対象装置100の機能を用いて実現され、センサ111を管理する。すなわち、センサ111およびセンサ・マネージャ112は、上述した、IDS/IPS、ファイア・ウォール、ウィルス対策ソフト等の種々のセキュリティ・システムの機能として、ソフトウェアやソフトウェアとハードウェアとの組み合わせ等の様々な形態で提供される。実際のシステムにおいては、監視対象として設定された監視対象装置100の仕様や用途、使用環境などに応じて、様々な種類のセンサ111およびセンサ・マネージャ112が使用される。
【0017】
ログ取得エージェント121は、センサ・マネージャ112の管理下でセンサ111により取得された通信に関するデータを、通信ログとして、リアルタイムでログ管理サブシステム120へ送信する。本実施形態では、このログ取得エージェント121によりログ管理サブシステム120に送られる通信ログを「生ログ」と呼ぶ。ログ取得エージェント121は、例えば、コンピュータ・プログラムとして提供され、このログ取得エージェント121が監視対象装置100にインストールされて実行されることにより、生ログをログ管理サブシステム120へ送信する機能が実現される。生ログを取得するセンサ111およびセンサ・マネージャ112には、上述したように様々な種類のものが用いられ得る。そのため、生ログに含まれる情報の内容や形式は、生ログを取得したセンサ111およびセンサ・マネージャ112の種類に応じて異なる場合がある。
なお、図1に示す構成例では、ログ取得エージェント121を対象側システムとして監視対象装置100に搭載する構成としたが、監視対象装置100に搭載せずにセンター側システムとして構成しても良い。この場合、ネットワークを介して監視対象装置100に接続された独立のサーバ等としてログ取得エージェント121を構成しても良いし、ログ管理サブシステム120の機能の一つとしてログ取得エージェント121を実現しても良い。
【0018】
ログ管理サブシステム120は、ログ取得エージェント121から生ログを取得する。したがって、ログ管理サブシステム120においては、ログ取得エージェント121ごとの生ログが取得される。また、ログ管理サブシステム120は、取得した生ログをセンサ111ごとの通信ログファイルに分割し、リアルタイムで監視サブシステム200へ送信する。ログ管理サブシステム120は、例えば、コンピュータにより実現される。すなわち、コンピュータの記憶装置に格納されたプログラムをCPUが実行することにより、ログ取得エージェント121から取得した生ログを通信ログファイルに分割して監視サブシステム200へ送信する上記の機能が実現される。
【0019】
監視サブシステム200は、ログ管理サブシステム120から取得した通信ログファイルに対する処理を行う処理ユニットとして、収集ユニット210と、検出ユニット220と、分析ユニット230と、手動分析ユニット240とを備える。この監視サブシステム200は、ログ管理サブシステム120から取得した通信ログファイルをこれらの処理ユニット210、220、230、240により順次処理し、問題のある通信を抽出する。言い換えると、監視サブシステム200は、通信ログファイルに示される監視対象装置100で行われた通信を、問題のある通信と問題のない通信とに仕分ける。
【0020】
監視サブシステム200における処理ユニット210、220、230、240は、各々、複数のサーバ(ハードウェア)により実現することが可能であり、各サーバが並列かつ非同期に処理を実行することができる。そこで、本実施形態において、監視サブシステム200における処理ユニット210、220、230、240間の通信ログファイルの伝達には、例えばJMS(Java Message Service)等に基づく非同期通信が用いられる。監視サブシステム200は、例えば、コンピュータにより実現される。すなわち、コンピュータの記憶装置に格納されたプログラムをCPUが実行することにより、各処理ユニット210、220、230、240の機能が実現される。各処理ユニット210、220、230、240およびユニット間における通信の詳細については後述する。
【0021】
端末装置300は、監視サブシステム200による処理結果を出力する装置であり、監視対象装置100における通信を解析する解析者(アナリスト)が使用する装置である。監視サブシステム200による処理の結果として、監視対象装置100における通信は、問題のある通信と問題のない通信とに仕分けられる。ここで、問題のある通信には、不正な通信であることが明らかなものと、不正な通信である可能性のあるもの(問題のない通信と特定できないもの)とが含まれる。端末装置300の使用者である解析者は、端末装置300に出力された監視サブシステム200の処理結果に基づき、この不正な通信である可能性のある通信を解析して、不正な通信か否かを判断することができる。
【0022】
端末装置300は、例えば、コンピュータにより実現される。すなわち、コンピュータの記憶装置に格納されたプログラムをCPUが実行することにより、端末装置300の各機能が実現される。端末装置300の具体的な機能と、端末装置300において出力される情報の内容および出力形式の詳細については後述する。
【0023】
<収集ユニットの機能>
図2は、監視サブシステム200を構成する収集ユニット210の機能構成例を示す図である。
第1処理ユニットである収集ユニット210は、ログ管理サブシステム120から取得した通信ログファイルに対して、その通信ログファイルの元の通信ログ(生ログ)を取得した検知デバイス110の種類ごとに設定された処理を行う。ここで、検知デバイス110の種類とは、検知デバイス110のセンサ111およびセンサ・マネージャ112の機能を提供するIDS/IPS、ファイア・ウォール、ウィルス対策ソフト等の製品の種別を意味する。なお、検知デバイス110の種類を特定する情報(ID、製品名等)は、例えば、通信ログファイルに含まれている。
【0024】
図2に示すように、本実施形態の収集ユニット210は、取得した通信ログファイルに対する処理として、分析対象ログの抽出処理、通信ログの正規化処理、通信ログの振り分け処理、フィルタリング処理を行う。
【0025】
分析対象ログの抽出処理では、ログ管理サブシステム120から取得した通信ログファイルに含まれる通信ログのうち、監視サブシステム200による処理(分析)の対象となる通信ログが抽出される。ログ管理サブシステム120から取得した通信ログファイル(生ログ)には、検知デバイス110のセンサ111が起動した/停止したといった動作のログ等(分析に不要なログ)も含まれている。そこで、予め設定された監視サブシステム200の処理対象(分析対象)となる情報のみを抽出し、他の情報を除去する。
【0026】
通信ログの正規化処理では、抽出された分析対象の通信ログを予め定められた規則に基づいて正規化する。具体的には、通信ログにおける日時、プロトコル番号、送信元IPアドレス(Internet Protocol Address)、送信元ポート、宛先IPアドレス、宛先ポート等の情報を、共通の形式に整える。例えば、日時を記述する基準(西暦か和暦か等)および書式を統一したり、IPアドレスの表記法(記数法)を統一したりする。
【0027】
ここで、検知デバイス110の種類によっては、取得された通信ログに正規化処理の対象となる情報の一部が含まれない場合がある。このような場合の対応としては、予め設定されたデフォルト値を代入する、情報が無いことを示す値(Null)を代入する、情報を補完せずに分析を行う、等が考えられる。具体的には、不足している情報の種類に応じて、何れの対応を取るかが定められる。なお、通信ログの書式がその通信ログを取得した検知デバイス110の製品仕様に合致しない場合や、取得した通信ログにおける値が異常な場合(例えば、日時の値が未来の日時になっている等)は、不正な通信ログであるとして、分析対象から除去し、不正な通信ログを格納するデータベースに保存する。
【0028】
通信ログの振り分け処理は、検知デバイス110が複数の監視対象装置100における通信を対象とするデータセンタ方式である場合に、正規化された通信ログを、契約等により定められた監視対象ごとの通信ログに分割する処理である。例えば、ネットワーク上に設けられた検知デバイス110によるサービスを、登録された監視対象装置100が利用する環境で実施すると、一つの検知デバイス110が複数の監視対象装置100の通信を検知することがあり得る。この場合、検知デバイス110により取得された通信ログファイルには、複数の監視対象装置100における通信ログが含まれることとなる。そこで、顧客単位で通信ログの分析を行うため、本実施形態では、監視対象装置100ごとに通信ログを分割する。したがって、データセンタ方式による実施形態を採用せず、監視対象ごとに個別の検知デバイス110が設けられている場合は、この通信ログの振り分け処理は不要である(通信ログは、予め振り分けられた状態となっている)。
【0029】
通信ログの振り分けは、例えば、IPアドレスの範囲(レンジ)情報に基づいて行われる。例えば、検知デバイス110の扱うIPアドレスが「x.x.x.1」〜「x.x.x.30」(xは0〜255の数値)の範囲であり、顧客Aの監視対象装置100に割り当てられたIPアドレスが「x.x.x.1」〜「x.x.x.10」、顧客Bの監視対象装置100に割り当てられたIPアドレスが「x.x.x.11」〜「x.x.x.12」、顧客Cの監視対象装置100に割り当てられたIPアドレスが「x.x.x.13」〜「x.x.x.30」である場合を考える。これらの監視対象装置100ごとのIPアドレスの範囲を予め登録しておくことにより、通信ログが何れの監視対象装置100に関するものかを判断し、振り分けることができる。
【0030】
フィルタリング処理では、顧客ごとに設定された個別の条件・規則に基づき、上記の振り分け処理で振り分けられた通信ログを分析対象とするか否かが判断される。このフィルタリング処理における判定項目としては、送信元IPアドレス、送信元ポート、宛先IPアドレス、宛先ポート等が挙げられる。すなわち、ある通信ログにおいて送信元IPアドレスが特定の値であった場合は、その通信ログを分析対象から除外する等のように処理することができる。また、検知日時を判定項目に設定し、特定の日時以降に行われた通信のみを分析対象とすることもできる。
【0031】
以上のようにして、収集ユニット210は、ログ管理サブシステム120から取得した生ログの通信ログファイルから処理対象の通信ログを抽出して正規化する。そして、収集ユニット210は、処理の済んだ通信ログを、後段の検出ユニット220へ送る。
【0032】
本実施形態では、上記のような処理を行う実行手段を、小さな処理単位ごとにコンポーネント化して構成する。このコンポーネント化された処理単位のブロック(以下、処理単位ブロック)を組み合わせることにより、様々な検知デバイス110に対応する処理を容易に構成することが可能となる。個々の処理単位ブロックが実行する処理の内容(処理単位)は、特に限定されないが、処理単位ブロックの組み替えにより種々の検知デバイス110に対応することが可能となるような内容に設定される。
【0033】
図3は、コンポーネント化された処理単位ブロックにより構成される収集ユニット210の構成例を示す図である。
図3に示す例では、「初期情報取得」、「受信件数取得」、「受信ファイル登録」、「項目編集」、「フォーマット不一致ログ情報登録」、「ログ共通項目編集」、「顧客分割」等の処理を行う処理単位ブロック211が組み合わされて収集ユニット210が構成されている。なお、図3には、収集ユニット210を構成する処理単位ブロック211の一部のみが記載されている。例えば、「初期情報取得」、「受信件数取得」、「受信ファイル登録」等の処理単位ブロック211が、図2に示した分析対象ログ抽出処理を担い、「項目編集」、「フォーマット不一致ログ情報登録」、「ログ共通項目編集」等の処理単位ブロック211が、図2に示した正規化処理を担い、「顧客分割」等の処理単位ブロック211が、図2に示した振り分け処理を担う。
【0034】
本実施形態では、検知デバイス110の種類(IDS/IPS、ファイア・ウォール、ウィルス対策ソフト等の製品種別)に応じて、適用される処理単位ブロック211の種類や順番を設定する。すなわち、監視対象として設定された監視対象装置100の検知デバイス110の種類ごとに、処理単位ブロック211の適用順(シーケンス)が用意される。そして、処理対象の通信ログファイルの生ログを取得した検知デバイス110の種類に応じて、その通信ログファイルを処理するために設定されたシーケンスを適用して、各処理単位ブロック211による処理を行う。
【0035】
収集ユニット210の各処理単位ブロック211により行われる処理の結果は、例えば収集ユニット210を構成するコンピュータのメモリに、一時的に保持される。そして、収集ユニット210における処理が済んだ通信ログと共に後段の検出ユニット220へ送る。
【0036】
<検出ユニットの機能>
図4は、監視サブシステム200を構成する検出ユニット220の機能構成例を示す図である。
第2処理ユニットである検出ユニット220は、前段の収集ユニット210から取得した通信ログに対する処理として、その通信ログファイルの元の通信ログ(生ログ)を取得した検知デバイス110の分類ごとに設定された処理を行う。ここで、検知デバイス110の分類とは、検知デバイス110のセンサ111およびセンサ・マネージャ112の機能を提供するセキュリティ装置の種別(IDS/IPSやファイア・ウォール等)を意味する。なお、検知デバイス110の分類を特定する情報(ID、機器名等)は、例えば、通信ログファイルに含まれている。
【0037】
図4に示すように、本実施形態の検出ユニット220は、収集ユニット210により処理された通信ログに対する処理として、共通情報の付加処理と、ログ集約(イベント化)処理とを行う。
【0038】
共通情報の付加処理では、通信ログの分析に用いられる共通情報を付加する。この共通情報は、各通信ログに共通の項目に関する情報である。本実施形態では、攻撃パターン情報(オリジナル・シグネチャID)、通信方向区分、ルール・アクション、プロトコル番号・名称、国コードの5項目が設定される。
【0039】
攻撃パターン情報は、監視サブシステム200により各通信ログに付与される、攻撃パターンを特定する情報である。検知デバイス110が通信ログ(生ログ)において何らかの攻撃を検知すると、その通信ログに、検知した攻撃を特定する情報(メーカー・シグネチャ情報)を付加する。しかし、この情報の形式は監視対象装置100や検知デバイス110の種類に応じて様々であるので、本実施形態では、検出ユニット220が、オリジナルの情報(攻撃パターン情報)を通信ログに付加する。
【0040】
通信方向区分は、通信ログにより示される通信が、外部ネットワークから監視対象装置100により区分される内部ネットワークへ向けて行われたものか、反対に内部ネットワークから監視対象装置100を通って外部ネットワークへ向けて行われたものかを示す情報である。ネットワーク・セキュリティの分野では、通信元が内部ネットワークか外部ネットワークかにより、通信の意味合いや重要度が大きく変わる。例えば、コンピュータ・ウィルスに感染した情報処理装置が行う通信についての通信ログがあった場合、その通信が外部ネットワークから送られたものであれば、コンピュータ・ウィルスに感染した情報処理装置は外部ネットワークに存在するので、特に問題はない。一方、その通信が内部ネットワークから送られたものである場合、監視対象装置100の保護対象である内部ネットワークにコンピュータ・ウィルスに感染した情報処理装置が存在することになるので対処する必要がある。そこで、本実施形態では各通信ログにおける通信の方向を示す通信方向区分の情報を付与する。ここで、通信方向区分の情報は、例えば監視対象装置100のネットワーク・アドレスやプライベート・アドレスを参酌し、送信元IPアドレスおよび宛先IPアドレスが監視対象装置100の内部ネットワークか外部ネットワークかを判断することにより得られる。
【0041】
ルール・アクションは、監視対象装置100において通信が検知された場合に、検知デバイス110により、その通信に応じて行われた動作(アクション)を示す情報である。検知デバイス110としてIDSやIPS等のセキュリティ装置が用いられている場合、それらの装置は、有する機能に基づいて、危険な通信を検知したことを報告したり、その通信を許可せず止めたりする。そこで、どのような動作が行われたかを示す情報が付与される。このルール・アクションの情報は、検知デバイス110であるセキュリティ装置によっても通信ログに付与される場合がある。しかし、同一の動作であっても、セキュリティ装置の種類によって名称が区々であるので、監視サブシステム200において統一された名称を付与する。
【0042】
プロトコル番号・名称は、通信ログが示す通信に用いられた通信プロトコルの種類を示す情報である。TCPやUDP等、いくつかのプロトコルがあるため、これらを識別するための情報を付与する。本実施形態では、例えばIANA(Internet Assigned Number Authority)の定義に基づいて定める。
【0043】
国コードは、通信ログが示す通信の送信元および宛先の国を示す情報であり、通信ログの送信元IPアドレスおよび宛先IPアドレスに基づいて決定される。この国コードは、主に統計情報として用いられるが、送信元や宛先の国が、不正な通信による攻撃の多い国か否か、国内か否か等に応じて通信の危険性が異なると考えられる場合には、通信ログの分析に用いることもできる。
【0044】
以上のように、共通情報の付加処理では、通信ログの分析において利用価値の高い情報が、共通の様式による情報として、通信ログに付加される。
【0045】
ログ集約(イベント化)処理では、通信ログを必要に応じて集約し、分析単位情報であるイベントを生成する。検知デバイス110として用いられるセキュリティ装置の種類に応じて、通信ログの情報粒度は異なる。例えば、ファイア・ウォールは、検知対象の通信が一つ検知されれば、直ちにセンサ111により検知される。これに対し、IDS等では複数の通信に基づき、所定の判断規則により危険な通信が行われていると判断される場合に、センサ111により検知される。また、ウィルス対策ソフトでは、対象の情報処理装置がコンピュータ・ウィルスに感染してからセンサ111により検知される。したがって、検知デバイス110の種類に応じて、一つの通信ログにおける情報の重みが異なる。そこで、本実施形態では、検知デバイス110の種類に応じて、複数の通信ログを集積してイベント化し、情報の粒度を揃える。すなわち、一つの通信ログの情報量が多い検知デバイス110により取得された通信ログに関しては、より少ない数の通信ログで一つのイベントとし、一つの通信ログの情報量が少ない検知デバイス110により取得された通信ログに関しては、より多い数の通信ログで一つのイベントとする。
【0046】
一例として、本実施形態では、検知デバイス110が、ファイア・ウォールである場合と、その他の場合とでイベント化の処理を異ならせることとする。具体的には、検知デバイス110がファイア・ウォールである場合は、上述したように通信ログの情報量が少ない(一つの通信でセンサ111により検知される)ので、取得された通信ログを、予め定められた規則にしたがって集約することによりイベントを生成する。ファイア・ウォール以外の検知デバイス110により取得された通信ログについては、ファイア・ウォールと比較して通信ログの情報量が多い(複数の通信を経てセンサ111により検知される)ので、一つのログを一つのイベントとする。
【0047】
検知デバイス110がファイア・ウォールである場合のイベントの生成処理は、次のようにして行われる。まず、通信ログに含まれる情報および上記の共通情報の付加処理で通信ログに付加された共通情報に基づき、予め定められた集約規則に適合する通信ログを集めてイベントとする。具体的には、例えば、判定項目として、通信ログに含まれる顧客ID、検知日付、送信元IPアドレス、送信元ポート番号、宛先IPアドレスまたは宛先ポート番号と、共通情報である通信方向区分、ルール・アクション、プロトコル番号(名称)とが共通である通信ログを対象とし、この通信ログの数が予め定められた閾値以上となったならば、それらの通信ログを集めてイベントとする。
【0048】
上記の集約規則に基づく判断で不適合となった通信ログに対して、次に、ホスト・スキャン集約による判断が行われる。具体的には、例えば、判断項目として、通信ログに含まれる顧客ID、検知日付、送信元IPアドレス、送信元ポート番号、宛先ポート番号と、共通情報である通信方向区分、ルール・アクション、プロトコル番号(名称)とが共通である通信ログを対象とし、ある宛先IPアドレスを有する通信ログの数が予め定められた閾値以上となったならば、それらの通信ログを集めてイベントとする。
【0049】
上記のホスト・スキャン集約による判断で不適合となった通信ログに対して、次に、ポート・スキャン集約による判断が行われる。具体的には、例えば、判断項目として、通信ログに含まれる顧客ID、検知日付、送信元IPアドレス、送信元ポート番号、宛先IPアドレスと、共通情報である通信方向区分、ルール・アクション、プロトコル番号(名称)とが共通である通信ログを対象とし、ある宛先ポート番号を有する通信ログの数が予め定められた閾値以上となったならば、それらの通信ログを集めてイベントとする。
【0050】
上記のポート・スキャン集約による判断で不適合となった通信ログに対しては、通信ログの件数に基づく集積が行われ、イベント化される。このようにして、検出ユニット220は、情報粒度の小さいファイア・ウォールの検知デバイス110により取得された通信ログを集約して、他の検知デバイス110により取得された通信ログ(=イベント)に対して情報粒度を近づける。そして、検出ユニット220は、情報粒度の揃ったイベントを、後段の分析ユニット230へ送る。
【0051】
本実施形態では、上記のような処理を行う実行手段を、小さな処理単位ごとにコンポーネント化して構成する。このコンポーネント化された処理単位のブロック(以下、処理単位ブロック)を組み合わせることにより、検出ユニット220における処理の内容(個々の処理単位の種類や実行順など)を設計することができる。そして、様々な監視対象装置100に対応する処理を容易に構成することが可能となる。個々の処理単位ブロックが実行する処理の内容(処理単位)は、特に限定されないが、処理単位ブロックの組み替えにより種々の監視対象装置100に対応することが可能となるような内容に設定される。
【0052】
図5は、コンポーネント化された処理単位ブロックにより構成される検出ユニット220の構成例を示す図である。
図5に示す例では、「固有識別情報付加」、「通信方向区分付加」、「ルール・アクション付加」、「プロトコル番号・名称付加」、「国コード付加」、「集約規則判断」、「ホスト・スキャン集約」、「ポート・スキャン集約」等の処理を行う処理単位ブロック221が組み合わされて検出ユニット220が構成されている。なお、図5には、検出ユニット220を構成する処理単位ブロック221の一部のみが記載されている。例えば、「固有識別情報付加」、「通信方向区分付加」、「ルール・アクション付加」、「プロトコル番号・名称付加」、「国コード付加」等の処理単位ブロック221が、図4に示した共通情報の付加処理を担い、「集約規則判断」、「ホスト・スキャン集約」、「ポート・スキャン集約」等の処理単位ブロック221が、図4に示したログ集約(イベント化)処理を担う。
【0053】
本実施形態では、監視対象装置100の種類(セキュリティ装置の種別)に応じて、適用される処理単位ブロック221の種類や順番を設定する。すなわち、監視対象として設定された監視対象装置100の種類ごとに、処理単位ブロック221の適用順(シーケンス)が用意される。そして、処理対象の通信ログファイルの生ログが取得された監視対象装置100の種類に応じて、その通信ログファイルを処理するために設定されたシーケンスを適用して、各処理単位ブロック221による処理を行う。
【0054】
検出ユニット220の各処理単位ブロック221により行われる共通情報の付加処理およびログ集約処理の結果は、例えば検出ユニット220を構成するコンピュータのメモリに、一時的に保持される。そして、通信ログを集約して得られたイベントと共に後段の分析ユニット230へ送る。
【0055】
<分析ユニットの機能>
図6は、監視サブシステム200を構成する分析ユニット230の機能構成例を示す図である。
図6に示す構成例において、第3処理ユニットである分析ユニット230は、個別分析処理部230aと、イベント集積処理部230bと、相関分析処理部230cと、増分分析処理部230dとにより構成される。
【0056】
個別分析処理部230aは、検出ユニット220により生成されたイベントに対して、個別に、問題のある通信か否かを判断する。具体的には、各イベントを不正な通信に関するリスト(いわゆるブラックリスト)と照合(マッチング)し、該当すれば、そのイベントに示される通信を不正な通信と判断する。ここで、不正な通信のリストは、例えば、問題のある通信に関わるIPアドレスを登録している。そして、イベントに示される通信の送信元IPアドレスまたは宛先IPアドレスの何れかがリストに登録されたものと合致すれば、不正な通信として判断される。
【0057】
また、個別分析処理部230aは、問題のある通信のリストとの照合により問題のある通信であると判断されなかったイベントに関して、イベント間の相関関係に基づく分析を行うか否かを判断する。すなわち、個別分析処理部230aは、イベントを、相関関係に基づく分析を行うイベントと、相関関係に基づく分析を行わないイベントとに分類する分類手段として機能する。相関関係に基づく分析の対象とするか否かの判断は、例えば、イベントに含まれる通信ログの情報や、検出ユニット220による共通情報の付加処理で通信ログに付加された共通情報(攻撃パターン情報、通信方向種別など)により特定される通信の内容に基づいて行われる。相関関係に基づく分析を行う対象とされたイベントに対しては、次にイベント集積処理部230bによる集積処理が行われる。一方、相関関係に基づく分析を行わないと判断されたイベントに関しては、分析ユニット230は、その後の処理を行わず(すなわち、相関分析や増分分析の対象外として)、手動分析ユニット240へ送る。
【0058】
イベント集積処理部230bは、個別分析処理部230aにより相関関係に基づく分析の対象とされたイベントを、予め定められた規則に基づいて集積し、一つまたは複数のイベントからなるイベント列(イベント・チェーン)を生成する。さらに、イベント集積処理部230bは、予め定められた規則に基づいてイベント列を集積し、一つまたは複数のイベント列からなり、分析による検出対象となる事象の候補(インシデント・キャンディデート:以下、検出事象候補と呼ぶ)を生成する。すなわち、イベント集積処理部230bは、イベントを集積して、検出事象候補を生成する集積手段として機能する。具体的には、例えば外部ネットワークに存在するサーバ等からの不正なアクセスによる攻撃に関しては、同じ攻撃者による攻撃(アクセス)、同じ攻撃手段(アクセス方法)、同じ攻撃対象などが想定される通信を抽出し、検出事象候補としてまとめる。ここで、同じ攻撃者による攻撃、同じ攻撃手段、同じ攻撃対象などが想定される通信の抽出は、例えば、送信元IPアドレス、通信方向区分、検知日付などの情報に基づいて行われる。
【0059】
検知デバイス110とログ管理サブシステム120とによる通信ログの取得および監視サブシステム200の収集ユニット210および検出ユニット220による処理は随時行われているので、イベントは時間の経過と共に次々と生成される。新たに生成されたイベントは、イベント集積処理部230bにより特定の検出事象候補に含まれる対象イベントに該当すると判断されれば、その検出事象候補に組み込まれることとなる。したがって、新たなイベントが追加された検出事象候補は、その度に相関分析処理部230cおよび増分分析処理部230dによる処理の対象となる。
【0060】
相関分析処理部230cは、攻撃パターン組み合わせ判定と、件数閾値超過判定とを行うことにより、複数のイベントの組み合わせである検出事象候補が問題のある通信か否かを判断する。
【0061】
攻撃パターン組み合わせ判定では、相関分析処理部230cは、検出事象候補に含まれる通信ログにおける通信方向、送信元・宛先IPアドレス(レンジ)、送信元・宛先ポート、ルール・アクション、送信元・宛先国コード、セッション・データ等の情報に基づいて特定される通信の種類と、攻撃パターン情報(オリジナル・シグネチャID)の組み合わせとに基づき、問題のある通信か否かを判断する。すなわち、検出事象候補により特定される通信の内容が、攻撃パターン情報により特定される攻撃パターンに該当するか否かが判断される。なお、ここでは、この通信により、実際に攻撃(情報の搾取、消失など)が行われた可能性が高いか否かが判断される。
【0062】
件数閾値超過判定では、相関分析処理部230cは、検出事象候補に含まれる通信ログにおける通信方向、送信元・宛先IPアドレス(レンジ)、送信元・宛先ポート、ルール・アクション、送信元・宛先国コードと件数などの情報に基づき、問題のある通信か否かを判断する。ここでは、検出事象候補により特定される通信の回数が普段と比較して大幅に増加しているか否かが判断される。
【0063】
図7は、相関分析の概念を示す図である。
分析ユニット230のイベント集積処理部230bにより、検出ユニット220から取得したイベントのうち、集積処理の対象となったイベントが集積されてイベント列が生成され、さらに検出事象候補が生成される。そして、検出事象候補ごとに、各検出事象候補に含まれるイベント列やイベントの間の相関関係に基づき、上記の攻撃パターン組み合わせ判定および件数閾値超過判定が行われる。
【0064】
増分分析処理部230dは、事象変化の判定と、攻撃手段増加の判定と、攻撃件数増加の判定と、攻撃先増加の判定とを行うことにより、複数のイベントの組み合わせである検出事象候補が問題のある通信か否かを判断する。例えば外部ネットワークに存在するサーバ等からの不正なアクセスによる攻撃に関しては、単発の攻撃ではなく同じ攻撃が繰り返し続いたり、攻撃内容が変わったり攻撃先が増加したりすることがある。そこで、検出事象候補に含まれる通信ログに基づいて問題のある通信であることが疑われる事象の変化の有無を判定する。
【0065】
各判定についてさらに説明すると、例えば、相関分析処理部230cによる一定期間分(例えば1日分)の分析結果に基づき、各検出事象候補に対する分析に用いられた分析ルール(攻撃パターン組み合わせ判定や件数閾値超過判定のためのルール)の適用の変化が判断される。
事象変化の判定では、前回の分析時と異なる分析ルールが適用された(事象が変化した)場合に、判定対象の検出事象候補に含まれる通信は問題のある通信であると判断する。
攻撃手段増加の判定では、前回分析時と同一ルールが適用されたが、確認対象の攻撃パターン情報が追加された(確認対象の攻撃手段が増えた)場合に、判定対象の検出事象候補に含まれる通信は問題のある通信であると判断する。
攻撃件数増加の判定では、確認対象の攻撃パターン情報が同一の通信(同一の攻撃手法)や、同一の攻撃元からの通信が継続しており、それらの通信による単位時間当たりのイベント件数が増加している場合に、判定対象の検出事象候補に含まれる通信は問題のある通信であると判断する。
攻撃先増加の判定では、攻撃先や接続先が増えた場合に、判定対象の検出事象候補に含まれる通信は問題のある通信であると判断する。
【0066】
図8は、増分分析の概念を示す図である。図8(a)は、ある分析時における相関分析の対象となった一つの検出事象候補の構成例を示し、図8(b)は、次の分析時における同じ検出事象候補の構成例を示す。
同じ検出事象候補に関する前回分析時の構成(図8(a))と今回分析時の構成(図8(b))とを比較すると、今回分析時の構成では、前回分析時には含まれていなかったイベント列(図8(b)において網掛けを付して記載)が新たに含まれている。このため、この検出事象候補は、上述した事象変化の判定、攻撃手段増加の判定、攻撃件数増加の判定、攻撃先増加の判定の何れかにおいて問題のある通信と判断される。
【0067】
以上のようにして、各種の判定を行った後、分析ユニット230は、各検出事象候補に対する分析結果を、分析対象の検出事象候補に対応付けて、手動分析ユニット240に送る。分析ユニット230による分析結果は、各検出事象候補が、不正な通信か、問題のある通信(不正な通信である可能性のある通信)か、不正でない通信かを示すものである。
【0068】
本実施形態では、上記のような処理を行う個別分析処理部230a、イベント集積処理部230b、相関分析処理部230cおよび増分分析処理部230dを、小さな処理単位ごとにコンポーネント化して構成する。このコンポーネント化された処理単位のブロック(以下、処理単位ブロック)を組み合わせることにより、各処理部230a〜230dによる処理の内容(個々の処理単位の種類や実行順など)を設計することができる。そして、それまでにない新たな攻撃手法による攻撃が発見された場合にも、その攻撃において行われる通信であることを判定するために適用される処理に関する処理単位ブロックを追加することにより、その攻撃に容易に対応することが可能となる。
【0069】
図9は、コンポーネント化された処理単位ブロックを含む個別分析処理部230a、イベント集積処理部230b、相関分析処理部230cおよび増分分析処理部230dにより構成される分析ユニット230の構成例を示す図である。
図9に示す例では、「リスト照合」、「イベント集約」、「イベント列集約」、「攻撃パターン組み合わせ判定」、「件数閾値超過判定」、「事象変化判定」、「攻撃手段増加判定」、「件数増加率判定」、「宛先IPアドレス増加判定」等の処理を行う処理単位ブロック231が組み合わされて分析ユニット230の各処理部230a〜230dが構成されている。なお、図9には、分析ユニット230を構成する処理単位ブロック231の一部のみが記載されている。例えば、「リスト照合」の処理単位ブロック231は、個別分析処理部230aの問題のある通信のリストとの照合を担う。「イベント集約」および「イベント列集約」の処理単位ブロック231は、イベント集積処理部230bによるイベント列および検出事象候補の生成を担う。「攻撃パターン組み合わせ判定」および「件数閾値超過判定」の処理単位ブロック231は、相関分析処理部230cによる分析を担う。「事象変化判定」、「攻撃手段増加判定」、「件数増加率判定」および「宛先IPアドレス増加判定」の処理単位ブロック231は、増分分析処理部230dによる分析を担う。この処理単位ブロック231の列により構成される個別分析処理部230a、イベント集積処理部230b、相関分析処理部230cおよび増分分析処理部230dは、複数用意して並列かつ非同期に処理を実行することができる。
【0070】
分析ユニット230の各処理単位ブロック231により行われる個別分析処理、イベント集積処理、相関分析処理および増分分析処理の結果は、例えば分析ユニット230を構成するコンピュータのメモリに、一時的に保持される。そして、各種の分析処理が済んだ検出事象候補および個別分析処理で集積対象とされなかったイベントと共に後段の手動分析ユニット240へ送る。
【0071】
<手動分析ユニットの機能>
図10は、監視サブシステム200の手動分析ユニット240の機能構成例を示す図である。
第4処理ユニットである手動分析ユニット240は、検出ユニット220および分析ユニット230による上記の各処理によって得られたイベント、イベント列および検出事象候補の情報と、分析ユニット230による分析結果とを記憶装置241に格納して管理する。また、手動分析ユニット240は、端末装置300からの要求に応じて、送受信部242により、記憶装置241に格納しているイベント、イベント列および検出事象候補の情報と、分析ユニット230による分析結果とを送る。さらに、手動分析ユニット240は、端末装置300においてこれらの情報に付与された情報を送受信部242により取得し、格納している各情報に付加して管理する。
【0072】
<監視サブシステムの各処理ユニット間の通信>
本実施形態によるセキュリティ監視システムは、監視対象装置100における通信を監視して、問題のある通信をリアルタイムに検出する。すなわち、蓄積された通信ログファイルを解析して問題のある通信が行われていたことを事後的に発見するシステムではない。したがって、通信ログから問題のある通信を検出するための監視サブシステム200における各処理ユニット間における通信ログファイルの伝達は、できるだけ高速に行われることが望ましい。例えば、TCP(Transmission Control Protocol)等のようなコネクション型の通信ではなく、コネクションレス型の通信を行う。上述したように、本実施形態では、JMSに基づくコネクションレス型の通信を行うこととしている。
【0073】
ここで、コネクションレス型の通信により通信ログの伝達を行う場合、コネクション型の通信とは異なり、監視サブシステム200における各処理ユニット間での個々の通信が正常に行われたか否かを判断しない。したがって、各処理ユニット間の通信において処理対象の通信ログファイルが失われたとしても、これを認識することができない。そのため、監視サブシステム200での処理中に処理対象の通信ログファイルが失われた場合に、これを検知する仕組みが必要となる。
【0074】
図11は、本実施形態における通信ログファイルの伝達方式を説明する図である。
本実施形態では、監視サブシステム200を構成する処理ユニット列(収集ユニット210、検出ユニット220、分析ユニット230、手動分析ユニット240)において、先頭の処理ユニット(収集ユニット210)から最後の処理ユニット(手動分析ユニット240)まで、正常に通信ログの伝達が行われたことを、先頭の処理ユニットにフィードバックする構成を設けた。
【0075】
すなわち、監視サブシステム200の最後の処理ユニットである手動分析ユニット240は、分析ユニット230からイベントや検出事象候補の情報を受け取ると、これらのイベントや検出事象候補を構成する通信ログを取得したことを、先頭の処理ユニットである収集ユニット210に通知する。これにより、処理対象の通信ログファイルが、各処理ユニットを経て最後の処理ユニット(手動分析ユニット240)まで失われずに到達したことが、先頭の収集ユニット210において認識される。収集ユニット210は、ある通信ログファイルを後段の処理ユニットである検出ユニット220に送信した後、所定の再送停止条件を満足するまで、例えば一定時間ごとに、その通信ログファイルを再送する。
【0076】
再送停止条件としては、例えば、前回の送信から一定時間以内に、手動分析ユニット240から通信ログファイルを取得したことを示す通知を受け取ったこと等とすることができる。これにより、何らかの原因で処理対象の通信ログファイルが消失し、手動分析ユニット240まで到達しなかった場合は、手動分析ユニット240から収集ユニット210への通知が行われない(再送停止条件を満足しない)ため、一定時間経過後に、収集ユニット210から同一通信ログファイルの再送が行われることとなる。
【0077】
また、他の再送停止条件として、所定回数、同じ通信ログファイルを送信したことや、最初の送信から所定時間が経過したこと等を設定することができる。この再送停止条件を設定することにより、所定回数繰り返して通信ログファイルが正常に伝達されなかった場合、コネクションレス型の通信仕様による消失ではなく、監視サブシステム200に障害が発生していると判断することができる。そこで、この場合は、通信ログファイルの再送を停止すると共に、監視サブシステム200に障害が発生していることをシステム・オペレータに報知する。なお、同じ通信ログファイルの送信を何回行ったかについては、例えば、収集ユニット210において通信ログファイルの送信時に送信回数を計数し、保持しておくことが考えられる。
【0078】
上記のように構成された伝達方式では、処理対象の通信ログファイルが手動分析ユニット240に到達しなかった場合、各処理ユニット間での通信ログファイルの伝達における何れかの段階で通信ログファイルが失われたことはわかるが、どこで通信ログファイルが失われたかを識別することはできない。しかし、本実施形態では、通信ログファイルが手動分析ユニット240に到達しなければ、その通信ログファイルに対する処理(分析)は完了しない。そのため、上記のように、監視サブシステム200の処理ユニット列の最後に位置する手動分析ユニット240を検査位置とした。
【0079】
ここで、上記の伝達方式では、各処理ユニット間での通信ログファイルの伝達のどこで通信ログファイルが失われたとしても、先頭の収集ユニット210から最後の手動分析ユニット240へ、改めて通信ログファイルが伝達される。そのため、例えば分析ユニット230と手動分析ユニット240との間で通信ログファイルが失われた場合、その通信ログファイルに対する検出ユニット220および分析ユニット230による処理は済んでいるにも関わらず、同じ通信ログファイルが再度伝達されることになる。
【0080】
しかし、本実施形態では、通信ログファイルが手動分析ユニット240に到達しなければ、各処理ユニットにおける処理結果も、手動分析ユニット240の記憶装置241には格納されず、通信ログファイルと共に消失する。したがって、各処理ユニットは、再送された通信ログファイルに対して、前回の送信時に処理を行ったか否かに関わらず、処理を行う。
【0081】
図12は、本実施形態による通信ログファイルの伝達の一例を示す図である。
図12に示すように、ある通信ログファイルが、1回目の送信において、収集ユニット210から検出ユニット220へ送信され、検出ユニット220による処理を経た後、検出ユニット220から分析ユニット230へ送信され、分析ユニット230に到達せずに消失したものとする。この場合、手動分析ユニット240から通信ログファイルを取得したことを示す通知が行われないので、収集ユニット210は、通信ログファイルを再送する(2回目の送信)。
なお、1回目の送信に係る通信ログファイルに対して行われた検出ユニット220の処理の結果は、1回目の送信に係る通信ログファイルと共に消失しているので、検出ユニット220は、再送された通信ログファイルに対して処理を行う。
【0082】
2回目の送信では、通信ログファイルは、分析ユニット230による処理を経て、分析ユニット230から手動分析ユニット240へ送信されたが、手動分析ユニット240に到達せずに消失したものとする。この場合も、手動分析ユニット240から通信ログファイルを取得したことを示す通知が行われないので、収集ユニット210は、通信ログファイルを再送する(3回目の送信)。
なお、2回目の送信に係る通信ログファイルに対して行われた検出ユニット220および分析ユニット230の処理の結果は、2回目の送信に係る通信ログファイルと共に消失しているので、検出ユニット220および分析ユニット230は、再送された通信ログファイルに対して処理を行う。
【0083】
3回目の送信では、通信ログファイルは、手動分析ユニット240まで到達し、記憶装置241に格納される。そして、手動分析ユニット240から収集ユニット210へ通信ログファイルが到達したことを示す通知が行われる。これにより、この通信ログファイルの再送は停止される。
【0084】
ところで、上記の伝達方式を採用すると、通信ログファイルが消失していなくても再送されてしまうことが起こり得る。例えば、途中の処理ユニットによる処理に時間がかかったために、手動分析ユニット240から通知が行われる前に収集ユニット210における再送のための待ち時間が経過してしまった場合などである。この場合、同じ通信ログファイル(検出事象候補)とその処理結果が、手動分析ユニット240に複数回到達し、記憶装置241に重複して格納される可能性がある。そこで、このような場合は、最後に収集ユニット210から送信された通信ログファイルおよびその処理結果を有効なデータとして用いることとする。なお、有効なデータとは、後述する、端末装置300へ送信されて表示部330(図15参照)に表示される対象となるデータである。
【0085】
図13は、本実施形態による通信ログファイルの伝達の他の例を示す図である。
図13に示す例において、1回目の送信では、通信ログファイルは、検出ユニット220による処理を経た後、分析ユニット230に到達せずに消失した。2回目の送信では、通信ログファイルは消失せずに手動分析ユニット240に到達したが、途中の処理に時間を要したため、手動分析ユニット240から収集ユニット210へ通知が行われる前に3回目の送信が行われた。さらに、2回目の送信に係る通信ログファイルに対する処理に時間を要したため、3回目の送信に係る通信ログファイルが、2回目の送信に係る通信ログファイルよりも先に手動分析ユニット240に到達した。この場合、手動分析ユニット240に到達した順番に関わらず、3回目(最後)の送信に係る通信ログファイルに対して行われた処理の結果が有効なデータとして扱われる。
なお、上記の場合、手動分析ユニット240に到達して記憶装置241に格納された、同じ通信ログファイルに関する重複したデータのうち、有効なデータ以外のデータ(図13に示す例では、2回目の送信に係る通信ログファイルに関するデータ)については、削除しても良いし、記憶装置241に格納されたまま放置しても良い。
【0086】
図14は、本実施形態による通信ログファイルの伝達のさらに他の例を示す図である。
上述した例のように、前に送信された通信ログファイルが手動分析ユニット240に到達する前に通信ログファイルの再送が行われた場合であって、後に送信された通信ログファイルが途中で消失する場合があり得る。図14に示す例では、2回目の送信に係る通信ログファイルが手動分析ユニット240に到達する前に通信ログファイルの再送(3回目の送信)が行われたが、3回目の送信に係る通信ログファイルは手動分析ユニット240に到達せずに消失している。この場合、手動分析ユニット240に到達して記憶装置241に格納されたのは、2回目の送信に係る通信ログファイルだけなので、この2回目の送信に係る通信ログファイルに関するデータが有効なデータとして扱われる。
【0087】
なお、上記の各処理ユニットによる動作は、再送された通信ログファイルに対する動作の一例に過ぎず、上記の動作に限定されるものではない。例えば、本実施形態では、各処理ユニットの処理結果は、各処理ユニットを構成するコンピュータのメモリに一時的に保持することとしたが、所定のデータベースに格納して管理する構成もあり得る。この場合、各処理ユニットを伝送中に通信ログファイルが消失しても、既に行われた処理については、処理結果がデータベースに残る。このような場合、処理ユニットが、再送された通信ログファイルに対して重複して処理を行うと、問題のある通信の検出精度に影響を与えてしまう。そこで、重複した処理結果が残らないようにする必要がある。
一例としては、ある処理ユニットにおいて、再送された通信ログファイルが処理済みの通信ログファイルであった場合、既に存在している処理結果の情報を今回の処理結果に置き換えることが考えられる。すなわち、その通信ログファイルに関する前回の処理結果を破棄する。また、別の例としては、ある処理ユニットにおいて、再送された通信ログファイルが処理済みの通信ログファイルであった場合、その再送された通信ログファイルに対する処理をスキップして(飛ばして)、後段の処理ユニットへ通信ログファイルを送るようにしても良い。
【0088】
1回目の通信と再送とを区別するための情報としては、再送であることを示すフラグ・データ等を付加するようにしても良いし、何回目の送信かを示す情報を付加しても良い。送信回数を示す情報を付加する場合、手動分析ユニット240から収集ユニット210への通知において送信回数を示す情報も一緒に通知すれば、収集ユニット210において同じ通信ログファイルの送信回数を計数しなくても、手動分析ユニット240からの通知に基づいて、同じ通信ログファイルを何回送信したかを認識することができる。
【0089】
<端末装置の機能>
図15は、端末装置300の機能構成例を示す図である。
図15に示す例において、端末装置300は、送受信部310と、データ処理部320とを備える。また、端末装置300は、液晶ディスプレイ等で実現される表示部330と、キーボードやマウス等の入力デバイスで実現される操作部340とを備える。
【0090】
送受信部310は、監視サブシステム200の手動分析ユニット240との間で通信を行うインターフェイスである。送受信部310は、手動分析ユニット240から検出ユニット220および分析ユニット230の処理によって得られたイベント、イベント列および検出事象候補の情報と、分析ユニット230による分析結果とを受信する。また、送受信部310は、操作部340の操作により入力される情報を監視サブシステム200の手動分析ユニット240へ送信する。さらに、送受信部310は、監視対象装置100の通信に対する分析の結果として、問題のある通信が発見された場合に、監視対象装置100のオペレータが操作する端末装置(図示せず)に通知する。
【0091】
データ処理部320は、送受信部310により監視サブシステム200の手動分析ユニット240から取得したイベント、イベント列および検出事象候補の情報と、分析ユニット230による分析結果とに基づき分析用画面を生成し、表示部330に表示させる。
【0092】
図16は、分析用画面の構成例を示す図である。
図16に示す例において、表示部330に表示される分析用画面は、検索条件表示領域331、検出事象候補表示領域332、イベント列表示領域333、イベント表示領域334、コメント表示領域335、重要度表示領域336の6個の表示領域により構成される。
【0093】
検索条件表示領域331には、検出事象候補表示領域332に表示される検出事象候補等の検索条件が表示される。この検索条件は、例えば、初期的に適当な条件が設定されるほか、操作部340の操作により解析者が所望の検索条件を入力して設定することができる。なお、検索対象となる検出事象候補には、一つのイベント列あるいは一つのイベントのみで構成される検出事象候補も含まれる。また、分析ユニット230の個別分析処理部230aにより相関関係に基づく分析を行わないとして取り出された単独のイベントを、一つのイベントからなる検出事象候補として検索対象とすることができる。
【0094】
検出事象候補表示領域332には、検索条件表示領域331に表示された検索条件で検索された検出事象候補および監視サブシステム200の分析ユニット230によるその処理結果が表示される。
【0095】
イベント列表示領域333には、検出事象候補表示領域332に表示された(すなわち、検索条件表示領域331において特定された検索条件で検索された)検出事象候補に含まれるイベント列および監視サブシステム200の分析ユニット230によるその処理結果が表示される。
【0096】
イベント表示領域334には、検出事象候補表示領域332に表示された(すなわち、検索条件表示領域331において特定された検索条件で検索された)検出事象候補に含まれるイベントおよび監視サブシステム200の分析ユニット230によるその処理結果が表示される。
【0097】
コメント表示領域335には、解析者が操作部340を操作して入力したコメントが表示される。具体的には、例えば、監視対象装置100の通信に対する解析者の評価等のコメントが入力される。
重要度表示領域336には、検出事象候補表示領域332に表示された(すなわち、検索条件表示領域331において特定された検索条件で検索された)検出事象候補に対する評価を行うための評価レベルが示される。ここで、評価レベルとは、例えば、直ちに対策を取ることが必要か否か、引き続き同種の通信を検出して評価する必要があるか否か等の、検出事象候補により特定される通信に対する必要な対応等に応じて予め段階分けされた、重要度の値である。この重要度表示領域336は、解析者による重要度レベルの選択を受け付ける入力インターフェイスとなっている。そして、解析者は、重要度表示領域336に表示された重要度レベルの一つを選択することにより、検索された検出事象候補に対する評価を行う。
【0098】
解析者は、表示部330の検索条件表示領域331に初期的に表示された検索条件や自身が操作部340の操作により入力した検索条件に基づいて検索された検出事象候補、イベント列、イベントに基づき、監視対象装置100の通信を評価(手動分析)する。そして、問題のある通信が発見されたならば、解析者は、操作部340を操作して通信の内容(問題の内容)に応じたコメントおよび重要度を入力し、送受信部310を介して監視対象装置100のオペレータに通知する。
【0099】
なお、分析ユニット230においてリストとの照合により不正な通信(攻撃や不正な情報流出など)と判断された通信や、分析ユニット230における分析により不正な通信であることが確定した通信については、解析者の評価を要さずに監視対象装置100のオペレータへの通知対象として良い。
【0100】
<ハードウェア構成例>
図17は、本実施形態の監視サブシステム200の各処理ユニットや端末装置300を構成するのに適用可能なハードウェア(コンピュータ)構成例を示す図である。
図17に示すコンピュータは、演算手段であるCPU(Central Processing Unit)10aと、主記憶手段であるメモリ10cを備える。また、外部デバイスとして、磁気ディスク装置(HDD:Hard Disk Drive)10g、ネットワーク・インターフェイス10f、ディスプレイ装置を含む表示機構10d、キーボードやマウス等の入力デバイス10i等を備える。
【0101】
図17に示す構成例では、メモリ10cおよび表示機構10dは、システム・コントローラ10bを介してCPU10aに接続されている。また、ネットワーク・インターフェイス10f、磁気ディスク装置10gおよび入力デバイス10iは、I/Oコントローラ10eを介してシステム・コントローラ10bと接続されている。各構成要素は、システム・バスや入出力バス等の各種のバスによって接続される。
【0102】
なお、図17は、本実施形態が適用されるのに好適なコンピュータのハードウェア構成を例示するに過ぎない。本実施形態は、監視対象装置100における通信のログファイルをリアルタイムに取得して処理し、不正な通信や問題のある通信を検出することが可能な情報処理装置に広く適用できるものであり、図示の構成においてのみ本実施例が実現されるのではない。
【0103】
図17において、磁気ディスク装置10gにはOSのプログラムやアプリケーション・プログラムが格納されている。そして、これらのプログラムがメモリ10cに読み込まれてCPU10aに実行されることにより、本実施形態における監視サブシステム200の各処理ユニット210〜240や端末装置300における各種の機能が実現される。
【符号の説明】
【0104】
100…監視対象装置、110…検知デバイス、111…センサ、112…センサ・マネージャ、120…ログ管理サブシステム、121…ログ取得エージェント、200…監視サブシステム、210…収集ユニット、220…検出ユニット、230…分析ユニット、240…手動分析ユニット、300…端末装置
【要約】
【課題】ネットワーク上の通信を監視し、検査対象を絞り込んで、効率の良い検査を可能とする。
【解決手段】通信等の分析対象情報を発生させる事象により発生した通信ログ等の分析対象情報に対して、予め設定された規則に基づく共通情報を付加し、この分析対象情報の内容および共通情報に基づいて情報粒度を揃え、イベント化する検出ユニット220と、このイベントを、予め設定された規則に基づいて集積して検出事象候補とし、この検出事象候補により特定される分析対象情報を発生させる事象が問題のある事象か否かを判断する分析ユニット230と、を備える。
【選択図】図1
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17