JP2017199250A - 計算機システム、データの分析方法、及び計算機 - Google Patents

計算機システム、データの分析方法、及び計算機 Download PDF

Info

Publication number
JP2017199250A
JP2017199250A JP2016090661A JP2016090661A JP2017199250A JP 2017199250 A JP2017199250 A JP 2017199250A JP 2016090661 A JP2016090661 A JP 2016090661A JP 2016090661 A JP2016090661 A JP 2016090661A JP 2017199250 A JP2017199250 A JP 2017199250A
Authority
JP
Japan
Prior art keywords
analysis
entry
analysis process
feature amount
unit
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.)
Pending
Application number
JP2016090661A
Other languages
English (en)
Inventor
千絵 増田
Chie Masuda
千絵 増田
松原 大典
Daisuke Matsubara
大典 松原
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 Ltd
Original Assignee
Hitachi 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 Ltd filed Critical Hitachi Ltd
Priority to JP2016090661A priority Critical patent/JP2017199250A/ja
Publication of JP2017199250A publication Critical patent/JP2017199250A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】複数の分析器を備えるシステムにおいて、使用する計算機リソース量の削減及び分析精度の向上を目的とする。
【解決手段】複数の計算機を備える計算機システムであって、複数の計算機は、分析処理を実行する分析部を複数含む分析制御部を有する計算機と、分析部が使用する特徴量を算出する特徴量算出部、及び使用する分析部を選択する振分部を有する計算機と、を含み、振分部は、特徴量、分析処理の種別、及び分析処理の結果を含むエントリを複数含む振分情報を管理し、振分情報を参照して、データから算出された特徴量に類似する特徴量を含むエントリを検索し、検索されたエントリに含まれる分析処理の結果に基づいて、実行する分析処理を選択し、分析処理の結果を受信した場合、データから算出された特徴量、分析処理の種別、及び分析処理の結果を含むエントリを振分情報に追加する。
【選択図】図2

Description

