(57)【要約】【課題】所定のプロトコルに準拠した正しい形式のパケットによるネットワーク攻撃を適切に検出すること。【解決手段】パケット処理部およびヘッダ分析部を介して振り分けられた上りパケットについて上りパケット数計数部が計数単位時間ごとに応答の属性を有するパケットの数を計数するとともに、同じく振り分けられた下りパケットについて下りパケット数計数部が計数単位時間ごとに応答の属性を有するパケットの数を計数し、攻撃検出部が上りパケット数計数部および下りパケット数計数部によって計数された上りパケット数および下りパケット数に基づいてネットワーク攻撃の有無を判定するよう構成する。【選択図】        図５
2007166154.tif 000002
【特許請求の範囲】
【請求項１】
通信端末とサーバとの間で送受信される所定のプロトコルに準拠したパケットを参照することによって前記通信端末が前記サーバに対しておこなうネットワーク攻撃を検出する攻撃検出装置であって、
前記パケットの中から応答の属性を有する応答パケットを抽出する応答パケット抽出手段と、
前記応答パケット抽出手段が抽出した応答パケットのうち前記通信端末から前記サーバへ送信された上り応答パケット数および前記サーバから前記通信端末へ送信された下り応答パケット数を計数単位時間ごとにそれぞれ計数するパケット数計数手段と、
前記パケット数計数手段が計数した前記上りパケット数および前記下りパケット数との相関関係をあらわす相関値に基づいて前記ネットワーク攻撃を検出する攻撃検出手段と
を備えたことを特徴とする攻撃検出装置。
【請求項２】
前記攻撃検出手段は、
前記計数単位時間ごとに計数された前記上りパケット数および前記下りパケット数を用いた回帰分析をおこなうことによって前記相関値を算出することを特徴とする請求項１に記載の攻撃検出装置。
【請求項３】
前記攻撃検出手段は、
前記計数単位時間ごとに計数された前記上りパケット数および前記下りパケット数を用いて算出したピアソンの相関係数を前記相関値とすることを特徴とする請求項１に記載の攻撃検出装置。
【請求項４】
前記パケット数計数手段は、
前記計数単位時間を時系列に連続して設けることを特徴とする請求項１、２または３に記載の攻撃検出装置。
【請求項５】
前記パケット数計数手段は、
前記計数単位時間を時系列に一部を重複させて設けることを特徴とする請求項１、２または３に記載の攻撃検出装置。
【請求項６】
前記応答パケット抽出手段は、
前記パケットのヘッダ部に設定された前記応答の属性に基づいて前記応答パケットを抽出することを特徴とする請求項１〜５のいずれか一つに記載の攻撃検出装置。
【請求項７】
通信端末とサーバとの間で送受信される所定のプロトコルに準拠したパケットを参照することによって前記通信端末が前記サーバに対しておこなうネットワーク攻撃を検出する攻撃検出方法であって、
前記パケットの中から応答の属性を有する応答パケットを抽出する応答パケット抽出工程と、
前記応答パケット抽出工程が抽出した応答パケットのうち前記通信端末から前記サーバへ送信された上り応答パケット数および前記サーバから前記通信端末へ送信された下り応答パケット数を計数単位時間ごとにそれぞれ計数するパケット数計数工程と、
前記パケット数計数工程が計数した前記上りパケット数および前記下りパケット数との相関関係をあらわす相関値に基づいて前記ネットワーク攻撃を検出する攻撃検出工程と
を含んだことを特徴とする攻撃検出方法。
【請求項８】
通信端末とサーバとの間で送受信される所定のプロトコルに準拠したパケットを参照することによって前記通信端末が前記サーバに対しておこなうネットワーク攻撃を検出する攻撃検出プログラムであって、
前記パケットの中から応答の属性を有する応答パケットを抽出する応答パケット抽出手順と、
前記応答パケット抽出手順が抽出した応答パケットのうち前記通信端末から前記サーバへ送信された上り応答パケット数および前記サーバから前記通信端末へ送信された下り応答パケット数を計数単位時間ごとにそれぞれ計数するパケット数計数手順と、
前記パケット数計数手順が計数した前記上りパケット数および前記下りパケット数との相関関係をあらわす相関値に基づいて前記ネットワーク攻撃を検出する攻撃検出手順と
をコンピュータに実行させることを特徴とする攻撃検出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、通信端末とサーバとの間で送受信される所定のプロトコルに準拠したパケットを参照することによって前記通信端末が前記サーバに対しておこなうネットワーク攻撃を検出する攻撃検出装置に関し、特に、所定のプロトコルに準拠した正しい形式のパケットによるネットワーク攻撃を適切に検出することができるとともに攻撃検出に関する管理コストを低減することができる攻撃検出装置、攻撃検出方法および攻撃検出プログラムに関する。
【背景技術】
【０００２】
近年、インターネット上のサーバが提供するサービスを妨害するネットワーク攻撃が問題となっている。このネットワーク攻撃としては、たとえば、悪意のある攻撃者がネットワークに対して大量のパケットを送信することでネットワークに負荷をかけ、これによりネットワークサービス提供者のサービスを妨害するＤｏＳ攻撃（Denial  of  Service）が知られている。
【０００３】
かかるＤｏＳ攻撃は大きく２つの攻撃形態に分類することができる。すなわち、１つめは所定のプロトコルに準拠していない異常なパケットをサーバに送信する攻撃形態であり、２つめは所定のプロトコルに準拠した正規なパケットを大量にサーバに送信する攻撃形態である。
【０００４】
そして、上記した１つめの攻撃形態に対応する技術としては、攻撃を仕掛ける通信端末とサーバとを結ぶ通信経路上にＩＤＳ（Intrusion  Detection  System）機能を有するＩＤＳ装置を設け、このＩＤＳ装置が所定のプロトコルに準拠していない異常なパケットを廃棄するもの（たとえば、非特許文献１参照）が知られている。
【０００５】
また、上記した２つめの攻撃形態に対応する技術としては、攻撃を仕掛ける通信端末とサーバとを結ぶ通信経路上にパケットの統計機能を有する中継装置を設け、この中継装置がこの統計機能を用いることによって特定の送信元アドレスを有するパケット数を計数し、計数値が所定の閾値以上である場合に攻撃検出をおこなうもの（たとえば、非特許文献２参照）が知られている。
【０００６】
【非特許文献１】ＳＮＯＲＴ、［online］、［平成１７年１２月２日検索］、インターネット＜ＵＲＬ：http://www.snort.org/pub-bin/sigs-search.cgi?sid=ddos＞
【非特許文献２】ＣＩＳＣＯ、”Advanced  Policy  Procedures”、［online］、［平成１７年１２月２日検索］、インターネット＜ＵＲＬ：http://www.cisco.com/univercd/cc/td/doc/product/secure/ad_g/ad_g_308/grdum/advpolcy.pdf＞
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、非特許文献１に開示されている技術は、上記した１つめの攻撃形態（所定のプロトコルに準拠していない異常なパケットによる攻撃形態）には有効であるものの、上記した２つめの攻撃形態（所定のプロトコルに準拠した正規なパケットによる攻撃形態）に対処することができないという問題があった。
【０００８】
また、非特許文献２に開示されている技術は、以下に示す２つの問題を有していた。すなわち、１つめの問題は正規ユーザによるアクセスが同一時間帯に集中することによって発生するフラッシュ・クラウドによる負荷をネットワーク攻撃として誤検知してしまうことである。また、２つめの問題はネットワーク攻撃の判定基準として用いる閾値を決定するためにネットワーク管理者が過去のトラヒックデータを分析する必要があることである。
【０００９】
これらのことから、所定のプロトコルに準拠した正しい形式のパケットによるネットワーク攻撃を適切に検出することができるとともに攻撃検出に関する管理コストを低減することができる攻撃検出手法をいかにして実現するかが大きな課題となっている。
【００１０】
この発明は、上述した従来技術による問題点を解消するためになされたものであって、所定のプロトコルに準拠した正しい形式のパケットによるネットワーク攻撃を適切に検出することができるとともに攻撃検出に関する管理コストを低減することができる攻撃検出装置、攻撃検出方法および攻撃検出プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
上述した課題を解決し、目的を達成するため、請求項１に係る発明は、通信端末とサーバとの間で送受信される所定のプロトコルに準拠したパケットを参照することによって前記通信端末が前記サーバに対しておこなうネットワーク攻撃を検出する攻撃検出装置であって、前記パケットの中から応答の属性を有する応答パケットを抽出する応答パケット抽出手段と、前記応答パケット抽出手段が抽出した応答パケットのうち前記通信端末から前記サーバへ送信された上り応答パケット数および前記サーバから前記通信端末へ送信された下り応答パケット数を計数単位時間ごとにそれぞれ計数するパケット数計数手段と、前記パケット数計数手段が計数した前記上りパケット数および前記下りパケット数との相関関係をあらわす相関値に基づいて前記ネットワーク攻撃を検出する攻撃検出手段とを備えたことを特徴とする。
【００１２】
また、請求項２に係る発明は、上記の発明において、前記攻撃検出手段は、前記計数単位時間ごとに計数された前記上りパケット数および前記下りパケット数を用いた回帰分析をおこなうことによって前記相関値を算出することを特徴とする。
【００１３】
また、請求項３に係る発明は、上記の発明において、前記攻撃検出手段は、前記計数単位時間ごとに計数された前記上りパケット数および前記下りパケット数を用いて算出したピアソンの相関係数を前記相関値とすることを特徴とする。
【００１４】
また、請求項４に係る発明は、上記の発明において、前記パケット数計数手段は、前記計数単位時間を時系列に連続して設けることを特徴とする。
【００１５】
また、請求項５に係る発明は、上記の発明において、前記パケット数計数手段は、前記計数単位時間を時系列に一部を重複させて設けることを特徴とする。
【００１６】
また、請求項６に係る発明は、上記の発明において、前記応答パケット抽出手段は、前記パケットのヘッダ部に設定された前記応答の属性に基づいて前記応答パケットを抽出することを特徴とする。
【００１７】
また、請求項７に係る発明は、通信端末とサーバとの間で送受信される所定のプロトコルに準拠したパケットを参照することによって前記通信端末が前記サーバに対しておこなうネットワーク攻撃を検出する攻撃検出方法であって、前記パケットの中から応答の属性を有する応答パケットを抽出する応答パケット抽出工程と、前記応答パケット抽出工程が抽出した応答パケットのうち前記通信端末から前記サーバへ送信された上り応答パケット数および前記サーバから前記通信端末へ送信された下り応答パケット数を計数単位時間ごとにそれぞれ計数するパケット数計数工程と、前記パケット数計数工程が計数した前記上りパケット数および前記下りパケット数との相関関係をあらわす相関値に基づいて前記ネットワーク攻撃を検出する攻撃検出工程とを含んだことを特徴とする。
【００１８】
また、請求項８に係る発明は、上記の発明において、通信端末とサーバとの間で送受信される所定のプロトコルに準拠したパケットを参照することによって前記通信端末が前記サーバに対しておこなうネットワーク攻撃を検出する攻撃検出プログラムであって、前記パケットの中から応答の属性を有する応答パケットを抽出する応答パケット抽出手順と、前記応答パケット抽出手順が抽出した応答パケットのうち前記通信端末から前記サーバへ送信された上り応答パケット数および前記サーバから前記通信端末へ送信された下り応答パケット数を計数単位時間ごとにそれぞれ計数するパケット数計数手順と、前記パケット数計数手順が計数した前記上りパケット数および前記下りパケット数との相関関係をあらわす相関値に基づいて前記ネットワーク攻撃を検出する攻撃検出手順とをコンピュータに実行させることを特徴とする。
【発明の効果】
【００１９】
請求項１、７または８の発明によれば、パケットの中から応答の属性を有する応答パケットを抽出し、抽出した応答パケットのうち通信端末からサーバへ送信された上り応答パケット数およびサーバから通信端末へ送信された下り応答パケット数を計数単位時間ごとにそれぞれ計数し、計数した上りパケット数および下りパケット数との相関関係をあらわす相関値に基づいてネットワーク攻撃を検出するよう構成したので、フラッシュ・クラウドによる負荷をネットワーク攻撃として誤検知することなく所定のプロトコルに準拠した正しい形式のパケットによるネットワーク攻撃を適切に検出することができるとともに、相関値に基づくネットワーク攻撃判定を自動的におこなうことによって攻撃検出に関する管理コストを低減することができるという効果を奏する。
【００２０】
また、請求項２の発明によれば、計数単位時間ごとに計数された上りパケット数および下りパケット数を用いた回帰分析をおこなうことによって相関値を算出するよう構成したので、パケット数のサンプルデータに基づいたネットワーク攻撃判定を迅速かつ適切におこなうことができるという効果を奏する。
【００２１】
また、請求項３の発明によれば、計数単位時間ごとに計数された上りパケット数および下りパケット数を用いて算出したピアソンの相関係数を相関値とするよう構成したので、パケット数のサンプルデータに基づいたネットワーク攻撃判定を迅速かつ適切におこなうことができるという効果を奏する。
【００２２】
また、請求項４の発明によれば、計数単位時間を時系列に連続して設けるよう構成したので、パケット数のサンプルデータを簡易かつ迅速に取得することができるという効果を奏する。
【００２３】
また、請求項５の発明によれば、計数単位時間を時系列に一部を重複させて設けるよう構成したので、パケット数のサンプルデータを簡易かつ迅速に取得することができるとともに、一時的なパケット数増減の影響を排除することができるという効果を奏する。
【００２４】
また、請求項６の発明によれば、パケットのヘッダ部に設定された応答の属性に基づいて応答パケットを抽出するよう構成したので、応答パケットの抽出を迅速におこなうことができるという効果を奏する。
【発明を実施するための最良の形態】
【００２５】
以下に添付図面を参照して、この発明に係る攻撃検出手法の実施例を詳細に説明する。なお、以下では、本発明に係る攻撃検出手法を適用した攻撃検出装置について説明することとする。
【実施例】
【００２６】
まず、本発明に係る攻撃検出装置の特徴について図１を用いて説明する。図１は、本発明に係る攻撃検出装置１００の特徴を示す図である。同図に示すように、攻撃検出装置１００は、攻撃を仕掛ける側にあたる通信端末１０と攻撃対象となるサーバ２０との通信経路上に設けられる。そして、この攻撃検出装置１００は、たとえば、インターネットなどのネットワーク上に設けられる。
【００２７】
同図に示す通信端末１０およびサーバ２０はパーソナルコンピュータ（ＰＣ）やワークステーション（ＷＳ）などＴＣＰ（Transport  Control  Protocol）に準拠した通信をおこなう装置であればいかなるものであってもよい。そして、攻撃検出装置１００は、汎用のコンピュータ（ＰＣなど）やルータなどによって構成される。なお、攻撃検出装置１００をプロキシサーバ上に構成することとしてもよい。
【００２８】
また、図１においては、通信端末１０およびサーバ２０を１台ずつ示しているが複数台存在していても構わない。なお、以下では、通信端末１０からサーバ２０へ向かう方向を「上り方向」と、サーバ２０から通信端末１０へ向かう方向を「下り方向」として説明する。
【００２９】
攻撃検出装置１００は通信端末１０とサーバ２０との間で送受信されるパケットを参照し、上り方向のパケット数（以下、「上りパケット数」と記載する）と下り方向のパケット数（以下、「下りパケット数」と記載する）をそれぞれ計数する（図１の（１）参照）。そして、計数した上りパケット数と下りパケット数との相関関係（数量に関する相関関係）をあらわす相関値を算出し（図１の（２）参照）、算出した相関値に基づいてネットワーク攻撃であるか否かを判定する（図１の（３）参照）点に主たる特徴がある。
【００３０】
このように、上りパケット数の計数値と下りパケット数の計数値との相関値を用いることで、「ＴＣＰパケット大量送信によるネットワーク攻撃に特有の上り／下りパケットの不均衡」を検出することが可能となる。したがって、正規なプロトコルであるＴＣＰプロトコルに準拠したＴＣＰパケット大量送信によるネットワーク攻撃を適切に検出することができるとともに、正規ユーザによるアクセス集中によって発生するフラッシュ・クラウドをネットワーク攻撃として誤検知することがない。
【００３１】
また、攻撃検出装置１００では、所定の計数単位時間ごとに上記した上りパケット数および下りパケット数を計数して一時的に記憶し、記憶した計数値に基づいてネットワーク攻撃か否かを自動的に判定するよう構成した。すなわち、従来の攻撃検出装置のように、ネットワーク管理者が過去のトラヒックを分析したうえでネットワーク攻撃の判定基準として用いる閾値を決定する必要がない。したがって、攻撃検出に関する管理コストを低減することができる。
【００３２】
ここで、上記した「ＴＣＰパケット大量送信によるネットワーク攻撃に特有の上り／下りパケットの不均衡」について図２〜図４を用いて説明しておく。図２は、正常なパケット送受信の様子を示す図であり、図３および図４は、それぞれ攻撃パターンその１およびその２におけるパケット送受信の様子を示す図である。
【００３３】
図２に示すように、ＴＣＰコネクションの確立を要求する通信端末１０がＴＣＰヘッダ内のＳＹＮ（Synchronize：同期）フラグをＯＮにしたＳＹＮパケットをサーバ２０に対して送信すると、ＳＹＮパケットを受信したサーバ２０は、かかるＳＹＮパケットの応答としてＳＹＮフラグおよびＡＣＫ（Acknowledge：確認）フラグをＯＮにしたＡＣＫパケットを通信端末１０に対して送信する。
【００３４】
つづいて、ＡＣＫパケットを受信した通信端末１０は、かかるＡＣＫパケットの応答としてＡＣＫパケットをサーバ２０に対して送信する。このようにして、３ウェイ−ハンドシェイクと呼ばれるＴＣＰコネクションの確立手順が完了する。ＴＣＰコネクションが確立すると、たとえば、図２に示すようなデータの送受信が通信端末１０とサーバ２０との間でおこなわれる。
【００３５】
次に、通信端末１０がサーバ２０に対してＳＹＮフラッド攻撃を仕掛ける場合のパケット送受信の様子について図３を用いて説明する。図３に示すように、ＳＹＮフラッド攻撃を仕掛ける通信端末１０がＳＹＮパケットをサーバ２０に対して送信すると、ＳＹＮパケットを受信したサーバ２０は、かかるＳＹＮパケットの応答としてＳＹＮフラグおよびＡＣＫフラグをＯＮにしたＡＣＫパケットを通信端末１０に対して送信する。
【００３６】
ここで、ＡＣＫパケットを受信した通信端末１０は、このＡＣＫパケットについての応答をおこなうことなく、さらにＳＹＮパケットをサーバ２０へ繰り返して送信する。なお、通信端末１０がサーバ２０に対して送信するＳＹＮパケットの送信元としてでたらめなアドレスを格納してＳＹＮフラッド攻撃をおこなう場合には、サーバ２０が応答として送信するＡＣＫパケットがどこにも届かない。したがって、このような場合にも、通信端末１０はＳＹＮパケットをサーバ２０へ繰り返して送信することになる。
【００３７】
やがて、サーバ２０ではＴＣＰコネクション確立の要求数が許容値を超えてＴＣＰコネクション確立の要求を受け付けることができなくなってしまい、ＳＹＮパケットの応答としてＲＳＴ（Reset：中断）フラグおよびＡＣＫフラグをＯＮにしたＲＳＴパケットを通信端末１０に対して送信するようになる。
【００３８】
次に、図３に示した攻撃以外の攻撃パターンについて図４を用いて説明する。図４に示すように、攻撃を仕掛ける通信端末１０がＳＹＮパケット以外のなんらかのパケット（ＴＣＰに準拠したなんらかのパケット）を繰り返し送信する。通信端末１０から送信されたパケットを受信したサーバ２０は、正規のＴＣＰコネクションの確立手順ではないと判定してＲＳＴパケットを応答する。したがって、サーバ２０は繰り返し送信される不正なパケットの応答処理に追われることとなり、正常な業務処理をおこなうことができなくなってしまう。
【００３９】
次に、かかる攻撃検出装置１００の構成について図５を用いて説明する。図５は、攻撃検出装置１００の構成を示すブロック図である。
【００４０】
図５に示すように、攻撃検出装置１００は、ネットワークインタフェース部１０１と、パケット処理部１０２と、ヘッダ分析部１０３と、上りパケット数計数部１０４と、下りパケット数計数部１０５と、攻撃検出部１０６とを備えている。なお、図５においては、攻撃検出装置１００の特徴を説明するために必要な処理部のみを示しており、ＣＰＵ（Central  Processing  Unit）などのプロセッサ、ハードディスク装置などの記憶部、その他の処理部についての記載を省略している。
【００４１】
ネットワークインタフェース部１０１はＬＡＮ（Local  Area  Network）ボードなどの通信デバイスで構成され、通信端末１０とサーバ２０との間で送受信されるＴＣＰパケットなどのパケットをパケット処理部１０２に渡すとともに、パケット処理部１０２から渡されたパケットを通信端末１０やサーバ２０に中継する処理をおこなう。
【００４２】
パケット処理部１０２は、ネットワークインタフェース部１０１から渡されたパケットの中からＴＣＰパケットを抽出し、抽出したＴＣＰパケットをヘッダ分析部１０３に出力する処理をおこなう処理部である。また、このパケット処理部１０２はネットワークインタフェース部１０１から渡されたパケットをネットワークインタフェース部１０１へ戻すことによって通信端末１０やサーバ２０に中継させる処理をおこなう処理部でもある。
【００４３】
ヘッダ分析部１０３はパケット処理部１０２から受け取ったＴＣＰパケットの内容を分析し、分析対象のＴＣＰパケットからＴＣＰのヘッダ部を抽出する処理をおこなう処理部である。
【００４４】
上りパケット数計数部１０４は、通信端末１０からサーバ２０へ向けて送信されたＴＣＰパケットのうち、ＡＣＫの制御ビットがＯＮとなっているパケット、すなわち、応答の属性を有するパケットの計測単位時間ごとの数をあらわす「上りパケット数」を計数する処理をおこなう処理部である。なお、この上りパケット数計数部１０４は、計測単位時間ごとに取得した「上りパケット数」を図示しない記憶部に一時的に記憶させる。
【００４５】
下りパケット数計数部１０５は、サーバ２０から通信端末１０へ向けて送信されたＴＣＰパケットのうち、ＡＣＫの制御ビットがＯＮとなっているパケット、すなわち、応答の属性を有するパケットの計測単位時間ごとの数をあらわす「下りパケット数」を計数する処理をおこなう処理部である。なお、この下りパケット数計数部１０５は、計測単位時間ごとに取得した「下りパケット数」を図示しない記憶部に一時的に記憶させる。
【００４６】
攻撃検出部１０６は、上りパケット数計数部１０４が計数した「上りパケット数」と下りパケット数計数部１０５が計数した「下りパケット数」とに基づいてそれぞれのパケット数間の相関値を算出し、算出した相関値を用いてサーバ２０に対するネットワーク攻撃を検出する処理部である。なお、この攻撃検出部１０６がおこなうネットワーク攻撃判定処理の詳細については（１）式〜（６）式を用いて後述することとする。
【００４７】
また、上記したパケット処理部１０２、ヘッダ分析部１０３、上りパケット数計数部１０４、下りパケット数計数部１０５および攻撃検出部１０６は、ＣＰＵなどのプロセッサによって処理されるプログラムのモジュールとしてそれぞれ構成される。なお、これらの処理部を電子回路などを用いて構成することとしてもよい。
【００４８】
次に、上記した各処理部（１０２〜１０６）がおこなう攻撃検出処理の処理手順について図６を用いて説明する。図６は、攻撃検出処理の処理手順を示すフローチャートである。同図に示すように、パケット処理部１０２からＴＣＰパケットを渡されたヘッダ分析部１０３は、ＴＣＰパケットの内容を分析することによってＴＣＰパケットのヘッダ部を抽出する（ステップＳ１０１）とともに、ＴＣＰパケットに含まれるＩＰヘッダ部の宛先アドレスおよび送信元アドレスを抽出する。
【００４９】
つづいて、パケットの送信元アドレスがサーバ２０である場合には（ステップＳ１０２，Ｙｅｓ）、このパケットを下りパケット数計数部１０５へ渡す。そして、下りパケット数計数部１０５は、ＴＣＰのヘッダ部を構成するＡＣＫの制御ビットがＯＮであるか否かを判定し（ステップＳ１０３）、ＡＣＫの制御ビットがＯＮである場合には（ステップＳ１０３，Ｙｅｓ）、下りパケット数を１つ加算して（ステップＳ１０４）処理を終了する。なお、ステップＳ１０３においてＡＣＫの制御ビットがＯＮではない場合には（ステップＳ１０３，Ｎｏ）、ステップＳ１０４の処理をおこなうことなく処理を終了する。
【００５０】
また、ステップＳ１０２においてパケットの送信元がサーバ２０ではない場合には（ステップＳ１０２，Ｎｏ）、つづいて、パケットの送信先がサーバ２０であるか否かを判定し（ステップＳ１０５）、パケットの送信先がサーバ２０である場合には（ステップＳ１０５，Ｙｅｓ）、このパケットを上りパケット数計数部１０４へ渡す。そして、上りパケット数計数部１０４は、ＴＣＰのヘッダ部を構成するＡＣＫの制御ビットがＯＮであるか否かを判定し（ステップＳ１０６）、ＡＣＫの制御ビットがＯＮである場合には（ステップＳ１０６，Ｙｅｓ）、上りパケット数を１つ加算して（ステップＳ１０７）処理を終了する。
【００５１】
なお、ステップＳ１０６においてＡＣＫの制御ビットがＯＮではない場合（ステップＳ１０６，Ｎｏ）、および、ステップＳ１０５においてパケットの送信先がサーバ２０ではない場合には（ステップＳ１０５，Ｎｏ）、その他の処理をおこなうことなく処理を終了する。
【００５２】
以上のように、上りパケット数計数部１０４および下りパケット数計数部１０５は、それぞれ、計数した計数単位時間ごとのパケット数を記憶部へ記憶させる。このようにして、上りパケット数および下りパケット数についての統計データが得られることになる。
【００５３】
次に、上りパケット数および下りパケット数についての統計データの例について図７を用いて説明する。図７は、収集されたパケット数サンプルの例を示す図である。なお、図７の７１は計数単位時間を時系列に連続して設けた場合について、図７の７２は計数単位時間を重複させながら設けた場合についてそれぞれ示している。また、図７の７１および７２においては計数単位時間を１０秒にした場合を示しているが、計数単位時間は任意の時間とすることができる。
【００５４】
図７の７１に示した場合では、上りパケット数計数部１０４および下りパケット数計数部１０５は１０秒ごとにパケット数のサンプルを集計している。また、図７の７２に示した場合では、上りパケット数計数部１０４および下りパケット数計数部１０５は、１秒ごとに過去１０秒間のパケット数のサンプルを集計している。
【００５５】
次に、上りパケット数および下りパケット数についての統計データに基づき、攻撃検出部１０６がネットワーク攻撃の有無を判定する処理をさらに詳細に説明する。なお、以下では、攻撃検出部１０６が回帰分析を用いてネットワーク攻撃の有無を判定する場合、および、ピアソンの相関係数を用いてネットワーク攻撃の有無を判定する場合についてそれぞれ説明することとする。
【００５６】
まず、攻撃検出部１０６が回帰分析を用いてネットワーク攻撃の有無を判定する場合について説明する。回帰分析から得られる相関値をαおよびβ、最新の上りパケット数をＩＮ、最新の下りパケット数をＯＵＴとすると判定式は、
【数１】
2007166154.tif 000003
であらわされる。
【００５７】
また、相関値αと相関値βとの関係式は、所定の期間にわたる上りパケット数の平均をＩＮ（上線付き）、下りパケット数の平均をＯＵＴ（上線付き）とすると、
【数２】
2007166154.tif 000004
であらわされる。
【００５８】
そして、上りパケット数の各サンプルをＩＮiとし、下りパケット数の各サンプルをＯＵＴiとすると相関値βは、
【数３】
2007166154.tif 000005
であらわされる。
【００５９】
また、（３）式におけるＳIN2は、
【数４】
2007166154.tif 000006
であらわされる。
【００６０】
攻撃検出部１０６は上記した（１）式〜（４）式を用いて（１）式の左辺および右辺をそれぞれ計算し、たとえば、（１）式の等号関係が成り立たないとき（左辺と右辺とが異なる値をとるとき）にサーバ２０に対するネットワーク攻撃がなされていると判定する。なお、（１）式の左辺の値と右辺の値との差が許容値よりも大きい場合にネットワーク攻撃がなされていると判定することとしてもよい。
【００６１】
次に、攻撃検出部１０６がピアソンの相関係数を用いてネットワーク攻撃の有無を判定する場合について説明する。ピアソンの相関係数をＲとすると判定式は、
【数５】
2007166154.tif 000007
であらわされる。
【００６２】
なお、（５）式におけるβおよびＳIN2は、それぞれ上記した（３）式および（４）式であらわされ、ＳOUT2は、
【数６】
2007166154.tif 000008
であらわされる。
【００６３】
攻撃検出部１０６は、（５）式を用いて算出されたピアソンの相関係数Ｒが所定の閾値以下である場合に、サーバ２０に対するネットワーク攻撃がなされていると判定する。なお、相関係数Ｒの値が小さいほど異常度が高いので、閾値としては、たとえば、８５％程度の値を用いる。
【００６４】
上述してきたように、本実施例においては、パケット処理部およびヘッダ分析部を介して振り分けられた上りパケットについて上りパケット数計数部が計数単位時間ごとに応答の属性を有するパケットの数を計数するとともに、同じく振り分けられた下りパケットについて下りパケット数計数部が計数単位時間ごとに応答の属性を有するパケットの数を計数し、攻撃検出部が上りパケット数計数部および下りパケット数計数部によって計数された上りパケット数および下りパケット数に基づいてネットワーク攻撃の有無を判定するよう構成したので、所定のプロトコルに準拠した正しい形式のパケットによるネットワーク攻撃を適切に検出することができるとともに攻撃検出に関する管理コストを低減することができる。
【００６５】
なお、上記した実施例においては、上りパケット数計数部と下りパケット数計数部とを別々の処理部として構成した場合について示したが、これらの計数部を単一の処理部として構成することとしてもよい。また、上記した実施例においては、ＴＣＰのプロトコルに準拠したパケットの数を計数する場合について示したが、他のプロトコルに準拠したパケットの数を計数することとしてもよい。
【００６６】
また、上記した実施例において説明した各処理部に該当するモジュール（プログラム）をネットワーク経由で配布したり、モジュール（プログラム）を格納したＣＤ−ＲＯＭを配布したりして、配布されたモジュール（プログラム）をコンピュータが読み出して実行するようにしてもよい。
【産業上の利用可能性】
【００６７】
以上のように、本発明に係る攻撃検出装置、攻撃検出方法および攻撃検出プログラムは、所定のプロトコルに準拠した正しい形式のパケットによるネットワーク攻撃の検出に有用であり、特に、ネットワーク管理に関する管理コストを低減したい場合に適している。そして、本発明は、攻撃検出装置に限らず、ルータ、あるいは、スイッチといった他の通信機器にも適用することができる。
【図面の簡単な説明】
【００６８】
【図１】本発明に係る攻撃検出装置の特徴を示す図である。
【図２】正常なパケット送受信の様子を示す図である。
【図３】攻撃パターンその１におけるパケット送受信の様子を示す図である。
【図４】攻撃パターンその２におけるパケット送受信の様子を示す図である。
【図５】攻撃検出装置の構成を示すブロック図である。
【図６】攻撃検出処理の処理手順を示すフローチャートである。
【図７】収集されたパケット数サンプルの例を示す図である。
【符号の説明】
【００６９】
１０  通信端末
２０  サーバ
１００  攻撃検出装置
１０１  ネットワークインタフェース部
１０２  パケット処理部
１０３  ヘッダ分析部
１０４  上りパケット数計数部
１０５  下りパケット数計数部
１０６  攻撃検出部
【図１】
2007166154.tif 000009
【図２】
2007166154.tif 000010
【図３】
2007166154.tif 000011
【図４】
2007166154.tif 000012
【図５】
2007166154.tif 000013
【図６】
2007166154.tif 000014
【図７】
2007166154.tif 000015