(57)【要約】  パケット受信部（１０３）と、パケットバッファ（１０５）と、パケットバッファに蓄積されたパケットをメインメモリ（１０２）に転送する転送部（１０６）とを備えるネットワークインターフェース（１０１）であって、パケットバッファ（１０５）のパケットの蓄積量に基づいて、大量のパケットの送信による攻撃を検知する攻撃検知部（１０７）と、攻撃パケットを識別する情報が登録される攻撃パケットテーブル（１０９）を記憶するテーブル記憶部（１１０）と、攻撃検知部（１０７）により攻撃が検知された場合、パケットバッファに蓄積されているパケットから得られる情報を用いて、攻撃パケットテーブル（１０９）を更新する更新部（１０８）と、パケット受信部（１０３）が受信したパケットが、更新された攻撃パケット情報に示される情報に該当する場合、当該パケットを、当該パケットがメインメモリ（１０２）に転送される前に破棄する破棄部（１０４ａ）とを備える。
2009139170.tif 000002
【特許請求の範囲】
【請求項１】
パケットを受信する受信部と、前記受信部が受信したパケットを蓄積するパケットバッファと、前記パケットバッファに蓄積されたパケットをメインメモリに転送する転送部とを備える攻撃パケット検知装置であって、
前記パケットバッファのパケットの蓄積量に基づいて、大量のパケットの送信による攻撃を検知する攻撃検知部と、
前記大量のパケットの送信による攻撃に用いられるパケットである攻撃パケットを識別する情報が登録される攻撃パケット情報を記憶する記憶部と、
前記攻撃検知部により前記攻撃が検知された場合、前記パケットバッファに蓄積されているパケットから得られる情報を用いて、前記攻撃パケット情報を更新する更新部と、
前記受信部が受信したパケットが、前記更新部により更新された攻撃パケット情報に示される情報に該当する場合、当該パケットを、当該パケットが前記メインメモリに転送される前に破棄する破棄部と
を備える攻撃パケット検知装置。
【請求項２】
前記更新部は、前記パケットバッファに蓄積された複数のパケットそれぞれから属性情報を取得し、同一の属性情報を有するパケットの個数またはサイズを積算し、当該積算結果が所定の閾値以上である場合、前記属性情報を前記攻撃パケット情報に追加することで前記攻撃パケット情報を更新し、
前記破棄部は、前記受信部が受信したパケットの属性情報が、前記更新部により更新された攻撃パケット情報に含まれている場合、当該パケットを破棄する
請求項１記載の攻撃パケット検知装置。
【請求項３】
前記更新部は、
前記パケットバッファに蓄積されたパケットそれぞれの属性情報であるヘッダ情報と、ヘッダ情報ごとのパケットの累積個数または累積サイズとを記録するための統計情報を有し、
前記攻撃検知部により前記攻撃が検知された場合、前記パケットバッファに蓄積されているパケットのヘッダ情報を読み出し、（ａ）読み出したヘッダ情報が前記統計情報に含まれていない場合、当該ヘッダ情報のエントリを前記統計情報に追加し、（ｂ）読み出したヘッダ情報が前記統計情報に含まれている場合、当該ヘッダ情報に対応する累積個数または累積サイズに１または当該パケットのサイズを加算し、
前記統計情報に示される、前記所定の閾値以上の累積個数または累積サイズに対応するヘッダ情報を前記攻撃パケット情報に追加することで前記攻撃パケット情報を更新する
請求項２記載の攻撃パケット検知装置。
【請求項４】
前記更新部は、前記パケットバッファに蓄積された複数のパケットそれぞれから属性情報を取得し、同一の属性情報を有するパケットの単位時間あたりの蓄積個数または蓄積容量の増加量を算出し、当該算出結果が所定の閾値以上である場合、前記属性を示す情報を前記攻撃パケット情報に追加することで前記攻撃パケット情報を更新し、
前記破棄部は、前記受信部が受信したパケットから得られる属性情報が前記更新部により更新された攻撃パケット情報に含まれている場合、当該パケットを破棄する
請求項１記載の攻撃パケット検知装置。
【請求項５】
前記攻撃パケット情報には、予め、前記攻撃パケットを識別する情報である攻撃パターンが登録されており、
前記更新部は、前記パケットバッファに蓄積されているパケットから得られる情報が、前記攻撃パターンに該当する場合、前記攻撃パターンが有効であることを示す情報を前記攻撃パケット情報に記録することで、前記攻撃パケット情報を更新し、
前記破棄部は、前記攻撃パケット情報に示される、有効である攻撃パターンに該当するパケットを破棄する
請求項１記載の攻撃パケット検知装置。
【請求項６】
さらに、前記更新部により更新された攻撃パケット情報と、前記受信部が受信したパケットとを比較し、当該パケットが前記攻撃パケット情報に示される情報に該当しない場合、当該パケットを前記パケットバッファに送信する比較部を備え、
前記破棄部は、前記比較部による比較の結果、当該パケットが前記攻撃パケット情報に示される情報に該当する場合、当該パケットが前記パケットバッファに送信される前に当該パケットを破棄し、
前記パケットバッファは、前記比較部から送信されたパケットを蓄積する
請求項１記載の攻撃パケット検知装置。
【請求項７】
前記攻撃検知部は、前記パケットバッファに蓄積されているパケットの蓄積量、または、前記蓄積量の単位時間当たりの増加量が所定の閾値を超えたことを検出することで、前記攻撃を検知する
請求項１記載の攻撃パケット検知装置。
【請求項８】
前記転送部は、前記パケットバッファに蓄積されているパケットの前記メインメモリへの単位時間あたりの転送個数である転送速度の変更を受け付けると、変更後の転送速度で前記パケットバッファに蓄積されているパケットを転送する
請求項７記載の攻撃パケット検知装置。
【請求項９】
前記攻撃検知部は、前記パケットバッファに蓄積されているパケットの蓄積量が前記所定の閾値を越えることによるパケットバッファのオーバーフローを検出することで、前記攻撃を検知する
請求項７記載の攻撃パケット検知装置。
【請求項１０】
映像データを受信し、受信した映像データに示される映像を表示装置に表示する映像受信装置であって、
請求項１記載の攻撃パケット検知装置と、
前記攻撃パケット検知装置により前記メインメモリに転送されたパケットを前記メインメモリから読み出して、読み出したパケットに含まれる映像を前記表示装置に表示させる表示制御部と
を備える映像受信装置。
【請求項１１】
映像データおよび音声データのうちの少なくとも一方を含むコンテンツデータを受信し、受信したコンテンツデータを記録するコンテンツ記録装置であって、
請求項１記載の攻撃パケット検知装置と、
前記攻撃パケット検知装置により前記メインメモリに転送された複数のパケットで構成されるコンテンツデータを前記メインメモリから読み出して、前記コンテンツデータを記録媒体に記録する記録部と
を備えるコンテンツ記録装置。
【請求項１２】
ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）通信を行うＩＰ通信装置であって、
請求項１記載の攻撃パケット検知装置と、
前記攻撃パケット検知装置により前記メインメモリに転送された複数のパケットを前記メインメモリから読み出して処理し、映像信号および音声信号の少なくとも一方を含む信号を生成するパケット処理部と、
前記パケット処理部により生成された信号を、外部の機器に出力する出力部と
を備えるＩＰ通信装置。
【請求項１３】
パケットを受信する受信部と、前記受信部が受信したパケットを蓄積するパケットバッファと、前記パケットバッファに蓄積されたパケットをメインメモリに転送する転送部とを備える攻撃パケット検知装置によって実行される攻撃パケット検知方法であって、
前記パケットバッファのパケットの蓄積量に基づいて、大量のパケットの送信による攻撃を検知する攻撃検知ステップと、
前記攻撃検知ステップにおいて前記攻撃が検知された場合、前記パケットバッファに蓄積されているパケットから得られる情報を用いて、前記大量のパケットの送信による攻撃に用いられるパケットである攻撃パケットを識別する情報が登録される攻撃パケット情報を更新する更新ステップと、
前記受信部が受信したパケットが、前記更新ステップにおいて更新された攻撃パケット情報に示される情報に該当する場合、当該パケットを、当該パケットが前記メインメモリに転送される前に破棄する破棄ステップと
を含む攻撃パケット検知方法。
【請求項１４】
攻撃パケット検知装置が行う処理のうち少なくとも一部の処理を実行するためのプログラムであって、
前記攻撃パケット検知装置は、
パケットを受信する受信部と、
前記受信部が受信したパケットを蓄積するパケットバッファと、
前記パケットバッファに蓄積されたパケットをメインメモリに転送する転送部と、
前記パケットバッファのパケットの蓄積量に基づいて、大量のパケットの送信による攻撃を検知する攻撃検知部と、
前記大量のパケットの送信による攻撃に用いられるパケットである攻撃パケットを識別する情報が登録される攻撃パケット情報を記憶する記憶部と、
前記受信部が受信したパケットが、前記記憶部に記憶されている攻撃パケット情報に示される情報に該当する場合、当該パケットを、当該パケットが前記メインメモリに転送される前に破棄する破棄部とを備え、
前記プログラムは、
前記攻撃検知部により前記攻撃が検知された場合、前記パケットバッファに蓄積されているパケットから得られる情報を用いて、前記攻撃パケット情報を更新する更新ステップ
をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＤｏＳ攻撃（Ｄｅｎｉａｌ  ｏｆ  Ｓｅｒｖｉｃｅ攻撃）等の、通信システムに対する高負荷攻撃を検知する、攻撃パケット検知装置および攻撃パケット検知方法に関する。
【背景技術】
【０００２】
従来、ネットワーク機能を有する機器であるネットワーク機器に対して、短時間に大量のデータ送信し、当該ネットワーク機器に対して高負荷を与えることにより、サービスおよびシステムを利用不能にさせるＤｏＳ攻撃と言われるものがある。【０００３】
ＤｏＳ攻撃には、ＩＣＭＰ（Ｉｎｔｅｒｎｅｔ  Ｃｏｎｔｒｏｌ  Ｍｅｓｓａｇｅ  Ｐｒｏｔｏｃｏｌ）と呼ばれるプロトコルを利用して短時間に膨大な数のＩＣＭＰ  Ｅｃｈｏ  Ｒｅｑｕｅｓｔパケットを送信する攻撃方法などがよく知られている。従来、このようなＤｏＳ攻撃を行うにはネットワークの知識が必要であった。【０００４】
しかし、近年では、容易に利用できるＤｏＳ攻撃ツールなどが広がっている。そのため、ネットワークの知識の乏しいユーザであっても簡単に攻撃可能な環境が整ってきている。【０００５】
そこで、このようなＤｏＳ攻撃を回避するいくつかの方法が開示されている。例えば、ＴＣＰパケットを受信し処理する機器において、受信したＴＣＰパケットを処理前に一時的に保持するバッファを設け、当該バッファが満杯になると、当該バッファ内のＴＣＰパケットを全て破棄する方法（従来の第一の方法）がある（例えば、特許文献1参照）。【０００６】
この方法により、到着順とデータとしての並び順とが必ずしも一致しないＴＣＰパケットを並び替えるための再構成用メモリのオーバーフローが防止され、当該機器が有する処理システムは保護される。【０００７】
また、パケットを受信し処理する機器において、ＤｏＳ攻撃に用いられる攻撃パケット等の悪意あるパケットを識別する情報を予め登録しておき、メインメモリに格納されたパケットのうち、当該情報に該当しないパケットを優先的に処理する方法（従来の第二の方法）がある（例えば、特許文献２参照）。【０００８】
この方法により、当該機器は、本来的に処理すべきパケットを優先的に処理することができ、ＤｏＳ攻撃による処理効率の低下が抑制される。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】米国特許出願公開第２００７／０１８０５３３号明細書
【特許文献２】米国特許出願公開第２００５／０２１３５７０号明細書
【発明の概要】
【発明が解決しようとする課題】
【００１０】
ネットワーク機能を有する機器としては、ルータやＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）などの処理能力の高い機器以外に、近年では、デジタルテレビなどの処理能力の低い家電機器が増えてきている。【００１１】
この様な家電機器がＤｏＳ攻撃を受けると、処理能力の低さゆえに多大な問題が引き起こされる可能性がある。例えば、デジタルテレビに関して言えば、表示映像が乱れ、操作性が悪くなるなど、本来のテレビとしての機能を提供できなくなるといった深刻な問題が発生する。【００１２】
そこで、上記従来の第一の方法について検討してみると、ＤｏＳ攻撃により大量のパケットが送信された場合、当該方法により、バッファに蓄積されたパケットは再構成などの実質的な処理がなされることなく破棄される。【００１３】
しかしながら、バッファに蓄積されたパケットの全てがＤｏＳ攻撃に用いられた悪意あるパケットであるとは限らない。そのため、本来的にはデジタルテレビ等が処理すべきパケットまで破棄される可能性がある。【００１４】
また、上記従来の第二の方法について検討してみると、ＤｏＳ攻撃により大量のパケットが送信された場合、当該方法により、悪意あるパケットとして予め登録された情報に該当するパケットは処理の優先度が低いものとして扱われる。【００１５】
しかしながら、未登録のパケットが攻撃目的で大量に送信された場合、当該方法では、当該攻撃を防御することができない。【００１６】
もちろん、数多くの種類のパケットを識別できるように、予め大量の識別情報を登録しておけば、攻撃に対する防御可能性を向上させることは可能である。しかし、大量の登録情報と、メインメモリに格納されるパケットの一つ一つとを照合することは、処理負荷の増加を招き、特に処理能力の低い家電機器等では現実的ではない。【００１７】
さらに、将来的にどのようなパケットが攻撃に用いられるかの予測は困難である。そのため、予め大量の情報を登録したとしても、それら登録情報により悪意あるパケットを正確に識別することは難しく、かつ、本来的に処理すべきパケットまで処理の優先度が低いものと誤認識される可能性もある。【００１８】
本発明は上記従来の課題を考慮し、大量のパケットの送信による攻撃を効率よく防御する攻撃パケット検知装置および攻撃パケット検知方法等を提供することを目的とする。
【課題を解決するための手段】
【００１９】
上記従来の課題を解決するために、本発明の攻撃パケット検知装置は、パケットを受信する受信部と、前記受信部が受信したパケットを蓄積するパケットバッファと、前記パケットバッファに蓄積されたパケットをメインメモリに転送する転送部とを備える攻撃パケット検知装置であって、前記パケットバッファのパケットの蓄積量に基づいて、大量のパケットの送信による攻撃を検知する攻撃検知部と、前記大量のパケットの送信による攻撃に用いられるパケットである攻撃パケットを識別する情報が登録される攻撃パケット情報を記憶する記憶部と、前記攻撃検知部により前記攻撃が検知された場合、前記パケットバッファに蓄積されているパケットから得られる情報を用いて、前記攻撃パケット情報を更新する更新部と、前記受信部が受信したパケットが、前記更新部により更新された攻撃パケット情報に示される情報に該当する場合、当該パケットを、当該パケットが前記メインメモリに転送される前に破棄する破棄部とを備える。【００２０】
このように、本発明の攻撃パケット検知装置は、攻撃パケットを特定するための攻撃パケット情報を、実際に受信したパケットから得られる情報により更新することができる。【００２１】
これにより、攻撃パケット情報を、現実に即した無駄の少ない内容に維持することが可能となる。つまり、ＤｏＳ攻撃を受けた場合に、受信したパケットに対する、破棄すべきか、メインメモリに転送すべきかの選別を効率よく、かつ、精度よく行うことができる。【００２２】
例えば、未知のパケットが攻撃目的で大量に送信された場合であっても、パケットバッファの蓄積量に基づいてその攻撃は検知され、かつ、当該検知後には、その攻撃に用いられている複数の攻撃パケットはメインメモリに転送されずに破棄される。また、攻撃パケットではない処理すべきパケットは破棄されずにメインメモリに転送される。【００２３】
つまり、メインメモリに転送されたパケットを処理（パケットの並び替え、および並び替えにより得られたデータの復号または符号化など）するシステムの、これら攻撃パケットに起因する負荷の発生は抑制され、当該システムは当該攻撃から保護される。【００２４】
このように、本発明の攻撃パケット検知装置は、攻撃パケット情報を現実に即して自律的に更新し、更新した攻撃パケット情報に基づいて悪意あるパケットを破棄することができる。つまり、大量のパケットの送信による攻撃を効率よく防御することができる。【００２５】
また、前記更新部は、前記パケットバッファに蓄積された複数のパケットそれぞれから属性情報を取得し、同一の属性情報を有するパケットの個数またはサイズを積算し、当該積算結果が所定の閾値以上である場合、前記属性情報を前記攻撃パケット情報に追加することで前記攻撃パケット情報を更新し、前記破棄部は、前記受信部が受信したパケットの属性情報が、前記更新部により更新された攻撃パケット情報に含まれている場合、当該パケットを破棄するとしてもよい。【００２６】
これにより、同一の属性情報、例えば、同一のヘッダ情報を有するパケットの個数またはサイズの積算結果が所定の閾値以上となった場合、当該ヘッダ情報を有するパケットを攻撃パケットとみなし、破棄することができる。【００２７】
また、前記更新部は、前記パケットバッファに蓄積されたパケットそれぞれの属性情報であるヘッダ情報と、ヘッダ情報ごとのパケットの累積個数または累積サイズとを記録するための統計情報を有し、前記攻撃判定部により前記攻撃が検知された場合、前記パケットバッファに蓄積されているパケットのヘッダ情報を読み出し、（ａ）読み出したヘッダ情報が前記統計情報に含まれていない場合、当該ヘッダ情報のエントリを前記統計情報に追加し、（ｂ）読み出したヘッダ情報が前記統計情報に含まれている場合、当該ヘッダ情報に対応する累積個数または累積サイズに１または当該パケットのサイズを加算し、前記統計情報に示される、前記所定の閾値以上の累積個数または累積サイズに対応するヘッダ情報を前記攻撃パケット情報に追加することで前記攻撃パケット情報を更新するとしてもよい。【００２８】
これにより、例えば、属性情報が互いに異なる多数のパケットが送信された場合であっても、属性情報ごとのパケットの積算量が的確に記録される。【００２９】
また、前記更新部は、前記パケットバッファに蓄積された複数のパケットそれぞれから属性情報を取得し、同一の属性情報を有するパケットの単位時間あたりの蓄積個数または蓄積容量の増加量を算出し、当該算出結果が所定の閾値以上である場合、前記属性を示す情報を前記攻撃パケット情報に追加することで前記攻撃パケット情報を更新し、前記破棄部は、前記受信部が受信したパケットから得られる属性情報が前記更新部により更新された攻撃パケット情報に含まれている場合、当該パケットを破棄するとしてもよい。【００３０】
つまり、同一の属性情報、例えば、同一のヘッダ情報を有するパケットの蓄積速度が所定の閾値以上となった場合、当該ヘッダ情報を有するパケットを攻撃パケットとみなしてもよい。これにより、例えば、瞬間的に多数のパケットが送信された場合に、当該攻撃による被害の発生が抑制される。【００３１】
また、前記攻撃パケット情報には、予め、前記攻撃パケットを識別する情報である攻撃パターンが登録されており、前記更新部は、前記パケットバッファに蓄積されているパケットから得られる情報が、前記攻撃パターンに該当する場合、前記攻撃パターンが有効であることを示す情報を前記攻撃パケット情報に記録することで、前記攻撃パケット情報を更新し、前記破棄部は、前記攻撃パケット情報に示される、有効である攻撃パターンに該当するパケットを破棄するとしてもよい。【００３２】
こうすることでも、受信されたパケットが攻撃パケットであるか否かの判定、および攻撃パケットの破棄が効率よく行われる。【００３３】
また、本発明の攻撃パケット検知装置はさらに、前記更新部により更新された攻撃パケット情報と、前記受信部が受信したパケットとを比較し、当該パケットが前記攻撃パケット情報に示される情報に該当しない場合、当該パケットを前記パケットバッファに送信する比較部を備え、前記破棄部は、前記比較部による比較の結果、当該パケットが前記攻撃パケット情報に示される情報に該当する場合、当該パケットが前記パケットバッファに送信される前に当該パケットを破棄し、前記パケットバッファは、前記比較部から送信されたパケットを蓄積するとしてもよい。【００３４】
これにより、攻撃パケットと判定されたパケットは、パケットバッファに蓄積されることなく破棄される。つまり、不要なパケットのパケットバッファにおける蓄積量が増加することが防止される。そのため、メインメモリに転送されるべきパケットのための、パケットバッファの空き容量は確保され、これらパケットはパケットバッファからメインメモリに転送された後に適切に処理される。【００３５】
また、前記攻撃検知部は、前記パケットバッファに蓄積されているパケットの蓄積量、または、前記蓄積量の単位時間当たりの増加量が所定の閾値を超えたことを検出することで、前記攻撃を検知するとしてもよい。【００３６】
これにより、送信されるパケットの蓄積量、または、蓄積速度に基づいて、攻撃を的確に検知することができる。【００３７】
また、前記転送部は、前記パケットバッファに蓄積されているパケットの前記メインメモリへの単位時間あたりの転送個数である転送速度の変更を受け付けると、変更後の転送速度で前記パケットバッファに蓄積されているパケットを転送するとしてもよい。【００３８】
これにより、パケットの蓄積量、または、前記蓄積量の単位時間当たりの増加量の、所定の閾値の超え易さを変化させることができる。つまり、転送速度を変更することで、攻撃検知部が攻撃と認定する基準を変更することができる。【００３９】
また、前記攻撃検知部は、前記パケットバッファに蓄積されているパケットの蓄積量が前記所定の閾値を越えることによるパケットバッファのオーバーフローを検出することで、前記攻撃を検知するとしてもよい。【００４０】
これにより、攻撃検知部は、例えばパケットバッファから発せられるオーバーフロー信号を受け取ることで、攻撃を検知することができる。【００４１】
また、本発明の映像受信装置は、映像データを受信し、受信した映像データに示される映像を表示装置に表示する映像受信装置であって、本発明の攻撃パケット検知装置と、前記攻撃パケット検知装置により前記メインメモリに転送されたパケットを前記メインメモリから読み出して、読み出したパケットに含まれる映像を前記表示装置に表示させる表示制御部とを備える。【００４２】
また、本発明のコンテンツ記録装置は、映像データおよび音声データのうちの少なくとも一方を含むコンテンツデータを受信し、受信したコンテンツデータを記録するコンテンツ記録装置であって、本発明の攻撃パケット検知装置と、前記攻撃パケット検知装置により前記メインメモリに転送された複数のパケットで構成されるコンテンツデータを前記メインメモリから読み出して、前記コンテンツデータを記録媒体に記録する記録部とを備える。【００４３】
また、本発明のＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）通信装置は、ＩＰ通信を行うＩＰ通信装置であって、本発明の攻撃パケット検知装置と、前記攻撃パケット検知装置により前記メインメモリに転送された複数のパケットを前記メインメモリから読み出して処理し、映像信号および音声信号の少なくとも一方を含む信号を生成するパケット処理部と、前記パケット処理部により生成された信号を、外部の機器に出力する出力部とを備える。【００４４】
このように、本発明は、本発明の攻撃パケット検知装置を備える、映像受信装置等のネットワークとして実現することもできる。【００４５】
また、本発明は、本発明の攻撃パケット検知装置の特徴的な構成部の動作をステップとする攻撃パケット検知方法として実現したり、それらステップをコンピュータに実行させるためのプログラムとして実現したり、そのプログラムが記録された記録媒体として実現することもできる。そして、そのプログラムをインターネット等の伝送媒体又はＤＶＤ等の記録媒体を介して配信することもできる。
【発明の効果】
【００４６】
本発明によれば、大量のパケットの送信による攻撃を検知すると、攻撃パケットを識別するための攻撃パケット情報を、受信したパケットから得られる情報を用いて更新することができる。そのため、破棄すべきパケットとメインメモリに転送すべきパケットとの選別を効率よく、かつ、精度よく実行することができる。【００４７】
このように、本発明は、大量のパケットの送信による攻撃を効率よく防御する攻撃パケット検知装置および攻撃パケット検知方法等を提供することができる。【００４８】
（本願の技術的背景に関する情報）
２００８年５月１６日に出願された出願番号２００８−１３００６１の日本出願の明細書、図面および特許請求の範囲における開示は、その全体を参照により本願に取り込む。
【図面の簡単な説明】
【００４９】
【図１】図１は、実施の形態１におけるネットワークインターフェースの構成を示すブロック図である。
【図２】図２は、実施の形態１におけるネットワークインターフェースが攻撃パケットテーブルの更新を行う際の処理の流れの一例を示すフロー図である。
【図３】図３は、実施の形態１における統計情報のデータ構成の一例を示す図である。
【図４】図４（Ａ）は、実施の形態１における攻撃パケットテーブルのデータ構成の第一の例を示す図であり、図４（Ｂ）は、当該攻撃パケットテーブルのデータ構成の第二の例を示す図であり、図４（Ｃ）は、当該攻撃パケットテーブルのデータ構成の第三の例を示す図である。
【図５】図５は、実施の形態１における統計情報のデータ構成の別の一例を示す図である。
【図６】図６は、実施の形態２におけるネットワークインターフェースの構成を示すブロック図である。
【図７】図７（Ａ）は、実施の形態２における攻撃パケットテーブルのデータ構成の第一の例を示す図であり、図７（Ｂ）は、当該攻撃パケットテーブルのデータ構成の第二の例を示す図である。
【図８】図８は、実施の形態２におけるネットワークインターフェースが攻撃パケットテーブルの更新を行う際の処理の流れの一例を示すフロー図である。
【図９】図９は、実施の形態３におけるネットワークインターフェースの構成を示すブロック図である。
【図１０】図１０は、実施の形態１におけるネットワークインターフェースを備える映像受信装置の主要な構成を示すブロック図である。
【図１１】図１１は、実施の形態１におけるネットワークインターフェースを備えるコンテンツ記録装置の主要な構成を示すブロック図である。
【図１２】図１２は、実施の形態１におけるネットワークインターフェースを備えるＩＰ通信装置の主要な構成を示すブロック図である。
【発明を実施するための形態】
【００５０】
以下、本発明の実施の形態について図面を参照しながら説明する。
【００５１】
（実施の形態１）
実施の形態１について、図１〜図４を用いて説明する。
【００５２】
図１は、実施の形態１におけるネットワークインターフェース１０１の構成を示すブロック図である。
【００５３】
ネットワークインターフェース１０１は、本発明の攻撃パケット検知装置の一例である。
【００５４】
ネットワークインターフェース１０１は、受信したパケットを蓄積するパケットバッファ１０５を有し、パケットバッファ１０５に蓄積されたパケットをメインメモリ１０２に転送する装置である。
【００５５】
なお、メインメモリ１０２は、例えば、ネットワークインターフェース１０１が備えられたネットワーク機器が備えるＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等の記憶媒体である。当該ネットワーク機器は、メインメモリ１０２からパケットを読み出して並べ替え等の処理を行う。
【００５６】
また、本発明の攻撃パケット検知装置は、メインメモリ１０２を含んでもよい。この場合、当該攻撃パケット検知装置が備えられたネットワーク機器は、当該攻撃パケット検知装置が備えるメインメモリ１０２からからパケットを読み出して並べ替え等の処理を行う。
【００５７】
本実施の形態において、ネットワークインターフェース１０１は、ハードウェアで構成され、ネットワークから受信したパケットをメインメモリ１０２に転送する機能を有する。
【００５８】
具体的には、ネットワークインターフェース１０１は、ネットワークから送られてくるパケットを受信するパケット受信部１０３、ＤｏＳ攻撃に用いられる攻撃パケットを識別する情報が登録される攻撃パケットテーブル１０９を記憶するテーブル記憶部１１０、パケット受信部１０３が受信したパケット（以下、「受信パケット」ともいう。）と、攻撃パケットテーブル１０９に登録された情報とを比較する比較部１０４、受信パケットを一時的にバッファリングするパケットバッファ１０５、パケットバッファ１０５に蓄積されているパケットをメインメモリ１０２に転送する転送部１０６、パケットバッファ１０５のパケットの蓄積量に基づいて、大量のパケットの送信による攻撃であるＤｏＳ攻撃を検知する攻撃検知部１０７、および、攻撃検知部１０７によりＤｏＳ攻撃が検知された場合、パケットバッファ１０５に蓄積されているパケットから得られる情報を用いて攻撃パケットテーブル１０９を更新する更新部１０８を備える。
【００５９】
なお、攻撃検知部１０７は、具体的には、パケットバッファ１０５に蓄積されているパケットの蓄積量、または、蓄積量の単位時間当たりの増加量が所定の閾値を超えたことを検出することでＤｏＳ攻撃を検知する。
【００６０】
本実施の形態では、攻撃検知部１０７は、パケットの蓄積量が当該閾値を越えることによるパケットバッファ１０５のオーバーフローを検出することで、ＤｏＳ攻撃を検知する。
【００６１】
また更新部１０８は、複数の受信パケットについての統計結果を示す統計情報１１１を有している。更新部１０８は、統計情報１１１を用いて、攻撃パケットテーブル１０９を更新する。統計情報１１１については、図３を用いて後述し、攻撃パケットテーブル１０９については、図４（Ａ）、図４（Ｂ）、および図４（Ｃ）を用いて後述する。
【００６２】
また、攻撃パケットテーブル１０９は、本発明の攻撃パケット検知装置における攻撃パケット情報の第一の例である。攻撃パケットテーブル１０９は、図１に示すように、テーブル記憶部１１０に記憶されている。
【００６３】
テーブル記憶部１１０は、例えば、ＨＤＤ（Ｈａｒｄ  ｄｉｓｋ  ｄｒｉｖｅ）またはＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  ａｎｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）などの不揮発性記録媒体により実現される。
【００６４】
また、ネットワークインターフェース１０１は、破棄部１０４ａを有している。破棄部１０４ａは、比較部１０４による比較の結果、受信パケットが攻撃パケットテーブル１０９に登録された情報に該当する場合、当該受信パケットを破棄する。
【００６５】
なお、上記比較の結果、受信パケットが攻撃パケットテーブル１０９に登録された情報に該当しない場合、比較部１０４は当該受信パケットをパケットバッファ１０５に転送する。
【００６６】
パケットバッファ１０５はＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ，  Ｆｉｒｓｔ  Ｏｕｔ）の様な機能を有するメモリである。
【００６７】
比較部１０４はパケットバッファ１０５に対してパケットの入力を行い、転送部１０６はパケットバッファ１０５からパケットを取り出す処理を行う。
【００６８】
しかし、転送部１０６の取り出し処理が追いつかずパケットバッファ１０５のオーバーフローが発生した場合、オーバーフロー信号がパケットバッファ１０５から発せられる。
【００６９】
攻撃検知部１０７は、パケットバッファ１０５からオーバーフロー信号を受け取ることで、パケットバッファ１０５がオーバーフローしたことを検出する。これにより、攻撃検知部１０７はＤｏＳ攻撃を検知する。
【００７０】
このように、本実施の形態のネットワークインターフェース１０１は、比較部１０４を備える。比較部１０４は、攻撃パケットテーブル１０９に示される攻撃パケットを識別する情報と受信パケットとの比較を行うことで、攻撃パケットを検出する機能を有するとともに、攻撃パケットテーブル１０９の内容に応じて選択的に受信パケットをパケットバッファ１０５に転送する機能を有する。
【００７１】
また、比較部１０４は、破棄部１０４ａを有することで、攻撃パケットであると判断されたパケットを破棄する機能をも有する。
【００７２】
また、本実施の形態のネットワークインターフェース１０１は、パケットバッファ１０５のパケットの蓄積量に基づいて、ＤｏＳ攻撃を検知する攻撃検知部１０７を備える。本実施の形態では、攻撃検知部１０７は、パケットバッファ１０５がオーバーフローしたことを検出することでＤｏＳ攻撃を検知する。
【００７３】
また、本実施の形態のネットワークインターフェース１０１は、攻撃検知部１０７によりＤｏＳ攻撃が検知されると、パケットバッファ１０５に蓄積されているパケットから得られる情報を用いて攻撃パケットテーブル１０９を更新する更新部１０８を備える。
【００７４】
このように構成された実施の形態のネットワークインターフェース１０１の処理の流れを図２を用いて説明する。
【００７５】
図２は、実施の形態１におけるネットワークインターフェース１０１が攻撃パケットテーブル１０９の更新を行う際の処理の流れの一例を示すフロー図である。
【００７６】
まず、攻撃検知部１０７は、パケットバッファ１０５のオーバーフローを検出することでＤｏＳ攻撃を検知する（Ｓ２００）。
【００７７】
攻撃検知部１０７は、ＤｏＳ攻撃を検知すると所定の信号を更新部１０８に送信する。
【００７８】
当該信号を受け取った更新部１０８は、パケットバッファ１０５内に蓄積されている一番先頭のパケットを選択する（Ｓ２０１）。さらに、パケットバッファ１０５内に蓄積されているパケットの情報を取得するために、選択したパケットのヘッダ解析をする（Ｓ２０２）。
【００７９】
このヘッダ解析（Ｓ２０２）により、更新部１０８は、例えば、Ｅｔｈｅｒフレームヘッダの送信元ＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレス、プロトコルタイプ、宛先ポート情報など攻撃パケットを判定するために必要な情報を得る。
【００８０】
なお、これら送信元ＭＡＣアドレス等は、本発明の攻撃パケット検知装置における属性情報の一例である。
【００８１】
解析した結果から、更新部１０８は、当該パケットが、統計情報１１１に新規に登録すべきパケットか否かを判断する（Ｓ２０３）。
【００８２】
具体的には、統計情報１１１に当該パケットのヘッダを解析した結果と同一のエントリが存在しない場合は、更新部１０８は、当該解析結果である、送信元アドレス等から構成される一組の情報を新規エントリとして統計情報１１１に登録する（Ｓ２０４）。
【００８３】
統計情報１１１に前記ヘッダ解析した結果と同じエントリが存在する場合は、更新部１０８は、該当エントリの個数の欄の数字に１を加算する（Ｓ２０５）。これにより、同一のヘッダ情報を有するパケットの個数が積算される。
【００８４】
次に、更新部１０８は、パケットバッファ１０５内に次のパケットが入力されているか判断する（Ｓ２０６）。
【００８５】
次のパケットが存在する場合（Ｓ２０６で「はい」）、更新部１０８は、次のパケットを選択し（Ｓ２０７）、パケットの解析処理（Ｓ２０２）から、さらにその次のパケットの存在の有無の確認処理（Ｓ２０６）までを再度行う。
【００８６】
次のパケットが存在しない場合（Ｓ２０６で「いいえ」）、更新部１０８は、統計情報１１１に、閾値以上の個数が記録されているエントリが存在するか否かを確認する。
【００８７】
閾値以上の個数が記録されているエントリが存在する場合、更新部１０８は、当該エントリに対応するパケットを攻撃パケットと判断し、送信元アドレス等を含む当該エントリを攻撃パケットテーブル１０９に登録する（Ｓ２０８）。
【００８８】
なお、図２に示される処理の流れの一例では、更新部１０８は、パケットバッファ１０５内の一番先頭のパケットから順番にパケット解析を行っている。しかし、パケットバッファ１０５内に蓄積されているパケットの種類などの情報が取得できるのであれば、ランダムな順番で解析してもよい。
【００８９】
また、更新部１０８は、パケット解析処理（Ｓ２０２）において、一つのＥｔｈｅｒフレームヘッダから、送信元アドレス、プロトコルタイプ、および宛先ポートを取得し、統計情報１１１に一つのエントリとして登録している。
【００９０】
しかし、パケット解析処理において取得されるヘッダ情報は、これらパラメータに限るものではなく、任意のパラメータを取得して、統計情報１１１への登録の要否の判断（Ｓ２０３）に用いてもよい。さらに、取得したそれらパラメータを統計情報１１１に一つのエントリとして登録してもよい。
【００９１】
また、統計情報１１１に含まれるエントリの中から攻撃パケットテーブル１０９に登録すべきエントリを特定する際（Ｓ２０８）に使用する閾値は、例えば、ネットワークインターフェース１０１が備えるテーブル記憶部１１０等の不揮発性記録媒体に記録されていてもよい。
【００９２】
また、ネットワークインターフェース１０１を使用するホストがその閾値を設定できるような構成にしてもよい。
【００９３】
図３は、実施の形態１における統計情報１１１のデータ構成の一例を示す図である。
【００９４】
統計情報１１１は、上述の各種処理（Ｓ２０３〜Ｓ２０５、およびＳ２０８）で使用されるテーブルである。
【００９５】
具体的には、パケットバッファ１０５内の全パケットの解析が終了した際の、同種のパケットごとのヘッダ情報が記録される。
【００９６】
統計情報１１１は、図３に示すように、パケット解析処理（Ｓ２０２）により得られたヘッダ情報と、各エントリを識別するＩＤと、各エントリに対応するパケットがパケットバッファ１０５に何個入力されたかを記録する項目とから構成される。
【００９７】
例えば、上述の閾値が“５０”である場合、更新部１０８は、統計情報１１１を参照し、“個数”の欄の数字が５０以上という条件に該当するエントリであるａ００１を特定する。
【００９８】
また、ａ００１には、プロトコルがＩＣＭＰであることが記録されているため、ＩＣＭＰプロトコルによるＰｉｎｇ  ＦｌｏｏｄによるＤｏＳ攻撃を受信していると判断される。また、ａ００１には送信元ＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレスとして、“ｘｘ−ｘｘ−ｘｘ−ｘｘ−ｘｘ−ｘｘ”が記録されている。
【００９９】
そのため、更新部１０８は、送信元ＭＡＣアドレス“ｘｘ−ｘｘ−ｘｘ−ｘｘ−ｘｘ−ｘｘ”からＩＣＭＰプロトコルにより送信されたパケットが破棄されるように、ａ００１のエントリを攻撃パケットテーブル１０９に登録する。
【０１００】
図４（Ａ）は、実施の形態１における攻撃パケットテーブル１０９のデータ構成の第一の例を示す図であり、図４（Ｂ）は、実施の形態１における攻撃パケットテーブル１０９のデータ構成の第二の例を示す図であり、図４（Ｃ）は、実施の形態１における攻撃パケットテーブル１０９のデータ構成の第三の例を示す図である。
【０１０１】
例えば、図４（Ａ）に示すように、攻撃パケットテーブル１０９に、攻撃パケットを識別する情報が登録されていない場合を想定する。
【０１０２】
この状態で、攻撃検知部１０７がＤｏＳ攻撃を検知すると、更新部１０８は、上述のパケット解析を行い、統計情報１１１にエントリの追加および個数の追加等の処理を行う。
【０１０３】
その結果、例えば、図３に示すように、統計情報１１１に各エントリが記録される。また、個数についての閾値が“５０”であれば、更新部１０８は、統計情報１１１からａ００１のエントリを統計情報１１１から読み出し、図４（Ｂ）に示すように、当該エントリを攻撃パケットテーブル１０９に登録する。
【０１０４】
また、その後、図２に示す、攻撃の検知（Ｓ２００）から、未解析のパケットの有無の確認（Ｓ２０６）までが行われ、統計情報１１１において、例えばａ００３のエントリの個数欄が“５０”となった場合を想定する。
【０１０５】
この場合、図４（Ｃ）に示すように、ａ００３のエントリが統計情報１１１から読み出されて攻撃パケットテーブル１０９に登録される。
【０１０６】
本実施の形態における更新部１０８は、このように、統計情報１１１と閾値とを用いた処理により、統計情報１１１に記録されているエントリの中から、攻撃パケットテーブル１０９に登録すべきエントリを特定する。さらに、特定したエントリの内容を攻撃パケットテーブル１０９に登録する。
【０１０７】
このようにして、攻撃パケットテーブル１０９は更新される。具体的には、更新部１０８により、攻撃パケットを識別する情報が攻撃パケットテーブル１０９に追加される。
【０１０８】
比較部１０４は、更新部１０８により更新された攻撃パケットテーブル１０９を参照し、攻撃パケットテーブル１０９に登録された各エントリの送信元ＭＡＣアドレス等と、パケット受信部１０３が受信したパケットのヘッダ情報とを比較する。これにより、攻撃パケットに該当する受信パケット、つまり、破棄すべきパケットである攻撃パケットを特定する。破棄部１０４ａは、特定された攻撃パケットを破棄する。
【０１０９】
以上のように、本実施の形態のネットワークインターフェース１０１は、ＤｏＳ攻撃を検知すると、パケットバッファ１０５に蓄積されているパケットから得られる情報を用いて、攻撃パケットテーブル１０９を更新する。また、更新した攻撃パケットテーブル１０９と受信パケットとを比較することで、複数の受信パケットの中から攻撃パケットを特定する。
【０１１０】
ネットワークインターフェース１０１はさらに、攻撃パケットと特定した受信パケットをメインメモリ１０２に転送することなく破棄する。
【０１１１】
また、攻撃パケットと特定した受信パケット以外の受信パケットはパケットバッファ１０５に一旦蓄積した後に、メインメモリ１０２に転送する。つまり、処理されるべき受信パケットは適切に処理される。
【０１１２】
このように、本実施の形態のネットワークインターフェース１０１は、攻撃パケットテーブル１０９を自律的に更新し、破棄すべきパケットと、メインメモリ１０２に転送すべきパケットとの選別を効率よく行っている。
【０１１３】
また、未知の攻撃パケットを受信した場合であっても、その攻撃パケットを識別する情報が攻撃パケットテーブル１０９に追加され、当該情報に該当するパケットは、メインメモリ１０２に転送されることなく破棄される。
【０１１４】
また、攻撃パケットの破棄をネットワークインターフェース１０１の内部で行うため、ネットワークインターフェース１０１を備えるネットワーク機器のＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）に対する割り込みなどの処理を軽減することが出来る。
【０１１５】
さらに、パケットバッファ１０５のオーバーフロー発生中に受信する攻撃パケットはネットワークインターフェース１０１内部で破棄される。そのため、当該ネットワーク機器は、攻撃パケットに対する実質的な処理をすることなく、メインメモリ１０２に転送されたパケットに対する処理を行うことができる。
【０１１６】
このように、本実施の形態のネットワークインターフェース１０１は、メインメモリ１０２からパケットを読み出して処理するネットワーク機器のＣＰＵ負荷を増大させることなく、効率のよい攻撃回避を行うことが出来る。
【０１１７】
なお、統計情報１１１は、更新部１０８が有しているとした。しかし、統計情報１１１は、例えばネットワークインターフェース１０１が備えるテーブル記憶部１１０等の不揮発性記録媒体に記録されていてもよい。
【０１１８】
また、本実施の形態において、更新部１０８は、同一のヘッダ情報を有するパケットの個数を、ヘッダ情報ごとに統計情報１１１に記録するとした（図３参照）。つまり、更新部１０８は、同一のヘッダ情報を有するパケットの個数を積算するとした。しかしながら、更新部１０８は、同一のヘッダ情報を有するパケットのサイズを積算してもよい。
【０１１９】
この場合、図３に示す統計情報１１１における各エントリの“個数”の欄が、“サイズ”に変更される。また、更新部１０８は、パケットバッファ１０５内の各パケットのサイズを取得し、各エントリの“サイズ”の欄に、それぞれ該当するパケットのサイズを追加する。これにより、各エントリの“サイズ”の欄にヘッダ情報ごとの累積サイズが記録される。
【０１２０】
さらに、更新部１０８は、閾値である所定のサイズと、統計情報１１１に記録された各エントリの累積サイズとを比較し、閾値以上の累積サイズを示すエントリを特定する。また、特定したエントリ内の送信元ＭＡＣアドレス等を、攻撃パケットテーブル１０９に追加する。これにより、攻撃パケットテーブル１０９が更新される。
【０１２１】
すなわち、ネットワークインターフェース１０１が受信した、同一のヘッダ情報を有するパケットの量を定量的に記録できるのであれば、その量は、個数であってもサイズであってもよい。
【０１２２】
また、更新部１０８は、同一のヘッダ情報を有するパケットの量そのものではなく、当該量の単位時間あたりの増加量を統計情報１１１に記録してもよい。
【０１２３】
図５は、実施の形態１における統計情報１１１のデータ構成の別の一例を示す図である。
【０１２４】
図５に示す統計情報１１１には、ヘッダ情報ごとの、単位時間あたりの蓄積個数である蓄積速度が記録されている。
【０１２５】
更新部１０８は、例えば、パケットバッファ１０５を監視し、単位時間内に同一のヘッダ情報を有するパケットがパケットバッファ１０５に何個入力されたかを検出する。さらにその検出結果から、ヘッダ情報ごとの蓄積速度を求める。
【０１２６】
なお、更新部１０８は、例えば、同一のヘッダ情報を有する２つのパケットの受信間隔から、これらヘッダ情報ごとの蓄積速度を求めてもよい。
【０１２７】
更新部１０８は、このようにヘッダ情報ごとの蓄積速度を統計情報１１１に記録した場合、所定の閾値以上の蓄積速度を示すエントリを特定し、特定したエントリを、攻撃パケットテーブル１０９に追加する。これにより、攻撃パケットテーブル１０９が更新される。
【０１２８】
なお、蓄積速度は、単位時間あたりの蓄積個数ではなく、単位時間あたりの蓄積サイズであってもよい。
【０１２９】
いずれの場合であっても、同一のヘッダ情報を有するパケットの蓄積速度が大きければ、そのパケットの受信頻度が高いという判断は可能である。そのため、蓄積速度が所定の閾値より大きいか否かで、当該パケットが攻撃パケットであるか否かは判断できる。
【０１３０】
また、本実施の形態において、攻撃検知部１０７は、パケットバッファ１０５がオーバーフローしたことを検出することで、ＤｏＳ攻撃を検知する。
【０１３１】
しかしながら、攻撃検知部１０７は、パケットバッファ１０５のパケットの蓄積量が、パケットバッファ１０５の容量より小さな所定の閾値を超えたことを検出することで、ＤｏＳ攻撃を検知してもよい。
【０１３２】
例えば、攻撃検知部１０７は、パケットバッファ１０５の蓄積量が、蓄積可能な容量の８０％を超えたことを検出することで、ＤｏＳ攻撃を検知してもよい。また、この閾値は可変であってもよく、ネットワークインターフェース１０１の外部から攻撃検知部１０７に設定されてもよい。
【０１３３】
これにより、例えば、パケットバッファ１０５がオーバーフローする前に、攻撃パケットの破棄を開始することができ、パケットバッファ１０５のオーバーフローを防止することが可能となる。
【０１３４】
その結果、メインメモリ１０２に転送すべきパケットがパケットバッファ１０５に入力されないという事態の発生を防止することもできる。
【０１３５】
また、パケットバッファ１０５の容量が比較的大きい場合、または、転送部１０６がメインメモリ１０２に転送する単位時間当たりのパケットの個数（以下、「転送速度」という。）が比較的大きい場合など、パケットバッファ１０５がオーバーフローしにくい状況にある場合、当該閾値を下げることで、ＤｏＳ攻撃を確実に検知することが可能となる。
【０１３６】
このように、ＤｏＳ攻撃がなされているか否かの判断基準は、ある特定の基準に限定されず、パケットバッファ１０５の容量、および、ＤｏＳ攻撃と認定可能なパケットの量などに応じて適切なものに設定すればよい。
【０１３７】
また、転送部１０６の転送速度は、固定であっても可変であってもよい。例えば、転送速度は、メインメモリ１０２に転送する際のバス帯域によって決定されてもよい。
【０１３８】
また、転送部１０６は、ネットワークインターフェース１０１の外部から転送速度の変更を受け付け、変更後の転送速度でパケットを転送してもよい。
【０１３９】
このように、転送部１０６の転送速度の変更が可能である場合、パケットバッファ１０５のオーバーフローの発生のし易さを変えることが可能である。具体的には、転送部１０６の転送速度を上げるほど、パケットバッファ１０５はオーバーフローし難くなる。
【０１４０】
また、逆に、転送部１０６の転送速度を下げるほど、パケットバッファ１０５はオーバーフローし易くなる。
【０１４１】
つまり、転送部１０６の転送速度を可変とすることで、ＤｏＳ攻撃がなされているか否かの判断基準を変更することもできる。
【０１４２】
また、更新部１０８は、攻撃パケットテーブル１０９における各エントリの順番を、累積個数に応じて決定してもよい。つまり、累積個数の多いエントリほど、攻撃パケットテーブル１０９において上位に登録されてもよい。
【０１４３】
こうすることで、例えば、比較部１０４が、攻撃パケットテーブル１０９の上のエントリから順に各エントリと受信パケットとを比較するよう構成されている場合、受信パケットが攻撃パケットであるか否かの判定を効率よく行うことができる。
【０１４４】
また、本実施の形態において、更新部１０８は、パケットバッファ１０５内の全パケットの解析が終了した後に、統計情報１１１内の、閾値以上の個数が記録されたエントリを攻撃パケットテーブル１０９に登録している。
【０１４５】
しかしながら、パケットバッファ１０５内の全パケットの解析が終了する前に、閾値以上の累積個数となったエントリを攻撃パケットテーブル１０９に登録してもよい。
【０１４６】
これにより、パケットバッファ１０５内の全パケットの解析の終了を待たずに、攻撃パケットの破棄を開始することができ、ＤｏＳ攻撃からの防御を迅速に実行することができる。
【０１４７】
また、統計情報１１１および攻撃パケットテーブル１０９のそれぞれは、必要に応じて任意のタイミングで初期化してもよい。つまり、それぞれに登録されたエントリを任意のタイミングで削除してもよい。
【０１４８】
例えば、破棄部１０４ａによる、単位時間あたりの攻撃パケットの破棄回数が減少した場合、ＤｏＳ攻撃が終了した可能性が高い。そのため、攻撃パケットテーブル１０９を初期化してもよい。これにより、例えば、比較部１０４による比較処理が効率化される。
【０１４９】
また、例えば、ネットワークインターフェース１０１に付与されたＩＰアドレスが変更になった場合、および、ネットワークインターフェース１０１に差し込まれていたネットワークケーブルが一旦抜き取られて再び差し込まれた場合など、ネットワークインターフェース１０１の通信環境が変化した場合、変化前とは異なる種類のＤｏＳ攻撃がなされる可能性がある。
【０１５０】
そこで、このような場合に、統計情報１１１および攻撃パケットテーブル１０９のそれぞれを初期化してもよい。
【０１５１】
これにより、例えば、統計情報１１１および攻撃パケットテーブル１０９に、通信環境の変化により不要となったヘッダ情報が蓄積されることが防止され、更新部１０８および比較部１０４の処理が効率化される。
【０１５２】
なお、統計情報１１１および攻撃パケットテーブル１０９のそれぞれから削除されたエントリに該当する攻撃パケットが、その削除の後に送信された場合を想定する。この場合、パケットバッファ１０５のオーバーフロー等により攻撃が検知されるまで、これら攻撃パケットは比較部１０４を通過することになる。しかしながら、当該攻撃の検知後には、当該攻撃パケットを識別する情報が再び統計情報１１１および攻撃パケットテーブル１０９に登録されることになるため、実質的な問題は生じない。
【０１５３】
（実施の形態２）
次に、実施の形態２について、図６、図７および図８を用いて説明する。
【０１５４】
図６は、実施の形態２におけるネットワークインターフェース２０１の構成を示すブロック図である。
【０１５５】
実施の形態２におけるネットワークインターフェース２０１は、本発明の攻撃パケット検知装置の別の一例である。また、図６に示すようにネットワークインターフェース２０１は、図１に示す、実施の形態１におけるネットワークインターフェース１０１とほぼ同じ構成を有している。
【０１５６】
しかし、実施の形態２におけるネットワークインターフェース２０１は、攻撃パケットテーブル２０９に予想される攻撃パターンを予め登録しておき、ＤｏＳ攻撃を検知した場合、当該ＤｏＳ攻撃に対応する登録済みの攻撃パターンを有効化することで、当該攻撃パターンに該当する受信パケットを破棄する点で実施の形態１におけるネットワークインターフェース１０１と異なる。
【０１５７】
具体的には、テーブル記憶部１１０に、予想される攻撃パターンが予め登録された攻撃パケットテーブル２０９が記憶されている。
【０１５８】
また、実施の形態２におけるネットワークインターフェース２０１は、統計情報１１１を保持しておく必要がないため、実施の形態１における更新部１０８とは異なり、統計情報１１１を有していない。
【０１５９】
図７（Ａ）は、実施の形態２における攻撃パケットテーブル２０９のデータ構成の第一の例を示す図であり、図７（Ｂ）は、実施の形態２における攻撃パケットテーブル２０９のデータ構成の第二の例を示す図である。
【０１６０】
攻撃パケットテーブル２０９は、本発明の攻撃パケット検知装置における攻撃パケット情報の第二の例であり、予め設定された１以上の攻撃パターンを示す情報が登録されたテーブルである。
【０１６１】
図７（Ａ）に示すように、攻撃パケットテーブル２０９は、複数のエントリから構成されている。また、各エントリは、各エントリを識別するＩＤと、ＤｏＳ攻撃パケットを判定するための攻撃パターンを示す項目である“事前登録攻撃パターン”と、当該エントリが有効であるか否かを示す項目である“有効フラグ”とを有する。
【０１６２】
また、事前登録攻撃パターンとして、実施の形態１における攻撃パケットテーブル１０９と同じく、送信元ＭＡＣアドレス等の、攻撃パケットを識別するヘッダ情報が記録されている。
【０１６３】
比較部１０４は、有効フラグが“１”であるエントリのみから攻撃パターンを示す情報を読み出し、受信パケットのヘッダ情報と比較する。
【０１６４】
なお、図７（Ａ）に示す攻撃パケットテーブル２０９では、いずれのエントリも有効フラグが“０”である。この場合、比較部１０４は、受信パケットと攻撃パケットテーブル２０９に登録された攻撃パターンとの比較は行わない。
【０１６５】
しかし、図７（Ａ）に示す攻撃パケットテーブル２０９が更新部２０８により更新され、例えば、図７（Ｂ）に示すように、ＩＤがＰ００１のエントリの有効フラグが“１”に変更された場合を想定する。
【０１６６】
この場合、比較部１０４は、Ｐ００１のエントリに示される攻撃パターンを示す情報と受信パケットとを比較する。
【０１６７】
この比較の結果、双方の情報が一致すれば、破棄部１０４ａは当該受信パケットを破棄する。
【０１６８】
また、この比較の結果、双方の情報が一致しなければ、比較部１０４は、当該受信パケットをパケットバッファ１０５に転送する。パケットバッファ１０５に転送されたパケットは、メインメモリ１０２に転送される。
【０１６９】
これにより、実施の形態１と同じく、パケット受信部１０３により受信された複数のパケットのうち、破棄すべきパケットは破棄され、かつ、メインメモリ１０２に転送されるべきパケットは、メインメモリ１０２に転送される。
【０１７０】
なお、攻撃パケットテーブル２０９への事前の情報の登録方法は、特定のものに限定されない。例えばユーザにより攻撃パターンを示す情報が予め攻撃パケットテーブル２０９に登録されてもよい。
【０１７１】
また、例えば、ネットワークインターフェース２０１がネットワークに接続された際に、攻撃パターンを示す情報を提供するサーバから当該情報をネットワークを介して受信し、受信した情報を、更新部２０８が攻撃パケットテーブル２０９に登録してもよい。
【０１７２】
次に、図８を用いて、ネットワークインターフェース２０１が攻撃パケットテーブル２０９の更新を行う際の処理の流れを説明する。
【０１７３】
図８は、実施の形態２におけるネットワークインターフェース２０１が攻撃パケットテーブル２０９の更新を行う際の処理の流れの一例を示すフロー図である。
【０１７４】
まず、攻撃検知部１０７は、パケットバッファ１０５のオーバーフローを検出することでＤｏＳ攻撃を検知する（Ｓ４００）。
【０１７５】
攻撃検知部１０７は、ＤｏＳ攻撃を検知すると所定の信号を更新部２０８に送信する。
【０１７６】
当該信号を受け取った更新部２０８は、攻撃パケットテーブル２０９に予め登録されているエントリの中から、有効フラグが“０”である１つのエントリを選択する（Ｓ４０１）。
【０１７７】
さらに、選択したエントリに登録されている、Ｅｔｈｅｒフレームヘッダの送信元ＭＡＣアドレス、プロトコルタイプ、および宛先ポート情報などＤｏＳ攻撃パケットを識別するための攻撃パターンを示す情報を取得する（Ｓ４０２）。
【０１７８】
更新部２０８は、取得した攻撃パターンを示す情報に該当するパケットがパケットバッファ１０５内に存在する否かを確認する（Ｓ４０３）。
【０１７９】
存在する場合（Ｓ４０３で「はい」）、更新部２０８は、攻撃パケットテーブル２０９の当該エントリの有効フラグを、有効を示す“１”に変更する（Ｓ４０４）。
【０１８０】
更新部２０８は、攻撃パケットテーブル２０９に有効フラグが“０”である次のエントリがあるか確認する（Ｓ４０５）。次のエントリが存在する場合（Ｓ４０５で「はい」）、当該エントリを選択する（Ｓ４０６）。その後、攻撃パターンを示す情報の取得処理（Ｓ４０２）から、有効フラグが“０”である次のエントリの存在の有無の確認処理（Ｓ４０５）までを再度行う。
【０１８１】
攻撃パケットテーブル２０９に、有効フラグが“０”である次のエントリがない場合（Ｓ４０５で「いいえ」）、攻撃パケットテーブル２０９の更新処理は終了する。
【０１８２】
実施の形態２におけるネットワークインターフェース２０１は、このように、攻撃パケットを識別する情報が予め登録された攻撃パケットテーブル２０９を保持している。
【０１８３】
また、更新部２０８は、攻撃検知部１０７がＤｏＳ攻撃を検知すると、パケットバッファ１０５内の各パケットと、攻撃パケットテーブル２０９に予め登録された攻撃パターンを示す情報とを比較する。
【０１８４】
この比較の結果、パケットバッファ１０５内に登録済みの攻撃パターンを示す情報に該当するパケットが存在する場合、当該攻撃パターンの有効フラグを“１”に変更する。つまり、攻撃パケットテーブル２０９は、パケットバッファ１０５に蓄積されているパケットから得られる情報を用いて更新される。
【０１８５】
このように、実施の形態２のネットワークインターフェース２０１は、実施の形態１のネットワークインターフェース１０１と同様に、攻撃パケットテーブル２０９を自律的に更新し、破棄すべきパケットと、メインメモリ１０２に転送すべきパケットとの選別を効率よく行っている。
【０１８６】
具体的には、比較部１０４は、攻撃パケットテーブル２０９に登録されている複数のエントリのうち、有効フラグが“１”であるエントリのみと、受信パケットとを比較すればよい。これにより、比較部１０４は、受信パケットが攻撃パケットであるか否かの判定を効率よくかつ精度よく行うことができる。
【０１８７】
従って、実施の形態２のネットワークインターフェース２０１は、大量のパケットの送信による攻撃を効率よく防御することができる。
【０１８８】
なお、本実施の形態では、攻撃パケットテーブル２０９に登録する攻撃パターンを示す情報は、Ｅｔｈｅｒフレームヘッダの送信元ＭＡＣアドレス、プロトコルタイプ、および宛先ポート情報であるとした。
【０１８９】
しかし、攻撃パターンを示す情報は、これらヘッダ情報に限定されるものではなく、パケットのヘッダ部内の他のフィールドに含まれる情報でもよい。例えば、パケット長を示す情報が、攻撃パターンを示す情報に含まれてもよい。
【０１９０】
さらには、攻撃パターンを示す情報は、ヘッダ情報に限定されるものでもなく各種プロトコルにおけるデータ部から情報を取得し、攻撃パターンを示す情報として攻撃パケットテーブル２０９に登録してもよい。つまり、ヘッダ情報以外の情報を、比較部１０４による比較処理に用いてもよい。
【０１９１】
以上説明した、実施の形態２のネットワークインターフェース２０１によれば、ネットワークインターフェース２０１ではプロトコル解析できないパケットに対しても柔軟に対応することが可能である。
【０１９２】
（実施の形態３）
次に、実施の形態３について、図９を用いて説明する。
【０１９３】
実施の形態３におけるネットワークインターフェース３０１は、実施の形態１におけるネットワークインターフェース１０１では更新部１０８がハードウェアで行っていた処理を、上位アプリケーションレイヤで行えるようにしたものである。
【０１９４】
具体的には、更新部１０８による攻撃パケットテーブル１０９の更新等の処理が、実施の形態３では、ネットワークインターフェース３０１が備えられたネットワーク機器のＣＰＵ３０２によって行われる。
【０１９５】
なお、本実施の形態においては、少なくともネットワークインターフェース３０１およびＣＰＵ３０２により本発明の攻撃パケット検知装置が構成される。
【０１９６】
図９は、実施の形態３におけるネットワークインターフェース３０１の構成を示すブロック図である。
【０１９７】
ネットワークインターフェース３０１は、受信したパケットを蓄積するパケットバッファ１０５を有し、パケットバッファ１０５に蓄積されたパケットをメインメモリ１０２に転送する装置である。
【０１９８】
ネットワークインターフェース３０１は、パケット受信部１０３、比較部１０４、パケットバッファ１０５、転送部１０６、パケットバッファ１０５がオーバーフローした事を検出すると割込発生部３０４にその旨を通知する攻撃検知部１０７、攻撃検知部１０７より通知があるとＣＰＵ３０２に対して割込を発生させるように動作する割込発生部３０４、ＣＰＵ３０２がネットワークインターフェース３０１のパケットバッファ１０５と攻撃パケットテーブル１０９にアクセス可能な機能を提供するＩ／Ｏ部３０３、および、攻撃パケットテーブル１０９を記憶するテーブル記憶部１１０を備える。
【０１９９】
つまり、割込発生部３０４は、パケットバッファ１０５のオーバーフローをＣＰＵ３０２に通知する通知手段として機能する。また、Ｉ／Ｏ部３０３は、ＣＰＵ３０２がパケットバッファ１０５の内容にアクセス可能となるようにＣＰＵ３０２とパケットバッファ１０５とを接続する入出力手段として機能する。
【０２００】
本実施の形態では、ＣＰＵ３０２は、割込発生部３０４からの割込信号を受信すると、ＨＤＤやＥＥＰＲＯＭなどの不揮発性記録媒体（図９に図示せず）に格納された攻撃判定プログラムを実行する。
【０２０１】
なお、実施の形態１における統計情報１１１と同様のデータも、例えば、当該不揮発性記録媒体に格納されている。
【０２０２】
この構成により、実施の形態１における更新部１０８が行う、パケットの解析（図２のＳ２０２）から攻撃パケットテーブルの更新（図２のＳ２０８）までの処理と同じ処理が実行される。
【０２０３】
つまり、ＣＰＵ３０２が攻撃判定プログラムを実行することで、攻撃検知部１０７によりＤｏＳ攻撃が検知された場合に攻撃パケットテーブル１０９が更新される。
【０２０４】
このように、本実施の形態においては、割込発生部３０４、ＣＰＵ３０２、およびＩ／Ｏ部３０３により、本発明の攻撃パケット検知装置における更新部が実現されている。これにより、上位アプリケーションレイヤにおいても、ＤｏＳ攻撃をされたタイミングで攻撃パケットを防御することが容易に実現可能である。
【０２０５】
（実施の形態１〜３の補足事項）
以上説明したように、実施の形態１〜３における、ネットワークインターフェース１０１、２０１および３０１のそれぞれは、受信パケットを蓄積するパケットバッファ１０５を備え、攻撃パケットをメインメモリ１０２に転送する前に破棄する機能を有する。
【０２０６】
また、ネットワークインターフェース１０１、２０１および３０１のそれぞれは、攻撃パケットの破棄の際に参照する攻撃パケットテーブル１０９または２０９を、パケットバッファ１０５に蓄積されたパケットから得られる情報を用いて更新することができる。これにより、ＤｏＳ攻撃に対する効率のよい防御を実現している。
【０２０７】
従って、ネットワークインターフェース１０１、２０１および３０１のそれぞれは、処理能力の低い家電機器等をＤｏＳ攻撃から保護する構成要素として有用である。
【０２０８】
そこで、実施の形態１におけるネットワークインターフェース１０１を例にとり、ネットワークインターフェース１０１を備える３種類の家電機器の構成について、図１０〜図１２を用いて説明する。
【０２０９】
図１０は、実施の形態１におけるネットワークインターフェース１０１を備える映像受信装置１１００の主要な構成を示すブロック図である。
【０２１０】
図１０に示す映像受信装置１１００は、例えば、放送データ受信し表示するテレビであり、表示制御部１１１０と、チューナ１１２０と、デコーダ１１３０と、表示装置１１４０と、攻撃パケット検知装置１１５０とを備える。
【０２１１】
攻撃パケット検知装置１１５０は、ネットワークインターフェース１０１と、メインメモリ１１０２とを含む。
【０２１２】
映像受信装置１１００では、チューナ１１２０が受信した放送データ（例えばＭＰＥＧ−２  ＴＳ（Ｔｒａｎｓｐｏｒｔ  Ｓｔｒｅａｍ））を、デコーダ１１３０が復号する。この復号により得られる映像は表示装置１１４０に表示される。なお、これら一連の処理は、表示制御部１１１０により制御される。
【０２１３】
また、映像受信装置１１００は、ネットワークインターフェース１０１を介して、インターネット等のネットワークに接続されている。ネットワークインターフェース１０１は、複数のパケットに分割されて伝送されるデータ、例えば、動画データ、静止画データ、ＨＴＭＬ（ＨｙｐｅｒＴｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）ファイル、およびテキストデータ等を受信する。
【０２１４】
このとき、図２等を用いて説明したように、ネットワークインターフェース１０１は、受信したパケットのうち、攻撃パケットテーブル１０９に基づいて攻撃パケットに該当すするパケットを破棄する。また、攻撃パケットに該当しないパケットを、メインメモリ１１０２に転送する。
【０２１５】
表示制御部１１１０は、メインメモリ１１０２からパケットを読み出して、読み出したパケットに示される情報を表示装置１１４０に表示させる。
【０２１６】
これにより、例えば、インターネットを介して受信したＷｅｂコンテンツが表示装置に表示される。
【０２１７】
なお、表示制御部１１１０が有する上記の各種処理機能は、例えば、ＣＰＵ、記憶装置、および情報の入出力を行うインターフェース等を有するコンピュータが、所定のプログラムを実行することにより実現される。
【０２１８】
このように、映像受信装置１１００は、攻撃パケット検知装置１１５０を備えている。これにより、映像受信装置１１００が、ＤｏＳ攻撃を受けた場合であっても、ネットワークインターフェース１０１内で攻撃パケットは破棄され、かつ、Ｗｅｂコンテンツ等を構成するパケットはメインメモリ１１０２に転送され、表示制御部１１１０により適切に処理される。
【０２１９】
また、未知の攻撃パケットが送信された場合であっても、映像受信装置１１００は、攻撃パケットテーブル１０９を更新することで、当該攻撃パケットをメインメモリ１１０２に転送する前に破棄することができる。つまり、映像受信装置１１００は、効率よくＤｏＳ攻撃を防御することができる。
【０２２０】
図１１は、実施の形態１におけるネットワークインターフェース１０１を備えるコンテンツ記録装置１２００の主要な構成を示すブロック図である。
【０２２１】
図１１に示すコンテンツ記録装置１２００は、映像データおよび音声データのうちの少なくとも一方を含むコンテンツデータを受信し、受信したコンテンツデータを記録する装置である。コンテンツ記録装置１２００は、例えばハードディスクレコーダ、または、ブルーレイディスクレコーダ等として実現される。
【０２２２】
コンテンツ記録装置１２００は、記録部１２１０と、記録媒体１２２０と、データ処理部１２３０と、出力部１２４０と、攻撃パケット検知装置１２５０とを備える。
【０２２３】
攻撃パケット検知装置１２５０は、ネットワークインターフェース１０１と、メインメモリ１２０２とを含む。
【０２２４】
コンテンツ記録装置１２００は、パケット単位で送信されるコンテンツデータをネットワークインターフェース１０１を介して受信する。受信したコンテンツデータは、記録部１２１０により記録媒体１２２０に記録される。このとき、データ処理部１２３０は、例えばユーザによる設定に応じて、コンテンツデータに対し復号および圧縮符号化等の処理を行う。また、処理後のコンテンツデータは記録部１２１０により記録媒体１２２０に記録される。
【０２２５】
記録媒体１２２０に記録されたコンテンツデータは、データ処理部１２３０により復号等の処理がなされ、出力部１２４０から出力される。
【０２２６】
ここで、記録部１２１０は、具体的には、ネットワークインターフェース１０１からメインメモリ１２０２に転送されたパケットを、メインメモリ１２０２から読み出して記録媒体１２２０に記録する。
【０２２７】
従って、コンテンツ記録装置１２００がＤｏＳ攻撃を受けた場合であっても、ネットワークインターフェース１０１内で攻撃パケットは破棄され、かつ、コンテンツデータを構成するパケットはメインメモリ１２０２に転送され、記録部１２１０により適切に処理される。
【０２２８】
また、未知の攻撃パケットが送信された場合であっても、コンテンツ記録装置１２００は、攻撃パケットテーブル１０９を更新することで、当該攻撃パケットをメインメモリ１２０２に転送する前に破棄することができる。つまり、コンテンツ記録装置１２００は、効率よくＤｏＳ攻撃を防御することができる。
【０２２９】
図１２は、実施の形態１におけるネットワークインターフェース１０１を備えるＩＰ通信装置１３００の主要な構成を示すブロック図である。
【０２３０】
図１２に示すＩＰ通信装置１３００は、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）通信を行う装置である。ＩＰ通信装置１３００は、例えば、ＩＰ通信により送信されるコンテンツデータを受信しテレビに出力するセットトップボックスとして実現される。
【０２３１】
ＩＰ通信装置１３００は、パケット処理部１３１０と、出力部１３２０と、攻撃パケット検知装置１３５０とを備える。
【０２３２】
攻撃パケット検知装置１３５０は、ネットワークインターフェース１０１と、メインメモリ１３０２とを含む。
【０２３３】
ＩＰ通信装置１３００は、パケット単位で送信されるコンテンツデータをネットワークインターフェース１０１介して受信する。パケット処理部１３１０は、受信したコンテンツデータに対し復号およびスクランブル解除等の処理を行い、映像信号および音声信号の少なくとも一方を含む信号を生成する。
【０２３４】
パケット処理部１３１０により生成された信号は、出力部１３２０を介して、ＩＰ通信装置１３００に接続されたテレビ等の外部機器に出力される。
【０２３５】
ここで、パケット処理部１３１０は、ネットワークインターフェース１０１からメインメモリ１３０２に転送されたパケットを、メインメモリ１３０２から読み出して処理する。
【０２３６】
従って、ＩＰ通信装置１３００がＤｏＳ攻撃を受けた場合であっても、ネットワークインターフェース１０１内で攻撃パケットは破棄され、かつ、コンテンツデータを構成するパケットはメインメモリ１３０２に転送され、パケット処理部１３１０により適切に処理される。
【０２３７】
また、未知の攻撃パケットが送信された場合であっても、ＩＰ通信装置１３００は、攻撃パケットテーブル１０９を更新することで、当該攻撃パケットをメインメモリ１３０２に転送する前に破棄することができる。つまり、ＩＰ通信装置１３００は、効率よくＤｏＳ攻撃を防御することができる。
【０２３８】
なお、図１０〜図１２に示す各装置は、ネットワークインターフェース１０１に換えて、ネットワークインターフェース２０１またはネットワークインターフェース３０１を備えてもよい。いずれの場合であっても、各装置は、ＤｏＳ攻撃に対する効率的な防御を行うことができる。
【０２３９】
また、各装置が、ネットワークインターフェース３０１を備える場合、図９を用いて説明したように、各装置が備えるＣＰＵが攻撃判定プログラムを実行することで、攻撃パケットテーブル１０９の更新処理が実現される。
【産業上の利用可能性】
【０２４０】
以上のように、本発明によれば、受信したパケットから得られる情報を用いて攻撃パケットテーブルを更新することができる。そのため、受信パケットが攻撃パケットであるか否かの判定は効率よく行われ、その結果、ＤｏＳ攻撃に対する効率のよい防御が実現される。【０２４１】
従って、本発明は、ネットワーク機器をＤｏＳ攻撃から保護するための、攻撃パケット検知装置および攻撃パケット検知方法として有用である。また、本発明は、テレビ、ハードディスクレコーダ、ブルーレイディスクレコーダ、セットトップボックス等のネットワーク機器としても有用である。
【符号の説明】
【０２４２】
１０１、２０１、３０１    ネットワークインターフェース
１０２、１１０２、１２０２、１３０２    メインメモリ
１０３    パケット受信部
１０４    比較部
１０４ａ  破棄部
１０５    パケットバッファ
１０６    転送部
１０７    攻撃検知部
１０８、２０８    更新部
１０９、２０９    攻撃パケットテーブル
１１０    テーブル記憶部
１１１    統計情報
３０２    ＣＰＵ
３０３    Ｉ／Ｏ部
３０４    割込発生部
１１００    映像受信装置
１１１０    表示制御部
１１２０    チューナ
１１３０    デコーダ
１１４０    表示装置
１１５０、１２５０、１３５０    攻撃パケット検知装置
１２００    コンテンツ記録装置
１２１０    記録部
１２２０    記録媒体
１２３０    データ処理部
１２４０、１３２０    出力部
１３００    ＩＰ通信装置
１３１０    パケット処理部
【図１】
2009139170.tif 000003
【図２】
2009139170.tif 000004
【図３】
2009139170.tif 000005
【図４】
2009139170.tif 000006
【図５】
2009139170.tif 000007
【図６】
2009139170.tif 000008
【図７】
2009139170.tif 000009
【図８】
2009139170.tif 000010
【図９】
2009139170.tif 000011
【図１０】
2009139170.tif 000012
【図１１】
2009139170.tif 000013
【図１２】
2009139170.tif 000014
【手続補正書】
【提出日】平成22年8月31日(2010.8.31)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＤｏＳ攻撃（Ｄｅｎｉａｌ  ｏｆ  Ｓｅｒｖｉｃｅ攻撃）等の、通信システムに対する高負荷攻撃を検知する、攻撃パケット検知装置および攻撃パケット検知方法に関する。
【背景技術】
【０００２】
従来、ネットワーク機能を有する機器であるネットワーク機器に対して、短時間に大量のデータ送信し、当該ネットワーク機器に対して高負荷を与えることにより、サービスおよびシステムを利用不能にさせるＤｏＳ攻撃と言われるものがある。
【０００３】
ＤｏＳ攻撃には、ＩＣＭＰ（Ｉｎｔｅｒｎｅｔ  Ｃｏｎｔｒｏｌ  Ｍｅｓｓａｇｅ  Ｐｒｏｔｏｃｏｌ）と呼ばれるプロトコルを利用して短時間に膨大な数のＩＣＭＰ  Ｅｃｈｏ  Ｒｅｑｕｅｓｔパケットを送信する攻撃方法などがよく知られている。従来、このようなＤｏＳ攻撃を行うにはネットワークの知識が必要であった。
【０００４】
しかし、近年では、容易に利用できるＤｏＳ攻撃ツールなどが広がっている。そのため、ネットワークの知識の乏しいユーザであっても簡単に攻撃可能な環境が整ってきている。
【０００５】
そこで、このようなＤｏＳ攻撃を回避するいくつかの方法が開示されている。例えば、ＴＣＰパケットを受信し処理する機器において、受信したＴＣＰパケットを処理前に一時的に保持するバッファを設け、当該バッファが満杯になると、当該バッファ内のＴＣＰパケットを全て破棄する方法（従来の第一の方法）がある（例えば、特許文献1参照）。
【０００６】
この方法により、到着順とデータとしての並び順とが必ずしも一致しないＴＣＰパケットを並び替えるための再構成用メモリのオーバーフローが防止され、当該機器が有する処理システムは保護される。
【０００７】
また、パケットを受信し処理する機器において、ＤｏＳ攻撃に用いられる攻撃パケット等の悪意あるパケットを識別する情報を予め登録しておき、メインメモリに格納されたパケットのうち、当該情報に該当しないパケットを優先的に処理する方法（従来の第二の方法）がある（例えば、特許文献２参照）。
【０００８】
この方法により、当該機器は、本来的に処理すべきパケットを優先的に処理することができ、ＤｏＳ攻撃による処理効率の低下が抑制される。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】米国特許出願公開第２００７／０１８０５３３号明細書
【特許文献２】米国特許出願公開第２００５／０２１３５７０号明細書
【発明の概要】
【発明が解決しようとする課題】
【００１０】
ネットワーク機能を有する機器としては、ルータやＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）などの処理能力の高い機器以外に、近年では、デジタルテレビなどの処理能力の低い家電機器が増えてきている。
【００１１】
この様な家電機器がＤｏＳ攻撃を受けると、処理能力の低さゆえに多大な問題が引き起こされる可能性がある。例えば、デジタルテレビに関して言えば、表示映像が乱れ、操作性が悪くなるなど、本来のテレビとしての機能を提供できなくなるといった深刻な問題が発生する。
【００１２】
そこで、上記従来の第一の方法について検討してみると、ＤｏＳ攻撃により大量のパケットが送信された場合、当該方法により、バッファに蓄積されたパケットは再構成などの実質的な処理がなされることなく破棄される。
【００１３】
しかしながら、バッファに蓄積されたパケットの全てがＤｏＳ攻撃に用いられた悪意あるパケットであるとは限らない。そのため、本来的にはデジタルテレビ等が処理すべきパケットまで破棄される可能性がある。
【００１４】
また、上記従来の第二の方法について検討してみると、ＤｏＳ攻撃により大量のパケットが送信された場合、当該方法により、悪意あるパケットとして予め登録された情報に該当するパケットは処理の優先度が低いものとして扱われる。
【００１５】
しかしながら、未登録のパケットが攻撃目的で大量に送信された場合、当該方法では、当該攻撃を防御することができない。
【００１６】
もちろん、数多くの種類のパケットを識別できるように、予め大量の識別情報を登録しておけば、攻撃に対する防御可能性を向上させることは可能である。しかし、大量の登録情報と、メインメモリに格納されるパケットの一つ一つとを照合することは、処理負荷の増加を招き、特に処理能力の低い家電機器等では現実的ではない。
【００１７】
さらに、将来的にどのようなパケットが攻撃に用いられるかの予測は困難である。そのため、予め大量の情報を登録したとしても、それら登録情報により悪意あるパケットを正確に識別することは難しく、かつ、本来的に処理すべきパケットまで処理の優先度が低いものと誤認識される可能性もある。
【００１８】
本発明は上記従来の課題を考慮し、大量のパケットの送信による攻撃を効率よく防御する攻撃パケット検知装置および攻撃パケット検知方法等を提供することを目的とする。
【課題を解決するための手段】
【００１９】
上記従来の課題を解決するために、本発明の攻撃パケット検知装置は、パケットを受信する受信部と、前記受信部が受信したパケットを蓄積するパケットバッファと、前記パケットバッファに蓄積されたパケットをメインメモリに転送する転送部とを備える攻撃パケット検知装置であって、前記パケットバッファのパケットの蓄積量に基づいて、大量のパケットの送信による攻撃を検知する攻撃検知部と、前記大量のパケットの送信による攻撃に用いられるパケットである攻撃パケットを識別する情報が登録される攻撃パケット情報を記憶する記憶部と、前記攻撃検知部により前記攻撃が検知された場合、前記パケットバッファに蓄積されているパケットから得られる情報を用いて、前記攻撃パケット情報を更新する更新部と、前記受信部が受信したパケットが、前記更新部により更新された攻撃パケット情報に示される情報に該当する場合、当該パケットを、当該パケットが前記メインメモリに転送される前に破棄する破棄部とを備える。
【００２０】
このように、本発明の攻撃パケット検知装置は、攻撃パケットを特定するための攻撃パケット情報を、実際に受信したパケットから得られる情報により更新することができる。
【００２１】
これにより、攻撃パケット情報を、現実に即した無駄の少ない内容に維持することが可能となる。つまり、ＤｏＳ攻撃を受けた場合に、受信したパケットに対する、破棄すべきか、メインメモリに転送すべきかの選別を効率よく、かつ、精度よく行うことができる。
【００２２】
例えば、未知のパケットが攻撃目的で大量に送信された場合であっても、パケットバッファの蓄積量に基づいてその攻撃は検知され、かつ、当該検知後には、その攻撃に用いられている複数の攻撃パケットはメインメモリに転送されずに破棄される。また、攻撃パケットではない処理すべきパケットは破棄されずにメインメモリに転送される。
【００２３】
つまり、メインメモリに転送されたパケットを処理（パケットの並び替え、および並び替えにより得られたデータの復号または符号化など）するシステムの、これら攻撃パケットに起因する負荷の発生は抑制され、当該システムは当該攻撃から保護される。
【００２４】
このように、本発明の攻撃パケット検知装置は、攻撃パケット情報を現実に即して自律的に更新し、更新した攻撃パケット情報に基づいて悪意あるパケットを破棄することができる。つまり、大量のパケットの送信による攻撃を効率よく防御することができる。
【００２５】
また、前記更新部は、前記パケットバッファに蓄積された複数のパケットそれぞれから属性情報を取得し、同一の属性情報を有するパケットの個数またはサイズを積算し、当該積算結果が所定の閾値以上である場合、前記属性情報を前記攻撃パケット情報に追加することで前記攻撃パケット情報を更新し、前記破棄部は、前記受信部が受信したパケットの属性情報が、前記更新部により更新された攻撃パケット情報に含まれている場合、当該パケットを破棄するとしてもよい。
【００２６】
これにより、同一の属性情報、例えば、同一のヘッダ情報を有するパケットの個数またはサイズの積算結果が所定の閾値以上となった場合、当該ヘッダ情報を有するパケットを攻撃パケットとみなし、破棄することができる。
【００２７】
また、前記更新部は、前記パケットバッファに蓄積されたパケットそれぞれの属性情報であるヘッダ情報と、ヘッダ情報ごとのパケットの累積個数または累積サイズとを記録するための統計情報を有し、前記攻撃判定部により前記攻撃が検知された場合、前記パケットバッファに蓄積されているパケットのヘッダ情報を読み出し、（ａ）読み出したヘッダ情報が前記統計情報に含まれていない場合、当該ヘッダ情報のエントリを前記統計情報に追加し、（ｂ）読み出したヘッダ情報が前記統計情報に含まれている場合、当該ヘッダ情報に対応する累積個数または累積サイズに１または当該パケットのサイズを加算し、前記統計情報に示される、前記所定の閾値以上の累積個数または累積サイズに対応するヘッダ情報を前記攻撃パケット情報に追加することで前記攻撃パケット情報を更新するとしてもよい。
【００２８】
これにより、例えば、属性情報が互いに異なる多数のパケットが送信された場合であっても、属性情報ごとのパケットの積算量が的確に記録される。
【００２９】
また、前記更新部は、前記パケットバッファに蓄積された複数のパケットそれぞれから属性情報を取得し、同一の属性情報を有するパケットの単位時間あたりの蓄積個数または蓄積容量の増加量を算出し、当該算出結果が所定の閾値以上である場合、前記属性を示す情報を前記攻撃パケット情報に追加することで前記攻撃パケット情報を更新し、前記破棄部は、前記受信部が受信したパケットから得られる属性情報が前記更新部により更新された攻撃パケット情報に含まれている場合、当該パケットを破棄するとしてもよい。
【００３０】
つまり、同一の属性情報、例えば、同一のヘッダ情報を有するパケットの蓄積速度が所定の閾値以上となった場合、当該ヘッダ情報を有するパケットを攻撃パケットとみなしてもよい。これにより、例えば、瞬間的に多数のパケットが送信された場合に、当該攻撃による被害の発生が抑制される。
【００３１】
また、前記攻撃パケット情報には、予め、前記攻撃パケットを識別する情報である攻撃パターンが登録されており、前記更新部は、前記パケットバッファに蓄積されているパケットから得られる情報が、前記攻撃パターンに該当する場合、前記攻撃パターンが有効であることを示す情報を前記攻撃パケット情報に記録することで、前記攻撃パケット情報を更新し、前記破棄部は、前記攻撃パケット情報に示される、有効である攻撃パターンに該当するパケットを破棄するとしてもよい。
【００３２】
こうすることでも、受信されたパケットが攻撃パケットであるか否かの判定、および攻撃パケットの破棄が効率よく行われる。
【００３３】
また、本発明の攻撃パケット検知装置はさらに、前記更新部により更新された攻撃パケット情報と、前記受信部が受信したパケットとを比較し、当該パケットが前記攻撃パケット情報に示される情報に該当しない場合、当該パケットを前記パケットバッファに送信する比較部を備え、前記破棄部は、前記比較部による比較の結果、当該パケットが前記攻撃パケット情報に示される情報に該当する場合、当該パケットが前記パケットバッファに送信される前に当該パケットを破棄し、前記パケットバッファは、前記比較部から送信されたパケットを蓄積するとしてもよい。
【００３４】
これにより、攻撃パケットと判定されたパケットは、パケットバッファに蓄積されることなく破棄される。つまり、不要なパケットのパケットバッファにおける蓄積量が増加することが防止される。そのため、メインメモリに転送されるべきパケットのための、パケットバッファの空き容量は確保され、これらパケットはパケットバッファからメインメモリに転送された後に適切に処理される。
【００３５】
また、前記攻撃検知部は、前記パケットバッファに蓄積されているパケットの蓄積量、または、前記蓄積量の単位時間当たりの増加量が所定の閾値を超えたことを検出することで、前記攻撃を検知するとしてもよい。
【００３６】
これにより、送信されるパケットの蓄積量、または、蓄積速度に基づいて、攻撃を的確に検知することができる。
【００３７】
また、前記転送部は、前記パケットバッファに蓄積されているパケットの前記メインメモリへの単位時間あたりの転送個数である転送速度の変更を受け付けると、変更後の転送速度で前記パケットバッファに蓄積されているパケットを転送するとしてもよい。
【００３８】
これにより、パケットの蓄積量、または、前記蓄積量の単位時間当たりの増加量の、所定の閾値の超え易さを変化させることができる。つまり、転送速度を変更することで、攻撃検知部が攻撃と認定する基準を変更することができる。
【００３９】
また、前記攻撃検知部は、前記パケットバッファに蓄積されているパケットの蓄積量が前記所定の閾値を越えることによるパケットバッファのオーバーフローを検出することで、前記攻撃を検知するとしてもよい。
【００４０】
これにより、攻撃検知部は、例えばパケットバッファから発せられるオーバーフロー信号を受け取ることで、攻撃を検知することができる。
【００４１】
また、本発明の映像受信装置は、映像データを受信し、受信した映像データに示される映像を表示装置に表示する映像受信装置であって、本発明の攻撃パケット検知装置と、前記攻撃パケット検知装置により前記メインメモリに転送されたパケットを前記メインメモリから読み出して、読み出したパケットに含まれる映像を前記表示装置に表示させる表示制御部とを備える。
【００４２】
また、本発明のコンテンツ記録装置は、映像データおよび音声データのうちの少なくとも一方を含むコンテンツデータを受信し、受信したコンテンツデータを記録するコンテンツ記録装置であって、本発明の攻撃パケット検知装置と、前記攻撃パケット検知装置により前記メインメモリに転送された複数のパケットで構成されるコンテンツデータを前記メインメモリから読み出して、前記コンテンツデータを記録媒体に記録する記録部とを備える。
【００４３】
また、本発明のＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）通信装置は、ＩＰ通信を行うＩＰ通信装置であって、本発明の攻撃パケット検知装置と、前記攻撃パケット検知装置により前記メインメモリに転送された複数のパケットを前記メインメモリから読み出して処理し、映像信号および音声信号の少なくとも一方を含む信号を生成するパケット処理部と、前記パケット処理部により生成された信号を、外部の機器に出力する出力部とを備える。
【００４４】
このように、本発明は、本発明の攻撃パケット検知装置を備える、映像受信装置等のネットワークとして実現することもできる。
【００４５】
また、本発明は、本発明の攻撃パケット検知装置の特徴的な構成部の動作をステップとする攻撃パケット検知方法として実現したり、それらステップをコンピュータに実行させるためのプログラムとして実現したり、そのプログラムが記録された記録媒体として実現することもできる。そして、そのプログラムをインターネット等の伝送媒体又はＤＶＤ等の記録媒体を介して配信することもできる。
【発明の効果】
【００４６】
本発明によれば、大量のパケットの送信による攻撃を検知すると、攻撃パケットを識別するための攻撃パケット情報を、受信したパケットから得られる情報を用いて更新することができる。そのため、破棄すべきパケットとメインメモリに転送すべきパケットとの選別を効率よく、かつ、精度よく実行することができる。
【００４７】
このように、本発明は、大量のパケットの送信による攻撃を効率よく防御する攻撃パケット検知装置および攻撃パケット検知方法等を提供することができる。
【図面の簡単な説明】
【００４８】
【図１】図１は、実施の形態１におけるネットワークインターフェースの構成を示すブロック図である。
【図２】図２は、実施の形態１におけるネットワークインターフェースが攻撃パケットテーブルの更新を行う際の処理の流れの一例を示すフロー図である。
【図３】図３は、実施の形態１における統計情報のデータ構成の一例を示す図である。
【図４】図４（Ａ）は、実施の形態１における攻撃パケットテーブルのデータ構成の第一の例を示す図であり、図４（Ｂ）は、当該攻撃パケットテーブルのデータ構成の第二の例を示す図であり、図４（Ｃ）は、当該攻撃パケットテーブルのデータ構成の第三の例を示す図である。
【図５】図５は、実施の形態１における統計情報のデータ構成の別の一例を示す図である。
【図６】図６は、実施の形態２におけるネットワークインターフェースの構成を示すブロック図である。
【図７】図７（Ａ）は、実施の形態２における攻撃パケットテーブルのデータ構成の第一の例を示す図であり、図７（Ｂ）は、当該攻撃パケットテーブルのデータ構成の第二の例を示す図である。
【図８】図８は、実施の形態２におけるネットワークインターフェースが攻撃パケットテーブルの更新を行う際の処理の流れの一例を示すフロー図である。
【図９】図９は、実施の形態３におけるネットワークインターフェースの構成を示すブロック図である。
【図１０】図１０は、実施の形態１におけるネットワークインターフェースを備える映像受信装置の主要な構成を示すブロック図である。
【図１１】図１１は、実施の形態１におけるネットワークインターフェースを備えるコンテンツ記録装置の主要な構成を示すブロック図である。
【図１２】図１２は、実施の形態１におけるネットワークインターフェースを備えるＩＰ通信装置の主要な構成を示すブロック図である。
【発明を実施するための形態】
【００４９】
以下、本発明の実施の形態について図面を参照しながら説明する。
【００５０】
（実施の形態１）
実施の形態１について、図１〜図４を用いて説明する。
【００５１】
図１は、実施の形態１におけるネットワークインターフェース１０１の構成を示すブロック図である。
【００５２】
ネットワークインターフェース１０１は、本発明の攻撃パケット検知装置の一例である。
【００５３】
ネットワークインターフェース１０１は、受信したパケットを蓄積するパケットバッファ１０５を有し、パケットバッファ１０５に蓄積されたパケットをメインメモリ１０２に転送する装置である。
【００５４】
なお、メインメモリ１０２は、例えば、ネットワークインターフェース１０１が備えられたネットワーク機器が備えるＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等の記憶媒体である。当該ネットワーク機器は、メインメモリ１０２からパケットを読み出して並べ替え等の処理を行う。
【００５５】
また、本発明の攻撃パケット検知装置は、メインメモリ１０２を含んでもよい。この場合、当該攻撃パケット検知装置が備えられたネットワーク機器は、当該攻撃パケット検知装置が備えるメインメモリ１０２からからパケットを読み出して並べ替え等の処理を行う。
【００５６】
本実施の形態において、ネットワークインターフェース１０１は、ハードウェアで構成され、ネットワークから受信したパケットをメインメモリ１０２に転送する機能を有する。
【００５７】
具体的には、ネットワークインターフェース１０１は、ネットワークから送られてくるパケットを受信するパケット受信部１０３、ＤｏＳ攻撃に用いられる攻撃パケットを識別する情報が登録される攻撃パケットテーブル１０９を記憶するテーブル記憶部１１０、パケット受信部１０３が受信したパケット（以下、「受信パケット」ともいう。）と、攻撃パケットテーブル１０９に登録された情報とを比較する比較部１０４、受信パケットを一時的にバッファリングするパケットバッファ１０５、パケットバッファ１０５に蓄積されているパケットをメインメモリ１０２に転送する転送部１０６、パケットバッファ１０５のパケットの蓄積量に基づいて、大量のパケットの送信による攻撃であるＤｏＳ攻撃を検知する攻撃検知部１０７、および、攻撃検知部１０７によりＤｏＳ攻撃が検知された場合、パケットバッファ１０５に蓄積されているパケットから得られる情報を用いて攻撃パケットテーブル１０９を更新する更新部１０８を備える。
【００５８】
なお、攻撃検知部１０７は、具体的には、パケットバッファ１０５に蓄積されているパケットの蓄積量、または、蓄積量の単位時間当たりの増加量が所定の閾値を超えたことを検出することでＤｏＳ攻撃を検知する。
【００５９】
本実施の形態では、攻撃検知部１０７は、パケットの蓄積量が当該閾値を越えることによるパケットバッファ１０５のオーバーフローを検出することで、ＤｏＳ攻撃を検知する。
【００６０】
また更新部１０８は、複数の受信パケットについての統計結果を示す統計情報１１１を有している。更新部１０８は、統計情報１１１を用いて、攻撃パケットテーブル１０９を更新する。統計情報１１１については、図３を用いて後述し、攻撃パケットテーブル１０９については、図４（Ａ）、図４（Ｂ）、および図４（Ｃ）を用いて後述する。
【００６１】
また、攻撃パケットテーブル１０９は、本発明の攻撃パケット検知装置における攻撃パケット情報の第一の例である。攻撃パケットテーブル１０９は、図１に示すように、テーブル記憶部１１０に記憶されている。
【００６２】
テーブル記憶部１１０は、例えば、ＨＤＤ（Ｈａｒｄ  ｄｉｓｋ  ｄｒｉｖｅ）またはＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  ａｎｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）などの不揮発性記録媒体により実現される。
【００６３】
また、ネットワークインターフェース１０１は、破棄部１０４ａを有している。破棄部１０４ａは、比較部１０４による比較の結果、受信パケットが攻撃パケットテーブル１０９に登録された情報に該当する場合、当該受信パケットを破棄する。
【００６４】
なお、上記比較の結果、受信パケットが攻撃パケットテーブル１０９に登録された情報に該当しない場合、比較部１０４は当該受信パケットをパケットバッファ１０５に転送する。
【００６５】
パケットバッファ１０５はＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ，  Ｆｉｒｓｔ  Ｏｕｔ）の様な機能を有するメモリである。
【００６６】
比較部１０４はパケットバッファ１０５に対してパケットの入力を行い、転送部１０６はパケットバッファ１０５からパケットを取り出す処理を行う。
【００６７】
しかし、転送部１０６の取り出し処理が追いつかずパケットバッファ１０５のオーバーフローが発生した場合、オーバーフロー信号がパケットバッファ１０５から発せられる。
【００６８】
攻撃検知部１０７は、パケットバッファ１０５からオーバーフロー信号を受け取ることで、パケットバッファ１０５がオーバーフローしたことを検出する。これにより、攻撃検知部１０７はＤｏＳ攻撃を検知する。
【００６９】
このように、本実施の形態のネットワークインターフェース１０１は、比較部１０４を備える。比較部１０４は、攻撃パケットテーブル１０９に示される攻撃パケットを識別する情報と受信パケットとの比較を行うことで、攻撃パケットを検出する機能を有するとともに、攻撃パケットテーブル１０９の内容に応じて選択的に受信パケットをパケットバッファ１０５に転送する機能を有する。
【００７０】
また、比較部１０４は、破棄部１０４ａを有することで、攻撃パケットであると判断されたパケットを破棄する機能をも有する。
【００７１】
また、本実施の形態のネットワークインターフェース１０１は、パケットバッファ１０５のパケットの蓄積量に基づいて、ＤｏＳ攻撃を検知する攻撃検知部１０７を備える。本実施の形態では、攻撃検知部１０７は、パケットバッファ１０５がオーバーフローしたことを検出することでＤｏＳ攻撃を検知する。
【００７２】
また、本実施の形態のネットワークインターフェース１０１は、攻撃検知部１０７によりＤｏＳ攻撃が検知されると、パケットバッファ１０５に蓄積されているパケットから得られる情報を用いて攻撃パケットテーブル１０９を更新する更新部１０８を備える。
【００７３】
このように構成された実施の形態のネットワークインターフェース１０１の処理の流れを図２を用いて説明する。
【００７４】
図２は、実施の形態１におけるネットワークインターフェース１０１が攻撃パケットテーブル１０９の更新を行う際の処理の流れの一例を示すフロー図である。
【００７５】
まず、攻撃検知部１０７は、パケットバッファ１０５のオーバーフローを検出することでＤｏＳ攻撃を検知する（Ｓ２００）。
【００７６】
攻撃検知部１０７は、ＤｏＳ攻撃を検知すると所定の信号を更新部１０８に送信する。
【００７７】
当該信号を受け取った更新部１０８は、パケットバッファ１０５内に蓄積されている一番先頭のパケットを選択する（Ｓ２０１）。さらに、パケットバッファ１０５内に蓄積されているパケットの情報を取得するために、選択したパケットのヘッダ解析をする（Ｓ２０２）。
【００７８】
このヘッダ解析（Ｓ２０２）により、更新部１０８は、例えば、Ｅｔｈｅｒフレームヘッダの送信元ＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレス、プロトコルタイプ、宛先ポート情報など攻撃パケットを判定するために必要な情報を得る。
【００７９】
なお、これら送信元ＭＡＣアドレス等は、本発明の攻撃パケット検知装置における属性情報の一例である。
【００８０】
解析した結果から、更新部１０８は、当該パケットが、統計情報１１１に新規に登録すべきパケットか否かを判断する（Ｓ２０３）。
【００８１】
具体的には、統計情報１１１に当該パケットのヘッダを解析した結果と同一のエントリが存在しない場合は、更新部１０８は、当該解析結果である、送信元アドレス等から構成される一組の情報を新規エントリとして統計情報１１１に登録する（Ｓ２０４）。
【００８２】
統計情報１１１に前記ヘッダ解析した結果と同じエントリが存在する場合は、更新部１０８は、該当エントリの個数の欄の数字に１を加算する（Ｓ２０５）。これにより、同一のヘッダ情報を有するパケットの個数が積算される。
【００８３】
次に、更新部１０８は、パケットバッファ１０５内に次のパケットが入力されているか判断する（Ｓ２０６）。
【００８４】
次のパケットが存在する場合（Ｓ２０６で「はい」）、更新部１０８は、次のパケットを選択し（Ｓ２０７）、パケットの解析処理（Ｓ２０２）から、さらにその次のパケットの存在の有無の確認処理（Ｓ２０６）までを再度行う。
【００８５】
次のパケットが存在しない場合（Ｓ２０６で「いいえ」）、更新部１０８は、統計情報１１１に、閾値以上の個数が記録されているエントリが存在するか否かを確認する。
【００８６】
閾値以上の個数が記録されているエントリが存在する場合、更新部１０８は、当該エントリに対応するパケットを攻撃パケットと判断し、送信元アドレス等を含む当該エントリを攻撃パケットテーブル１０９に登録する（Ｓ２０８）。
【００８７】
なお、図２に示される処理の流れの一例では、更新部１０８は、パケットバッファ１０５内の一番先頭のパケットから順番にパケット解析を行っている。しかし、パケットバッファ１０５内に蓄積されているパケットの種類などの情報が取得できるのであれば、ランダムな順番で解析してもよい。
【００８８】
また、更新部１０８は、パケット解析処理（Ｓ２０２）において、一つのＥｔｈｅｒフレームヘッダから、送信元アドレス、プロトコルタイプ、および宛先ポートを取得し、統計情報１１１に一つのエントリとして登録している。
【００８９】
しかし、パケット解析処理において取得されるヘッダ情報は、これらパラメータに限るものではなく、任意のパラメータを取得して、統計情報１１１への登録の要否の判断（Ｓ２０３）に用いてもよい。さらに、取得したそれらパラメータを統計情報１１１に一つのエントリとして登録してもよい。
【００９０】
また、統計情報１１１に含まれるエントリの中から攻撃パケットテーブル１０９に登録すべきエントリを特定する際（Ｓ２０８）に使用する閾値は、例えば、ネットワークインターフェース１０１が備えるテーブル記憶部１１０等の不揮発性記録媒体に記録されていてもよい。
【００９１】
また、ネットワークインターフェース１０１を使用するホストがその閾値を設定できるような構成にしてもよい。
【００９２】
図３は、実施の形態１における統計情報１１１のデータ構成の一例を示す図である。
【００９３】
統計情報１１１は、上述の各種処理（Ｓ２０３〜Ｓ２０５、およびＳ２０８）で使用されるテーブルである。
【００９４】
具体的には、パケットバッファ１０５内の全パケットの解析が終了した際の、同種のパケットごとのヘッダ情報が記録される。
【００９５】
統計情報１１１は、図３に示すように、パケット解析処理（Ｓ２０２）により得られたヘッダ情報と、各エントリを識別するＩＤと、各エントリに対応するパケットがパケットバッファ１０５に何個入力されたかを記録する項目とから構成される。
【００９６】
例えば、上述の閾値が“５０”である場合、更新部１０８は、統計情報１１１を参照し、“個数”の欄の数字が５０以上という条件に該当するエントリであるａ００１を特定する。
【００９７】
また、ａ００１には、プロトコルがＩＣＭＰであることが記録されているため、ＩＣＭＰプロトコルによるＰｉｎｇ  ＦｌｏｏｄによるＤｏＳ攻撃を受信していると判断される。また、ａ００１には送信元ＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレスとして、“ｘｘ−ｘｘ−ｘｘ−ｘｘ−ｘｘ−ｘｘ”が記録されている。
【００９８】
そのため、更新部１０８は、送信元ＭＡＣアドレス“ｘｘ−ｘｘ−ｘｘ−ｘｘ−ｘｘ−ｘｘ”からＩＣＭＰプロトコルにより送信されたパケットが破棄されるように、ａ００１のエントリを攻撃パケットテーブル１０９に登録する。
【００９９】
図４（Ａ）は、実施の形態１における攻撃パケットテーブル１０９のデータ構成の第一の例を示す図であり、図４（Ｂ）は、実施の形態１における攻撃パケットテーブル１０９のデータ構成の第二の例を示す図であり、図４（Ｃ）は、実施の形態１における攻撃パケットテーブル１０９のデータ構成の第三の例を示す図である。
【０１００】
例えば、図４（Ａ）に示すように、攻撃パケットテーブル１０９に、攻撃パケットを識別する情報が登録されていない場合を想定する。
【０１０１】
この状態で、攻撃検知部１０７がＤｏＳ攻撃を検知すると、更新部１０８は、上述のパケット解析を行い、統計情報１１１にエントリの追加および個数の追加等の処理を行う。
【０１０２】
その結果、例えば、図３に示すように、統計情報１１１に各エントリが記録される。また、個数についての閾値が“５０”であれば、更新部１０８は、統計情報１１１からａ００１のエントリを統計情報１１１から読み出し、図４（Ｂ）に示すように、当該エントリを攻撃パケットテーブル１０９に登録する。
【０１０３】
また、その後、図２に示す、攻撃の検知（Ｓ２００）から、未解析のパケットの有無の確認（Ｓ２０６）までが行われ、統計情報１１１において、例えばａ００３のエントリの個数欄が“５０”となった場合を想定する。
【０１０４】
この場合、図４（Ｃ）に示すように、ａ００３のエントリが統計情報１１１から読み出されて攻撃パケットテーブル１０９に登録される。
【０１０５】
本実施の形態における更新部１０８は、このように、統計情報１１１と閾値とを用いた処理により、統計情報１１１に記録されているエントリの中から、攻撃パケットテーブル１０９に登録すべきエントリを特定する。さらに、特定したエントリの内容を攻撃パケットテーブル１０９に登録する。
【０１０６】
このようにして、攻撃パケットテーブル１０９は更新される。具体的には、更新部１０８により、攻撃パケットを識別する情報が攻撃パケットテーブル１０９に追加される。
【０１０７】
比較部１０４は、更新部１０８により更新された攻撃パケットテーブル１０９を参照し、攻撃パケットテーブル１０９に登録された各エントリの送信元ＭＡＣアドレス等と、パケット受信部１０３が受信したパケットのヘッダ情報とを比較する。これにより、攻撃パケットに該当する受信パケット、つまり、破棄すべきパケットである攻撃パケットを特定する。破棄部１０４ａは、特定された攻撃パケットを破棄する。
【０１０８】
以上のように、本実施の形態のネットワークインターフェース１０１は、ＤｏＳ攻撃を検知すると、パケットバッファ１０５に蓄積されているパケットから得られる情報を用いて、攻撃パケットテーブル１０９を更新する。また、更新した攻撃パケットテーブル１０９と受信パケットとを比較することで、複数の受信パケットの中から攻撃パケットを特定する。
【０１０９】
ネットワークインターフェース１０１はさらに、攻撃パケットと特定した受信パケットをメインメモリ１０２に転送することなく破棄する。
【０１１０】
また、攻撃パケットと特定した受信パケット以外の受信パケットはパケットバッファ１０５に一旦蓄積した後に、メインメモリ１０２に転送する。つまり、処理されるべき受信パケットは適切に処理される。
【０１１１】
このように、本実施の形態のネットワークインターフェース１０１は、攻撃パケットテーブル１０９を自律的に更新し、破棄すべきパケットと、メインメモリ１０２に転送すべきパケットとの選別を効率よく行っている。
【０１１２】
また、未知の攻撃パケットを受信した場合であっても、その攻撃パケットを識別する情報が攻撃パケットテーブル１０９に追加され、当該情報に該当するパケットは、メインメモリ１０２に転送されることなく破棄される。
【０１１３】
また、攻撃パケットの破棄をネットワークインターフェース１０１の内部で行うため、ネットワークインターフェース１０１を備えるネットワーク機器のＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）に対する割り込みなどの処理を軽減することが出来る。
【０１１４】
さらに、パケットバッファ１０５のオーバーフロー発生中に受信する攻撃パケットはネットワークインターフェース１０１内部で破棄される。そのため、当該ネットワーク機器は、攻撃パケットに対する実質的な処理をすることなく、メインメモリ１０２に転送されたパケットに対する処理を行うことができる。
【０１１５】
このように、本実施の形態のネットワークインターフェース１０１は、メインメモリ１０２からパケットを読み出して処理するネットワーク機器のＣＰＵ負荷を増大させることなく、効率のよい攻撃回避を行うことが出来る。
【０１１６】
なお、統計情報１１１は、更新部１０８が有しているとした。しかし、統計情報１１１は、例えばネットワークインターフェース１０１が備えるテーブル記憶部１１０等の不揮発性記録媒体に記録されていてもよい。
【０１１７】
また、本実施の形態において、更新部１０８は、同一のヘッダ情報を有するパケットの個数を、ヘッダ情報ごとに統計情報１１１に記録するとした（図３参照）。つまり、更新部１０８は、同一のヘッダ情報を有するパケットの個数を積算するとした。しかしながら、更新部１０８は、同一のヘッダ情報を有するパケットのサイズを積算してもよい。
【０１１８】
この場合、図３に示す統計情報１１１における各エントリの“個数”の欄が、“サイズ”に変更される。また、更新部１０８は、パケットバッファ１０５内の各パケットのサイズを取得し、各エントリの“サイズ”の欄に、それぞれ該当するパケットのサイズを追加する。これにより、各エントリの“サイズ”の欄にヘッダ情報ごとの累積サイズが記録される。
【０１１９】
さらに、更新部１０８は、閾値である所定のサイズと、統計情報１１１に記録された各エントリの累積サイズとを比較し、閾値以上の累積サイズを示すエントリを特定する。また、特定したエントリ内の送信元ＭＡＣアドレス等を、攻撃パケットテーブル１０９に追加する。これにより、攻撃パケットテーブル１０９が更新される。
【０１２０】
すなわち、ネットワークインターフェース１０１が受信した、同一のヘッダ情報を有するパケットの量を定量的に記録できるのであれば、その量は、個数であってもサイズであってもよい。
【０１２１】
また、更新部１０８は、同一のヘッダ情報を有するパケットの量そのものではなく、当該量の単位時間あたりの増加量を統計情報１１１に記録してもよい。
【０１２２】
図５は、実施の形態１における統計情報１１１のデータ構成の別の一例を示す図である。
【０１２３】
図５に示す統計情報１１１には、ヘッダ情報ごとの、単位時間あたりの蓄積個数である蓄積速度が記録されている。
【０１２４】
更新部１０８は、例えば、パケットバッファ１０５を監視し、単位時間内に同一のヘッダ情報を有するパケットがパケットバッファ１０５に何個入力されたかを検出する。さらにその検出結果から、ヘッダ情報ごとの蓄積速度を求める。
【０１２５】
なお、更新部１０８は、例えば、同一のヘッダ情報を有する２つのパケットの受信間隔から、これらヘッダ情報ごとの蓄積速度を求めてもよい。
【０１２６】
更新部１０８は、このようにヘッダ情報ごとの蓄積速度を統計情報１１１に記録した場合、所定の閾値以上の蓄積速度を示すエントリを特定し、特定したエントリを、攻撃パケットテーブル１０９に追加する。これにより、攻撃パケットテーブル１０９が更新される。
【０１２７】
なお、蓄積速度は、単位時間あたりの蓄積個数ではなく、単位時間あたりの蓄積サイズであってもよい。
【０１２８】
いずれの場合であっても、同一のヘッダ情報を有するパケットの蓄積速度が大きければ、そのパケットの受信頻度が高いという判断は可能である。そのため、蓄積速度が所定の閾値より大きいか否かで、当該パケットが攻撃パケットであるか否かは判断できる。
【０１２９】
また、本実施の形態において、攻撃検知部１０７は、パケットバッファ１０５がオーバーフローしたことを検出することで、ＤｏＳ攻撃を検知する。
【０１３０】
しかしながら、攻撃検知部１０７は、パケットバッファ１０５のパケットの蓄積量が、パケットバッファ１０５の容量より小さな所定の閾値を超えたことを検出することで、ＤｏＳ攻撃を検知してもよい。
【０１３１】
例えば、攻撃検知部１０７は、パケットバッファ１０５の蓄積量が、蓄積可能な容量の８０％を超えたことを検出することで、ＤｏＳ攻撃を検知してもよい。また、この閾値は可変であってもよく、ネットワークインターフェース１０１の外部から攻撃検知部１０７に設定されてもよい。
【０１３２】
これにより、例えば、パケットバッファ１０５がオーバーフローする前に、攻撃パケットの破棄を開始することができ、パケットバッファ１０５のオーバーフローを防止することが可能となる。
【０１３３】
その結果、メインメモリ１０２に転送すべきパケットがパケットバッファ１０５に入力されないという事態の発生を防止することもできる。
【０１３４】
また、パケットバッファ１０５の容量が比較的大きい場合、または、転送部１０６がメインメモリ１０２に転送する単位時間当たりのパケットの個数（以下、「転送速度」という。）が比較的大きい場合など、パケットバッファ１０５がオーバーフローしにくい状況にある場合、当該閾値を下げることで、ＤｏＳ攻撃を確実に検知することが可能となる。
【０１３５】
このように、ＤｏＳ攻撃がなされているか否かの判断基準は、ある特定の基準に限定されず、パケットバッファ１０５の容量、および、ＤｏＳ攻撃と認定可能なパケットの量などに応じて適切なものに設定すればよい。
【０１３６】
また、転送部１０６の転送速度は、固定であっても可変であってもよい。例えば、転送速度は、メインメモリ１０２に転送する際のバス帯域によって決定されてもよい。
【０１３７】
また、転送部１０６は、ネットワークインターフェース１０１の外部から転送速度の変更を受け付け、変更後の転送速度でパケットを転送してもよい。
【０１３８】
このように、転送部１０６の転送速度の変更が可能である場合、パケットバッファ１０５のオーバーフローの発生のし易さを変えることが可能である。具体的には、転送部１０６の転送速度を上げるほど、パケットバッファ１０５はオーバーフローし難くなる。
【０１３９】
また、逆に、転送部１０６の転送速度を下げるほど、パケットバッファ１０５はオーバーフローし易くなる。
【０１４０】
つまり、転送部１０６の転送速度を可変とすることで、ＤｏＳ攻撃がなされているか否かの判断基準を変更することもできる。
【０１４１】
また、更新部１０８は、攻撃パケットテーブル１０９における各エントリの順番を、累積個数に応じて決定してもよい。つまり、累積個数の多いエントリほど、攻撃パケットテーブル１０９において上位に登録されてもよい。
【０１４２】
こうすることで、例えば、比較部１０４が、攻撃パケットテーブル１０９の上のエントリから順に各エントリと受信パケットとを比較するよう構成されている場合、受信パケットが攻撃パケットであるか否かの判定を効率よく行うことができる。
【０１４３】
また、本実施の形態において、更新部１０８は、パケットバッファ１０５内の全パケットの解析が終了した後に、統計情報１１１内の、閾値以上の個数が記録されたエントリを攻撃パケットテーブル１０９に登録している。
【０１４４】
しかしながら、パケットバッファ１０５内の全パケットの解析が終了する前に、閾値以上の累積個数となったエントリを攻撃パケットテーブル１０９に登録してもよい。
【０１４５】
これにより、パケットバッファ１０５内の全パケットの解析の終了を待たずに、攻撃パケットの破棄を開始することができ、ＤｏＳ攻撃からの防御を迅速に実行することができる。
【０１４６】
また、統計情報１１１および攻撃パケットテーブル１０９のそれぞれは、必要に応じて任意のタイミングで初期化してもよい。つまり、それぞれに登録されたエントリを任意のタイミングで削除してもよい。
【０１４７】
例えば、破棄部１０４ａによる、単位時間あたりの攻撃パケットの破棄回数が減少した場合、ＤｏＳ攻撃が終了した可能性が高い。そのため、攻撃パケットテーブル１０９を初期化してもよい。これにより、例えば、比較部１０４による比較処理が効率化される。
【０１４８】
また、例えば、ネットワークインターフェース１０１に付与されたＩＰアドレスが変更になった場合、および、ネットワークインターフェース１０１に差し込まれていたネットワークケーブルが一旦抜き取られて再び差し込まれた場合など、ネットワークインターフェース１０１の通信環境が変化した場合、変化前とは異なる種類のＤｏＳ攻撃がなされる可能性がある。
【０１４９】
そこで、このような場合に、統計情報１１１および攻撃パケットテーブル１０９のそれぞれを初期化してもよい。
【０１５０】
これにより、例えば、統計情報１１１および攻撃パケットテーブル１０９に、通信環境の変化により不要となったヘッダ情報が蓄積されることが防止され、更新部１０８および比較部１０４の処理が効率化される。
【０１５１】
なお、統計情報１１１および攻撃パケットテーブル１０９のそれぞれから削除されたエントリに該当する攻撃パケットが、その削除の後に送信された場合を想定する。この場合、パケットバッファ１０５のオーバーフロー等により攻撃が検知されるまで、これら攻撃パケットは比較部１０４を通過することになる。しかしながら、当該攻撃の検知後には、当該攻撃パケットを識別する情報が再び統計情報１１１および攻撃パケットテーブル１０９に登録されることになるため、実質的な問題は生じない。
【０１５２】
（実施の形態２）
次に、実施の形態２について、図６、図７および図８を用いて説明する。
【０１５３】
図６は、実施の形態２におけるネットワークインターフェース２０１の構成を示すブロック図である。
【０１５４】
実施の形態２におけるネットワークインターフェース２０１は、本発明の攻撃パケット検知装置の別の一例である。また、図６に示すようにネットワークインターフェース２０１は、図１に示す、実施の形態１におけるネットワークインターフェース１０１とほぼ同じ構成を有している。
【０１５５】
しかし、実施の形態２におけるネットワークインターフェース２０１は、攻撃パケットテーブル２０９に予想される攻撃パターンを予め登録しておき、ＤｏＳ攻撃を検知した場合、当該ＤｏＳ攻撃に対応する登録済みの攻撃パターンを有効化することで、当該攻撃パターンに該当する受信パケットを破棄する点で実施の形態１におけるネットワークインターフェース１０１と異なる。
【０１５６】
具体的には、テーブル記憶部１１０に、予想される攻撃パターンが予め登録された攻撃パケットテーブル２０９が記憶されている。
【０１５７】
また、実施の形態２におけるネットワークインターフェース２０１は、統計情報１１１を保持しておく必要がないため、実施の形態１における更新部１０８とは異なり、統計情報１１１を有していない。
【０１５８】
図７（Ａ）は、実施の形態２における攻撃パケットテーブル２０９のデータ構成の第一の例を示す図であり、図７（Ｂ）は、実施の形態２における攻撃パケットテーブル２０９のデータ構成の第二の例を示す図である。
【０１５９】
攻撃パケットテーブル２０９は、本発明の攻撃パケット検知装置における攻撃パケット情報の第二の例であり、予め設定された１以上の攻撃パターンを示す情報が登録されたテーブルである。
【０１６０】
図７（Ａ）に示すように、攻撃パケットテーブル２０９は、複数のエントリから構成されている。また、各エントリは、各エントリを識別するＩＤと、ＤｏＳ攻撃パケットを判定するための攻撃パターンを示す項目である“事前登録攻撃パターン”と、当該エントリが有効であるか否かを示す項目である“有効フラグ”とを有する。
【０１６１】
また、事前登録攻撃パターンとして、実施の形態１における攻撃パケットテーブル１０９と同じく、送信元ＭＡＣアドレス等の、攻撃パケットを識別するヘッダ情報が記録されている。
【０１６２】
比較部１０４は、有効フラグが“１”であるエントリのみから攻撃パターンを示す情報を読み出し、受信パケットのヘッダ情報と比較する。
【０１６３】
なお、図７（Ａ）に示す攻撃パケットテーブル２０９では、いずれのエントリも有効フラグが“０”である。この場合、比較部１０４は、受信パケットと攻撃パケットテーブル２０９に登録された攻撃パターンとの比較は行わない。
【０１６４】
しかし、図７（Ａ）に示す攻撃パケットテーブル２０９が更新部２０８により更新され、例えば、図７（Ｂ）に示すように、ＩＤがＰ００１のエントリの有効フラグが“１”に変更された場合を想定する。
【０１６５】
この場合、比較部１０４は、Ｐ００１のエントリに示される攻撃パターンを示す情報と受信パケットとを比較する。
【０１６６】
この比較の結果、双方の情報が一致すれば、破棄部１０４ａは当該受信パケットを破棄する。
【０１６７】
また、この比較の結果、双方の情報が一致しなければ、比較部１０４は、当該受信パケットをパケットバッファ１０５に転送する。パケットバッファ１０５に転送されたパケットは、メインメモリ１０２に転送される。
【０１６８】
これにより、実施の形態１と同じく、パケット受信部１０３により受信された複数のパケットのうち、破棄すべきパケットは破棄され、かつ、メインメモリ１０２に転送されるべきパケットは、メインメモリ１０２に転送される。
【０１６９】
なお、攻撃パケットテーブル２０９への事前の情報の登録方法は、特定のものに限定されない。例えばユーザにより攻撃パターンを示す情報が予め攻撃パケットテーブル２０９に登録されてもよい。
【０１７０】
また、例えば、ネットワークインターフェース２０１がネットワークに接続された際に、攻撃パターンを示す情報を提供するサーバから当該情報をネットワークを介して受信し、受信した情報を、更新部２０８が攻撃パケットテーブル２０９に登録してもよい。
【０１７１】
次に、図８を用いて、ネットワークインターフェース２０１が攻撃パケットテーブル２０９の更新を行う際の処理の流れを説明する。
【０１７２】
図８は、実施の形態２におけるネットワークインターフェース２０１が攻撃パケットテーブル２０９の更新を行う際の処理の流れの一例を示すフロー図である。
【０１７３】
まず、攻撃検知部１０７は、パケットバッファ１０５のオーバーフローを検出することでＤｏＳ攻撃を検知する（Ｓ４００）。
【０１７４】
攻撃検知部１０７は、ＤｏＳ攻撃を検知すると所定の信号を更新部２０８に送信する。
【０１７５】
当該信号を受け取った更新部２０８は、攻撃パケットテーブル２０９に予め登録されているエントリの中から、有効フラグが“０”である１つのエントリを選択する（Ｓ４０１）。
【０１７６】
さらに、選択したエントリに登録されている、Ｅｔｈｅｒフレームヘッダの送信元ＭＡＣアドレス、プロトコルタイプ、および宛先ポート情報などＤｏＳ攻撃パケットを識別するための攻撃パターンを示す情報を取得する（Ｓ４０２）。
【０１７７】
更新部２０８は、取得した攻撃パターンを示す情報に該当するパケットがパケットバッファ１０５内に存在する否かを確認する（Ｓ４０３）。
【０１７８】
存在する場合（Ｓ４０３で「はい」）、更新部２０８は、攻撃パケットテーブル２０９の当該エントリの有効フラグを、有効を示す“１”に変更する（Ｓ４０４）。
【０１７９】
更新部２０８は、攻撃パケットテーブル２０９に有効フラグが“０”である次のエントリがあるか確認する（Ｓ４０５）。次のエントリが存在する場合（Ｓ４０５で「はい」）、当該エントリを選択する（Ｓ４０６）。その後、攻撃パターンを示す情報の取得処理（Ｓ４０２）から、有効フラグが“０”である次のエントリの存在の有無の確認処理（Ｓ４０５）までを再度行う。
【０１８０】
攻撃パケットテーブル２０９に、有効フラグが“０”である次のエントリがない場合（Ｓ４０５で「いいえ」）、攻撃パケットテーブル２０９の更新処理は終了する。
【０１８１】
実施の形態２におけるネットワークインターフェース２０１は、このように、攻撃パケットを識別する情報が予め登録された攻撃パケットテーブル２０９を保持している。
【０１８２】
また、更新部２０８は、攻撃検知部１０７がＤｏＳ攻撃を検知すると、パケットバッファ１０５内の各パケットと、攻撃パケットテーブル２０９に予め登録された攻撃パターンを示す情報とを比較する。
【０１８３】
この比較の結果、パケットバッファ１０５内に登録済みの攻撃パターンを示す情報に該当するパケットが存在する場合、当該攻撃パターンの有効フラグを“１”に変更する。つまり、攻撃パケットテーブル２０９は、パケットバッファ１０５に蓄積されているパケットから得られる情報を用いて更新される。
【０１８４】
このように、実施の形態２のネットワークインターフェース２０１は、実施の形態１のネットワークインターフェース１０１と同様に、攻撃パケットテーブル２０９を自律的に更新し、破棄すべきパケットと、メインメモリ１０２に転送すべきパケットとの選別を効率よく行っている。
【０１８５】
具体的には、比較部１０４は、攻撃パケットテーブル２０９に登録されている複数のエントリのうち、有効フラグが“１”であるエントリのみと、受信パケットとを比較すればよい。これにより、比較部１０４は、受信パケットが攻撃パケットであるか否かの判定を効率よくかつ精度よく行うことができる。
【０１８６】
従って、実施の形態２のネットワークインターフェース２０１は、大量のパケットの送信による攻撃を効率よく防御することができる。
【０１８７】
なお、本実施の形態では、攻撃パケットテーブル２０９に登録する攻撃パターンを示す情報は、Ｅｔｈｅｒフレームヘッダの送信元ＭＡＣアドレス、プロトコルタイプ、および宛先ポート情報であるとした。
【０１８８】
しかし、攻撃パターンを示す情報は、これらヘッダ情報に限定されるものではなく、パケットのヘッダ部内の他のフィールドに含まれる情報でもよい。例えば、パケット長を示す情報が、攻撃パターンを示す情報に含まれてもよい。
【０１８９】
さらには、攻撃パターンを示す情報は、ヘッダ情報に限定されるものでもなく各種プロトコルにおけるデータ部から情報を取得し、攻撃パターンを示す情報として攻撃パケットテーブル２０９に登録してもよい。つまり、ヘッダ情報以外の情報を、比較部１０４による比較処理に用いてもよい。
【０１９０】
以上説明した、実施の形態２のネットワークインターフェース２０１によれば、ネットワークインターフェース２０１ではプロトコル解析できないパケットに対しても柔軟に対応することが可能である。
【０１９１】
（実施の形態３）
次に、実施の形態３について、図９を用いて説明する。
【０１９２】
実施の形態３におけるネットワークインターフェース３０１は、実施の形態１におけるネットワークインターフェース１０１では更新部１０８がハードウェアで行っていた処理を、上位アプリケーションレイヤで行えるようにしたものである。
【０１９３】
具体的には、更新部１０８による攻撃パケットテーブル１０９の更新等の処理が、実施の形態３では、ネットワークインターフェース３０１が備えられたネットワーク機器のＣＰＵ３０２によって行われる。
【０１９４】
なお、本実施の形態においては、少なくともネットワークインターフェース３０１およびＣＰＵ３０２により本発明の攻撃パケット検知装置が構成される。
【０１９５】
図９は、実施の形態３におけるネットワークインターフェース３０１の構成を示すブロック図である。
【０１９６】
ネットワークインターフェース３０１は、受信したパケットを蓄積するパケットバッファ１０５を有し、パケットバッファ１０５に蓄積されたパケットをメインメモリ１０２に転送する装置である。
【０１９７】
ネットワークインターフェース３０１は、パケット受信部１０３、比較部１０４、パケットバッファ１０５、転送部１０６、パケットバッファ１０５がオーバーフローした事を検出すると割込発生部３０４にその旨を通知する攻撃検知部１０７、攻撃検知部１０７より通知があるとＣＰＵ３０２に対して割込を発生させるように動作する割込発生部３０４、ＣＰＵ３０２がネットワークインターフェース３０１のパケットバッファ１０５と攻撃パケットテーブル１０９にアクセス可能な機能を提供するＩ／Ｏ部３０３、および、攻撃パケットテーブル１０９を記憶するテーブル記憶部１１０を備える。
【０１９８】
つまり、割込発生部３０４は、パケットバッファ１０５のオーバーフローをＣＰＵ３０２に通知する通知手段として機能する。また、Ｉ／Ｏ部３０３は、ＣＰＵ３０２がパケットバッファ１０５の内容にアクセス可能となるようにＣＰＵ３０２とパケットバッファ１０５とを接続する入出力手段として機能する。
【０１９９】
本実施の形態では、ＣＰＵ３０２は、割込発生部３０４からの割込信号を受信すると、ＨＤＤやＥＥＰＲＯＭなどの不揮発性記録媒体（図９に図示せず）に格納された攻撃判定プログラムを実行する。
【０２００】
なお、実施の形態１における統計情報１１１と同様のデータも、例えば、当該不揮発性記録媒体に格納されている。
【０２０１】
この構成により、実施の形態１における更新部１０８が行う、パケットの解析（図２のＳ２０２）から攻撃パケットテーブルの更新（図２のＳ２０８）までの処理と同じ処理が実行される。
【０２０２】
つまり、ＣＰＵ３０２が攻撃判定プログラムを実行することで、攻撃検知部１０７によりＤｏＳ攻撃が検知された場合に攻撃パケットテーブル１０９が更新される。
【０２０３】
このように、本実施の形態においては、割込発生部３０４、ＣＰＵ３０２、およびＩ／Ｏ部３０３により、本発明の攻撃パケット検知装置における更新部が実現されている。これにより、上位アプリケーションレイヤにおいても、ＤｏＳ攻撃をされたタイミングで攻撃パケットを防御することが容易に実現可能である。
【０２０４】
（実施の形態１〜３の補足事項）
以上説明したように、実施の形態１〜３における、ネットワークインターフェース１０１、２０１および３０１のそれぞれは、受信パケットを蓄積するパケットバッファ１０５を備え、攻撃パケットをメインメモリ１０２に転送する前に破棄する機能を有する。
【０２０５】
また、ネットワークインターフェース１０１、２０１および３０１のそれぞれは、攻撃パケットの破棄の際に参照する攻撃パケットテーブル１０９または２０９を、パケットバッファ１０５に蓄積されたパケットから得られる情報を用いて更新することができる。これにより、ＤｏＳ攻撃に対する効率のよい防御を実現している。
【０２０６】
従って、ネットワークインターフェース１０１、２０１および３０１のそれぞれは、処理能力の低い家電機器等をＤｏＳ攻撃から保護する構成要素として有用である。
【０２０７】
そこで、実施の形態１におけるネットワークインターフェース１０１を例にとり、ネットワークインターフェース１０１を備える３種類の家電機器の構成について、図１０〜図１２を用いて説明する。
【０２０８】
図１０は、実施の形態１におけるネットワークインターフェース１０１を備える映像受信装置１１００の主要な構成を示すブロック図である。
【０２０９】
図１０に示す映像受信装置１１００は、例えば、放送データ受信し表示するテレビであり、表示制御部１１１０と、チューナ１１２０と、デコーダ１１３０と、表示装置１１４０と、攻撃パケット検知装置１１５０とを備える。
【０２１０】
攻撃パケット検知装置１１５０は、ネットワークインターフェース１０１と、メインメモリ１１０２とを含む。
【０２１１】
映像受信装置１１００では、チューナ１１２０が受信した放送データ（例えばＭＰＥＧ−２  ＴＳ（Ｔｒａｎｓｐｏｒｔ  Ｓｔｒｅａｍ））を、デコーダ１１３０が復号する。この復号により得られる映像は表示装置１１４０に表示される。なお、これら一連の処理は、表示制御部１１１０により制御される。
【０２１２】
また、映像受信装置１１００は、ネットワークインターフェース１０１を介して、インターネット等のネットワークに接続されている。ネットワークインターフェース１０１は、複数のパケットに分割されて伝送されるデータ、例えば、動画データ、静止画データ、ＨＴＭＬ（ＨｙｐｅｒＴｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）ファイル、およびテキストデータ等を受信する。
【０２１３】
このとき、図２等を用いて説明したように、ネットワークインターフェース１０１は、受信したパケットのうち、攻撃パケットテーブル１０９に基づいて攻撃パケットに該当すするパケットを破棄する。また、攻撃パケットに該当しないパケットを、メインメモリ１１０２に転送する。
【０２１４】
表示制御部１１１０は、メインメモリ１１０２からパケットを読み出して、読み出したパケットに示される情報を表示装置１１４０に表示させる。
【０２１５】
これにより、例えば、インターネットを介して受信したＷｅｂコンテンツが表示装置に表示される。
【０２１６】
なお、表示制御部１１１０が有する上記の各種処理機能は、例えば、ＣＰＵ、記憶装置、および情報の入出力を行うインターフェース等を有するコンピュータが、所定のプログラムを実行することにより実現される。
【０２１７】
このように、映像受信装置１１００は、攻撃パケット検知装置１１５０を備えている。これにより、映像受信装置１１００が、ＤｏＳ攻撃を受けた場合であっても、ネットワークインターフェース１０１内で攻撃パケットは破棄され、かつ、Ｗｅｂコンテンツ等を構成するパケットはメインメモリ１１０２に転送され、表示制御部１１１０により適切に処理される。
【０２１８】
また、未知の攻撃パケットが送信された場合であっても、映像受信装置１１００は、攻撃パケットテーブル１０９を更新することで、当該攻撃パケットをメインメモリ１１０２に転送する前に破棄することができる。つまり、映像受信装置１１００は、効率よくＤｏＳ攻撃を防御することができる。
【０２１９】
図１１は、実施の形態１におけるネットワークインターフェース１０１を備えるコンテンツ記録装置１２００の主要な構成を示すブロック図である。
【０２２０】
図１１に示すコンテンツ記録装置１２００は、映像データおよび音声データのうちの少なくとも一方を含むコンテンツデータを受信し、受信したコンテンツデータを記録する装置である。コンテンツ記録装置１２００は、例えばハードディスクレコーダ、または、ブルーレイディスクレコーダ等として実現される。
【０２２１】
コンテンツ記録装置１２００は、記録部１２１０と、記録媒体１２２０と、データ処理部１２３０と、出力部１２４０と、攻撃パケット検知装置１２５０とを備える。
【０２２２】
攻撃パケット検知装置１２５０は、ネットワークインターフェース１０１と、メインメモリ１２０２とを含む。
【０２２３】
コンテンツ記録装置１２００は、パケット単位で送信されるコンテンツデータをネットワークインターフェース１０１を介して受信する。受信したコンテンツデータは、記録部１２１０により記録媒体１２２０に記録される。このとき、データ処理部１２３０は、例えばユーザによる設定に応じて、コンテンツデータに対し復号および圧縮符号化等の処理を行う。また、処理後のコンテンツデータは記録部１２１０により記録媒体１２２０に記録される。
【０２２４】
記録媒体１２２０に記録されたコンテンツデータは、データ処理部１２３０により復号等の処理がなされ、出力部１２４０から出力される。
【０２２５】
ここで、記録部１２１０は、具体的には、ネットワークインターフェース１０１からメインメモリ１２０２に転送されたパケットを、メインメモリ１２０２から読み出して記録媒体１２２０に記録する。
【０２２６】
従って、コンテンツ記録装置１２００がＤｏＳ攻撃を受けた場合であっても、ネットワークインターフェース１０１内で攻撃パケットは破棄され、かつ、コンテンツデータを構成するパケットはメインメモリ１２０２に転送され、記録部１２１０により適切に処理される。
【０２２７】
また、未知の攻撃パケットが送信された場合であっても、コンテンツ記録装置１２００は、攻撃パケットテーブル１０９を更新することで、当該攻撃パケットをメインメモリ１２０２に転送する前に破棄することができる。つまり、コンテンツ記録装置１２００は、効率よくＤｏＳ攻撃を防御することができる。
【０２２８】
図１２は、実施の形態１におけるネットワークインターフェース１０１を備えるＩＰ通信装置１３００の主要な構成を示すブロック図である。
【０２２９】
図１２に示すＩＰ通信装置１３００は、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）通信を行う装置である。ＩＰ通信装置１３００は、例えば、ＩＰ通信により送信されるコンテンツデータを受信しテレビに出力するセットトップボックスとして実現される。
【０２３０】
ＩＰ通信装置１３００は、パケット処理部１３１０と、出力部１３２０と、攻撃パケット検知装置１３５０とを備える。
【０２３１】
攻撃パケット検知装置１３５０は、ネットワークインターフェース１０１と、メインメモリ１３０２とを含む。
【０２３２】
ＩＰ通信装置１３００は、パケット単位で送信されるコンテンツデータをネットワークインターフェース１０１介して受信する。パケット処理部１３１０は、受信したコンテンツデータに対し復号およびスクランブル解除等の処理を行い、映像信号および音声信号の少なくとも一方を含む信号を生成する。
【０２３３】
パケット処理部１３１０により生成された信号は、出力部１３２０を介して、ＩＰ通信装置１３００に接続されたテレビ等の外部機器に出力される。
【０２３４】
ここで、パケット処理部１３１０は、ネットワークインターフェース１０１からメインメモリ１３０２に転送されたパケットを、メインメモリ１３０２から読み出して処理する。
【０２３５】
従って、ＩＰ通信装置１３００がＤｏＳ攻撃を受けた場合であっても、ネットワークインターフェース１０１内で攻撃パケットは破棄され、かつ、コンテンツデータを構成するパケットはメインメモリ１３０２に転送され、パケット処理部１３１０により適切に処理される。
【０２３６】
また、未知の攻撃パケットが送信された場合であっても、ＩＰ通信装置１３００は、攻撃パケットテーブル１０９を更新することで、当該攻撃パケットをメインメモリ１３０２に転送する前に破棄することができる。つまり、ＩＰ通信装置１３００は、効率よくＤｏＳ攻撃を防御することができる。
【０２３７】
なお、図１０〜図１２に示す各装置は、ネットワークインターフェース１０１に換えて、ネットワークインターフェース２０１またはネットワークインターフェース３０１を備えてもよい。いずれの場合であっても、各装置は、ＤｏＳ攻撃に対する効率的な防御を行うことができる。
【０２３８】
また、各装置が、ネットワークインターフェース３０１を備える場合、図９を用いて説明したように、各装置が備えるＣＰＵが攻撃判定プログラムを実行することで、攻撃パケットテーブル１０９の更新処理が実現される。
【産業上の利用可能性】
【０２３９】
以上のように、本発明によれば、受信したパケットから得られる情報を用いて攻撃パケットテーブルを更新することができる。そのため、受信パケットが攻撃パケットであるか否かの判定は効率よく行われ、その結果、ＤｏＳ攻撃に対する効率のよい防御が実現される。
【０２４０】
従って、本発明は、ネットワーク機器をＤｏＳ攻撃から保護するための、攻撃パケット検知装置および攻撃パケット検知方法として有用である。また、本発明は、テレビ、ハードディスクレコーダ、ブルーレイディスクレコーダ、セットトップボックス等のネットワーク機器としても有用である。
【符号の説明】
【０２４１】
１０１、２０１、３０１    ネットワークインターフェース
１０２、１１０２、１２０２、１３０２    メインメモリ
１０３    パケット受信部
１０４    比較部
１０４ａ  破棄部
１０５    パケットバッファ
１０６    転送部
１０７    攻撃検知部
１０８、２０８    更新部
１０９、２０９    攻撃パケットテーブル
１１０    テーブル記憶部
１１１    統計情報
３０２    ＣＰＵ
３０３    Ｉ／Ｏ部
３０４    割込発生部
１１００    映像受信装置
１１１０    表示制御部
１１２０    チューナ
１１３０    デコーダ
１１４０    表示装置
１１５０、１２５０、１３５０    攻撃パケット検知装置
１２００    コンテンツ記録装置
１２１０    記録部
１２２０    記録媒体
１２３０    データ処理部
１２４０、１３２０    出力部
１３００    ＩＰ通信装置
１３１０    パケット処理部
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
パケットを受信する受信部と、前記受信部が受信したパケットを蓄積するパケットバッファと、前記パケットバッファに蓄積されたパケットをメインメモリに転送する転送部とを備える攻撃パケット検知装置であって、
前記パケットバッファのパケットの蓄積量に基づいて、大量のパケットの送信による攻撃を検知する攻撃検知部と、
前記大量のパケットの送信による攻撃に用いられるパケットである攻撃パケットを識別する情報が登録される攻撃パケット情報を記憶する記憶部と、
前記攻撃検知部により前記攻撃が検知された場合、前記パケットバッファに蓄積されているパケットから得られる情報を用いて、前記攻撃パケット情報を更新する更新部と、
前記受信部が受信したパケットが、前記更新部により更新された攻撃パケット情報に示される情報に該当する場合、当該パケットを、当該パケットが前記メインメモリに転送される前に破棄する破棄部と、
前記更新部により更新された攻撃パケット情報と、前記受信部が受信したパケットとを比較し、当該パケットが前記攻撃パケット情報に示される情報に該当しない場合、当該パケットを前記パケットバッファに送信する比較部とを備え、
前記破棄部は、前記比較部による比較の結果、当該パケットが前記攻撃パケット情報に示される情報に該当する場合、当該パケットが前記パケットバッファに送信される前に当該パケットを破棄し、
前記パケットバッファは、前記比較部から送信されたパケットを蓄積する
攻撃パケット検知装置。
【請求項２】
前記更新部は、前記パケットバッファに蓄積された複数のパケットそれぞれから属性情報を取得し、同一の属性情報を有するパケットの個数またはサイズを積算し、当該積算結果が所定の閾値以上である場合、前記属性情報を前記攻撃パケット情報に追加することで前記攻撃パケット情報を更新し、
前記破棄部は、前記受信部が受信したパケットの属性情報が、前記更新部により更新された攻撃パケット情報に含まれている場合、当該パケットを破棄する
請求項１記載の攻撃パケット検知装置。
【請求項３】
前記更新部は、
前記パケットバッファに蓄積されたパケットそれぞれの属性情報であるヘッダ情報と、ヘッダ情報ごとのパケットの累積個数または累積サイズとを記録するための統計情報を有し、
前記攻撃検知部により前記攻撃が検知された場合、前記パケットバッファに蓄積されているパケットのヘッダ情報を読み出し、（ａ）読み出したヘッダ情報が前記統計情報に含まれていない場合、当該ヘッダ情報のエントリを前記統計情報に追加し、（ｂ）読み出したヘッダ情報が前記統計情報に含まれている場合、当該ヘッダ情報に対応する累積個数または累積サイズに１または当該パケットのサイズを加算し、
前記統計情報に示される、前記所定の閾値以上の累積個数または累積サイズに対応するヘッダ情報を前記攻撃パケット情報に追加することで前記攻撃パケット情報を更新する
請求項２記載の攻撃パケット検知装置。
【請求項４】
前記更新部は、前記パケットバッファに蓄積された複数のパケットそれぞれから属性情報を取得し、同一の属性情報を有するパケットの単位時間あたりの蓄積個数または蓄積容量の増加量を算出し、当該算出結果が所定の閾値以上である場合、前記属性を示す情報を前記攻撃パケット情報に追加することで前記攻撃パケット情報を更新し、
前記破棄部は、前記受信部が受信したパケットから得られる属性情報が前記更新部により更新された攻撃パケット情報に含まれている場合、当該パケットを破棄する
請求項１記載の攻撃パケット検知装置。
【請求項５】
前記攻撃パケット情報には、予め、前記攻撃パケットを識別する情報である攻撃パターンが登録されており、
前記更新部は、前記パケットバッファに蓄積されているパケットから得られる情報が、前記攻撃パターンに該当する場合、前記攻撃パターンが有効であることを示す情報を前記攻撃パケット情報に記録することで、前記攻撃パケット情報を更新し、
前記破棄部は、前記攻撃パケット情報に示される、有効である攻撃パターンに該当するパケットを破棄する
請求項１記載の攻撃パケット検知装置。
【請求項６】
前記攻撃検知部は、前記パケットバッファに蓄積されているパケットの蓄積量、または、前記蓄積量の単位時間当たりの増加量が所定の閾値を超えたことを検出することで、前記攻撃を検知する
請求項１記載の攻撃パケット検知装置。
【請求項７】
前記転送部は、前記パケットバッファに蓄積されているパケットの前記メインメモリへの単位時間あたりの転送個数である転送速度の変更を受け付けると、変更後の転送速度で前記パケットバッファに蓄積されているパケットを転送する
請求項６記載の攻撃パケット検知装置。
【請求項８】
前記攻撃検知部は、前記パケットバッファに蓄積されているパケットの蓄積量が前記所定の閾値を越えることによるパケットバッファのオーバーフローを検出することで、前記攻撃を検知する
請求項６記載の攻撃パケット検知装置。
【請求項９】
映像データを受信し、受信した映像データに示される映像を表示装置に表示する映像受信装置であって、
請求項１記載の攻撃パケット検知装置と、
前記攻撃パケット検知装置により前記メインメモリに転送されたパケットを前記メインメモリから読み出して、読み出したパケットに含まれる映像を前記表示装置に表示させる表示制御部と
を備える映像受信装置。
【請求項１０】
映像データおよび音声データのうちの少なくとも一方を含むコンテンツデータを受信し、受信したコンテンツデータを記録するコンテンツ記録装置であって、
請求項１記載の攻撃パケット検知装置と、
前記攻撃パケット検知装置により前記メインメモリに転送された複数のパケットで構成されるコンテンツデータを前記メインメモリから読み出して、前記コンテンツデータを記録媒体に記録する記録部と
を備えるコンテンツ記録装置。
【請求項１１】
ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）通信を行うＩＰ通信装置であって、
請求項１記載の攻撃パケット検知装置と、
前記攻撃パケット検知装置により前記メインメモリに転送された複数のパケットを前記メインメモリから読み出して処理し、映像信号および音声信号の少なくとも一方を含む信号を生成するパケット処理部と、
前記パケット処理部により生成された信号を、外部の機器に出力する出力部と
を備えるＩＰ通信装置。
【請求項１２】
パケットを受信する受信部と、前記受信部が受信したパケットを蓄積するパケットバッファと、前記パケットバッファに蓄積されたパケットをメインメモリに転送する転送部とを備える攻撃パケット検知装置によって実行される攻撃パケット検知方法であって、
前記パケットバッファのパケットの蓄積量に基づいて、大量のパケットの送信による攻撃を検知する攻撃検知ステップと、
前記攻撃検知ステップにおいて前記攻撃が検知された場合、前記パケットバッファに蓄積されているパケットから得られる情報を用いて、前記大量のパケットの送信による攻撃に用いられるパケットである攻撃パケットを識別する情報が登録される攻撃パケット情報を更新する更新ステップと、
前記受信部が受信したパケットが、前記更新ステップにおいて更新された攻撃パケット情報に示される情報に該当する場合、当該パケットを、当該パケットが前記メインメモリに転送される前に破棄する破棄ステップと、
前記更新ステップにおいて更新された攻撃パケット情報と、前記受信部が受信したパケットとを比較する比較ステップと、
前記比較ステップにおける比較の結果、当該パケットが前記攻撃パケット情報に示される情報に該当しない場合、当該パケットを前記パケットバッファに送信することで当該パケットを前記パケットバッファに蓄積させる送信ステップとを含み、
前記破棄ステップでは、前記比較ステップにおける比較の結果、当該パケットが前記攻撃パケット情報に示される情報に該当する場合、当該パケットが前記パケットバッファに送信される前に当該パケットを破棄する、
攻撃パケット検知方法。
【請求項１３】
攻撃パケット検知装置が行う処理のうち少なくとも一部の処理を実行するためのプログラムであって、
前記攻撃パケット検知装置は、
パケットを受信する受信部と、
前記受信部が受信したパケットを蓄積するパケットバッファと、
前記パケットバッファに蓄積されたパケットをメインメモリに転送する転送部と、
前記パケットバッファのパケットの蓄積量に基づいて、大量のパケットの送信による攻撃を検知する攻撃検知部と、
前記大量のパケットの送信による攻撃に用いられるパケットである攻撃パケットを識別する情報が登録される攻撃パケット情報を記憶する記憶部と、
前記受信部が受信したパケットが、前記記憶部に記憶されている攻撃パケット情報に示される情報に該当する場合、当該パケットを、当該パケットが前記メインメモリに転送される前に破棄する破棄部とを備え、
前記プログラムは、
前記攻撃検知部により前記攻撃が検知された場合、前記パケットバッファに蓄積されているパケットから得られる情報を用いて、前記攻撃パケット情報を更新する更新ステップと、
前記更新ステップにおいて更新された攻撃パケット情報と、前記受信部が受信したパケットとを比較する比較ステップと、
前記比較ステップにおける比較の結果、当該パケットが前記攻撃パケット情報に示される情報に該当しない場合、当該パケットを前記パケットバッファに送信することで、当該パケットを前記パケットバッファに蓄積させる送信ステップと、
前記比較ステップにおける比較の結果、当該パケットが前記攻撃パケット情報に示される情報に該当する場合、当該パケットが前記パケットバッファに送信される前に、前記破棄部に当該パケットを破棄させる破棄ステップと、
をコンピュータに実行させるためのプログラム。
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正の内容】
【図１】
2009139170.tif 000015
【図２】
2009139170.tif 000016
【図３】
2009139170.tif 000017
【図４】
2009139170.tif 000018
【図５】
2009139170.tif 000019
【図６】
2009139170.tif 000020
【図７】
2009139170.tif 000021
【図８】
2009139170.tif 000022
【図９】
2009139170.tif 000023
【図１０】
2009139170.tif 000024
【図１１】
2009139170.tif 000025
【図１２】
2009139170.tif 000026
【国際調査報告】
2009139170.tif 000027
2009139170.tif 000028
2009139170.tif 000029
2009139170.tif 000030