本発明は、ネットワークを介して送受信されるデータを用いた分析処理を実行する分析器を複数備えるシステムの管理方法に関する。
近年、ビッグデータといわれる大量の情報を収集し、収集した大量の情報を利用するソリューションが期待されている。このような大量の情報を利用したソリューションの1つとしてネットワーク運用管理がある。
ビッグデータを利用したネットワーク運用管理技術では、ネットワーク装置を流れる情報がパケットレベルで分析される。この技術は、侵入検知システム(IDS:Intrusion Detection System)等の分野で使われている。
IDSには、シグネチャ型IDS及びアノマリ型IDSが存在する。シグネチャ型IDSは、通過する情報が登録されたパターンと一致するか否かを判定することによって、不正アクセスを検知する。一方、アノマリ型IDSは、通過する情報を分析することによってパターンに登録されていない未知の不正アクセスを検知する。より具体的には、アノマリ型IDSは、正常なトラフィックを用いた機械学習に基づいて学習モデルを生成し、通過する情報と学習モデルとを比較することによって、正常なトラフィックであるか否かを判定する。
前述したような機械学習に基づく分析は、不正アクセスの検知だけでなく、複数の装置が分散配置されたシステムにおいて各装置の動作品質の保証及び装置管理等、様々な分野での応用が期待されている。
アノマリ型IDSは、検知率が低く、また、誤検知率が高いといった問題がある。前述の問題の解決方法として、不正アクセスの種類毎に専門の分析器を用いることによって検知精度(分析精度)を向上させる方法が考えられる。別の解決方法としては、複数の分析器を統合することによって性能の高い一つの分析器を構成するアンサンブル学習法が考えられる(例えば、特許文献1参照)。
特許文献1には、「不正アクセスによって引き起こされる異常を、トラヒック量や通信範囲の異常、通信手順の異常、送受信データの異常の3種類として定義した複数グループに分類し、グループ毎の検出に特化した特徴量を用いた検出モジュールを備えたシステムを構成して不正アクセスの検出を行う。タイムスロット型、フロー・カウント型、フロー・ペイロード型の各グループの検出に特化した特徴量を用いた検出モジュールを備え、各検出モジュールの検出結果の論理和を最終的な出力結果とするシステムを構成し、いずれかの検出モジュールが異常と判断するとシステムがアラートを警告することにより不正アクセスの検出を行う」ことが記載されている。
しかし、特許文献1に記載の方法では、複数の分析器が並列的に動作するため、処理負荷が大きくなり、また、処理時間が長くなるという問題がある。したがって、特許文献1に記載の方法ではシステム性能が低下する。そのため、分析精度を向上させるとともに、分析処理に用いられる計算機リソース量を削減する技術が求められている。
分析処理に用いられる計算機リソース量を削減する方法として、特許文献2に記載された技術が知られている。特許文献2には、「ゲートウェイ装置は、第1ネットワーク上の1ないし複数の機器の動作情報を取得して解析装置に送信する動作情報取得部を備え、解析装置は、動作情報を用いて機器の障害解析を行う障害解析部を備え、動作情報取得部は、取得した動作情報のうち重要度の高いものをあらかじめ定められた重要度にしたがって絞り込んだ上で解析装置300に送信する」ことが記載されている。
特開2006−115129号公報 特開2013−34243号公報
特許文献2の技術では予めルールを定義する必要があるため、未知の情報については、従来と同様に全ての分析器が分析を行う必要がある。そのため、分析処理に使用する計算機リソース量を削減することができない。
本発明は、複数の機械学習に基づく分析を行うシステムにおいて、分析精度の向上及び分析処理に使用する計算機リソース量の削減を目的とする。
本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、複数の計算機を備える計算機システムであって、前記複数の計算機の各々は、プロセッサ、前記プロセッサに接続されるメモリ、前記プロセッサに接続され、他の装置と接続するためのインタフェースを有し、前記複数の計算機は、ネットワークを介して送受信されるデータを用いた分析処理を実行する分析部を複数含む分析制御部を有する計算機と、前記データを用いて前記複数の分析部の各々が使用する特徴量を算出する特徴量算出部、及び使用する前記分析部を選択する振分部を有する計算機と、を含み、前記振分部は、前記複数の分析部の各々が使用する前記特徴量、前記分析処理の種別、及び分析処理の結果を含むエントリを複数含む振分情報を管理し、前記分析処理の結果は、前記分析処理が必要であるか否かを示す値であり、前記振分部は、前記振分情報を参照して、前記データから算出された特徴量に類似する特徴量を含む類似エントリを検索し、前記類似エントリに含まれる前記分析処理の結果に基づいて、実行する前記分析処理を選択し、前記振分部によって選択された分析処理を実行する前記分析部は、前記データから算出された特徴量を用いた分析処理を実行し、前記分析処理の結果を前記振分部に送信し、前記振分部は、前記分析処理の結果を受信した場合、前記データから算出された特徴量、前記分析処理の種別、及び前記分析処理の結果を含むエントリを前記振分情報に追加することを特徴とする。
本発明によれば、振分情報に基づいて分析部が選択されるため、分析処理に使用する計算機リソース量を削減できる。また、分析部の分析結果を振分情報に反映することによって、分析精度を向上させることができる。前述した以外の課題、構成及び効果は、以下の実施例の説明によって明らかにされる。
実施例1の計算機システムの構成例を示す図である。 実施例1の分析装置のソフトウェア構成の詳細を説明する図である。 実施例1の振分情報群に含まれる振分情報の一例を示す図である。 実施例1の振分部が実行する処理を説明するフローチャートである。 実施例1の特徴量空間の一例を示す図である。 実施例2の計算機システムの構成例を示す図である。
以下、本発明の実施例を、図面を用いて説明する。なお、以下で説明する実施例は一例にすぎず、本発明が適用される実施例は、以下の実施例に限られるわけではない。さらに、以下に示した実施例は単独で適用してもよいし、複数又は全ての実施例を組み合わせて適用しても構わない。
図1は、実施例1の計算機システムの構成例を示す図である。
計算機システムは、データセンタ100及び複数の端末101から構成される。データセンタ100及び複数の端末101は外部NW105を介して接続される。
データセンタ100は、NW装置102、計算機103、及び分析装置104を含む。なお、各装置は二つ以上存在してもよい。計算機103及び分析装置104は、NW装置102に接続する。
NW装置102は、ネットワークを介して外部の装置及び内部装置を接続する装置である。NW装置102は、例えば、スイッチ、ルータ、及びゲートウェイ等が考えられる。NW装置102は、端末101及び計算機103との間で送受信されるデータをミラーリングし、ミラーリングされたデータを分析装置104に送信する。
計算機103は、端末101からの処理要求に基づいて各種処理を実行する。例えば、計算機103は、Webサーバ及びデータベースサーバ等として、端末101にサービスを提供する。なお、本実施例は、計算機103の構成、及び計算機103が提供するサービスの種別等に限定されない。
分析装置104は、NW装置102を通過するデータ(パケット)又は当該データのログをNW装置102から取得し、当該データを分析することによってデータの搾取、データの破壊、データの改ざん、及び計算機103に機能不全等を目的とした不正アクセスを検知する。以下の説明では、NW装置102を通過するデータ又は当該データのログを観測データとも記載する。
不正アクセスとしては、DoS(Denial of Service)攻撃、U2R(User to Root)攻撃、R2L(Remote to Local)攻撃、及びProbe攻撃等が知られている。
DoS攻撃は、大量のデータ又は異常データを送信することによって、データを受信したシステムを稼働できない状態にする攻撃である。U2R攻撃及びR2L攻撃は、異常データを送信することによって、システムに不正に侵入する攻撃である。また、Probe攻撃は、システムのサービス及びプロトコル等を調査する攻撃である。
分析装置104は、ハードウェアとして、CPU110、メモリ111、記憶装置112、及びI/F113を有する。各構成は内部バス等を介して互いに接続される。なお、端末101、NW装置102、及び計算機103のハードウェアは分析装置104と同一であるものとする。
CPU110は、メモリ111に格納されるプログラムを実行する。CPU110がプログラムを実行することによって、分析装置104が有する機能を実現できる。以下の説明では、機能部を主語に処理を説明する場合、CPU110が当該機能部を実現するプログラムを実行していることを示す。
メモリ111は、CPU110が実行するプログラムを格納する。また、メモリ111は、プログラムが処理に使用するワークエリアを含む。メモリ111に格納されるプログラムについては後述する。
記憶装置112は、情報を永続的に格納する。記憶装置112は、HDD(Hard Disk Drive)及びSSD(Solid State Drive)等が考えられる。記憶装置112は、各種情報を格納する記憶部130として使用される。記憶装置112に格納される情報については後述する。
I/F113は、他の装置と接続するためのインタフェースである。I/F113は、例えば、ネットワークインタフェースが考えられる。
メモリ111に格納されるプログラムについて説明する。メモリ111は、特徴量算出部120、振分部121、及び分析制御部122を実現するプログラムを格納する。
特徴量算出部120は、観測データを用いて、分析処理に使用する各種特徴量を算出する。
分析制御部122は、複数の分析処理を実行する。本実施例の分析制御部122は、DoS攻撃、U2R攻撃、R2L攻撃、及びProbe攻撃のそれぞれを検知するための分析部(分析器)を有する。各分析部は、それぞれの攻撃を検知するための分析処理を実行する。
各分析部が分析処理に使用する特徴量は異なる場合がある。本実施例では、以下のような特徴量が用いられる。
U2R攻撃分析部201(図2参照)及びR2L攻撃分析部202(図2参照)は、一つのパケットから算出される特徴量を用いて分析処理を実行する。U2R攻撃及びR2L攻撃は、パケットに含まれる異常データに起因するためである。
DoS攻撃分析部200(図2参照)は、複数のパケットを集約したフローから算出される特徴量を用いて分析処理を実行する。DoS攻撃は、通信量及び通信範囲の異常に起因するためである。
Probe攻撃分析部203(図2参照)は、フローから算出された特徴量又は一定期間に取得した複数のパケットから算出された特徴量を用いて分析処理を実行する。Probe攻撃は、通信量及び通信範囲の異常に起因する場合、又は、通信手順の異常に起因する場合があるためである。
Probe攻撃の一つである「IPsweep」は、不特定のIPアドレスに対してpingを実行し、稼働しているシステムを特定する攻撃である。「IPsweep」を検知するためには、例えば、同一の送信元から送信されるパケットの数を特徴量として用いればよい。
分析部が分析処理に使用する特徴量の種別は、一つでもよいし、また、複数でもよい。本発明は、分析処理に使用する特徴量に限定されない。
振分部121は、特徴量算出部120によって算出された各種特徴量に基づいて、分析処理の実行を指示する分析部を選択する。
記憶装置112によって実現される記憶部130に格納される情報について説明する。記憶部130は、ログ情報140、特徴量情報群141、振分情報群142、及び学習データ群143を格納する。なお、記憶部130に格納される情報は、メモリ111に格納されてもよい。
ログ情報140は、NW装置102から取得した観測データをログとして管理する情報である。ログ情報140には、タイムスタンプ、送信元のIPアドレス、パケットサイズ等を含むエントリが複数含まれる。
特徴量情報群141は、各分析部が使用する特徴量を管理する情報である。振分情報群142は、分析部を選択するための情報である。学習データ群143は、各分析部が機械学習に使用する学習データを管理する情報である。
図2は、実施例1の分析装置104のソフトウェア構成の詳細を説明する図である。なお、各機能部を接続する線は、論理的な接続関係を示す。
まず、分析制御部122、特徴量情報群141、振分情報群142、及び学習データ群143の詳細について説明する。
分析制御部122は、DoS攻撃分析部200、U2R攻撃分析部201、R2L攻撃分析部202、及びProbe攻撃分析部203を含む。各分析部は、特徴量情報群141を参照して、受信した観測データに関連する分析処理を実行する。
特徴量情報群141は、パケット特徴量情報210、フロー特徴量情報211、及び周期特徴量情報212を含む。
パケット特徴量情報210は、パケット単位の特徴量を管理する情報である。フロー特徴量情報211は、フロー単位の特徴量を管理する情報である。周期特徴量情報212は、任意の時間範囲の観測データを用いて算出される特徴量を管理する情報である。
振分情報群142は、パケット用振分情報220、フロー用振分情報221、及び周期用振分情報222を含む。
パケット用振分情報220は、パケット単位の特徴量に基づいて、分析部を選択するための情報である。フロー用振分情報221は、フロー単位の特徴量に基づいて、分析部を選択するための情報である。周期用振分情報222は、任意の時間範囲の観測データを用いて算出される特徴量に基づいて、分析部を選択するための情報である。
なお、分析に使用する特徴量の組合せが複数存在するため、パケット用振分情報220、フロー用振分情報221、及び周期用振分情報222は複数存在する。
学習データ群143は、DoS攻撃分析用学習データ230、U2R攻撃分析用学習データ231、R2L攻撃分析用学習データ232、Probe攻撃分析用学習データ233を含む。各学習データには、正常な通信の特徴量を含むデータが含まれる。
DoS攻撃分析用学習データ230は、DoS攻撃分析部200が使用する学習データである。U2R攻撃分析用学習データ231は、U2R攻撃分析部201が使用する学習データである。R2L攻撃分析用学習データ232は、R2L攻撃分析部202が使用する学習データである。Probe攻撃分析用学習データ233は、Probe攻撃分析部203が使用する学習データである。
次に、分析装置104の処理の流れについて説明する。
分析制御部122に含まれる分析部は、学習データ群143に格納される学習データを用いて機械学習を実行する。なお、機械学習は、周期的に実行されてもよいし、ユーザからの指示を受け付けた場合に実行されてもよい。
特徴量算出部120は、NW装置102から受信した観測データをログ情報140に格納し、ログ情報140を用いて各種特徴量を算出する。例えば、特徴量算出部120は、パケット単位の特徴量、フロー単位の特徴量、及び任意の時間範囲の観測データの特徴量を算出する。
特徴量算出部120は、算出された特徴量を特徴量情報群141に格納し、その後、振分部121に処理の開始を指示する。
振分部121は、特徴量情報群141及び振分情報群142に基づいて、異常を示す特徴量であるか否かを判定する。異常を示す特徴量であると判定された場合、振分部121は、特徴量情報群141及び振分情報群142に基づいて、受信した観測データに関連する分析処理を実行する分析部を選択する。
振分部121は、分析制御部122に選択された分析部の実行を指示する。具体的には、振分部121は、選択された分析部に対応する分析関数を呼び出し、算出された特徴量を引数として分析制御部122に入力する。
なお、振分部121が実行する処理の詳細は、図4を用いて説明する。
分析制御部122は、呼び出された分析関数に対応する分析部に分析処理の実行を指示する。分析部は、引数として入力された特徴量に基づいて、不正アクセスを検知するための分析処理を実行する。分析制御部122は、分析部によって実行された分析処理の結果を振分部121に出力する。
振分部121は、分析処理の結果に基づいて振分情報群142を更新する。
以上で説明したように、振分部121は、異常を示す特徴量を検知した場合、特徴量情報群141及び振分情報群142に基づいて分析処理を実行する分析部を選択する。これによって、必要な分析処理のみが実行されるため、分析装置104が使用する計算機リソース量を削減できる。また、分析処理の結果に基づいて振分情報群142が更新されるため、分析装置104における不正アクセスの検知精度が向上する。
図3は、実施例1の振分情報群142に含まれる振分情報の一例を示す図である。図3では、フロー用振分情報221の一例を示す。
フロー用振分情報221は、特徴量301、分析種別302、及び分析結果303を含むエントリを複数含む。
特徴量301は、分析部を選択するための指標となる特徴量である。図3の特徴量301は、送信パケット数311及びコネクション割合312を含む。
送信パケット数311は、任意のフローを介して端末101から計算機103に送信されたパケットの数である。所定の期間(例えば、パケットが送信された時間から5秒前の間)に生成されたコネクションのうち、パケットの送信元の端末101と計算機103との間に生成されたコネクションの割合である。
分析種別302は、分析処理の種別である。分析結果303は、分析処理の結果である。分析結果303には、正常な通信であることを示す「正常」及び異常な通信であることを示す「異常」のいずれかが格納される。本実施例では、分析処理を実行するか否かを示す情報として分析結果303を用いる。すなわち、分析結果303が「正常」の場合には、分析処理が不要であると判定され、分析結果303が「異常」の場合には、分析処理が必要であると判定される。
図4は、実施例1の振分部121が実行する処理を説明するフローチャートである。図5は、実施例1の特徴量空間の一例を示す図である。
振分部121は、特徴量算出部120から処理の開始指示を受け付けた場合、以下で説明する処理を開始する。なお、特徴量算出部120は、観測データの受信に伴って更新された特徴量情報の識別情報、及び特徴量情報のエントリの識別情報を振分部121に入力するものとする。
振分部121は、振分情報群142の中から振分情報を一つ選択する(ステップS401)。
具体的には、振分部121は、更新された特徴量を含む振分情報を検索し、検索された振分情報のリストを生成する。振分部121は、振分情報のリストを参照して、振分情報を一つ選択する。このとき、振分部121は、特徴量情報群141の更新された特徴量情報から選択された振分情報の特徴量301に対応する特徴量を取得する。
次に、振分部121は、選択された振分情報を参照して、特徴量301が取得されたエントリの特徴量と類似するエントリが存在するか否かを判定する(ステップS402)。具体的には、以下のような処理が実行される。
振分部121は、選択された振分情報の特徴量301を軸とする特徴量空間に各エントリの特徴量をプロットする。図3に示すフロー用振分情報221が選択された場合、図5に示すような特徴量空間に各エントリの特徴量がプロットされる。図3に示すフロー用振分情報221は、二つの特徴量を含むため特徴量空間は二次元となる。したがって、n個の特徴量を含む振分情報の場合、特徴量空間はn次元となる。
また、白丸及び黒丸は、フロー用振分情報221のエントリの特徴量を示す。白丸は任意の分析処理の分析結果303が「正常」であるエントリの特徴量を示す。黒丸は任意の分析処理の分析結果303が「異常」であるエントリの特徴量を示す。ここでは、Probe攻撃の分析処理の分析結果303を想定する。なお、白丸及び黒丸の区別は説明のために区別したものである。
振分部121は、更新された特徴量情報から更新された特徴量を含むエントリを取得し、更新されたエントリの特徴量を特徴量空間にプロットする。図5に示す特徴量空間のバツ印が取得されたエントリの特徴量の点を示す。
振分部121は、特徴量空間における各エントリの特徴量と取得されたエントリの特徴量との間の距離を算出する。振分部121は、分析結果303が「正常」であるエントリなかで最も距離が短いエントリ(第1エントリ)を特定し、分析結果303が「異常」であるエントリのなかで最も距離が短いエントリ(第2エントリ)を特定する。
図5に示す例では、点(α2,β2)に対応するエントリが第1エントリとなり、点(α3,β3)に対応するエントリが第2エントリとなる。
振分部121は、第1エントリの特徴量と取得されたエントリの特徴量との間の距離r1、第2エントリの特徴量と取得されたエントリの特徴量との間の距離r2に基づいて、類似するエントリを特定する。具体的には、振分部121は、以下に示す四つの条件に基づいて、類似するエントリを特定する。
(条件1) r1≦R1 かつ r2>R
(条件2) r1>R1 かつ r2≦R
(条件3) r1≦R1 かつ r2≦R
(条件4) r1>R1 かつ r2>R2
R1は分析結果303が「正常」であるエントリに類似と判定する基準距離を表す。R2は分析結果303が「異常」であるエントリと類似と判定する基準距離を表す。ただし、R2はR1より大きいものとする。
通常、トラフィックの大部分が正常な通信内容であり、異常な通信内容を含むトラフィックは少ない。そのため、分析結果303が「異常」であるエントリは、分析結果303が「正常」であるエントリが分布するエリアとは異なるエリアに存在する。また、一般的に分析結果303が「異常」であるエントリの周辺には、分析結果303が「正常」であるエントリは存在しない。そこで、R2を十分大きくすることによって、異常を示す特徴量を検知する精度を高める効果がある。
(条件1)は、第1エントリを中心とする円の領域に取得されたエントリの特徴量が含まれることを示す。(条件2)は、第2エントリを中心とする円の領域に取得されたエントリの特徴量が含まれることを示す。(条件3)は、第1エントリを中心とする円の領域及び第2エントリを中心とする円の領域の両方に取得されたエントリの特徴量が含まれることを示す。(条件4)は、第1エントリを中心とする円の領域及び第2エントリを中心とする円の領域のいずれにも取得されたエントリの特徴量が含まれないことを示す。
(条件1)を満たす場合、振分部121は、取得されたエントリの特徴量が第1エントリの特徴量301に類似すると判定する。(条件2)を満たす場合、振分部121は、取得されたエントリの特徴量が第2エントリの特徴量301に類似すると判定する。(条件3)を満たす場合、振分部121は、取得されたエントリの特徴量が第2エントリの特徴量301に類似すると判定する。(条件4)を満たす場合、振分部121は、特徴量301が類似するエントリは存在しないと判定する。以上がステップS402の処理の説明である。
特徴量301が取得されたエントリの特徴量と類似するエントリが存在しないと判定された場合、振分部121は、全ての分析部を選択し、全ての分析部に対して分析処理の実行を指示する(ステップS409)。その後、振分部121は、ステップS406に進む。
なお、振分部121は、分析制御部122から分析結果を受信した場合、選択された振分情報の識別情報、取得されたエントリの特徴量、分析種別、及び分析結果を対応付けたエントリをメモリ111に一時的に格納する。
特徴量301が取得されたエントリの特徴量と類似するエントリが存在すると判定された場合、振分部121は、類似するエントリの分析種別302に基づいて分析処理を一つ選択し(ステップS403)、当該分析処理に対応する分析結果303が「正常」であるか否かを判定する(ステップS404)。
選択された分析処理に対応する分析結果303が「正常」であると判定された場合、振分部121は、ステップS405に進む。
選択された分析処理に対応する分析結果303が「異常」であると判定された場合、振分部121は、当該分析処理に対応する分析部を選択し、選択された分析部に対して分析処理の実行を指示する(ステップS410)。その後、振分部121は、ステップS405に進む。
なお、振分部121は、分析制御部122から分析結果を受信した場合、選択された振分情報の識別情報、取得されたエントリの特徴量、分析種別、及び分析結果を対応付けたエントリをメモリ111に一時的に格納する。
ステップS405では、振分部121は、類似するエントリの全ての分析種別302について処理が完了したか否かを判定する(ステップS405)。
類似するエントリの全ての分析種別302について処理が完了していないと判定された場合、振分部121は、ステップS403に戻り、同様の処理を実行する。
類似するエントリの全ての分析種別302について処理が完了したと判定された場合、振分部121は、全ての振分情報について処理が完了したか否かを判定する(ステップS406)。
具体的には、振分部121は、振分情報のリストに含まれる全ての振分情報について処理が完了したか否かを判定する。
全ての振分情報について処理が完了していないと判定された場合、振分部121は、ステップS401に戻り、同様の処理を実行する。
全ての振分情報について処理が完了したと判定された場合、振分部121は、一回以上分析部が選択されたか否かを判定する(ステップS407)。すなわち、ステップS409又はステップS410の処理が一回以上実行されたか否かが判定される。
分析部が選択されていないと判定された場合、振分部121は、処理を終了する。
一回以上分析部が選択されたと判定された場合、振分部121は、分析制御部122から分析処理の結果を全て受信した後、振分情報群142を更新し(ステップS408)、その後、処理を終了する。
具体的には、振分部121は、メモリ111に格納されるエントリを参照して、更新する振分情報を特定し、特定された振分情報にエントリを一つ追加する。振分部121は、追加されたエントリの特徴量301に取得されたエントリの特徴量を設定し、分析種別302に全ての分析種別の行を生成し、各行の分析結果303に分析結果を設定する。なお、実行が指示されていない分析処理の分析結果303には、「正常」が設定されるものとする。
なお、図3では、振分情報の分析種別302には全ての分析処理の行が含まれるが、本発明はこれに限定されない。例えば、特徴量301を用いる分析処理の行のみを含んでもよい。
なお、実施例1では、パケットの特徴量を用いた分析処理を行うシステムを例に説明したが、本発明はこれに限定されない。パケット以外のデータを分析する分析部を複数有するシステムでも同様の効果を奏する。
実施例1によれば、分析装置104は、振分情報に基づいて、任意の分析結果が異常を示す特徴量に類似する特徴量の有無を判定し、異常を示す特徴量に類似する特徴量が検知された場合、当該特徴量を用いた分析処理を実行する分析部を選択し、分析処理の実行を指示する。これによって、分析装置104が分析処理に使用する計算機リソース量を削減できる。
また、分析部の分析結果に基づいて振分情報を更新することによって、特徴量の類否判断に使用するデータ量が増加するため、適切に分析部を選択できる。これによって、システム全体の分析精度を向上させることができる。
実施例2では、振分部121及び分析制御部122が別々の装置に実装される点が実施例1と異なる。以下実施例1との差異を中心に実施例2について説明する。
図6は、実施例2の計算機システムの構成例を示す図である。
実施例2ではデータセンタ100内の構成が実施例1のデータセンタ100と異なる。具体的には、データセンタ100は、NW装置102、計算機103、振分装置600、及び分析装置601を含む。なお、各装置は二つ以上存在してもよい。計算機103及び振分装置600は、NW装置102に接続する。
実施例2のデータセンタ100は、分析処理を選択する振分装置600及び分析処理を実行する分析装置601を別々の装置として含む点が実施例1と異なる。
振分装置600のメモリ111は、特徴量算出部120及び振分部121を実現するプログラムを格納する。振分装置600の記憶部130は、ログ情報140、特徴量情報群141、及び振分情報群142を格納する。
分析装置601のメモリ111は、分析制御部122を実現するプログラムを格納する。分析装置601の記憶部130は、学習データ群143を格納する。
特徴量算出部120及び分析制御部122が実行する処理は、実施例1と同一である。また、ログ情報140、特徴量情報群141、振分情報群142、及び学習データ群143の内容は、実施例1と同一である。
振分部121が実行する処理は、実施例1と一部処理が異なる。具体的には、分析処理の実行を指示する方法が実施例1と異なる。
例えば、ステップS410において、振分部121は、分析処理の種別、算出された特徴量を引数として含む分析処理の実行指示を分析装置601に送信する。
また、分析処理毎に分析装置601を有する構成であってもよい。この場合、振分部121は、分析装置601の識別情報、及び分析処理の種別を含む情報を保持する。振分部121は、分析処理の実行を指示する場合、当該情報に基づいて、選択された分析処理を実行する分析装置601を特定し、特定された分析装置601に算出された特徴量を引数として含む分析処理の実行指示を送信する。
実施例2は、実施例1と同一の効果を奏する。また、振分装置600及び分析装置601を別々の装置にすることによって、分析装置601の追加及び削除の制約がないため、システムの構成を柔軟に変更することができる。また、既存の計算機システムに振分装置600を追加することによって、本発明の効果を有する計算機システムを実現できる。
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。また、例えば、上記した実施例は本発明を分かりやすく説明するために構成を詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、実施例の構成の一部について、他の構成に追加、削除、置換することが可能である。
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、本発明は、実施例の機能を実現するソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をコンピュータに提供し、そのコンピュータが備えるCPUが記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、CD−ROM、DVD−ROM、ハードディスク、SSD(Solid State Drive)、光ディスク、光磁気ディスク、CD−R、磁気テープ、不揮発性のメモリカード、ROMなどが用いられる。
また、本実施例に記載の機能を実現するプログラムコードは、例えば、アセンブラ、C/C++、perl、Shell、PHP、Java(登録商標)等の広範囲のプログラム又はスクリプト言語で実装できる。
さらに、実施例の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することによって、それをコンピュータのハードディスクやメモリ等の記憶手段又はCD−RW、CD−R等の記憶媒体に格納し、コンピュータが備えるCPUが当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしてもよい。
上述の実施例において、制御線や情報線は、説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に接続されていてもよい。
100 データセンタ
101 端末
102 NW装置
103 計算機
104 分析装置
105 外部NW
110 CPU
111 メモリ
112 記憶装置
113 I/F
120 特徴量算出部
121 振分部
122 分析制御部
130 記憶部
140 ログ情報
141 特徴量情報群
142 振分情報群
143 学習データ群
200 DoS攻撃分析部
201 U2R攻撃分析部
202 R2L攻撃分析部
203 Probe攻撃分析部
210 パケット特徴量情報
211 フロー特徴量情報
212 周期特徴量情報
220 パケット用振分情報
221 フロー用振分情報
222 周期用振分情報
230 DoS攻撃分析用学習データ
231 U2R攻撃分析用学習データ
232 R2L攻撃分析用学習データ
233 Probe攻撃分析用学習データ
600 振分装置
601 分析装置

