JP2004186878A - 侵入検知装置及び侵入検知プログラム - Google Patents
侵入検知装置及び侵入検知プログラム Download PDFInfo
- Publication number
- JP2004186878A JP2004186878A JP2002349895A JP2002349895A JP2004186878A JP 2004186878 A JP2004186878 A JP 2004186878A JP 2002349895 A JP2002349895 A JP 2002349895A JP 2002349895 A JP2002349895 A JP 2002349895A JP 2004186878 A JP2004186878 A JP 2004186878A
- Authority
- JP
- Japan
- Prior art keywords
- signature
- data storage
- packet
- cluster
- intrusion detection
- 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
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
【課題】誤警報を抑制しながら、効率的に異常アクセスや不正アクセスを検知することができる侵入検知装置及び侵入検知プログラムを提供する。
【解決手段】新たなアクセスがあった場合、監視システム20はパケット編集データを生成する。次に、監視システム20は、パケット編集データと、プロファイルデータ記憶部23に記録された各クラスタとの距離を算出する。算出した距離が、各クラスタの分散に基づいて算出した閾値より大きい場合、監視システム20はシグニチャデータ記憶部24に記録された各シグニチャと、パケット編集データとの類似度を算出する。そして、最も類似度が高いシグニチャが不正シグニチャである場合、監視システム20はアラームを出力する。
【選択図】 図1
【解決手段】新たなアクセスがあった場合、監視システム20はパケット編集データを生成する。次に、監視システム20は、パケット編集データと、プロファイルデータ記憶部23に記録された各クラスタとの距離を算出する。算出した距離が、各クラスタの分散に基づいて算出した閾値より大きい場合、監視システム20はシグニチャデータ記憶部24に記録された各シグニチャと、パケット編集データとの類似度を算出する。そして、最も類似度が高いシグニチャが不正シグニチャである場合、監視システム20はアラームを出力する。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、異常アクセス又は不正アクセスを検知する場合に用いる侵入検知装置及び侵入検知プログラムに関するものである。
【0002】
【従来の技術】
今日、インターネット等のネットワークに接続されたシステムでは多様なアクセスが行なわれている。このようなアクセスの中には、不正なアクセスや異常なアクセスも含まれる。このようなアクセスを検知し、システムに対する侵入を検出し、通知するために、侵入検知システム(IDS:Intrusion Detection System)が用いられることが多い。このIDSでは、ネットワークを流れるパケットを監視して、異常や不正なアクセスと思われるパケットを発見したときにアラームを表示するとともに、通信記録を収集し保存する。
【0003】
この侵入検知の方法には、大きく分けて、異常検出(anomaly intrusion detection :AID)と不正検出(misuse intrusion detection:MID)とがある。
【0004】
ここで、AID方式は、侵害行為を意味するイベントは通常ではないイベントに含まれるとの仮定し、通常ではないイベントや統計的に稀なイベントを検出する方法である。この場合、IDSを一定期間運用して通常運用時のシステムのプロファイルを作成する。プロファイルには、ユーザのログインした時間帯や利用するアプリケーションタイプ、トラフィック量などが含まれる。運用時に明らかにプロファイルと異なるアクセスがあった場合に、それを異常として検出する。例えば、あるユーザのログイン時間が変化した場合やトラフィック量が急激に増加した場合などに警報を発生させる。
【0005】
一方、MID方式は、既知のシグニチャに基づく情報とのマッチングを行ない、侵害の存在を検出する方法である。ここで、シグネチャとは、過去に認識された攻撃パターンをデータベース化したものである。1つの攻撃パターンは1つのシグネチャとして管理される。この手法は、パケットを収集し、これをシグネチャと比較することによって攻撃パケットであるか否かを判断する。
【0006】
以上のような検知方法を採用した侵入検知装置に関する技術が開示されている(例えば、特許文献1参照。)。この侵入検知装置は、パケットを受信又は送信する通信手段、受信したパケットが不正であるか否かを判断するパケット分析手段、通信遮断等の対策を行なう対策手段等を含む。そして、侵入検知装置は、通信手段により外部ネットワークからパケットを受信した場合、パケット分析手段によりパケットが不正か否かを解析する。このパケットの分析方法には、(1)パケット内に含まれている文字列やコードを検査するパターンマッチングと、(2)一定時間に一定以上の個数のパケットを検知する統計的な手法とが用いられる。もし、受信したパケットが不正であると判断された場合、対策手段によりパケットの中継は行なわず、通信を遮断する。
【0007】
以上のように、侵入検知装置のパケット分析手段が、不正か否かの判断を行なうため、効率的に侵入を検知することができる。
【0008】
【特許文献1】
特開2002−73433号公報(図1)
【0009】
【発明が解決しようとする課題】
通常、このような侵入検知システム(IDS)を利用する場合、不正検出のためのシグニチャを外部のデータソースから入手し、システム自身のデータベースに格納する必要がある。しかし、このようなデータの入手には非常にコストがかかる場合がある。そして、不正検知を行なう場合にも、ネットワーク環境を熟知したエキスパートがネットワーク環境毎に異なる設定を行なう必要がある。このための作業は非常に煩雑になる可能性がある。
【0010】
さらに、シグニチャとパターンマッチングを行なうMID方式では、未知の攻撃パターンを検出できない場合がある。また、シグニチャの更新が頻繁に行なわれる場合、運用コストが増大するおそれがある。また、暗号化されたパケットやフラグメント化されたパケットは検出できず、不正があっても対応できないという問題もある。
【0011】
また、AID方式では、ネットワーク環境に適したパラメータの設定が困難である。さらに、特許文献1のように、パターンマッチング(MID方式)と統計的手法(AID方式)とを併用する場合、両方式による警報が出力されるため、誤警報が多くなる。この場合、監視者の負荷が重くなり、効率的な侵入検知を行なうことができない場合がある。
【0012】
本発明は、上記問題点を解決するためになされたものであり、その目的は、効率的に異常アクセスや不正アクセスを検知することができる侵入検知装置及び侵入検知プログラムを提供することにある。
【0013】
【課題を解決するための手段】
上記問題点を解決するために、請求項1に記載の発明は、ネットワーク上の通信パケットを監視する侵入検知装置であって、前記侵入検知装置が、過去の蓄積パケット状況に基づいて生成したクラスタから構成されたプロファイルに関するデータを記録したプロファイルデータ記憶手段と、前記蓄積パケット状況毎に生成したシグニチャに関するデータを記録したシグニチャデータ記憶手段と、新たに取得した受信パケット状況と、前記プロファイルデータ記憶手段に記録された各クラスタとの距離を算出する異常検知手段と、前記距離が閾値以上である場合には、前記シグニチャデータ記憶手段に記録されたシグニチャと前記受信パケット状況とを比較し、比較結果に基づいて警報を出力する不正検知手段とを有することを要旨とする。
【0014】
請求項2に記載の発明は、請求項1に記載の侵入検知装置において、前記閾値は各クラスタの分散に基づいて算出されることを要旨とする。
請求項3に記載の発明は、請求項1又は2に記載の侵入検知装置において、前記蓄積パケット状況及び受信パケット状況は、通信パケットの属性を抽出し、編集したデータであることを要旨とする。
【0015】
請求項4に記載の発明は、請求項1〜3のいずれか1項に記載の侵入検知装置において、前記異常検知手段は、前記プロファイルデータ記憶手段に記録されたクラスタの数が所定値以上の場合、遺伝的アルゴリズムによる検索を用いて最も距離の近いクラスタを抽出し、このクラスタとの距離を算出することを要旨とする。
【0016】
請求項5に記載の発明は、請求項1〜4のいずれか1項に記載の侵入検知装置において、前記不正検知手段は、前記受信パケット状況と類似度の高いシグニチャを、前記シグニチャデータ記憶手段から抽出し、前記抽出したシグニチャを含めた警報を出力することを要旨とする。
【0017】
請求項6に記載の発明は、過去の蓄積パケット状況に基づいて生成したクラスタから構成されたプロファイルに関するデータを記録したプロファイルデータ記憶手段と、前記蓄積パケット状況毎に生成したシグニチャに関するデータを記録したシグニチャデータ記憶手段に接続された侵入検知装置を用いて、ネットワーク上の通信パケットを監視する侵入検知プログラムであって、前記侵入検知装置を、新たに取得した受信パケット状況と、前記プロファイルデータ記憶手段に記録された各クラスタとの距離を算出する異常検知手段と、前記距離が閾値以上である場合には、前記シグニチャデータ記憶手段に記録されたシグニチャと、前記受信パケット状況とを比較し、比較結果に基づいて警報を出力する不正検知手段として機能させることを要旨とする。
【0018】
請求項7に記載の発明は、請求項6に記載の侵入検知プログラムにおいて、前記閾値は各クラスタの分散に基づいて算出されることを要旨とする。
請求項8に記載の発明は、請求項6又は7に記載の侵入検知プログラムにおいて、前記蓄積パケット状況及び受信パケット状況は、通信パケットの属性を抽出し、編集したデータであることを要旨とする。
【0019】
請求項9に記載の発明は、請求項6〜8のいずれか1項に記載の侵入検知プログラムにおいて、前記異常検知手段は、前記プロファイルデータ記憶手段に記録されたクラスタの数が所定値以上の場合、遺伝的アルゴリズムによる検索を用いて最も距離の近いクラスタを抽出し、このクラスタとの距離を算出することを要旨とする。
【0020】
請求項10に記載の発明は、請求項6〜9のいずれか1項に記載の侵入検知プログラムにおいて、前記不正検知手段は、前記受信パケット状況と類似度の高いシグニチャを、前記シグニチャデータ記憶手段から抽出し、前記抽出したシグニチャを含めた警報を出力することを要旨とする。
【0021】
(作用)
請求項1又は6に記載の発明によれば、過去の蓄積パケット状況に基づいて生成したクラスタから構成されたプロファイルに関するデータを記録したプロファイルデータ記憶手段を用いる。さらに、前記蓄積パケット状況毎に生成したシグニチャに関するデータを記録したシグニチャデータ記憶手段とを用いて、通信パケットを監視する。そして、侵入検知装置は、新たに取得した受信パケット状況と、前記プロファイルデータ記憶手段に記録された各クラスタとの距離を算出する。前記距離が閾値以上である場合には、前記シグニチャデータ記憶手段に記録されたシグニチャと、前記受信パケット状況とを比較し、比較結果に基づいて警報を出力する。このため、新たに取得した受信パケット状況が、プロファイルデータ記憶手段に記録されたクラスタに基づいて判断できない場合、シグニチャデータ記憶手段に記録されたシグニチャとの比較を行なう。従って、効率的に不正検知を行なうことができる。
【0022】
請求項2又は7に記載の発明によれば、閾値は各クラスタの分散に基づいて算出される。このため、クラスタの性質に応じて適切に不正を検知することができる。すなわち、分散が少ない場合には異常の範囲を狭め、分散が大きい場合には異常の範囲を広げることにより、異常検知の精度を上げることができる。
【0023】
請求項3又は8に記載の発明によれば、前記蓄積パケット状況及び受信パケット状況は、通信パケットの属性を抽出し、編集したデータである。このため、コンテンツ部分を暗号化されたパケットや、フラグメント化されたパケットに対しても、異常検知や不正検知を行なうことができる。
【0024】
請求項4又は9に記載の発明によれば、前記異常検知手段は、前記プロファイルデータ記憶手段に記録されたクラスタの数が所定値以上の場合、遺伝的アルゴリズムによる検索を用いて最も距離の近いクラスタを抽出し、このクラスタとの距離を算出する。遺伝的アルゴリズムを用いることにより、非線形な複雑系においても効率的に最近接クラスタを検出することができる。
【0025】
請求項5又は10に記載の発明によれば、前記不正検知手段は、前記受信パケット状況と類似度の高いシグニチャを、前記シグニチャデータ記憶手段から抽出する。そして、前記抽出したシグニチャを含めた警報を出力する。このため、検知された不正の種別を予測することができる。
【0026】
【発明の実施の形態】
以下、本発明を具体化した実施形態を図1〜図7に従って説明する。本実施形態では、図1に示すように、ネットワークとしてのインターネットIを介して、通信ホスト30からシステム10に対するアクセスを監視する場合に用いる侵入検知装置及び侵入検知プログラムとして説明する。
【0027】
システム10内のネットワークは、ルータ101を介してインターネットIに接続されている。そして、このルータ101には、さらに監視システム20が接続されている。また、システム10のネットワークには、ファイアウォール102が設けられ、このファイアウォール102を介して公開サーバ104が接続されている。さらに、システム10のネットワークは、ルータ103を介してクライアント端末105が接続されている。
【0028】
この監視システム20は、システム10のネットワークの外部と内部との通信パケットを監視するコンピュータシステムである。監視システム20は、図示しない制御手段(CPU)、メモリ手段(RAM、ROM等)等を備える。そして、監視システム20は、各種監視機能を実現するための侵入検知プログラムを内蔵している。そして、監視システム20は、このプログラムを実行することにより、異常検知手段、不正検知手段等の各手段として機能する。
【0029】
監視システム20は、パケット編集データ記憶部22、プロファイルデータ記憶手段としてのプロファイルデータ記憶部23、及びシグニチャデータ記憶手段としてのシグニチャデータ記憶部24を保有している。
【0030】
パケット編集データ記憶部22には、蓄積パケット状況としてのパケット編集データが記録される。このパケット編集データは、送受信された通信パケットの属性データに基づいて生成される。このパケット編集データは、所定期間のパケットを収集し、生成された場合に記録される。本実施形態では、パケット編集データは、パケットの属性データを編集し、編集時刻とともに、入力パケット数、出力パケット数、入力バイト数、出力バイト数、フラグメントパケット数等に関するデータから構成される。
【0031】
プロファイルデータ記憶部23には、パケット編集データに対して、公知のクラスタリング手法を用いて生成されたプロファイルデータが記録される。このプロファイルデータは、予め設定された時刻に、正常又は異常の判断が行なわれたパケット編集データに関してクラスタが生成した場合に記録される。プロファイルデータは、パケット編集データに基づいて生成されたクラスタに対して、クラスタ生成時刻とともに記録される。なお、本実施形態では、正常と判断されたパケット編集データのみにより生成されたクラスタに関するデータが記録される。
【0032】
シグニチャデータ記憶部24には、パターンマッチングを行なうためのシグニチャに関するデータが記録される。シグニチャデータは、パケット変数データ毎に付与された正常フラグ又は異常フラグとともに記録される。このシグニチャデータには、正常と判断されて蓄積されたパケット編集データに基づいて生成されたものと、事後的に不正と確認されたパケット編集データに基づいて生成されたもの等を含む。
【0033】
次に、上記のように構成されたシステムにおいて、ネットワーク上の通信パケットを監視し、不正アクセスを検知する場合の処理手順を図2〜図3に従って説明する。ここでは、異常検知や不正検知を行なうためのプロファイルやシグニチャ等のデータベースを生成するデータベース生成段階(図2)及び通信パケットを監視し、異常/不正パケットを検出するパケット監視段階(図3)とに分けて説明する。
【0034】
(データベース生成段階)
まず、異常検知を行なうためのプロファイルや、不正検知を行なうためのシグニチャ等のデータベースを生成する段階の処理を、図2を用いて説明する。
【0035】
まず、監視システム20は送受信される通信パケットを収集する(S1−1)。そして、収集したパケットの属性データを抽出する。この属性データには、各パケットのヘッダデータから抽出して生成される。TCP/IPの場合、IPヘッダ部には、宛先IPアドレスや送信元IPアドレス、データ長、上位プロトコルのタイプ(TCP/UDP等)、各種フラグ類、ヘッダのチェックサム、TTLなどが含まれている。さらに、TCPヘッダ部には発信元アドレス、宛先アドレス等が含まれる。
【0036】
次に、監視システム20は、抽出した属性データに基づいてパケット編集データを生成する(S1−2)。このパケット編集データは、パケットの属性データを編集したデータに、編集時刻を付加したデータである。本実施形態では、パケット編集データには、入力パケット数、出力パケット数、入力バイト数、出力バイト数、フラグメントパケット数に関するデータが含まれる。
【0037】
監視システム20は、生成したパケット編集データをパケット編集データ記憶部22に記録する。ここでは、簡単のために、パケット編集データを構成するパラメータの内、所定の2つのパラメータを用いて説明する。各々のパケット編集データを2つのパラメータの座標上に表示させると、分散状況は図4に示すように表わされる場合を想定する。このパラメータには、例えば「パケット数」や「バイト数」等を用いる。図4に示す座標上の各々のイベント100は、各パケット編集データに対応する。
【0038】
次に、監視システム20は、パケット編集データ記憶部22に記録されたパケット編集データに対して、公知のクラスタリング手法を用いて、プロファイルの生成を行なう(S1−3)。ここで、クラスタリング手法とは、分類基準の明確でないデータの類似性からグループに分類する手法である。なお、本実施形態では、このクラスタリングには、正常と判断されたパケット編集データに対して行なう。ここで、図4に示すイベント100に対してクラスタリングを行なった場合、図5に示すように、クラスタ(110、111、112)に分類される場合を想定する。なお、このクラスタリングは予め設定された周期で実行される。
【0039】
そして、生成した各クラスタをプロファイルデータとしてプロファイルデータ記憶部23に記録する。この場合、各クラスタの性質を識別するための識別子を付与して記録する。具体的には、ここでは正常系クラスタとしての正常フラグを付与して記録する。
【0040】
次に、監視システム20は正常系のシグニチャデータを生成する(S1−4)。具体的には、各クラスタに含まれるパケット変数データ毎に、この各クラスタに付与された正常フラグを付与してシグニチャを生成する(クラシフィケーション)。そして、監視システム20は、生成したシグニチャをシグニチャデータ記憶部24に記録する。
【0041】
次に、監視システム20に不正系のシグニチャデータを追加する(S1−5)。具体的には、事後的に不正と認定されたパケット変数データに対して不正フラグを付与してシグニチャデータを生成する。そして、この場合も、監視システム20は、生成したシグニチャデータをシグニチャデータ記憶部24に記録する。
【0042】
さらに、監視システム20には、自己成長を実現するための機能として、プロファイルデータの自動更新及びシグニチャデータの自動生成に関する機能を有する。ここで、プロファイルの自動更新とは、各クラスタの分散を考慮した距離の閾値判定を行なうために、新たに取得したパケット編集データに基づいて、監視対象ネットワークのプロファイリングを行なう機能である。但し、更新のタイミングは管理者によって任意又は適宜に決定される。
【0043】
一方、シグニチャの自動生成とは、本システムにシグニチャジェネレータというシステムを設定し、通常時のネットワークデータの収集プロセス中に随時、異常時のデータを追加する。これらの機能により、ネットワークの状態の遷移に即してプロファイル、シグニチャの正常、異常データを動的に捉えることができる。以上により、データベース生成段階の説明を終了する。
【0044】
(パケット監視段階)
次に、異常又は不正なパケットを検出する段階の処理を、図3を用いて説明する。
【0045】
新たなアクセスがあった場合、監視システム20は通信パケットを収集する。そして、監視システム20は収集した通信パケットの属性データを抽出する(S2−1)。さらに、監視システム20は抽出した属性データに基づいて、受信パケット状況としてのパケット編集データを生成する。
【0046】
ここで、プロファイルデータ記憶部23に記録されているクラスタ数により処理が異なる(S2−2)。クラスタ数が所定数以下の場合(ステップ(S2−2)において「No」の場合)、監視システム20は、新たなアクセスによるパケット編集データと、プロファイルデータ記憶部23に記録された各クラスタとの距離を算出する(S2−3)。例えば、アクセスのあった場合のパケット編集データを図5に示す2次元パラメータの座標系にプロットした場合、図6に示すイベント120として表示される場合を想定する。そこで、監視システム20は、各クラスタ(110、111、112)とイベント120との距離を算出する。
【0047】
一方、クラスタ数が所定数より多い場合(ステップ(S2−2)において「Yes」の場合)、監視システム20は、新たなアクセスによるパケット編集データに対して最近接のクラスタを、遺伝的アルゴリズムを用いて検索し、その距離を算出する(S2−4)。ここで、遺伝的アルゴリズム(Genetic Algorithm:GA)とは、最適化を高速に行なうための探索アルゴリズムの一種である。ここでは、まず初期集団を生成し、選択、交叉、突然変異等のプロセスを繰り返すことにより、最適解(ここでは、最近接クラスタ)を検索する。
【0048】
次に、監視システム20は、算出された距離と所定の閾値とを比較する(S2−5)。本実施形態では、この閾値として、監視システム20が各クラスタの分散に基づいて算出した値を用いる。具体的に、分散が少ない場合には小さな値を、分散が大きい場合には大きな値を閾値として用いる。
【0049】
次に、算出した距離が所定の閾値より大きい場合(ステップ(S2−5)において「Yes」の場合)、監視システム20は各シグニチャとの類似度を算出する(S2−6)。具体的には、シグニチャデータ記憶部24に記録された各シグニチャと、アクセスのあったパケット編集データとの類似度(距離)を算出する。例えば、図7に示すようにシグニチャ(150、151、152)及び不正シグニチャ153との比較を行なう。ここで、シグニチャ150はクラスタ110に含まれるパケット編集データから生成され、シグニチャ151はクラスタ111に含まれるパケット編集データから生成され、シグニチャ152はクラスタ112に含まれるパケット編集データから生成される。不正シグニチャ153は、シグニチャジェネレータにより生成された不正と判断されたシグニチャである。
【0050】
最も類似度が高いシグニチャが不正フラグの付されたシグニチャ(不正シグニチャ)である場合(ステップ(S2−7)において「Yes」の場合)、監視システム20は異常なアクセスがある旨のアラーム(警報)を出力する(S2−8)。
【0051】
そして、監視システム20はシグニチャデータの更新を行なう(S2−9)。具体的には、異常と判断したパケット変数データに不正フラグを付与してシグニチャを生成し、このシグニチャをシグニチャデータ記憶部24に記録する。
【0052】
ステップ(S2−3)またはステップ(S2−4)において算出した距離が所定の閾値より小さい場合(ステップ(S2−5)において「No」の場合)、監視システム20は正常なアクセスとしてシグニチャデータを更新する(S2−10)。具体的には、監視システム20は、パケット変数データに正常フラグを付与してシグニチャを生成し、このシグニチャをシグニチャデータ記憶部24に記録する。
【0053】
さらに、監視システム20はプロファイルの更新を行なう(S1−11)。具体的には、新たに取得したパケット編集データを用いて、クラスタリング手法を用いてプロファイルの生成し直す。そして、監視システム20は、生成したプロファイルデータをプロファイルデータ記憶部23に記録する。
【0054】
なお、最も類似度が高いシグニチャが正常フラグの付されたシグニチャである場合(ステップ(S2−7)において「No」の場合)も、ステップ(S2−10)、(S2−11)の処理が行なわれる。以上により、異常/不正パケットを検出する監視処理の説明を終了する。
【0055】
以上、本実施形態によれば、以下に示す効果を得ることができる。
・ 上記実施形態では、新たなアクセスがあった場合、監視システム20は、プロファイルデータ記憶部23に記録されたプロファイルを用いて正常系クラスタとの距離を算出する。そして、最近接の正常系クラスタとの距離が所定の閾値以上の場合、監視システム20は異常なアクセスの可能性を検出することができる。従って、未知の攻撃の可能性を検知できる。
【0056】
・ 上記実施形態では、クラスタとの距離を比較するための閾値として、監視システム20が各クラスタの分散に基づいて算出した値を用いる。具体的に、分散が少ない場合には小さな値を、分散が大きい場合には大きな値を閾値として用いる。従って、分散が少ない場合には異常の範囲を狭め、分散が大きい場合には異常の範囲を広げることにより、異常検知の精度を上げることができる。
【0057】
・ 上記実施形態では、ステップ(S2−9)やステップ(S2−10)において、新たに取得したパケット変数データに基づいて正常フラグ又は不正フラグを付与したシグニチャデータを生成する。さらに、ステップ(S1−11)において、新たに取得したパケット編集データに基づいて、クラスタリング手法を用いて、プロファイルの生成し直すことによりプロファイルの更新を行なう。このため、監視対象となるネットワーク環境とその遷移の学習によってデータベースに格納するデータを自動的に生成する自己成長を実現するができる。従って、不正アクセスを検知するためのデータを効率的に準備できる。また、ネットワーク環境に応じた煩雑な設定作業も軽減できる。
【0058】
・ 上記実施形態では、正常系クラスタとイベントとの距離が所定の閾値より大きい場合、監視システム20は、このイベントと類似度が高いシグニチャを特定する。そして、監視システム20は、このシグニチャの属性により、不正の有無を判断する。このように、クラスタリングとクラシフィケーションとを組み合わせることにより、誤警報を抑制しながら、効率的に異常アクセスや不正アクセスを検出できる。
【0059】
・ 上記実施形態では、クラスタ数が所定数より多い場合、監視システム20は、新たなアクセスによるパケット編集データに対して最近接のクラスタを、遺伝的アルゴリズムを用いて検索し、その距離を算出する。遺伝的アルゴリズムを用いることにより、非線形な複雑系においても、極小解や極大解等の局所的な解に陥ることなく、効率的に最近接クラスタを検出することができる。
【0060】
・ 上記実施形態では、監視システム20は、パケット編集データ記憶部22に記録されたパケット編集データに対して、公知のクラスタリング手法を用いて、プロファイルの生成を行なう。このため、パケット編集データを収集することにより、監視システム20が適切なクラスタリングを行なう。従って、効率的にプロファイルデータを生成することができる。
【0061】
・ 上記実施形態では、プロファイルデータ記憶部23には、パケット編集データに対して、公知のクラスタリング手法を用いて生成されたプロファイルデータが記録される。正常か否かは状況(季節、時間、場所等)に応じて変化するものであるため、多くのクラスタが蓄積されることにより、蓄積された状況に応じて、より的確に正常又は異常を判断することできる。
【0062】
なお、上記実施形態は、以下の態様に変更してもよい。
・ 上記実施形態では、ネットワークとしてのインターネットIを介して、通信ホスト30からシステム10に対するアクセスを監視する場合を想定するが、これに限るものではない。例えば、イントラネット内の監視等に用いてもよい。
【0063】
・ 上記実施形態では、正常と判断されたパケット編集データのみにより生成されたクラスタに関するデータがプロファイルデータ記憶部23に記録される。これに代えて、異常と判断されたパケット編集データにより生成されたクラスタ(異常系クラスタ)に関するデータをプロファイルデータ記憶部23に記録してもよい。また、両クラスタを記録してもよい。算出した距離が所定の閾値より小さい場合、監視システム20は最近接クラスタの種類を特定し、異常系クラスタに近い場合、異常なアクセスとして警告を出力する。さらに、正常系クラスタからも、異常系クラスタからも遠い場合に、シグニチャデータとの照合処理を実行する。これによっても、監視システム20は、正常性や異常性等を判断することができる。
【0064】
・ 上記実施形態では、監視システム20が算出された距離と比較する場合に用いる閾値として、各クラスタの分散に基づいて算出した値を用いる。具体的に、分散が少ない場合には小さな値を、分散が大きい場合には大きな値を閾値として用いる。閾値を算出する方法はこれに限られるものではなく、予め用意した関数に各クラスタに含まれるパケット編集データを代入して閾値を算出してもよい。
【0065】
・ 上記実施形態では、最も類似度が高いシグニチャが不正フラグの付されたシグニチャ(不正シグニチャ)である場合、監視システム20は異常なアクセスがある旨のアラームを出力する。この場合、各シグニチャとの類似度の一覧を表示してもよい。これにより、不正の種類を特定したり、その他の可能性を提示したりすることができる。
【0066】
・ 上記実施形態では、システム10内のネットワークは、ルータ101を介してインターネットIに接続されている。そして、このルータ101には、さらに監視システム20が接続されている。システム構成はこれに限られるものではなく、従来のIDS等の組み合わせて構成してもよい。
【0067】
【発明の効果】
以上詳述したように、本発明によれば、誤警報を抑制しながら、効率的に異常アクセスや不正アクセスを検知することができる。
【図面の簡単な説明】
【図1】本発明の実施形態のシステム概略図。
【図2】本実施形態の処理手順の説明図。
【図3】本実施形態の処理手順の説明図。
【図4】イベント分布の説明図。
【図5】イベント分布の説明図。
【図6】異常検知の概念の説明図。
【図7】不正検知の概念の説明図。
【符号の説明】
20…侵入検知装置としての監視システム、23…プロファイルデータ記憶手段としてのプロファイルデータ記憶部、24…シグニチャデータ記憶手段としてのシグニチャデータ記憶部、110,111,112…クラスタ、150,151,152…シグニチャ、153…不正シグニチャ、I…ネットワークとしてのインターネット。
【発明の属する技術分野】
本発明は、異常アクセス又は不正アクセスを検知する場合に用いる侵入検知装置及び侵入検知プログラムに関するものである。
【0002】
【従来の技術】
今日、インターネット等のネットワークに接続されたシステムでは多様なアクセスが行なわれている。このようなアクセスの中には、不正なアクセスや異常なアクセスも含まれる。このようなアクセスを検知し、システムに対する侵入を検出し、通知するために、侵入検知システム(IDS:Intrusion Detection System)が用いられることが多い。このIDSでは、ネットワークを流れるパケットを監視して、異常や不正なアクセスと思われるパケットを発見したときにアラームを表示するとともに、通信記録を収集し保存する。
【0003】
この侵入検知の方法には、大きく分けて、異常検出(anomaly intrusion detection :AID)と不正検出(misuse intrusion detection:MID)とがある。
【0004】
ここで、AID方式は、侵害行為を意味するイベントは通常ではないイベントに含まれるとの仮定し、通常ではないイベントや統計的に稀なイベントを検出する方法である。この場合、IDSを一定期間運用して通常運用時のシステムのプロファイルを作成する。プロファイルには、ユーザのログインした時間帯や利用するアプリケーションタイプ、トラフィック量などが含まれる。運用時に明らかにプロファイルと異なるアクセスがあった場合に、それを異常として検出する。例えば、あるユーザのログイン時間が変化した場合やトラフィック量が急激に増加した場合などに警報を発生させる。
【0005】
一方、MID方式は、既知のシグニチャに基づく情報とのマッチングを行ない、侵害の存在を検出する方法である。ここで、シグネチャとは、過去に認識された攻撃パターンをデータベース化したものである。1つの攻撃パターンは1つのシグネチャとして管理される。この手法は、パケットを収集し、これをシグネチャと比較することによって攻撃パケットであるか否かを判断する。
【0006】
以上のような検知方法を採用した侵入検知装置に関する技術が開示されている(例えば、特許文献1参照。)。この侵入検知装置は、パケットを受信又は送信する通信手段、受信したパケットが不正であるか否かを判断するパケット分析手段、通信遮断等の対策を行なう対策手段等を含む。そして、侵入検知装置は、通信手段により外部ネットワークからパケットを受信した場合、パケット分析手段によりパケットが不正か否かを解析する。このパケットの分析方法には、(1)パケット内に含まれている文字列やコードを検査するパターンマッチングと、(2)一定時間に一定以上の個数のパケットを検知する統計的な手法とが用いられる。もし、受信したパケットが不正であると判断された場合、対策手段によりパケットの中継は行なわず、通信を遮断する。
【0007】
以上のように、侵入検知装置のパケット分析手段が、不正か否かの判断を行なうため、効率的に侵入を検知することができる。
【0008】
【特許文献1】
特開2002−73433号公報(図1)
【0009】
【発明が解決しようとする課題】
通常、このような侵入検知システム(IDS)を利用する場合、不正検出のためのシグニチャを外部のデータソースから入手し、システム自身のデータベースに格納する必要がある。しかし、このようなデータの入手には非常にコストがかかる場合がある。そして、不正検知を行なう場合にも、ネットワーク環境を熟知したエキスパートがネットワーク環境毎に異なる設定を行なう必要がある。このための作業は非常に煩雑になる可能性がある。
【0010】
さらに、シグニチャとパターンマッチングを行なうMID方式では、未知の攻撃パターンを検出できない場合がある。また、シグニチャの更新が頻繁に行なわれる場合、運用コストが増大するおそれがある。また、暗号化されたパケットやフラグメント化されたパケットは検出できず、不正があっても対応できないという問題もある。
【0011】
また、AID方式では、ネットワーク環境に適したパラメータの設定が困難である。さらに、特許文献1のように、パターンマッチング(MID方式)と統計的手法(AID方式)とを併用する場合、両方式による警報が出力されるため、誤警報が多くなる。この場合、監視者の負荷が重くなり、効率的な侵入検知を行なうことができない場合がある。
【0012】
本発明は、上記問題点を解決するためになされたものであり、その目的は、効率的に異常アクセスや不正アクセスを検知することができる侵入検知装置及び侵入検知プログラムを提供することにある。
【0013】
【課題を解決するための手段】
上記問題点を解決するために、請求項1に記載の発明は、ネットワーク上の通信パケットを監視する侵入検知装置であって、前記侵入検知装置が、過去の蓄積パケット状況に基づいて生成したクラスタから構成されたプロファイルに関するデータを記録したプロファイルデータ記憶手段と、前記蓄積パケット状況毎に生成したシグニチャに関するデータを記録したシグニチャデータ記憶手段と、新たに取得した受信パケット状況と、前記プロファイルデータ記憶手段に記録された各クラスタとの距離を算出する異常検知手段と、前記距離が閾値以上である場合には、前記シグニチャデータ記憶手段に記録されたシグニチャと前記受信パケット状況とを比較し、比較結果に基づいて警報を出力する不正検知手段とを有することを要旨とする。
【0014】
請求項2に記載の発明は、請求項1に記載の侵入検知装置において、前記閾値は各クラスタの分散に基づいて算出されることを要旨とする。
請求項3に記載の発明は、請求項1又は2に記載の侵入検知装置において、前記蓄積パケット状況及び受信パケット状況は、通信パケットの属性を抽出し、編集したデータであることを要旨とする。
【0015】
請求項4に記載の発明は、請求項1〜3のいずれか1項に記載の侵入検知装置において、前記異常検知手段は、前記プロファイルデータ記憶手段に記録されたクラスタの数が所定値以上の場合、遺伝的アルゴリズムによる検索を用いて最も距離の近いクラスタを抽出し、このクラスタとの距離を算出することを要旨とする。
【0016】
請求項5に記載の発明は、請求項1〜4のいずれか1項に記載の侵入検知装置において、前記不正検知手段は、前記受信パケット状況と類似度の高いシグニチャを、前記シグニチャデータ記憶手段から抽出し、前記抽出したシグニチャを含めた警報を出力することを要旨とする。
【0017】
請求項6に記載の発明は、過去の蓄積パケット状況に基づいて生成したクラスタから構成されたプロファイルに関するデータを記録したプロファイルデータ記憶手段と、前記蓄積パケット状況毎に生成したシグニチャに関するデータを記録したシグニチャデータ記憶手段に接続された侵入検知装置を用いて、ネットワーク上の通信パケットを監視する侵入検知プログラムであって、前記侵入検知装置を、新たに取得した受信パケット状況と、前記プロファイルデータ記憶手段に記録された各クラスタとの距離を算出する異常検知手段と、前記距離が閾値以上である場合には、前記シグニチャデータ記憶手段に記録されたシグニチャと、前記受信パケット状況とを比較し、比較結果に基づいて警報を出力する不正検知手段として機能させることを要旨とする。
【0018】
請求項7に記載の発明は、請求項6に記載の侵入検知プログラムにおいて、前記閾値は各クラスタの分散に基づいて算出されることを要旨とする。
請求項8に記載の発明は、請求項6又は7に記載の侵入検知プログラムにおいて、前記蓄積パケット状況及び受信パケット状況は、通信パケットの属性を抽出し、編集したデータであることを要旨とする。
【0019】
請求項9に記載の発明は、請求項6〜8のいずれか1項に記載の侵入検知プログラムにおいて、前記異常検知手段は、前記プロファイルデータ記憶手段に記録されたクラスタの数が所定値以上の場合、遺伝的アルゴリズムによる検索を用いて最も距離の近いクラスタを抽出し、このクラスタとの距離を算出することを要旨とする。
【0020】
請求項10に記載の発明は、請求項6〜9のいずれか1項に記載の侵入検知プログラムにおいて、前記不正検知手段は、前記受信パケット状況と類似度の高いシグニチャを、前記シグニチャデータ記憶手段から抽出し、前記抽出したシグニチャを含めた警報を出力することを要旨とする。
【0021】
(作用)
請求項1又は6に記載の発明によれば、過去の蓄積パケット状況に基づいて生成したクラスタから構成されたプロファイルに関するデータを記録したプロファイルデータ記憶手段を用いる。さらに、前記蓄積パケット状況毎に生成したシグニチャに関するデータを記録したシグニチャデータ記憶手段とを用いて、通信パケットを監視する。そして、侵入検知装置は、新たに取得した受信パケット状況と、前記プロファイルデータ記憶手段に記録された各クラスタとの距離を算出する。前記距離が閾値以上である場合には、前記シグニチャデータ記憶手段に記録されたシグニチャと、前記受信パケット状況とを比較し、比較結果に基づいて警報を出力する。このため、新たに取得した受信パケット状況が、プロファイルデータ記憶手段に記録されたクラスタに基づいて判断できない場合、シグニチャデータ記憶手段に記録されたシグニチャとの比較を行なう。従って、効率的に不正検知を行なうことができる。
【0022】
請求項2又は7に記載の発明によれば、閾値は各クラスタの分散に基づいて算出される。このため、クラスタの性質に応じて適切に不正を検知することができる。すなわち、分散が少ない場合には異常の範囲を狭め、分散が大きい場合には異常の範囲を広げることにより、異常検知の精度を上げることができる。
【0023】
請求項3又は8に記載の発明によれば、前記蓄積パケット状況及び受信パケット状況は、通信パケットの属性を抽出し、編集したデータである。このため、コンテンツ部分を暗号化されたパケットや、フラグメント化されたパケットに対しても、異常検知や不正検知を行なうことができる。
【0024】
請求項4又は9に記載の発明によれば、前記異常検知手段は、前記プロファイルデータ記憶手段に記録されたクラスタの数が所定値以上の場合、遺伝的アルゴリズムによる検索を用いて最も距離の近いクラスタを抽出し、このクラスタとの距離を算出する。遺伝的アルゴリズムを用いることにより、非線形な複雑系においても効率的に最近接クラスタを検出することができる。
【0025】
請求項5又は10に記載の発明によれば、前記不正検知手段は、前記受信パケット状況と類似度の高いシグニチャを、前記シグニチャデータ記憶手段から抽出する。そして、前記抽出したシグニチャを含めた警報を出力する。このため、検知された不正の種別を予測することができる。
【0026】
【発明の実施の形態】
以下、本発明を具体化した実施形態を図1〜図7に従って説明する。本実施形態では、図1に示すように、ネットワークとしてのインターネットIを介して、通信ホスト30からシステム10に対するアクセスを監視する場合に用いる侵入検知装置及び侵入検知プログラムとして説明する。
【0027】
システム10内のネットワークは、ルータ101を介してインターネットIに接続されている。そして、このルータ101には、さらに監視システム20が接続されている。また、システム10のネットワークには、ファイアウォール102が設けられ、このファイアウォール102を介して公開サーバ104が接続されている。さらに、システム10のネットワークは、ルータ103を介してクライアント端末105が接続されている。
【0028】
この監視システム20は、システム10のネットワークの外部と内部との通信パケットを監視するコンピュータシステムである。監視システム20は、図示しない制御手段(CPU)、メモリ手段(RAM、ROM等)等を備える。そして、監視システム20は、各種監視機能を実現するための侵入検知プログラムを内蔵している。そして、監視システム20は、このプログラムを実行することにより、異常検知手段、不正検知手段等の各手段として機能する。
【0029】
監視システム20は、パケット編集データ記憶部22、プロファイルデータ記憶手段としてのプロファイルデータ記憶部23、及びシグニチャデータ記憶手段としてのシグニチャデータ記憶部24を保有している。
【0030】
パケット編集データ記憶部22には、蓄積パケット状況としてのパケット編集データが記録される。このパケット編集データは、送受信された通信パケットの属性データに基づいて生成される。このパケット編集データは、所定期間のパケットを収集し、生成された場合に記録される。本実施形態では、パケット編集データは、パケットの属性データを編集し、編集時刻とともに、入力パケット数、出力パケット数、入力バイト数、出力バイト数、フラグメントパケット数等に関するデータから構成される。
【0031】
プロファイルデータ記憶部23には、パケット編集データに対して、公知のクラスタリング手法を用いて生成されたプロファイルデータが記録される。このプロファイルデータは、予め設定された時刻に、正常又は異常の判断が行なわれたパケット編集データに関してクラスタが生成した場合に記録される。プロファイルデータは、パケット編集データに基づいて生成されたクラスタに対して、クラスタ生成時刻とともに記録される。なお、本実施形態では、正常と判断されたパケット編集データのみにより生成されたクラスタに関するデータが記録される。
【0032】
シグニチャデータ記憶部24には、パターンマッチングを行なうためのシグニチャに関するデータが記録される。シグニチャデータは、パケット変数データ毎に付与された正常フラグ又は異常フラグとともに記録される。このシグニチャデータには、正常と判断されて蓄積されたパケット編集データに基づいて生成されたものと、事後的に不正と確認されたパケット編集データに基づいて生成されたもの等を含む。
【0033】
次に、上記のように構成されたシステムにおいて、ネットワーク上の通信パケットを監視し、不正アクセスを検知する場合の処理手順を図2〜図3に従って説明する。ここでは、異常検知や不正検知を行なうためのプロファイルやシグニチャ等のデータベースを生成するデータベース生成段階(図2)及び通信パケットを監視し、異常/不正パケットを検出するパケット監視段階(図3)とに分けて説明する。
【0034】
(データベース生成段階)
まず、異常検知を行なうためのプロファイルや、不正検知を行なうためのシグニチャ等のデータベースを生成する段階の処理を、図2を用いて説明する。
【0035】
まず、監視システム20は送受信される通信パケットを収集する(S1−1)。そして、収集したパケットの属性データを抽出する。この属性データには、各パケットのヘッダデータから抽出して生成される。TCP/IPの場合、IPヘッダ部には、宛先IPアドレスや送信元IPアドレス、データ長、上位プロトコルのタイプ(TCP/UDP等)、各種フラグ類、ヘッダのチェックサム、TTLなどが含まれている。さらに、TCPヘッダ部には発信元アドレス、宛先アドレス等が含まれる。
【0036】
次に、監視システム20は、抽出した属性データに基づいてパケット編集データを生成する(S1−2)。このパケット編集データは、パケットの属性データを編集したデータに、編集時刻を付加したデータである。本実施形態では、パケット編集データには、入力パケット数、出力パケット数、入力バイト数、出力バイト数、フラグメントパケット数に関するデータが含まれる。
【0037】
監視システム20は、生成したパケット編集データをパケット編集データ記憶部22に記録する。ここでは、簡単のために、パケット編集データを構成するパラメータの内、所定の2つのパラメータを用いて説明する。各々のパケット編集データを2つのパラメータの座標上に表示させると、分散状況は図4に示すように表わされる場合を想定する。このパラメータには、例えば「パケット数」や「バイト数」等を用いる。図4に示す座標上の各々のイベント100は、各パケット編集データに対応する。
【0038】
次に、監視システム20は、パケット編集データ記憶部22に記録されたパケット編集データに対して、公知のクラスタリング手法を用いて、プロファイルの生成を行なう(S1−3)。ここで、クラスタリング手法とは、分類基準の明確でないデータの類似性からグループに分類する手法である。なお、本実施形態では、このクラスタリングには、正常と判断されたパケット編集データに対して行なう。ここで、図4に示すイベント100に対してクラスタリングを行なった場合、図5に示すように、クラスタ(110、111、112)に分類される場合を想定する。なお、このクラスタリングは予め設定された周期で実行される。
【0039】
そして、生成した各クラスタをプロファイルデータとしてプロファイルデータ記憶部23に記録する。この場合、各クラスタの性質を識別するための識別子を付与して記録する。具体的には、ここでは正常系クラスタとしての正常フラグを付与して記録する。
【0040】
次に、監視システム20は正常系のシグニチャデータを生成する(S1−4)。具体的には、各クラスタに含まれるパケット変数データ毎に、この各クラスタに付与された正常フラグを付与してシグニチャを生成する(クラシフィケーション)。そして、監視システム20は、生成したシグニチャをシグニチャデータ記憶部24に記録する。
【0041】
次に、監視システム20に不正系のシグニチャデータを追加する(S1−5)。具体的には、事後的に不正と認定されたパケット変数データに対して不正フラグを付与してシグニチャデータを生成する。そして、この場合も、監視システム20は、生成したシグニチャデータをシグニチャデータ記憶部24に記録する。
【0042】
さらに、監視システム20には、自己成長を実現するための機能として、プロファイルデータの自動更新及びシグニチャデータの自動生成に関する機能を有する。ここで、プロファイルの自動更新とは、各クラスタの分散を考慮した距離の閾値判定を行なうために、新たに取得したパケット編集データに基づいて、監視対象ネットワークのプロファイリングを行なう機能である。但し、更新のタイミングは管理者によって任意又は適宜に決定される。
【0043】
一方、シグニチャの自動生成とは、本システムにシグニチャジェネレータというシステムを設定し、通常時のネットワークデータの収集プロセス中に随時、異常時のデータを追加する。これらの機能により、ネットワークの状態の遷移に即してプロファイル、シグニチャの正常、異常データを動的に捉えることができる。以上により、データベース生成段階の説明を終了する。
【0044】
(パケット監視段階)
次に、異常又は不正なパケットを検出する段階の処理を、図3を用いて説明する。
【0045】
新たなアクセスがあった場合、監視システム20は通信パケットを収集する。そして、監視システム20は収集した通信パケットの属性データを抽出する(S2−1)。さらに、監視システム20は抽出した属性データに基づいて、受信パケット状況としてのパケット編集データを生成する。
【0046】
ここで、プロファイルデータ記憶部23に記録されているクラスタ数により処理が異なる(S2−2)。クラスタ数が所定数以下の場合(ステップ(S2−2)において「No」の場合)、監視システム20は、新たなアクセスによるパケット編集データと、プロファイルデータ記憶部23に記録された各クラスタとの距離を算出する(S2−3)。例えば、アクセスのあった場合のパケット編集データを図5に示す2次元パラメータの座標系にプロットした場合、図6に示すイベント120として表示される場合を想定する。そこで、監視システム20は、各クラスタ(110、111、112)とイベント120との距離を算出する。
【0047】
一方、クラスタ数が所定数より多い場合(ステップ(S2−2)において「Yes」の場合)、監視システム20は、新たなアクセスによるパケット編集データに対して最近接のクラスタを、遺伝的アルゴリズムを用いて検索し、その距離を算出する(S2−4)。ここで、遺伝的アルゴリズム(Genetic Algorithm:GA)とは、最適化を高速に行なうための探索アルゴリズムの一種である。ここでは、まず初期集団を生成し、選択、交叉、突然変異等のプロセスを繰り返すことにより、最適解(ここでは、最近接クラスタ)を検索する。
【0048】
次に、監視システム20は、算出された距離と所定の閾値とを比較する(S2−5)。本実施形態では、この閾値として、監視システム20が各クラスタの分散に基づいて算出した値を用いる。具体的に、分散が少ない場合には小さな値を、分散が大きい場合には大きな値を閾値として用いる。
【0049】
次に、算出した距離が所定の閾値より大きい場合(ステップ(S2−5)において「Yes」の場合)、監視システム20は各シグニチャとの類似度を算出する(S2−6)。具体的には、シグニチャデータ記憶部24に記録された各シグニチャと、アクセスのあったパケット編集データとの類似度(距離)を算出する。例えば、図7に示すようにシグニチャ(150、151、152)及び不正シグニチャ153との比較を行なう。ここで、シグニチャ150はクラスタ110に含まれるパケット編集データから生成され、シグニチャ151はクラスタ111に含まれるパケット編集データから生成され、シグニチャ152はクラスタ112に含まれるパケット編集データから生成される。不正シグニチャ153は、シグニチャジェネレータにより生成された不正と判断されたシグニチャである。
【0050】
最も類似度が高いシグニチャが不正フラグの付されたシグニチャ(不正シグニチャ)である場合(ステップ(S2−7)において「Yes」の場合)、監視システム20は異常なアクセスがある旨のアラーム(警報)を出力する(S2−8)。
【0051】
そして、監視システム20はシグニチャデータの更新を行なう(S2−9)。具体的には、異常と判断したパケット変数データに不正フラグを付与してシグニチャを生成し、このシグニチャをシグニチャデータ記憶部24に記録する。
【0052】
ステップ(S2−3)またはステップ(S2−4)において算出した距離が所定の閾値より小さい場合(ステップ(S2−5)において「No」の場合)、監視システム20は正常なアクセスとしてシグニチャデータを更新する(S2−10)。具体的には、監視システム20は、パケット変数データに正常フラグを付与してシグニチャを生成し、このシグニチャをシグニチャデータ記憶部24に記録する。
【0053】
さらに、監視システム20はプロファイルの更新を行なう(S1−11)。具体的には、新たに取得したパケット編集データを用いて、クラスタリング手法を用いてプロファイルの生成し直す。そして、監視システム20は、生成したプロファイルデータをプロファイルデータ記憶部23に記録する。
【0054】
なお、最も類似度が高いシグニチャが正常フラグの付されたシグニチャである場合(ステップ(S2−7)において「No」の場合)も、ステップ(S2−10)、(S2−11)の処理が行なわれる。以上により、異常/不正パケットを検出する監視処理の説明を終了する。
【0055】
以上、本実施形態によれば、以下に示す効果を得ることができる。
・ 上記実施形態では、新たなアクセスがあった場合、監視システム20は、プロファイルデータ記憶部23に記録されたプロファイルを用いて正常系クラスタとの距離を算出する。そして、最近接の正常系クラスタとの距離が所定の閾値以上の場合、監視システム20は異常なアクセスの可能性を検出することができる。従って、未知の攻撃の可能性を検知できる。
【0056】
・ 上記実施形態では、クラスタとの距離を比較するための閾値として、監視システム20が各クラスタの分散に基づいて算出した値を用いる。具体的に、分散が少ない場合には小さな値を、分散が大きい場合には大きな値を閾値として用いる。従って、分散が少ない場合には異常の範囲を狭め、分散が大きい場合には異常の範囲を広げることにより、異常検知の精度を上げることができる。
【0057】
・ 上記実施形態では、ステップ(S2−9)やステップ(S2−10)において、新たに取得したパケット変数データに基づいて正常フラグ又は不正フラグを付与したシグニチャデータを生成する。さらに、ステップ(S1−11)において、新たに取得したパケット編集データに基づいて、クラスタリング手法を用いて、プロファイルの生成し直すことによりプロファイルの更新を行なう。このため、監視対象となるネットワーク環境とその遷移の学習によってデータベースに格納するデータを自動的に生成する自己成長を実現するができる。従って、不正アクセスを検知するためのデータを効率的に準備できる。また、ネットワーク環境に応じた煩雑な設定作業も軽減できる。
【0058】
・ 上記実施形態では、正常系クラスタとイベントとの距離が所定の閾値より大きい場合、監視システム20は、このイベントと類似度が高いシグニチャを特定する。そして、監視システム20は、このシグニチャの属性により、不正の有無を判断する。このように、クラスタリングとクラシフィケーションとを組み合わせることにより、誤警報を抑制しながら、効率的に異常アクセスや不正アクセスを検出できる。
【0059】
・ 上記実施形態では、クラスタ数が所定数より多い場合、監視システム20は、新たなアクセスによるパケット編集データに対して最近接のクラスタを、遺伝的アルゴリズムを用いて検索し、その距離を算出する。遺伝的アルゴリズムを用いることにより、非線形な複雑系においても、極小解や極大解等の局所的な解に陥ることなく、効率的に最近接クラスタを検出することができる。
【0060】
・ 上記実施形態では、監視システム20は、パケット編集データ記憶部22に記録されたパケット編集データに対して、公知のクラスタリング手法を用いて、プロファイルの生成を行なう。このため、パケット編集データを収集することにより、監視システム20が適切なクラスタリングを行なう。従って、効率的にプロファイルデータを生成することができる。
【0061】
・ 上記実施形態では、プロファイルデータ記憶部23には、パケット編集データに対して、公知のクラスタリング手法を用いて生成されたプロファイルデータが記録される。正常か否かは状況(季節、時間、場所等)に応じて変化するものであるため、多くのクラスタが蓄積されることにより、蓄積された状況に応じて、より的確に正常又は異常を判断することできる。
【0062】
なお、上記実施形態は、以下の態様に変更してもよい。
・ 上記実施形態では、ネットワークとしてのインターネットIを介して、通信ホスト30からシステム10に対するアクセスを監視する場合を想定するが、これに限るものではない。例えば、イントラネット内の監視等に用いてもよい。
【0063】
・ 上記実施形態では、正常と判断されたパケット編集データのみにより生成されたクラスタに関するデータがプロファイルデータ記憶部23に記録される。これに代えて、異常と判断されたパケット編集データにより生成されたクラスタ(異常系クラスタ)に関するデータをプロファイルデータ記憶部23に記録してもよい。また、両クラスタを記録してもよい。算出した距離が所定の閾値より小さい場合、監視システム20は最近接クラスタの種類を特定し、異常系クラスタに近い場合、異常なアクセスとして警告を出力する。さらに、正常系クラスタからも、異常系クラスタからも遠い場合に、シグニチャデータとの照合処理を実行する。これによっても、監視システム20は、正常性や異常性等を判断することができる。
【0064】
・ 上記実施形態では、監視システム20が算出された距離と比較する場合に用いる閾値として、各クラスタの分散に基づいて算出した値を用いる。具体的に、分散が少ない場合には小さな値を、分散が大きい場合には大きな値を閾値として用いる。閾値を算出する方法はこれに限られるものではなく、予め用意した関数に各クラスタに含まれるパケット編集データを代入して閾値を算出してもよい。
【0065】
・ 上記実施形態では、最も類似度が高いシグニチャが不正フラグの付されたシグニチャ(不正シグニチャ)である場合、監視システム20は異常なアクセスがある旨のアラームを出力する。この場合、各シグニチャとの類似度の一覧を表示してもよい。これにより、不正の種類を特定したり、その他の可能性を提示したりすることができる。
【0066】
・ 上記実施形態では、システム10内のネットワークは、ルータ101を介してインターネットIに接続されている。そして、このルータ101には、さらに監視システム20が接続されている。システム構成はこれに限られるものではなく、従来のIDS等の組み合わせて構成してもよい。
【0067】
【発明の効果】
以上詳述したように、本発明によれば、誤警報を抑制しながら、効率的に異常アクセスや不正アクセスを検知することができる。
【図面の簡単な説明】
【図1】本発明の実施形態のシステム概略図。
【図2】本実施形態の処理手順の説明図。
【図3】本実施形態の処理手順の説明図。
【図4】イベント分布の説明図。
【図5】イベント分布の説明図。
【図6】異常検知の概念の説明図。
【図7】不正検知の概念の説明図。
【符号の説明】
20…侵入検知装置としての監視システム、23…プロファイルデータ記憶手段としてのプロファイルデータ記憶部、24…シグニチャデータ記憶手段としてのシグニチャデータ記憶部、110,111,112…クラスタ、150,151,152…シグニチャ、153…不正シグニチャ、I…ネットワークとしてのインターネット。
Claims (10)
- ネットワーク上の通信パケットを監視する侵入検知装置であって、
前記侵入検知装置が、
過去の蓄積パケット状況に基づいて生成したクラスタから構成されたプロファイルに関するデータを記録したプロファイルデータ記憶手段と、
前記蓄積パケット状況毎に生成したシグニチャに関するデータを記録したシグニチャデータ記憶手段と、
新たに取得した受信パケット状況と、前記プロファイルデータ記憶手段に記録された各クラスタとの距離を算出する異常検知手段と、
前記距離が閾値以上である場合には、前記シグニチャデータ記憶手段に記録されたシグニチャと前記受信パケット状況とを比較し、比較結果に基づいて警報を出力する不正検知手段と
を有することを特徴とする侵入検知装置。 - 前記閾値は各クラスタの分散に基づいて算出されることを特徴とする請求項1に記載の侵入検知装置。
- 前記蓄積パケット状況及び受信パケット状況は、通信パケットの属性を抽出し、編集したデータであることを特徴とする請求項1又は2に記載の侵入検知装置。
- 前記異常検知手段は、
前記プロファイルデータ記憶手段に記録されたクラスタの数が所定値以上の場合、遺伝的アルゴリズムによる検索を用いて最も距離の近いクラスタを抽出し、このクラスタとの距離を算出することを特徴とする請求項1〜3のいずれか1項に記載の侵入検知装置。 - 前記不正検知手段は、
前記受信パケット状況と類似度の高いシグニチャを、前記シグニチャデータ記憶手段から抽出し、
前記抽出したシグニチャを含めた警報を出力することを特徴とする請求項1〜4のいずれか1項に記載の侵入検知装置。 - 過去の蓄積パケット状況に基づいて生成したクラスタから構成されたプロファイルに関するデータを記録したプロファイルデータ記憶手段と、前記蓄積パケット状況毎に生成したシグニチャに関するデータを記録したシグニチャデータ記憶手段に接続された侵入検知装置を用いて、ネットワーク上の通信パケットを監視する侵入検知プログラムであって、
前記侵入検知装置を、
新たに取得した受信パケット状況と、前記プロファイルデータ記憶手段に記録された各クラスタとの距離を算出する異常検知手段と、
前記距離が閾値以上である場合には、前記シグニチャデータ記憶手段に記録されたシグニチャと、前記受信パケット状況とを比較し、比較結果に基づいて警報を出力する不正検知手段
として機能させることを特徴とする侵入検知プログラム。 - 前記閾値は各クラスタの分散に基づいて算出されることを特徴とする請求項6に記載の侵入検知プログラム。
- 前記蓄積パケット状況及び受信パケット状況は、通信パケットの属性を抽出し、編集したデータであることを特徴とする請求項6又は7に記載の侵入検知プログラム。
- 前記異常検知手段は、
前記プロファイルデータ記憶手段に記録されたクラスタの数が所定値以上の場合、遺伝的アルゴリズムによる検索を用いて最も距離の近いクラスタを抽出し、このクラスタとの距離を算出することを特徴とする請求項6〜8のいずれか1項に記載の侵入検知プログラム。 - 前記不正検知手段は、
前記受信パケット状況と類似度の高いシグニチャを、前記シグニチャデータ記憶手段から抽出し、
前記抽出したシグニチャを含めた警報を出力することを特徴とする請求項6〜9のいずれか1項に記載の侵入検知プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002349895A JP2004186878A (ja) | 2002-12-02 | 2002-12-02 | 侵入検知装置及び侵入検知プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002349895A JP2004186878A (ja) | 2002-12-02 | 2002-12-02 | 侵入検知装置及び侵入検知プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004186878A true JP2004186878A (ja) | 2004-07-02 |
Family
ID=32752299
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002349895A Pending JP2004186878A (ja) | 2002-12-02 | 2002-12-02 | 侵入検知装置及び侵入検知プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004186878A (ja) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007143738A (ja) * | 2005-11-25 | 2007-06-14 | Glory Ltd | 遊技媒体計数システム、遊技媒体計数装置、管理装置、および遊技媒体計数方法 |
JP2007335951A (ja) * | 2006-06-12 | 2007-12-27 | Kddi R & D Laboratories Inc | 通信監視装置、通信監視方法およびプログラム |
JP2008146157A (ja) * | 2006-12-06 | 2008-06-26 | Mitsubishi Electric Corp | ネットワーク異常判定装置 |
JP2009523270A (ja) * | 2005-12-09 | 2009-06-18 | フラウンホファー‐ゲゼルシャフト・ツア・フェルダルング ・デア・アンゲバンテン・フォルシュング・エー・ファウ. | データ列の自動比較に用いられる方法およびその装置 |
JP2010050939A (ja) * | 2008-08-25 | 2010-03-04 | Hitachi Information Systems Ltd | 攻撃ノード群判定装置およびその方法、ならびに情報処理装置および攻撃対処方法、およびプログラム |
JP2011040064A (ja) * | 2003-11-12 | 2011-02-24 | Trustees Of Columbia Univ In The City Of New York | 正常データのnグラム分布を用いてペイロード異常を検出するための装置、方法、及び媒体 |
CN101001242B (zh) * | 2006-01-10 | 2011-04-20 | 中兴通讯股份有限公司 | 网络设备入侵检测的方法 |
JP2014064216A (ja) * | 2012-09-21 | 2014-04-10 | Kddi R & D Laboratories Inc | 攻撃ホストの挙動解析装置、方法及びプログラム |
JP2015506642A (ja) * | 2012-01-25 | 2015-03-02 | ビットディフェンダー アイピーアール マネジメント リミテッド | キャラクター・ストリングの周波数スペクトルを用いるスパム検出のシステムおよび方法 |
WO2017018377A1 (ja) * | 2015-07-30 | 2017-02-02 | 日本電信電話株式会社 | 分析方法、分析装置、および分析プログラム |
US12003523B2 (en) | 2020-01-23 | 2024-06-04 | Mitsubishi Electric Corporation | Model generation apparatus, model generation method, and computer readable medium |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0993665A (ja) * | 1995-09-26 | 1997-04-04 | Meidensha Corp | 監視装置 |
JP2002279148A (ja) * | 2001-03-16 | 2002-09-27 | Toshiba Corp | データ分析プログラム及びコンピュータシステムによるデータ分析方法並びにデータ分析システム |
JP2002342279A (ja) * | 2001-03-13 | 2002-11-29 | Fujitsu Ltd | フィルタリング装置、フィルタリング方法およびこの方法をコンピュータに実行させるプログラム |
-
2002
- 2002-12-02 JP JP2002349895A patent/JP2004186878A/ja active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0993665A (ja) * | 1995-09-26 | 1997-04-04 | Meidensha Corp | 監視装置 |
JP2002342279A (ja) * | 2001-03-13 | 2002-11-29 | Fujitsu Ltd | フィルタリング装置、フィルタリング方法およびこの方法をコンピュータに実行させるプログラム |
JP2002279148A (ja) * | 2001-03-16 | 2002-09-27 | Toshiba Corp | データ分析プログラム及びコンピュータシステムによるデータ分析方法並びにデータ分析システム |
Non-Patent Citations (4)
Title |
---|
及川達也 他: "統計的クラスタリング手法によるネットワーク異常状態の検出", 電子情報通信学会技術研究報告, vol. 第102巻/第353号, CSNG200400239013, 24 September 2002 (2002-09-24), pages 83 - 88, ISSN: 0000765105 * |
山西健司 他: "統計的外れ値検出によるデータマイニングとネットワーク侵入検出への応用", 電子情報通信学会技術研究報告, vol. 第102巻/第132号, CSNG200400064003, 14 June 2002 (2002-06-14), pages 19 - 24, ISSN: 0000765106 * |
武田圭史, 武藤佳恭: "オープンソース方式による侵入検出システムの開発について", 情報処理学会研究報告, vol. 第2000巻/第30号, CSNG200100133030, 22 March 2000 (2000-03-22), JP, pages 183 - 188, ISSN: 0000765104 * |
稲垣洋介 他: "誤警報を削減し未知のDoS攻撃を検知するNIDS", 情報処理学会研究報告, vol. 第2003巻/第126号, CSNG200500292003, 19 December 2003 (2003-12-19), pages 13 - 18, ISSN: 0000765107 * |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011040064A (ja) * | 2003-11-12 | 2011-02-24 | Trustees Of Columbia Univ In The City Of New York | 正常データのnグラム分布を用いてペイロード異常を検出するための装置、方法、及び媒体 |
JP2007143738A (ja) * | 2005-11-25 | 2007-06-14 | Glory Ltd | 遊技媒体計数システム、遊技媒体計数装置、管理装置、および遊技媒体計数方法 |
JP2009523270A (ja) * | 2005-12-09 | 2009-06-18 | フラウンホファー‐ゲゼルシャフト・ツア・フェルダルング ・デア・アンゲバンテン・フォルシュング・エー・ファウ. | データ列の自動比較に用いられる方法およびその装置 |
CN101001242B (zh) * | 2006-01-10 | 2011-04-20 | 中兴通讯股份有限公司 | 网络设备入侵检测的方法 |
JP2007335951A (ja) * | 2006-06-12 | 2007-12-27 | Kddi R & D Laboratories Inc | 通信監視装置、通信監視方法およびプログラム |
JP2008146157A (ja) * | 2006-12-06 | 2008-06-26 | Mitsubishi Electric Corp | ネットワーク異常判定装置 |
JP2010050939A (ja) * | 2008-08-25 | 2010-03-04 | Hitachi Information Systems Ltd | 攻撃ノード群判定装置およびその方法、ならびに情報処理装置および攻撃対処方法、およびプログラム |
JP2015506642A (ja) * | 2012-01-25 | 2015-03-02 | ビットディフェンダー アイピーアール マネジメント リミテッド | キャラクター・ストリングの周波数スペクトルを用いるスパム検出のシステムおよび方法 |
JP2014064216A (ja) * | 2012-09-21 | 2014-04-10 | Kddi R & D Laboratories Inc | 攻撃ホストの挙動解析装置、方法及びプログラム |
WO2017018377A1 (ja) * | 2015-07-30 | 2017-02-02 | 日本電信電話株式会社 | 分析方法、分析装置、および分析プログラム |
JPWO2017018377A1 (ja) * | 2015-07-30 | 2017-12-07 | 日本電信電話株式会社 | 分析方法、分析装置、および分析プログラム |
US10516685B2 (en) | 2015-07-30 | 2019-12-24 | Nippon Telegraph And Telephone Corporation | Analysis method, analysis device and analysis program |
US12003523B2 (en) | 2020-01-23 | 2024-06-04 | Mitsubishi Electric Corporation | Model generation apparatus, model generation method, and computer readable medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20070226803A1 (en) | System and method for detecting internet worm traffics through classification of traffic characteristics by types | |
KR101538709B1 (ko) | 산업제어 네트워크를 위한 비정상 행위 탐지 시스템 및 방법 | |
JP6001689B2 (ja) | ログ分析装置、情報処理方法及びプログラム | |
US9032521B2 (en) | Adaptive cyber-security analytics | |
JP4020912B2 (ja) | 不正アクセス検知装置、不正アクセス検知プログラムおよび不正アクセス検知方法 | |
US8839430B2 (en) | Intrusion detection in communication networks | |
US20070289013A1 (en) | Method and system for anomaly detection using a collective set of unsupervised machine-learning algorithms | |
KR20200033092A (ko) | 엣지 컴퓨팅 기반 네트워크 모니터링 방법, 장치 및 시스템 | |
KR20190075861A (ko) | DoS/DDoS 공격의 탐지 방법, 장치, 서버 및 저장 매체 | |
US20140165207A1 (en) | Method for detecting anomaly action within a computer network | |
CN111935172A (zh) | 基于网络拓扑的网络异常行为检测方法、计算机装置及计算机可读存储介质 | |
JP4089719B2 (ja) | 異常検出システム,異常管理装置,異常管理方法,プローブおよびそのプログラム | |
US20050108377A1 (en) | Method for detecting abnormal traffic at network level using statistical analysis | |
CN107135093A (zh) | 一种基于有限自动机的物联网入侵检测方法及检测系统 | |
CN106465416A (zh) | 传感器网络网关 | |
KR20120068612A (ko) | Dns 쿼리 트래픽 감시 및 처리 방법과 그 장치 | |
CN108632269A (zh) | 基于c4.5决策树算法的分布式拒绝服务攻击检测方法 | |
KR20150091775A (ko) | 비정상 행위 탐지를 위한 네트워크 트래픽 분석 방법 및 시스템 | |
CN109218321A (zh) | 一种网络入侵检测方法及系统 | |
JP2004186878A (ja) | 侵入検知装置及び侵入検知プログラム | |
CN106534212A (zh) | 基于用户行为和数据状态的自适应安全防护方法及系统 | |
CN109150869A (zh) | 一种交换机信息采集分析系统及方法 | |
CN105959321A (zh) | 网络远程主机操作系统被动识别方法及装置 | |
JP7086230B2 (ja) | プロトコルに依存しない異常検出 | |
CN113259367B (zh) | 工控网络流量多级异常检测方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20041109 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060815 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060822 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20061226 |