(57)【要約】【課題】偽装された送信元ＩＰアドレスを有するネットワーク情報を検出するための、確実かつ有効な方法及び装置を提供すること。【解決手段】インターネットネットワークフローにおける異常攻撃を検出するシステム及び方法は、カウントを提供するために異常攻撃として検出されるインターネットトラフィックメッセージの数をカウントし、異常攻撃として検出されるメッセージの数の移動平均値を算出し、カウントを移動平均値と比較することにより、カウントが移動平均値の倍数よりも大きい場合には、異常攻撃アラームを提供するために、動作する。攻撃は、偽装攻撃又はサービス拒否攻撃の少なくとも１つを含むことができる。コンピュータで読み取り可能な記憶媒体は、コンピュータシステムにより実行されたときに、前記方法のステップのパフォーマンスをもたらすコンピュータプログラムの命令を記憶する。【選択図】図１
2015111770.tif 000002
【特許請求の範囲】
【請求項１】
インターネットトラフィックを監視するシステムであって、
異常攻撃として識別されるインターネットトラフィックメッセージを検出する第１の装置と、
カウントを提供するために前記異常攻撃として識別される前記インターネットトラフィックメッセージをカウントするカウンターと、
前記異常攻撃として識別される前記インターネットトラフィックメッセージの数の移動平均値を算出する第２の装置と、
前記カウントを前記移動平均値と比較し、前記カウントが前記移動平均値の第１の倍数よりも大きい場合には、異常攻撃アラームを提供する比較部と、
を備えるシステム。
【請求項２】
前記カウントが前記移動平均値の第２の倍数よりも小さい場合には、前記異常攻撃アラームを消去する消去装置をさらに備え、前記第２の倍数は、前記第１の倍数よりも小さい、請求項１に記載のシステム。
【請求項３】
前記カウントが前記第１の倍数より小さい場合には、平滑化により前記移動平均値を更新する更新装置をさらに備える請求項２に記載のシステム。
【請求項４】
前記平滑化は、指数平滑化である請求項３に記載のシステム。
【請求項５】
前記異常攻撃のレコードを記憶するデータベースと、
前記異常攻撃のレコードが所定の期間、前記データベースにあるかどうかを判定するプロセッサと、をさらに備える請求項１に記載のシステム。
【請求項６】
前記移動平均値は、現在のタイムウィンドウで算出され、レコードが、所定の期間よりも長い期間、前記データベースにあった場合には、当該レコードは、前記移動平均値を算出するための前記タイムウィンドウから削除される請求項５に記載のシステム。
【請求項７】
前記移動平均値は、常に正の数に設定される請求項１に記載のシステム。
【請求項８】
前記異常攻撃は、送信元偽装及びサービス拒否攻撃のうちの少なくとも１つを含む請求項１に記載のシステム。
【請求項９】
前記移動平均値は、予め設定された間隔と同じ頻度で更新される請求項１に記載のシステム。
【請求項１０】
インターネットトラフィックを監視するシステムであって、
ネットワークフローにおける異常攻撃を検出し、
カウントを提供するために前記異常攻撃として検出されるインターネットトラフィックの数をカウントし、
前記異常攻撃として検出される前記インターネットトラフィックの数の移動平均値を算出し、
前記カウントを前記移動平均値と比較し、
前記カウントが前記移動平均値の第１の倍数よりも大きい場合には、異常攻撃アラームを提供する、ステップを実行するプロセッサ、を備えるシステム。
【請求項１１】
前記プロセッサは、さらに、前記カウントが前記移動平均値の第２の倍数よりも小さい場合には、前記異常攻撃アラームを消去するステップを実行し、前記第２の倍数は、前記第１の倍数よりも小さい、請求項１０に記載のシステム。
【請求項１２】
前記プロセッサは、さらに、前記カウントが前記移動平均値の第１の倍数より小さい場合には、平滑化により前記移動平均値を更新するステップを実行する、請求項１０に記載のシステム。
【請求項１３】
前記平滑化は、指数平滑化である請求項１２に記載のシステム。
【請求項１４】
異常攻撃のレコードを記憶するデータベースのためのストレージをさらに備え、前記プロセッサは、さらに、前記異常攻撃のレコードが所定の期間、前記データベースにあるかどうかを判定するステップを実行する、請求項１２に記載のシステム。
【請求項１５】
前記プロセッサが、前記レコードが前記所定の期間よりも長い期間、前記データベースにあったと判定した場合には、前記プロセッサは、移動平均値を算出するために用いられたウィンドウから前記レコードを削除する請求項１４に記載のシステム。
【請求項１６】
前記異常攻撃は、送信元偽装及びサービス拒否攻撃のうちの少なくとも１つを含む請求項１０に記載のシステム。
【請求項１７】
前記移動平均値は、予め設定された間隔と同じ頻度で更新される請求項１０に記載のシステム。
【請求項１８】
前記移動平均値は、常に正の数に設定される請求項１０に記載のシステム。
【請求項１９】
インターネットトラフィックを監視する方法であって、
ネットワークフローを受信し、前記ネットワークフローにおける異常攻撃を検出するステップと、
カウントを提供するために前記異常攻撃として検出されるインターネットトラフィックメッセージの数をカウントするステップと、
前記異常攻撃として検出される前記インターネットトラフィックメッセージの数の移動平均値を算出するステップと、
前記カウントを前記移動平均値と比較し、前記カウントが前記移動平均値の第１の倍数よりも大きい場合には、異常攻撃アラームを提供するステップと、を備える方法。
【請求項２０】
前記カウントが前記移動平均値の第２の倍数よりも小さい場合には、前記異常攻撃アラームを消去するステップをさらに備え、前記第２の倍数は、前記第１の倍数よりも小さい、請求項１９に記載の方法。
【請求項２１】
前記カウントが前記移動平均値の前記第１の倍数よりも小さい場合には、平滑化を用いて前記移動平均値を更新する、請求項１９に記載の方法。
【請求項２２】
前記平滑化は、指数平滑化である請求項２１に記載の方法。
【請求項２３】
一連のコンピュータ命令を実行するコンピュータプロセッサが実装される、請求項１９に記載の方法。
【請求項２４】
前記移動平均値は、予め設定された間隔と同じ頻度で更新される請求項１９に記載の方法。
【請求項２５】
前記移動平均値は、常に正の数に設定される請求項１９に記載の方法。
【請求項２６】
前記異常攻撃のレコードをデータベースに記憶するステップと、
前記異常攻撃のレコードが所定期間、前記データベースにあるかどうかを判定するステップと、をさらに備える請求項１９に記載の方法。
【請求項２７】
前記レコードが、所定の期間よりも長い期間、前記データベースにあった場合には、前記移動平均値を算出するために用いられるウィンドウから前記レコードを削除するステップをさらに備える請求項２６に記載の方法。
【請求項２８】
前記異常攻撃は、送信元偽装及びサービス拒否攻撃のうちの少なくとも１つを含む請求項１９に記載の方法。
【請求項２９】
コンピュータシステムにより実行されたときに、以下の方法のステップのパフォーマンスをもたらすコンピュータプログラムの命令を記憶するコンピュータで読み取り可能な一時的でない記憶媒体であって、前記方法は、
ネットワークフローにおける異常攻撃を検出するステップと、
前記異常攻撃として検出されるインターネットトラフィックメッセージの数をカウントして、カウントを提供するステップと、
前記異常攻撃として検出される前記インターネットトラフィックメッセージの数の移動平均値を算出するステップと、
前記カウントを前記移動平均値と比較して、前記カウントが前記移動平均値の第１の倍数よりも大きい場合には、異常攻撃アラームを提供するステップと、を備える、
コンピュータで読み取り可能な一時的でない記憶媒体。
【請求項３０】
前記方法は、偽装又はサービス拒否攻撃として異常攻撃を判定するステップをさらに備える、請求項２９に記載のコンピュータで読み取り可能な一時的でない記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般的に、ネットワーク上での偽装及びＤｏＳ（Ｄｅｎｉａｌ  ｏｆ  Ｓｅｒｖｉｃｅ）攻撃の検出に関するものである。より具体的には、本開示は、攻撃が発生しているのか又は発生したのかを確実に判定することに関するものである。
【背景技術】
【０００２】
インターネットセキュリティにおける非常に重要な課題の１つは、送信元が偽装されたインターネットプロトコル（ＩＰ）トラフィックを用いるネットワーク攻撃を検出することである。これらの攻撃を検出する目的は、ネットワーク運用者に、防衛措置を取るべきであるという警告や、ネットワーク上のホストが情報漏洩したことを知らせる警告を与えることである。他の目的は、偽装パケットを検出する課題を異なる手段により解決し、偽装であると判定されたパケットを切り離すフィルタを構築又は提案することである。
【０００３】
この課題に対処するいくつかのアプローチが、非特許文献１に説明されている。また、他のアプローチが、非特許文献２に説明されている。また、さらなるアプローチが、非特許文献３に説明されている。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Ｍ．Ｎａｇａｒａｔｎａ，Ｖ．Ｋ．Ｐｒａｓａｄ  ａｎｄ  Ｓ．Ｔ．Ｋｕｍａｒ，“Ｄｅｔｅｃｔｉｎｇ  ａｎｄ  Ｐｒｅｖｅｎｔｉｎｇ  ＩＰ−ｓｐｏｏｆｅｄ  ＤＤｏＳ  Ａｔｔａｃｋｓ  ｂｙ  Ｅｎｃｒｙｐｔｅｄ  Ｍａｒｋｉｎｇ  Ｂａｓｅｄ  Ｄｅｔｅｃｔｉｏｎ  ａｎｄ  Ｆｉｌｔｅｒｉｎｇ  （ＥＭＤＡＦ）”，ｉｎ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ａｄｖａｎｃｅｓ  ｉｎ  Ｒｅｃｅｎｔ  Ｔｅｃｈｎｏｌｏｇｉｅｓ  ｉｎ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ  ａｎｄ  Ｃｏｍｐｕｔｉｎｇ，Ｋｏｔｔａｙａｍ，Ｋｅｒａｌａ，２００９
【非特許文献２】Ｋ．Ｌｅｖｉｔｔ  ａｎｄ  Ｓ．Ｔｅｍｐｌｅｔｏｎ，“Ｄｅｔｅｃｔｉｎｇ  Ｓｐｏｏｆｅｄ  Ｐａｃｋｅｔｓ”，ｉｎ  Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  Ｔｈｅ  Ｔｈｉｒｄ  ＤＡＲＰＡ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｓｕｒｖｉｖａｂｉｌｉｔｙ  Ｃｏｎｆｅｒｅｎｃｅ  ａｎｄ  Ｅｘｐｏｓｉｔｉｏｎ，Ｗａｓｈｉｎｇｔｏｎ，ＤＣ  ＵＳＡ，２００３
【非特許文献３】Ｘ．Ｙａｎｇ，“Ａ  ＤｏＳ−ｌｉｍｉｔｉｎｇ  Ｎｅｔｗｏｒｋ  Ａｒｃｈｉｔｅｃｔｕｒｅ”，ｉｎ  ＡＣＭ  ＳＩＧＣＯＭＭ，Ｐｈｉｌａｄｅｌｐｈｉａ，ＰＡ  ＵＳＡ，２００５
【発明の概要】
【発明が解決しようとする課題】
【０００５】
攻撃がいつ発生したかを確実に判定し、防衛的な観測が開始されるようにネットワーク又はサブネットワークの運用者に警告するために、トラフィックを監視するシステム又は方法を、従来技術は、提供しない。このようなシステムに対する需要が存在する。
【０００６】
従来の解決手段は、個々のパケットを検出及びフィルタするためのツールを提供する。しかし、従来の解決手段は、偽装されたＩＰパケットの量が、ネットワークアドミニストレータに報告されるべき攻撃のレベルであるかを判定してはいない。
偽装されているように見える低いレベルのトラフィックが常に存在するため（つまり、偽装によるもの又は偽装検出アルゴリズムにおける誤検出によるもののいずれかが存在するため）、この判定は、大規模なインターネットサービスプロバイダー（ＩＳＰ）のモニタリングの環境では重要である。このトラフィックの全てを運用者へ報告することは、大量の警告を発生させ、運用者の対処を妨げる。
【０００７】
従来の解決手段は、典型的には、与えられたパケットが偽装された送信元アドレスを有するかどうかを検出する方法を提供するものであるが、本開示は、これらの方法を使用して、このような大量のパケットが、与えられた宛先サブネットに対して観察されるというネットワーク運用者への警告を提供するものである。
よって、本開示は、検出自体ではなく、検出の結果を用いた運用上の利益に関するものである。
【課題を解決するための手段】
【０００８】
本開示は、一般的な異常トラフィック検出技術及びＩＰ偽装検出ソフトウェアと、攻撃を検出し従来技術の不備を解消するための自己調整及びリアルタイムフィルタリング異常検出とを結合するものである。
【０００９】
本開示は、インターネットトラフィックを監視するシステムであって、異常攻撃として識別されるインターネットトラフィックメッセージを検出する第１の装置と、カウントを提供するために前記異常攻撃として識別される前記インターネットトラフィックメッセージをカウントするカウンターと、前記異常攻撃として識別される前記インターネットトラフィックメッセージの数の移動平均値を算出する第２の装置と、前記カウントを前記移動平均値と比較し、前記カウントが前記移動平均値の第１の倍数よりも大きい場合には、異常攻撃アラームを提供する比較部と、を備えるシステムに関する。
【００１０】
前記カウントが前記移動平均値の第２の倍数よりも小さい場合には、前記異常攻撃アラームは消去され、前記第２の倍数は、前記第１の倍数よりも小さい。前記移動平均値は、平滑化により更新され、指数平滑化であることが好ましい。
【００１１】
前記移動平均値は、予め設定された間隔と同じ頻度で更新され、常に正の数に設定される。
【００１２】
前記システムは、前記異常攻撃のレコードを記憶するデータベースをさらに備えることができる。プロセッサは、前記異常攻撃のレコードが所定の期間、前記データベースにあるかどうかを判定し、当該レコードは、前記移動平均値を算出するためのタイムウィンドウでは用いられない。
【００１３】
前記異常攻撃は、他の攻撃と同様に、送信元偽装及びサービス拒否攻撃のうちの少なくとも１つを含む。前記異常攻撃は、送信元偽装、ＳＹＮ比率、ソースＩＰダイバーシティ、ＩＰゲオロケーションダイバーシティ及びＩＰアドレスリストを含むインジケータに基づいて識別されうる。
【００１４】
本開示は、また、インターネットトラフィックを監視するシステムであって、ネットワークフローにおける異常攻撃を検出し、カウントを提供するために前記異常攻撃として検出されるインターネットトラフィックメッセージの数をカウントし、前記異常攻撃として検出される前記インターネットトラフィックメッセージの数の移動平均値を算出し、前記カウントを前記移動平均値と比較し、前記カウントが前記移動平均値の第１の倍数よりも大きい場合には、異常攻撃アラームを提供する、ステップを実行するプロセッサを備えるシステムに関する。
【００１５】
本開示は、さらに、インターネットトラフィックを監視する方法であって、ネットワークフローを受信し、前記ネットワークフローにおける異常攻撃を検出するステップと、カウントを提供するために前記異常攻撃として検出されるインターネットトラフィックメッセージの数をカウントするステップと、前記異常攻撃として検出される前記インターネットトラフィックメッセージの数の移動平均値を算出するステップと、異常攻撃アラームを提供するために前記カウントを前記移動平均値と比較し、前記カウントが前記移動平均値の第１の倍数よりも大きい場合には、異常攻撃アラームを提供するステップと、を備える方法に関する。前記方法は、前記カウントが前記移動平均値の第２の倍数よりも小さい場合には、前記異常攻撃アラームを消去するステップをさらに備えることができ、前記第２の倍数は、前記移動平均値の第１の倍数よりも小さい。前記方法は、さらに、平滑化を用いて前記移動平均値を更新するステップをさらに備えることができ、平滑化は、指数平滑化であることができる。
【００１６】
前記方法によれば、前記移動平均値は、予め設定された間隔と同じ頻度で更新されることができる。さらに、前記移動平均値は、正の数に設定されることができる。
【００１７】
前記方法は、前記異常攻撃のレコードをデータベースに記憶するステップと、前記異常攻撃のレコードが所定期間、前記データベースにあるかどうかを判定するステップと、前記レコードが、所定の期間よりも長い期間、前記データベースにあった場合には、前記移動平均値を算出するために用いられるウィンドウから前記レコードを削除するステップとをさらに備えることができる。
【００１８】
前記方法によれば、前記異常攻撃は、他の攻撃と同様に、送信元偽装及びサービス拒否攻撃のうちの少なくとも１つを含むことができる。前記異常攻撃は、送信元偽装、ＳＹＮ比率、ソースＩＰダイバーシティ、ＩＰゲオロケーションダイバーシティ及びＩＰアドレスリストを含むインジケータに基づいて識別されうる。
【００１９】
本開示は、また、コンピュータシステムにより実行されたときに、以下の方法のステップのパフォーマンスをもたらすコンピュータプログラムの命令を記憶するコンピュータで読み取り可能な一時的でない記憶媒体であって、前記方法は、ネットワークフローを受信し、ネットワークフローにおける異常攻撃を検出するステップと、前記異常攻撃として検出されるインターネットトラフィックメッセージの数をカウントして、カウントを提供するステップと、前記異常攻撃として検出される前記インターネットトラフィックメッセージの数の移動平均値を算出するステップと、前記カウントを前記移動平均値と比較して、前記カウントが前記移動平均値の第１の倍数よりも大きい場合には、異常攻撃アラームを提供するステップと、を備える、コンピュータで読み取り可能な一時的でない記憶媒体に関する。
【図面の簡単な説明】
【００２０】
一以上の図面に共通する構成要素又は特徴は、図面のそれぞれの同一の参照番号により示される。
【図１】本開示に係るシステムオペレーティングのフローチャートである。
【図２】本開示に係るシステムアーキテクチャの概要図である。
【図３】本開示に係るフローレコード処理の概要図である。
【図４】図３のキャプチャデーモンの処理を示すフローチャートである。
【図５】開示された実施形態を実装するために用いられるコンピュータシステムの図である。
【発明を実施するための形態】
【００２１】
図１は、本明細書に開示される実施形態のオペレーションを示す。本実施形態は、偽装された送信元ＩＰアドレスの検出について説明するが、以下に詳細に説明するように、他の異常発生も監視できることが理解されるだろう。
【００２２】
１０１では、ネットワークからのフローについてのデータ（一般的なＮｅｔＦｌｏｗ及びｓＦｌｏｗレコードの形態）は、既存のネットワークモニタリングエージェントから送信される。
１０２では、送信元偽装が検出される。各レコードについて、システムは、送信元ＩＰアドレスが偽装されているか否かを判定する。これは、例えば、Ｖａｉｄｙａｎａｔｈａｎ  Ｒ．，Ｇｈｏｓｈ  Ａ．，Ｙｕｕ−Ｈｅｎｇ  Ｃｈｅｎｇ，Ｙａｍａｄａ  Ａ．  ａｎｄ  Ｍｉｙａｋｅ  Ｙ．，“Ｏｎ  ｔｈｅ  ｕｓｅ  ｏｆ  ＢＧＰ  ＡＳ  ｎｕｍｂｅｒｓ  ｔｏ  ｄｅｔｅｃｔ  ｓｐｏｏｆｉｎｇ”，Ｉｎ  ２０１０  ＩＥＥＥ  ＧＬＯＢＥＣＯＭ  Ｗｏｒｋｓｈｏｐｓ  （ＧＣ  Ｗｏｒｋｓｈｏｐｓ），ｐｐ．１６０６−１６１０．Ｍｉａｍｉ，ＦＬ  ＵＳＡ，２０１０に開示されるような、ソースプロファイル１０４及び所期の性能を有する自律システム（ａｕｔｏｎｏｍｏｕｓ  ｓｙｓｔｅｍ（ＡＳ））セットを用いることにより行うことができる。しかしながら、偽装されたＩＰアドレスを検出する何らかの方法が潜在的に適応可能である。
【００２３】
１０６では、フローのアイテムの送信元アドレスが偽装されているかどうかの判定がなされる。偽装されていない場合、フローは１０２へ戻る。
１０６において、アイテムが偽装されていると判定された場合、カウンターは、１０７においてインクリメントされる。カウンターは、現在の間隔内で宛先サブネットにより見られる、偽装された送信元アドレスの数を記録する。この間隔は、ショートタームウィンドウとして知られている。
【００２４】
１０８では、システムは、移動平均値が、定義されたパラメータ、つまり更新間隔と同程度の速さで更新されるようにする。通常、更新間隔は、１秒であることが好ましい。その値は、任意の正の数でありうる。その値は、倍精度浮動小数点数として実装されることが好ましい。この数は、監視されるネットワークとは独立である。
【００２５】
１０９では、複数の更新間隔が経過したかどうかの判定がなされる。
１１０では、複数の更新間隔が経過した場合、移動平均値は、平滑化を用いて見逃した間隔のために更新される。このように、システムは、宛先に関するレコードが、ショートタームウィンドウに入るとき、又は、から外れたときにのみ、移動平均値を更新する。システムは、少なくとも１つの更新間隔において更新されなかった移動平均値が更新されるとき、見逃した更新間隔のそれぞれに対するその現在値で初めに更新されるようにする。システムは、移動平均値が０ではなく、少なくとも小さい正の数であるようにする。システムは、その後、次のレコードの処理を続ける。
【００２６】
１１１では、ショートタームウィンドウにおいて偽装された攻撃の数が、セーブされた移動平均値の予め定義された倍数Ｘ（これは、アラーム閾値である）以上かどうかの判定がなされ、ここでＸの典型的な値は、例えば、１．２５、１．５、２及び３のみである。
１１２では、宛先ネット又はサブネットの現在のアラームがあるかどうかの判定がなされる。
１１４では、宛先サブネットの現在のアラームがない場合、システムは、アラームをデータベースへ投入し、偽装企図のレコードがデータベースに記憶される。そして、フローは１０２へ戻る。
１１６では、偽装された攻撃の数が、第２の予め定義された倍数Ｙ（これは、クリア閾値である）を下回るかどうかの判定がなされ、かつ、宛先サブネットの現在のアラームがあるかどうかの判定がなされる。Ｙの典型的な値は、１、１．１、１．２５であり、ここでＹはＸ以下である。Ｘ及びＹのための値における許容範囲は事実上存在するが、Ｘ及びＹは、倍精度浮動小数点数として定義され、ここで処理上の理由のため、Ｘは１．０よりも大きく、ＹはＸ以下でなければならない。Ｘ及びＹを決定するための厳格な規則はない。運用者は、期待されるトラフィックスパイク及び許容可能なフォルスアラームの数に基づいて、これらの値を決定することができる。ネットワークのサイズが、運用者が選択する値の要因となりうるが、この値は、通常、トラフィックの平均変動率よりもはるかに大きいものを表す直感的な概念に一致するように選択される。
【００２７】
１１８では、偽装された攻撃の数が第２の予め定義された倍数よりも小さく、かつ、宛先サブネットの現在のアラームがある場合、アラームクリアがデータベースへ送られ、アラームは、データベースからクリアされる。
１２０では、移動平均値は、平滑化を用いて更新される。フローは１０２へ戻る。
１１６において、偽装された攻撃の数が第２の予め定義された倍数よりも大きい、又は、宛先サブネットの現在のアラームがない場合、平滑化を用いて移動平均値を更新するために、フローは直接１２０へ進み、その後、１０２へ進む。
【００２８】
１２０では、宛先サブネットの現在のアラームがデータベースにない場合、システムは、ショートタームウィンドウにおける値を用いて、好ましくは単一指数平滑法を用いることによって、移動平均値を更新する。ユーザ指定の値α（０から１の間）は、選択され、現在のショートターム値（Ｓ）にαを掛け、ロングターム値（Ｌ）の以前のものと１−αを掛けたものに加えることによりロングターム値（Ｌ）は更新される。
これは、Ｌ＝Ｓ×α＋Ｌｐｒｅｖｉｏｕｓ×（１−α）と表される。
処理の開始時では、システムは、Ｌの初期値としてロングターム値として知られるユーザ指定の値を使用する。システムは、Ｌを更新する一方で、“ロングターム期間”として知られる最初のユーザ指定の間隔の終了前にロングターム値に対して比較する。ロングターム期間の後、システムは、比較のために、算出されたＬを使用する。更新間隔は、通常及び好ましくは、１秒である。その値は、任意の正の数であり、倍精度浮動小数点数として実装されることができる。この数は、監視されるネットワークとは独立である。
【００２９】
１０２において入力したデータは、ネットワークからの新たなフロー又はショートタームウィンドウから外れた古いフローのいずれかでありうる。新たなフローについては、１０７におけるカウンターがインクリメントされる。古い（期限切れの）フローについては、カウンターは、デクリメントされる。アラーム処理（１０７の後のステップ）は、ショートタームウィンドウを出るレコードに対するように、ショートタームウィンドウに入るレコードに対して、同様である。
【００３０】
図２は、開示された実施形態が実装されるシステムを示す。
一般的に２００で示されるインターネットサービスプロバイダー（ＩＳＰ）ネットワークは、ネットワークを介してトラフィックをネットワークエッジにおけるホストへ転送するルーター２０２，２０４，２０６を含む。これらのいくつかのルーター２０４は、インターナルフローエージェントを有してもよい。他のルーター２０６は、これらのフローエージェント２０８と結合して実装される。フローエージェント２０８は、ネットワークを監視し、データ（例えば、ＩＰアドレス、ポート数、及びトラフィック量）を収集し、このデータをフローレコードプロセッサ２１０へ送信する。アラームデータベース２１２及びプロファイルデータベース２１４は、フローレコードプロセッサ２１０と関連付けられる。
【００３１】
図３を参照すると、フローレコードプロセッサ２１０は、キャプチャデーモン３０２から構成される。１つの実施では、１つのキャプチャデーモンは、各フローエージェント２０８のために用いられる。
キャプチャデーモン３０２は、フローレコードを、それらのネイティブ形式（ＮｅｔＦｌｏｗ又はｓＦｌｏｗレコード）から正規の形式へ変換する。
フローレコードプロセッサ２１０は、また、レコード処理コンポーネント３０４を含み、これは、図１について説明されたような正規のレコードを処理する。
【００３２】
図４を参照すると、１０１では、キャプチャデーモンは、４０２においてそれらのネイティブフォーマットにおけるデータを監視するネットワークフローを受信することにより、対象となるネットワーク１０１におけるフローを受信する。
４０３では、フローレコードは、上記で説明されたシステムにおいて使用される正規のフォーマットへ変更される。ｓＦｌｏｗエージェント及びＮｅｔＦｌｏｗエージェントのためのキャプチャデーモンが存在する。通常、それぞれのキャプチャデーモンは、１つのタイプのレコードのみを変換することができる。キャプチャデーモンは開始し、そのレコードをキャプチャデーモンへ送信するように構成されるエージェントから到来したレコード（ｓＦｌｏｗ又はＮｅｔＦｌｏｗのいずれか）に対し、注意を向ける。ネイティブレコードを受信すると、キャプチャデーモンは、そのレコードから、正規のレコード（ｃａｎｏｎｉｃａｌ  ｒｅｃｏｒｄ）を生成するために必要なデータを抽出し、正規のレコードを生成する。
４０４では、キャプチャデーモンは、レコードをファイルに書き込むことにより正規のレコードを記録する。
４０５では、キャプチャデーモンは、現在のウィンドウにおいて、期限切れの、つまり、いくつかの所定の閾値よりも古い正規のレコードが存在するかどうかを判定する。
４０６では、ファイルに期限切れのレコードが存在する場合、キャプチャデーモンは、それらのレコードを現在のウィンドウから除去する。
４０７では、期限切れの正規のレコードは、これらのレコードが期限切れであるという注釈と共に、３０４（図３）での処理を記録するために送信される。
４０８では、キャプチャデーモンは、新たな正規のレコードを現在のウィンドウに追加する。
４０９では、キャプチャデーモンは、このレコードがウィンドウに新たに入るという注釈と共に、３０４での処理を記録するためにコピーを送信する。キャプチャデーモンは、４０２において入ってくるネイティブレコードの処理を再開する。
【００３３】
キャプチャデーモンの処理は、殆どのキャプチャデーモンがデータをファイルへセーブするのみである点で画期的であり、そのため、それらがキャプチャするレコードは、別のアプリケーションによりリアルタイムで処理されるのとは対照的に、本明細書に記載のシステムにおける場合のような、完全なファイルが書き込まれた時のみ、定期的に分析されることができる。
【００３４】
本明細書に記載のシステム及び方法の実施形態は、自己調整リアルタイムフィルタリング機能を含む。本明細書に記載のシステム及び方法の実施形態は、ＤｏＳ攻撃のような偽装ＩＰアドレス以外の異常のために用いることができる。ＤｏＳ攻撃の場合には、移動平均値は、偽装ＩＰパケットの数からなるものではなく、パケットの総数、パケットの総数のバイト数、又はこれらのパケットに対応するフローの数のいずれかからなる。１０７からの処理は同一である。
【００３５】
本明細書に記載のシステムで使用されうる異常ＩＰ攻撃の他のインジケータが以下に記載される。異なるイベント又はパラメータの発生の頻度は、システムにより監視される。
【００３６】
＜ＳＹＮ比率インジケータ＞
ＴＣＰベースのアプリケーションは、３−ウェイハンドシェイクプロトコルを用いるクライアントとサーバとの接続の確立を必要とする。ハンドシェイクは、サーバへＳＹＮフラグセット（ａｋａ  ＳＹＮパケット）を有するＴＣＰパケットを送信するクライアントにより開始される。接続の成功は、サーバとクライアントとの確立された接続において非ＳＹＮ（データ）パケットの交換をもたらす。典型的なボットベースのＤｏＳ攻撃は、多数のＳＹＮパケットをサーバへ送信する。ＳＹＮフラッドにおける各ＳＹＮパケットは、サーバにおけるＴＣＰステートのアロケーションをもたらし、ＳＹＮ−ＡＣＫは、クライアントへ送信される。ボット攻撃は、ＳＹＮ−ＡＣＫに応答せず、そのため、サーバのリソースを消費する。
【００３７】
ＳＹＮ比率インジケータは、サーバへのＴＣＰトラフィックのボリューム全体に対するＳＹＮパケットのボリュームを考慮することによりＤｏＳ攻撃の早期の警告を提供する。
ＳＹＮフラッド攻撃は、いわゆるフラッシュクラウドとは区別される。なぜなら、ＳＹＮフラッドは、ＳＹＮパケットの比率が非常に大きいからである。ＳＹＮ比率インジケータは、各タイムウィンドウ内の観測されたＳＹＮ及び非ＳＹＮトラフィックのカウンターを維持する。ＳＹＮ比率インジケータは、複数のタイムウィンドウに亘る観測された非ＳＹＮトラフィックに対する観測されたＳＹＮトラフィックのロングタームレートも維持する。所定のタイムウィンドウの算出されたレートは、アラートを出す必要があるかどうか判定するために、現在のロングタームレートと比較される。所定のタイムウィンドウに対してアラートを出す必要がない場合、タイムウィンドウの算出されたレートは、ロングタームレートを更新するために用いられる。
【００３８】
＜ソースＩＰダイバーシティインジケータ＞
ＤＤｏＳ攻撃を発するボットネットは、通常、ターゲットを圧倒するために、多数のボットを用いる。また、多くのボットネットは、個々のボットのロケーションを隠すためにランダム送信元ＩＰアドレス偽装を採用している。よって、大規模なＤＤｏＳ攻撃時には、所定の宛先ＩＰに対するユニークな送信元ＩＰアドレスの数は、通常の動作に対して相対的に非常に大きくなる可能性がある。所定の宛先ＩＰアドレスのタイムウィンドウ内で観測されたユニークな送信元ＩＰの数を考慮することによりＤＤｏＳ／ＲＤＤｏＳ攻撃の早期な警告を提供することが可能となる。ソースＩＰダイバーシティインジケータは、各タイムウィンドウに亘って観測されたユニークな送信元ＩＰアドレスのカウンターを維持し、所定の宛先のショートタームのソースＩＰダイバーシティレートの算出を可能にする。ショートタームのソースＩＰダイバーシティは、上記のＳＹＮ比率インジケータと同様の手法でロングタームのソースＩＰダイバーシティレートと共に使用され、アラートを出すかどうかを判定するために使用される。
【００３９】
＜ＩＰゲオロケーションダイバーシティインジケータ＞
ＤＤｏＳ攻撃は、地理的に異なった地域に位置するボットを採用する場合もある。したがって、宛先に対してトラフィックが観測されるユニークな地理的エリアの数は、ＤＤｏＳ攻撃が進行しているときには、相対的に大きくなりうる。送信元ＩＰアドレスを考えると、ｗｈｏｉｓサーバ又はＩＰアドレスリストを付与されているＲＩＲ（Ｒｅｇｉｏｎａｌ  Ｉｎｔｅｒｎｅｔ  Ｒｅｇｉｓｔｒｙ）のいずれかからその地理的な位置のおおよその観測が得られる。ＩＰゲオロケーションダイバーシティインジケータは、トラフィックが、現在のタイムウィンドウ内の与えられた宛先に対して観測される場所からのユニークな地理的な位置のカウントを維持する。既に述べたように、これは、所定の宛先の地理的な異常の存在を判定するために、ロングタームレートと比較される。
【００４０】
＜ＩＰアドレスリストインジケータ＞
既知の悪意のあるトラフィック送信元のＩＰアドレスを含むブラックリストは、様々な信頼できるプロバイダーから公的に取得される。典型的には、これらのリストにより、悪意のあるトラフィックを発生させると知られている特定のＩＰアドレス又はＩＰアドレスサブネットのいずれかが識別される。ＩＰアドレスリストインジケータにより、観測されたフローデータにおけるこれらのリストからＩＰアドレスの存在が分析される。
このインジケータの例は、コンフィグレーションインプットとして提供される特定のＩＰアドレスリストと関連付けられる。
【００４１】
アラートの発生及びロングタームレートの算出は、前述したインジケータの１つと同様の分析アプローチに基づくタイムウィンドウを用いて行われる。上記に加えて、フローレコードから得られるパケットカウント、バイトカウント及びフローカウントの期間で算出されたインジケータベースの純粋なボリュームは、用いられることができる。前に記載されたインジケータと同様に、これらのボリュームベースのインジケータは、タイムウィンドウあたりのデータボリュームを算出し、タイムウィンドウ当たりの態様と比較することに対してロングタームトレンドを維持する。例えば、インジケータアラートに基づくＳＹＮ比率、ソースＩＰダイバーシティ及びレートの大量発生は、ＤＤｏＳ攻撃に基づくＳＹＮフラッドの発生を示すことができる。インジケータアラートに基づくＳＹＮ比率、偽装送信元及びレートの大量発生は、偽装されたＳＹＮフラッド攻撃の存在を示すことができる。偽装された送信元、レートベース及びソースＩＰダイバーシティインジケータの大量発生は、ランダム偽装によるＤｏＳ攻撃を示すことができる。
【００４２】
＜宛先ＩＰの詳細＞
アナリストは、インジケータタイプのいくつかのサブセットと共に関心のある宛先ＩＰアドレス又は宛先ＩＰプレフィックスに基づくアラートをフィルタすることができる。ある宛先ＩＰが、攻撃下にある又は攻撃されそうであるとわかっている場合、インジケータアクティビティを監視することは、攻撃の性質を判定することの助けとなり、それにより、適切な緩和メカニズムを判定することの助けとなる。よって、少量のソースＩＰダイバーシティインジケータアラートであるが、宛先に対する多量のレートベースのインジケータアラートは、少数の送信元からのトラフィックがＤＤｏＳ攻撃を生じることを示すことができる。取り得る可能な緩和メカニズムは、選択された送信元アドレスに対する、いわゆるブラックホーリング手法のみを含むことができる。
【００４３】
本開示は、検出メカニズム自体ではなく検出の使用に着目していることを留意する。本明細書に記載のシステム及び方法は、宛先サブネットのセキュリティを監視するために、個々の偽装パケット又は他の異常イベントの検出を用いる。本開示は、偽装検出器又は他の異常イベント検出器がいくつかの誤検出をすることを認識している（つまり、それらは、それらが無くてもある割合のパケットを偽装として宣言する）。本開示は、所定の割合の誤検出が存在していても攻撃を検出することができる。本開示は、常に、ネットワーク上で検出可能な特定数の異常なパケットが存在すると仮定している。この仮定は、本システムが、宛先サブネットでの主な攻撃を検出するために大規模ネットワークで用いられることを可能にする。
【００４４】
よって、本明細書に開示されたシステム及び方法は、オペレーターが、正確な個々の偽装されたパケットの代わりに、関心のある特定の宛先サブネットへの攻撃を検出することを可能にする。これは、個々の偽装パケットのボリュームがオペレーターを圧倒する大規模ネットワークのオペレーター（つまり、Ｔｉｅｒ  Ｉ  ＩＳＰ）にとって有利である。攻撃検出は、ネットワーク状態の移動平均値に基づいているため、ネットワークトラフィックにおける段階的な変化に順応することができる。
【００４５】
ＩＳＰは、それ自身のネットワークを監視するために本明細書に記載のシステム及び方法を使用することができ、初期の又は進行中の攻撃を検出する。ＩＳＰは、また、追加のサービスをそのカスタマーへ提供するために本明細書に記載のシステム及び方法を使用することができ、カスタマーのネットワーク上の、初期の又は進行中の攻撃を検出する。システム及び方法は、また、ネットワーク監視のための製品を有するＴＣＰ／ＩＰネットワーク装備ベンダーにも使用される。
【００４６】
図５を参照すると、本方法及びシステムが実装されうるコンピュータシステム５００は、インターネット等のネットワーク５３０に接続されたコンピュータ５０５を含む。
コンピュータ５０５は、ユーザインターフェース５１０と、プロセッサ５１５と、メモリ５２０と、を備える。コンピュータ５０５は、汎用マイクロコンピュータで実装されてもよい。コンピュータ５０５は、本明細書ではスタンドアローン装置として表されるが、これに限定されず、ネットワーク５３０を介して他の装置（図示せず）と接続されることができる。
【００４７】
プロセッサ５１５は、命令に応答及び実行するロジック回路で構成される。
メモリ５２０は、プロセッサ５１５の動作を制御するデータ及び命令を記憶する。メモリ５２０は、ランダムアクセスメモリ（ＲＡＭ）、リードオンリーメモリ（ＲＯＭ）、又はそれらの組み合わせに実装されてもよい。
メモリ５２０の１つの構成要素は、プログラムモジュール５２５である。
プログラムモジュール５２５は、本明細書に記載の方法を実行するプロセッサ５１５を制御する命令を含む。
【００４８】
用語“モジュール”は、本明細書では、スタンドアローンの構成要素又は複数の下位の構成要素の集積された構成のいずれかとして実施されてもよい機能的な動作を示すために用いられる。よって、プログラムモジュール５２５は、単一のモジュール又は互いに協同で動作する複数のモジュールとして実装されてもよい。また、プログラムモジュール５２５は、本明細書では、メモリ５２０に実装されるものとして説明され、よって、ソフトウェアで実装されるが、ハードウェア（例えば、電子回路）、ファームウェア、ソフトウェア又はそれらの組み合わせのいずれかで実装されることができる。
【００４９】
ユーザインターフェース５１０は、ユーザが情報及びコマンド選択をプロセッサ５１５へ通信することができるキーボード又は音声認識サブシステムのような入力装置を含む。ユーザインターフェース５１０は、また、ディスプレイ又はプリンタのような出力装置を含む。マウス、トラックボール又はジョイスティックのようなカーソルコントロールは、ユーザが、追加情報及びコマンド選択をプロセッサ５１５へ通信するディスプレイ上のカーソルを操作することを可能にする。
プロセッサ５１５は、本明細書に記載の方法の実行の結果をユーザインターフェース５１０へ出力する。それに替えて、プロセッサ５１５は、ネットワーク５３０を介してリモートデバイス（図示せず）へ出力を指示する。
【００５０】
プログラムモジュール５２５は、メモリ５２０に既にロードされているように示されているが、メモリ５２０へその後ロードする記憶媒体５３５で構成されてもよい。
記憶媒体５３５は、有形形態でプログラムモジュール５２５を記憶する従来の記憶媒体であることができる。記憶媒体５３５の例は、ハードディスクドライブ、フレキシブルディスク、コンパクトディスク、磁気テープ、リードオンリーメモリ、光学記憶媒体、ユニバーサルシリアルバス（ＵＳＢ）フラッシュドライブ、デジタルバーサタイルディスク又はジップドライブを含む。それに替えて、記憶媒体５３５は、リモートストレージシステムに位置付けられ、ネットワーク５３０を介してコンピュータ５０５に接続されるランダムアクセスメモリ又は他のタイプの電子ストレージであることができる。
【００５１】
本開示は、本明細書に記載の方法のステップのパフォーマンスをもたらすコンピュータシステムにより実行されたときに、コンピュータプログラムの命令を記憶するコンピュータで読み取り可能な一時的でない記憶媒体で実施されることが理解される。このような記憶媒体は、上述したもののいずれかを含んでもよい。
【００５２】
本明細書に記載の技術は、例示であり、本開示の特定の限定を暗示するものとして構築されるべきではない。なお、様々な代替手段、組み合わせ及び変更が当業者により考案されることができる。例えば、本明細書に記載のプロセスと関連付けられるステップは、ステップ自体が特定される又は決定されない限り、任意の順序で行われることができる。
さらに、本明細書に記載の実施形態は、一連のコンピュータ命令を動作するデジタルプロセッサにより実装されるが、他の実施形態は、各種のハードウェア構成要素及び回路を用いて実装されてもよい。例えば、回路は、本明細書に記載のシステム及び方法を実現するために、各種のカウンター、タイマー及びコンパレーターを実装して用いられることができる。
本開示は、添付の特許請求の範囲の範囲内に含まれるこのような代替手段、変更及び変形例の全てを包含することを意図するものである。
【００５３】
用語“備える（ｃｏｍｐｒｉｓｅｓ）”又は“備え（ｃｏｍｐｒｉｓｉｎｇ）”は、定められた特徴、整数、ステップ又は構成要素の存在を特定するものとして解釈されが、一又はそれ以上の他の特徴、整数、ステップ又は構成要素或いはそれらの集合の存在を排除するものとしては解釈されない。
【符号の説明】
【００５４】
２００  インターネットサービスプロバイダー（ＩＳＰ）ネットワーク
２００，２０２，２０４  ルーター
２０８  フローエージェント
２１０  フローレコードプロセッサ
２１２  アラームデータベース
２１４  プロファイルデータベース
５００  コンピュータシステム
５０５  コンピュータ
５１０  ユーザインターフェース
５１５  プロセッサ
５２０  メモリ
５２５  プログラムモジュール
５３０  ネットワーク
５３５  記憶媒体
【図１】
2015111770.tif 000003
【図２】
2015111770.tif 000004
【図３】
2015111770.tif 000005
【図４】
2015111770.tif 000006
【図５】
2015111770.tif 000007
【外国語明細書】
2015111770000001.pdf
2015111770000002.pdf
2015111770000003.pdf
2015111770000004.pdf