Claims (15)

  1. 複数の計算機を備える計算機システムであって、
    前記複数の計算機の各々は、プロセッサ、前記プロセッサに接続されるメモリ、前記プロセッサに接続され、他の装置と接続するためのインタフェースを有し、
    前記複数の計算機は、
    ネットワークを介して送受信されるデータを用いた分析処理を実行する分析部を複数含む分析制御部を有する計算機と、
    前記データを用いて前記複数の分析部の各々が使用する特徴量を算出する特徴量算出部、及び使用する前記分析部を選択する振分部を有する計算機と、を含み、
    前記振分部は、前記複数の分析部の各々が使用する前記特徴量、前記分析処理の種別、及び分析処理の結果を含むエントリを複数含む振分情報を管理し、
    前記分析処理の結果は、前記分析処理が必要であるか否かを示す値であり、
    前記振分部は、
    前記振分情報を参照して、前記データから算出された特徴量に類似する特徴量を含む類似エントリを検索し、
    前記類似エントリに含まれる前記分析処理の結果に基づいて、実行する前記分析処理を選択し、
    前記振分部によって選択された分析処理を実行する前記分析部は、前記データから算出された特徴量を用いた分析処理を実行し、前記分析処理の結果を前記振分部に送信し、
    前記振分部は、前記分析処理の結果を受信した場合、前記データから算出された特徴量、前記分析処理の種別、及び前記分析処理の結果を含むエントリを前記振分情報に追加することを特徴とする計算機システム。
  2. 請求項1に記載の計算機システムであって、
    前記特徴量算出部は、前記複数の分析部の各々が使用する種別が異なる複数の特徴量を算出し、
    前記振分情報に含まれるエントリは、前記複数の特徴量を含み、
    前記振分部は、
    一つ種別の特徴量を一つの成分とする特徴量空間における、前記複数のエントリに含まれる前記複数の特徴量と、前記データから算出された前記複数の特徴量との間の距離を算出し、
    前記距離が所定の閾値以下となるエントリの中から、前記距離が最も小さいエントリを、前記類似エントリとして特定することを特徴とする計算機システム。
  3. 請求項2に記載の計算機システムであって、
    前記振分部は、前記距離が前記所定の閾値以下となるエントリが存在しない場合、全ての前記分析処理を選択することを特徴とする計算機システム。
  4. 請求項2に記載の計算機システムであって、
    前記振分部は、
    前記分析処理の結果が前記分析処理が不要であることを示す値を含むエントリの中から、前記距離が最小となる第1エントリを特定し、
    前記分析処理の結果が前記分析処理が必要であることを示す値を含むエントリの中から、前記距離が最小となる第2エントリを特定し、
    前記第1エントリに含まれる複数の特徴量と前記データから算出された複数の特徴量との間の第1距離が第1閾値以下、かつ、前記第2エントリに含まれる複数の特徴量と前記データから算出された複数の特徴量との間の第2距離が第2閾値より大きい場合、前記第1エントリを、前記類似エントリとして特定し、
    前記第1距離が前記第1閾値より大きく、かつ、前記第2距離が前記第2閾値以下の場合、前記第2エントリを、前記類似エントリとして特定し、
    前記第1距離が前記第1閾値以下、かつ、前記第2距離が前記第2閾値以下の場合、前記第2エントリを、前記類似エントリとして特定することを特徴とする計算機システム。
  5. 請求項4に記載の計算機システムであって、
    前記第1閾値は、前記第2閾値より小さいことを特徴とする計算機システム。
  6. 複数の計算機を備える計算機システムにおけるデータの分析方法であって、
    前記複数の計算機の各々は、プロセッサ、前記プロセッサに接続されるメモリ、前記プロセッサに接続され、他の装置と接続するためのインタフェースを有し、
    前記複数の計算機は、
    ネットワークを介して送受信されるデータを用いた分析処理を実行する分析部を複数含む分析制御部を有する計算機と、
    特徴量を算出する特徴量算出部、及び使用する前記分析部を選択する振分部を有する計算機と、を含み、
    前記振分部は、前記複数の分析部の各々が使用する前記特徴量、前記分析処理の種別、及び分析処理の結果を含むエントリを複数含む振分情報を管理し、
    前記分析処理の結果は、前記分析処理が必要であるか否かを示す値であり、
    前記データの分析処理方法は、
    前記特徴量算出部が、前記データを用いて、前記複数の分析部の各々が使用する特徴量を算出する第1のステップと、
    前記振分部が、前記振分情報を参照して、前記データから算出された特徴量に類似する特徴量を含む類似エントリを検索する第2のステップと、
    前記振分部が、前記類似エントリに含まれる前記分析処理の結果に基づいて、実行する前記分析処理を選択する第3のステップと、
    前記振分部によって選択された分析処理を実行する前記分析部が、前記データから算出された特徴量を用いた分析処理を実行し、前記分析処理の結果を前記振分部に送信する第4のステップと、
    前記振分部が、前記分析処理の結果を受信した場合、前記データから算出された特徴量、前記分析処理の種別、及び前記分析処理の結果を含むエントリを前記振分情報に追加する第5のステップと、を含むことを特徴とするデータの分析方法。
  7. 請求項6に記載のデータの分析方法であって、
    前記振分情報に含まれるエントリは、種別が異なる複数の特徴量を含み、
    前記第1のステップは、前記特徴量算出部が、前記複数の分析部の各々が使用する前記複数の特徴量を算出するステップを含み、
    前記第2のステップは、
    前記振分部が、一つの種別の特徴量を一つの成分とする特徴量空間における、前記複数のエントリに含まれる前記複数の特徴量と、前記データから算出された前記複数の特徴量との間の距離を算出する第6のステップと、
    前記振分部が、前記距離が所定の閾値以下となるエントリの中から、前記距離が最も小さいエントリを、前記類似エントリとして特定する第7のステップと、を含むことを特徴とするデータの分析方法。
  8. 請求項7に記載のデータの分析方法であって、
    前記第2のステップは、前記振分部が、前記距離が前記所定の閾値以下となるエントリが存在しない場合、全ての前記分析処理を選択するステップを含むことを特徴とするデータの分析方法。
  9. 請求項7に記載のデータの分析方法であって、
    前記第7のステップは、
    前記振分部が、前記分析処理の結果が前記分析処理が不要であることを示す値を含むエントリの中から、前記距離が最小となる第1エントリを特定するステップと、
    前記振分部が、前記分析処理の結果が前記分析処理が必要であることを示す値を含むエントリの中から、前記距離が最小となる第2エントリを特定するステップと、
    前記第1エントリに含まれる複数の特徴量と前記データから算出された複数の特徴量との間の第1距離が第1閾値以下、かつ、前記第2エントリに含まれる複数の特徴量と前記データから算出された複数の特徴量との間の第2距離が第2閾値より大きい場合、前記振分部が、前記第1エントリを、前記類似エントリとして特定するステップと、
    前記第1距離が前記第1閾値より大きく、かつ、前記第2距離が前記第2閾値以下の場合、前記振分部が、前記第2エントリを、前記類似エントリとして特定するステップと、
    前記第1距離が前記第1閾値以下、かつ、前記第2距離が前記第2閾値以下の場合、前記振分部が、前記第2エントリを、前記類似エントリとして特定するステップと、を含むことを特徴とするデータの分析方法。
  10. 請求項9に記載のデータの分析方法であって、
    前記第1閾値は、前記第2閾値より小さいことを特徴とするデータの分析方法。
  11. プロセッサ、前記プロセッサに接続されるメモリ、前記プロセッサに接続され、他の装置と接続するためのインタフェースを備える計算機であって、
    前記計算機は、
    ネットワークを介して送受信されるデータを用いた分析処理を実行する分析部を複数含む分析制御部と、
    前記データを用いて前記分析部が使用する特徴量を算出する特徴量算出部と、
    使用する前記分析部を選択する振分部と、を有し、
    前記複数の分析部の各々が使用する前記特徴量、前記分析処理の種別、及び分析処理の結果を含むエントリを複数含む振分情報を保持し、
    前記分析処理の結果は、前記分析処理が必要であるか否かを示す値であり、
    前記振分部は、
    前記振分情報を参照して、前記データから算出された特徴量に類似する特徴量を含む類似エントリを検索し、
    前記類似エントリに含まれる前記分析処理の結果に基づいて、実行する前記分析処理を選択し、
    前記振分部によって選択された分析処理を実行する前記分析部が、前記データから算出された特徴量を用いた分析処理を実行し、前記分析処理の結果を前記振分部に出力し、
    前記振分部は、前記分析処理の結果を受信した場合、前記データから算出された特徴量、前記分析処理の種別、及び前記分析処理の結果を含むエントリを前記振分情報に追加することを特徴とする計算機。
  12. 請求項11に記載の計算機であって、
    前記特徴量算出部は、前記複数の分析部の各々が使用する種別が異なる複数の特徴量を算出し、
    前記振分情報に含まれるエントリは、前記複数の特徴量を含み、
    前記振分部は、
    一つの種別の特徴量を一つの成分とする特徴量空間における、前記複数のエントリに含まれる前記複数の特徴量と、前記データから算出された前記複数の特徴量との間の距離を算出し、
    前記距離が所定の閾値以下となるエントリの中から、前記距離が最も小さいエントリを、前記類似エントリとして特定することを特徴とする計算機。
  13. 請求項12に記載の計算機であって、
    前記振分部は、前記距離が前記所定の閾値以下となるエントリが存在しない場合、全ての前記分析処理を選択することを特徴とする計算機。
  14. 請求項12に記載の計算機であって、
    前記振分部は、
    前記分析処理の結果が前記分析処理が不要であることを示す値を含むエントリの中から、前記距離が最小となる第1エントリを特定し、
    前記分析処理の結果が前記分析処理が必要であることを示す値を含むエントリの中から、前記距離が最小となる第2エントリを特定し、
    前記第1エントリに含まれる複数の特徴量と前記データから算出された複数の特徴量との間の第1距離が第1閾値以下、かつ、前記第2エントリに含まれる複数の特徴量と前記データから算出された複数の特徴量との間の第2距離が第2閾値より大きい場合、前記第1エントリを、前記類似エントリとして特定し、
    前記第1距離が前記第1閾値より大きく、かつ、前記第2距離が前記第2閾値以下の場合、前記第2エントリを、前記類似エントリとして特定し、
    前記第1距離が前記第1閾値以下、かつ、前記第2距離が前記第2閾値以下の場合、前記第2エントリを、前記類似エントリとして特定することを特徴とする計算機。
  15. 請求項14に記載の計算機であって、
    前記第1閾値は、前記第2閾値より小さいことを特徴とする計算機。
JP2016090661A 2016-04-28 2016-04-28 計算機システム、データの分析方法、及び計算機 Pending JP2017199250A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016090661A JP2017199250A (ja) 2016-04-28 2016-04-28 計算機システム、データの分析方法、及び計算機

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016090661A JP2017199250A (ja) 2016-04-28 2016-04-28 計算機システム、データの分析方法、及び計算機

Publications (1)

Publication Number Publication Date
JP2017199250A true JP2017199250A (ja) 2017-11-02

Family

ID=60239371

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016090661A Pending JP2017199250A (ja) 2016-04-28 2016-04-28 計算機システム、データの分析方法、及び計算機

Country Status (1)

Country Link
JP (1) JP2017199250A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020075398A1 (ja) * 2018-10-10 2020-04-16 株式会社日立製作所 ネットワーク装置、パケットを処理する方法、及びプログラム
JP2021513170A (ja) * 2018-02-19 2021-05-20 エヌイーシー ラボラトリーズ アメリカ インクNEC Laboratories America, Inc. モバイルネットワークにおけるトラフィックデータから監視されないなりすまし検出
EP4332746A1 (en) 2022-08-29 2024-03-06 Fujitsu Limited Data processing method and data processing program
WO2026022949A1 (ja) * 2024-07-23 2026-01-29 Ntt株式会社 異常検知装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021513170A (ja) * 2018-02-19 2021-05-20 エヌイーシー ラボラトリーズ アメリカ インクNEC Laboratories America, Inc. モバイルネットワークにおけるトラフィックデータから監視されないなりすまし検出
WO2020075398A1 (ja) * 2018-10-10 2020-04-16 株式会社日立製作所 ネットワーク装置、パケットを処理する方法、及びプログラム
JP2020061667A (ja) * 2018-10-10 2020-04-16 株式会社日立製作所 ネットワーク装置、パケットを処理する方法、及びプログラム
JP7065744B2 (ja) 2018-10-10 2022-05-12 株式会社日立製作所 ネットワーク装置、パケットを処理する方法、及びプログラム
EP4332746A1 (en) 2022-08-29 2024-03-06 Fujitsu Limited Data processing method and data processing program
WO2026022949A1 (ja) * 2024-07-23 2026-01-29 Ntt株式会社 異常検知装置

Similar Documents

Publication Publication Date Title
US11500757B2 (en) Method and system for automatic real-time causality analysis of end user impacting system anomalies using causality rules and topological understanding of the system to effectively filter relevant monitoring data
US11218510B2 (en) Advanced cybersecurity threat mitigation using software supply chain analysis
Chen et al. CauseInfer: Automated end-to-end performance diagnosis with hierarchical causality graph in cloud environment
US20220210202A1 (en) Advanced cybersecurity threat mitigation using software supply chain analysis
KR102462128B1 (ko) 컴퓨터 보안 사건을 보고하기 위한 시스템 및 방법
WO2013186870A1 (ja) サービス監視システム、及び、サービス監視方法
US8799923B2 (en) Determining relationship data associated with application programs
CN114679329A (zh) 基于赝象对恶意软件自动分组
US11546356B2 (en) Threat information extraction apparatus and threat information extraction system
KR102040371B1 (ko) 네트워크 공격 패턴 분석 및 방법
JP2017199250A (ja) 計算機システム、データの分析方法、及び計算機
EP4014112B1 (en) Summarized event data responsive to a query
JP2017211806A (ja) 通信の監視方法、セキュリティ管理システム及びプログラム
Rhee et al. Software system performance debugging with kernel events feature guidance
US12506775B2 (en) Malware process injection detection
CN118796575B (zh) 接口审计方法、装置、电子设备及存储介质
CN116781480A (zh) 故障根因分析方法、装置以及相关设备
Rajeshwar et al. DYNAMIC PRIORITIZATION FOR FULL STACK OBSERVABILITY
US10031788B2 (en) Request profile in multi-threaded service systems with kernel events
CN120492492A (zh) 一种日志数据处理方法及计算设备
HK40038095A (en) Systems and methods for reporting computer security incidents
HK40038095B (en) Systems and methods for reporting computer security incidents