(57)【要約】ＤｏＳ（Ｄｅｎｉａｌ−ｏｆ−Ｓｅｒｖｉｃｅ）攻撃の検出及び追跡を行うシステム及び方法が開示される。本システム及び方法の一特徴は、ネットワークに通信可能に接続するよう動作可能な複数のブローカーモジュールと複数の攻撃検出モジュールとを提供することか構成される。攻撃検出モジュールは、ネットワークセグメント上の可能性のあるＤｏＳ攻撃を検出するよう動作する。可能性のあるＤｏＳ攻撃の攻撃シグネチャは、ネットワークセグメント上の１以上のブローカーモジュールに転送されてもよい。ブローカーモジュールは、攻撃の攻撃元を決定するため、データをまとめて解析する。
2006512856.tif 000002
【特許請求の範囲】
【請求項１】
ＤｏＳ（Ｄｅｎｉａｌ−ｏｆ−Ｓｅｒｖｉｃｅ）攻撃を追跡する方法であって、
ネットワークに通信可能に接続するよう動作可能な複数のブローカーモジュールと複数の攻撃検出モジュールとを提供するステップと、
前記複数の攻撃検出モジュールの第１攻撃検出モジュールからＤｏＳ攻撃が行われている可能性があるという表示を受信するステップと、
前記複数の攻撃検出モジュールの１以上からキャッシュ処理されたネットワークパケット情報を受信するステップと、
前記キャッシュ処理されたネットワークパケット情報から攻撃シグネチャを決定するステップと、
前記攻撃シグネチャに基づく攻撃インスタンスデータを前記複数のブローカーモジュールの１以上に送信するステップと、
から構成されることを特徴とする方法。
【請求項２】
請求項１記載の方法であって、
前記ＤｏＳ攻撃は、ＳＹＮフラッド攻撃から構成されることを特徴とする方法。
【請求項３】
請求項１記載の方法であって、
前記ＤｏＳ攻撃は、ｐｉｎｇフラッド攻撃から構成されることを特徴とする方法。
【請求項４】
請求項１記載の方法であって、
前記ＤｏＳ攻撃が行われている可能性があるという表示を受信するステップはさらに、
前記ネットワーク上の複数のネットワークソースから複数の初期化パケットを受信するステップと、
前記複数の初期化パケットに関する情報をキャッシュ処理するステップと、
前記キャッシュ処理された情報から、アクノリッジを受けなかった前記複数の初期化パケットの計数を決定するステップと、
前記計数が閾値を上回る場合、可能性のあるＤｏＳ攻撃を示すステップと、
から構成されることを特徴とする方法。
【請求項５】
請求項１記載の方法であって、さらに、
前記複数のブローカーモジュールの１以上から前記ＤｏＳ攻撃に関する状態情報を受信するステップを有することを特徴とする方法。
【請求項６】
ＤｏＳ攻撃を追跡する方法であって、
ネットワークに通信可能に接続される複数のブローカーモジュールと複数の攻撃検出モジュールとを提供するステップと、
前記複数のブローカーモジュールの少なくとも１つから攻撃インスタンスデータを受信するステップと、
前記複数の攻撃検出モジュールの１以上からキャッシュ処理されたネットワークパケット情報を受信するステップと、
前記キャッシュ処理されたネットワークパケット情報から１以上の攻撃シグネチャを決定するステップと、
前記攻撃インスタンスデータの少なくとも一部を前記１以上の攻撃シグネチャと比較するステップと、
前記比較により、前記攻撃インスタンスデータの一部と前記１以上の攻撃シグネチャが一致する場合、攻撃対処策を始動するステップと、
から構成されることを特徴とする方法。
【請求項７】
請求項６記載の方法であって、さらに、
攻撃状態情報を少なくとも１つのブローカーモジュールに通信するステップを有することを特徴とする方法。
【請求項８】
請求項６記載の方法であって、
前記攻撃対処策を始動するステップは、前記ＤｏＳ攻撃の攻撃元からのパケットをフィルタリングすることを特徴とする方法。
【請求項９】
ＤｏＳ攻撃を検出する方法であって、
プロトコルを有するネットワーク上の複数のネットワークソースから複数の初期化パケットを受信するステップと、
前記初期化パケットに関する情報をキャッシュ処理するステップと、
前記キャッシュ処理された情報からアクノリッジを受けなかった前記複数の初期化パケットの計数を決定するステップと、
前記計数が閾値を上回る場合、可能性のあるＤｏＳ攻撃を示すステップと、
から構成されることを特徴とする方法。
【請求項１０】
請求項９記載の方法であって、さらに、
前記初期化パケットに応答して、初期化アクノリッジメントパケットを送信するステップと、
前記初期化アクノリッジメントパケットに関する初期化アクノリッジメントパケット時間を含む情報をキャッシュ処理するステップと、
前記複数のネットワークソースの１つからアクノリッジメント到着時間を有するアクノリッジメントパケットを受信するステップと、
前記アクノリッジメント到着時間と前記初期化アクノリッジメントパケット時間を比較するステップと、
前記アクノリッジメント到着時間が前記初期化アクノリッジメントパケット時間より以前のものである場合、可能性のあるＤｏＳ攻撃を示すステップと、
を有することを特徴とする方法。
【請求項１１】
請求項１０記載の方法であって、
前記ネットワークプロトコルは、ＩＰネットワークプロトコルから構成されることを特徴とする方法。
【請求項１２】
請求項１０記載の方法であって、
前記ネットワークプロトコルは、ＴＣＰ／ＩＰネットワークプロトコルから構成され、
前記初期化パケットは、ＳＹＮパケットから構成され、
前記初期化アクノリッジメントパケットは、ＳＹＮ／ＡＣＫパケットから構成され、
前記アクノリッジメントパケットは、ＡＣＫパケットから構成される、
ことを特徴とする方法。
【請求項１３】
ネットワークに通信可能に接続され、ネットワークデータをキャッシュ処理し、ＤｏＳ攻撃を検出するよう動作可能な複数の攻撃検出モジュールと、
前記ネットワークに通信可能に接続され、前記ＤｏＳ攻撃の表示を受信し、前記複数の攻撃検出モジュールの１以上から前記キャッシュ処理されたネットワークデータを抽出し、攻撃シグネチャに対し前記キャッシュ処理されたネットワークデータを解析するよう動作可能な少なくとも１つのブローカーモジュールと、
から構成されることを特徴とするコンピュータシステム。
【請求項１４】
請求項１３記載のコンピュータシステムであって、
前記攻撃検出モジュールは、スイッチ、ルータ、ブリッジ、サーバコンピュータ及びパーソナルコンピュータから構成されるグループから選ばれたネットワーク装置と一体化されることを特徴とするシステム。
【請求項１５】
請求項１３記載のコンピュータシステムであって、
前記少なくとも１つのブローカーモジュールはさらに、
前記複数のブローカーモジュールの少なくとも１つから攻撃インスタンスデータを受信し、
前記複数の攻撃検出モジュールの１以上からキャッシュ処理されたネットワークパケット情報を受信し、
前記キャッシュ処理されたネットワークパケット情報から１以上の攻撃シグネチャを決定し、
前記攻撃インスタンスデータの少なくとも一部と前記１以上の攻撃シグネチャを比較し、
前記比較により、前記攻撃インスタンスデータの一部と前記１以上の攻撃シグネチャが一致する場合、攻撃対処策を始動する、
よう動作可能であることを特徴とするシステム。
【請求項１６】
ＤｏＳ攻撃を追跡する方法を実行するマシーン実行可能な命令を有するマシーン可読媒体であって、
前記方法は、
ネットワークに通信可能に接続するよう動作可能な複数のブローカーモジュールと複数の攻撃検出モジュールとを提供するステップと、
前記複数の攻撃検出モジュールの第１攻撃検出モジュールからＤｏＳ攻撃が行われている可能性があるという表示を受信するステップと、
前記複数の攻撃検出モジュールの１以上からキャッシュ処理されたネットワークパケット情報を受信するステップと、
前記キャッシュ処理されたネットワークパケット情報から攻撃シグネチャを決定するステップと、
前記攻撃シグネチャに基づく攻撃インスタンスデータを前記複数のブローカーモジュールの１以上に送信するステップと、
から構成されることを特徴とするマシーン可読媒体。
【請求項１７】
請求項１６記載のマシーン可読媒体であって、
前記ＤｏＳ攻撃が行われている可能性があるという表示を受信するステップはさらに、
前記ネットワーク上の複数のネットワークソースから複数の初期化パケットを受信するステップと、
前記複数の初期化パケットに関する情報をキャッシュ処理するステップと、
前記キャッシュ処理された情報から、アクノリッジを受けなかった前記複数の初期化パケットの計数を決定するステップと、
前記計数が閾値を上回る場合、可能性のあるＤｏＳ攻撃を示すステップと、
から構成されることを特徴とするマシーン可読媒体。
【請求項１８】
請求項１６記載のマシーン可読媒体であって、
前記ＤｏＳ攻撃は、ＳＹＮフラッド攻撃から構成されることを特徴とするマシーン可読媒体。
【請求項１９】
請求項１６記載のマシーン可読媒体であって、
前記ＤｏＳ攻撃は、ｐｉｎｇフラッド攻撃から構成されることを特徴とするマシーン可読媒体。
【請求項２０】
請求項１６記載のマシーン可読媒体であって、
前記方法はさらに、前記複数のブローカーモジュールの１以上から前記ＤｏＳ攻撃に関する状態情報を受信するステップを有することを特徴とするマシーン可読媒体。
【請求項２１】
ＤｏＳ攻撃を追跡する方法を実行するマシーン実行可能な命令を有するマシーン可読媒体であって、
前記方法は、
ネットワークに通信可能に接続される複数のブローカーモジュールと複数の攻撃検出モジュールとを提供するステップと、
前記複数のブローカーモジュールの少なくとも１つから攻撃インスタンスデータを受信するステップと、
前記複数の攻撃検出モジュールの１以上からキャッシュ処理されたネットワークパケット情報を受信するステップと、
前記キャッシュ処理されたネットワークパケット情報から１以上の攻撃シグネチャを決定するステップと、
前記攻撃インスタンスデータの少なくとも一部を前記１以上の攻撃シグネチャと比較するステップと、
前記比較により、前記攻撃インスタンスデータの一部と前記１以上の攻撃シグネチャが一致する場合、攻撃対処策を始動するステップと、
から構成されることを特徴とするマシーン可読媒体。
【請求項２２】
請求項２１記載のマシーン可読媒体であって、
前記方法はさらに、攻撃状態情報を少なくとも１つのブローカーモジュールに通信するステップを有することを特徴とするマシーン可読媒体。
【請求項２３】
請求項２１記載のマシーン可読媒体であって、
前記攻撃対処策を始動するステップは、前記ＤｏＳ攻撃の攻撃元からのパケットをフィルタリングすることを特徴とするマシーン可読媒体。
【請求項２４】
ＤｏＳ攻撃を検出する方法を実行するマシーン実行可能な命令を有するマシーン可読媒体であって、
前記方法は、
プロトコルを有するネットワーク上の複数のネットワークソースから複数の初期化パケットを受信するステップと、
前記初期化パケットに関する情報をキャッシュ処理するステップと、
前記キャッシュ処理された情報からアクノリッジを受けなかった前記複数の初期化パケットの計数を決定するステップと、
前記計数が閾値を上回る場合、可能性のあるＤｏＳ攻撃を示すステップと、
から構成されることを特徴とするマシーン可読媒体。
【請求項２５】
請求項２４記載のマシーン可読媒体であって、さらに、
前記初期化パケットに応答して、初期化アクノリッジメントパケットを送信するステップと、
前記初期化アクノリッジメントパケットに関する初期化アクノリッジメントパケット時間を含む情報をキャッシュ処理するステップと、
前記複数のネットワークソースの１つからアクノリッジメント到着時間を有するアクノリッジメントパケットを受信するステップと、
前記アクノリッジメント到着時間と前記初期化アクノリッジメントパケット時間を比較するステップと、
前記アクノリッジメント到着時間が前記初期化アクノリッジメントパケット時間より以前のものである場合、可能性のあるＤｏＳ攻撃を示すステップと、
を有することを特徴とするマシーン可読媒体。
【請求項２６】
請求項２４記載のマシーン可読媒体であって、
前記ネットワークプロトコルは、ＩＰネットワークプロトコルから構成されることを特徴とするマシーン可読媒体。
【請求項２７】
請求項２４記載のマシーン可読媒体であって、
前記ネットワークプロトコルは、ＴＣＰ／ＩＰネットワークプロトコルから構成され、
前記初期化パケットは、ＳＹＮパケットから構成され、
前記初期化アクノリッジメントパケットは、ＳＹＮ／ＡＣＫパケットから構成され、
前記アクノリッジメントパケットは、ＡＣＫパケットから構成される、
ことを特徴とするマシーン可読媒体。
【発明の詳細な説明】
【発明の詳細な説明】
【０００１】
［技術分野］
本発明は、一般にＤｏＳ攻撃を処理するコンピュータ化されたシステム及び方法に関し、より詳細には、攻撃の検出及び攻撃元の探知に関する。
［著作権通知／許可］
本特許文献の開示の一部は、著作権保護に従うコンテンツを含む。著作権所有者は、それが特許庁の特許ファイルまたはレコードに開示されたときには、何れの人による当該特許文献及び特許開示のファクシミリによる再生に異論はないが、そうでない場合には、すべての特許権を留保する。「Ｃｏｐｙｒｉｇｈｔ  ２００２，Ｉｎｔｅｌ  Ｃｏｒｐｏｒａｔｉｏｎ．Ａｌｌ  Ｒｉｇｈｔｓ  Ｒｅｓｅｒｖｅｄ」の告知は、以下及び図面に開示されるソフトウェア及びデータに適用される。
［背景］
ビジネス及び個人的理由の両方に対するコンピュータネットワーク、特にインターネットの利用は、急激なペースで成長し続けている。例えば、ユーザはビジネス及び個人的通信、商取引及びあらゆる種類の情報の配布及び収集に対して、インターネットにますます依存しつつある。しかしながら、この依存性の増大により、ネットワークの機能停止により生ずる損害に対する脆弱性もまた増大している。
【０００２】
悪意あるユーザがこの脆弱性を利用する方法の１つは、ＤｏＳ（Ｄｅｎｉａｌ−ｏｆ−Ｓｅｒｖｉｃｅ）攻撃を通じたものである。ＤｏＳ攻撃は、システムがもはや正当なリクエストをタイムリーに処理することが不可能となる程の大量のデータにより繰り返しシステムを標的にすることにより、インターネットなどのネットワークに接続されるシステムの過重負荷またはクラッシュを発生させようとするものである。実際、Ｄｏｓ攻撃は、システムをそれがクラッシュする程度まで圧倒することが可能である。このような攻撃は、その犠牲者が攻撃元を特定するのに時間を要する必要があるため、経済的な損害を発生させ、犠牲者に攻撃が行われなかった場合に得られる販売を損失させるかもしれない。
【０００３】
時間の経過と共に、ＤｏＳ攻撃はより巧妙化してきている。これの一例は、分散ＤｏＳ（ＤＤｏＳ）があげられる。初期のＤｏＳ攻撃は、典型的には、１つのシステムから行われていた。ＤＤｏＳ攻撃では、複数のシステムを用いて、標的となるシステムにリクエストをあふれさせる。しばしばこのＤＤｏＳに加わるシステムは、攻撃を行うウイルスにシステムが感染する場合と同様に、自らが参加していることを認識さえしていない。
【０００４】
ＤｏＳ及びＤＤｏＳ攻撃により生じる損害を軽減するため、このような攻撃を早期に検出すると共に、その攻撃元を探知することが望ましい。しかしながら、攻撃が複数の攻撃元から行われる場合、現在の検出システムがこの攻撃を複数の攻撃元まで追跡することは困難である。
【０００５】
上記問題点を鑑み、本発明による技術が必要とされる。
［詳細な説明］
以下の本発明の実施例の詳細な説明では、それの一部を構成する添付された図面が参照され、図解により本発明が実現される具体的実施例が示される。これらの実施例は、当業者が本発明を実現することを可能にするのに十分詳細に説明され、他の実施例が利用可能であり、本発明の範囲から逸脱することなく、論理的、機械的、電気的及び他の変更が可能であるということは理解されるべきである。従って、以下の詳細な説明は限定的な意味にとられるべきでない。
【０００６】
図面を通じて、複数の図面に現れる同一の構成要素を参照するのに、同一の参照番号が使用される。信号及び接続は、同一の参照番号または記号により参照され、実際の意味は説明の文脈におけるそれの利用から明らかとなるであろう。さらに、同一の構成要素グループの動作または特徴を一般的に参照するとき、同一の基礎参照番号（例えば、１５０など）が明細書及び図面に用いられる。同一の構成要素グループの特定の構成要素がある動作を行ったり、あるいはある特徴を有する場合、小数点により導かれる数値インデックス（例えば、１５０．１など）が用いられる。
【０００７】
詳細な説明は複数のセクションに分割される。第１セクションでは、本発明の異なる実施例のシステム及びソフトウェア動作環境が説明される。第２セクションでは、本発明の各種実施例による方法が説明される。最終セクションでは、結論が与えられる。
【０００８】
システム及びソフトウェア動作環境
図１は、本発明の各種実施例を組み込むシステム及びソフトウェア環境１００のブロック図である。本発明のシステム及び方法は、ネットワーキングをサポートする任意のハードウェアまたはソフトウェアシステム上に設けられてもよい。典型的には、そのようなハードウェアは、スイッチ、ルータ、ゲートウェイ、ハブ、ブリッジ、パーソナルコンピュータ、サーバコンピュータ、メインフレームコンピュータ、ラップトップコンピュータ、携帯コンピュータ、携帯情報端末（ＰＤＡ）、ネットワーク対応携帯電話、及び上記装置の組み合わせを含む。本発明の一部の実施例では、動作環境１００は、犠牲者システム１０２、攻撃検出モジュール１０４、ブローカーモジュール１０６及び攻撃者システム１５０から構成される。この動作環境におけるシステムは、１以上のネットワーク１３０により通信可能に接続されてもよい。この動作環境上で実行されるソフトウェアコンポーネントは、典型的には、機械可読媒体から読み出され、オペレーティングシステムの制御の下で実行され、当該オペレーティングシステムとインタフェースをとる。このような機械可読媒体の例として、ハードディスク、フロッピー（登録商標）ディスク、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭがあげられる。さらに、機械可読媒体には、ネットワークを介し伝送される有線及び無線信号が含まれる。オペレーティングシステムの例として、マイクロソフトコーポレイションによるＷｉｎｄｏｗｓ（登録商標）９５、Ｗｉｎｄｏｗｓ（登録商標）９８、Ｗｉｎｄｏｗｓ（登録商標）ＭＥ、Ｗｉｎｄｏｗｓ（登録商標）ＣＥ、Ｗｉｎｄｏｗｓ（登録商標）ＮＴ、Ｗｉｎｄｏｗｓ（登録商標）２０００及びＷｉｎｄｏｗｓ（登録商標）ＸＰがあげられる。しかしながら、本発明は、何れかの特定のオペレーティングシステムに限定されるものではなく、他の実施例では、ソフトウェアコンポーネントはＰａｌｍ  Ｉｎｃ．からのＰａｌｍＯＳ（登録商標）、ＵＮＩＸ（登録商標）及びＬｉｎｕｘオペレーティングシステムの亜種及び携帯電話オペレーティングシステム内部で機能するようにしてもよい。
【０００９】
攻撃者システム１５０は、ＤｏＳ攻撃を実行可能なコンピュータシステムから構成される。ＤｏＳ攻撃は、当該技術分野では既知である、ＳＹＮフラッド、ｐｉｎｇフラッド、「ｐｉｎｇ  ｏｆ  ｄｅａｔｈ」フラッド、あるいはポートスキャンであるかもしれない。本発明は、ＤｏＳ攻撃の何れか特定のタイプの処理に限定されるものではない。
【００１０】
犠牲者システム１０２は、１以上の攻撃者システム１５０の標的となるシステムから構成される。犠牲者システム１０２は、サーバ、パーソナルコンピュータ、メインフレームコンピュータ、ルータ、ブリッジ、スイッチまたは他のネットワークに接続されたシステムを含む任意のタイプのコンピュータシステムであってもよい。
【００１１】
犠牲者システム１０２と攻撃者システム１５０は、１以上のネットワーク１３０により通信可能に接続されてもよい。ネットワーク１３０は、任意のタイプの有線または無線ネットワークであってもよく、本発明は何れか特定のタイプのネットワークに限定されるものではない。本発明の一部の実施例では、ネットワークプロトコルはＩＰ（インターネットプロトコル）である。本発明のさらなる実施例では、ネットワークプロトコルは、ＴＣＩＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）である。さらなる他の実施例では、ネットワークプロトコルは、ＵＤＰ／ＩＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）である。しかしながら、本発明は、何れか特定タイプのネットワークプロトコルに限定されるものではない。さらに本発明の一部の実施例では、ネットワーク１３０の１以上はインターネットから構成される。本発明のさらなる他の実施例では、ネットワーク１３０の１以上は企業のイントラネットから構成される。
【００１２】
攻撃検出モジュール１０４は、ネットワーク１３０の入口と出口におけるネットワークトラフックの監視及び／または操作するネットワーク１３０に通信可能に接続された装置から構成される。攻撃検出モジュール１０４は、それを通過するネットワークトラフィックに関する情報をキャッシュするよう動作し、さらにネットワークトラフィックに関する統計を維持するよう動作する。一部の実施例では、攻撃検出モジュール１０４は、様々なタイプのＤｏＳ攻撃に対応するシグネチャを検出するため、キャッシュされた情報を解析する。本発明の一部の実施例では、攻撃検出モジュール１０４は、インテルコーポレイションから入手可能なＳｍａｒｔＬｉｎｋデバイスである。攻撃検出モジュール１０４は、ブローカーモジュール１０６から設定データを受信するようにしてもよい。このような設定データは、当該技術分野では知られているように、ポリシーベースのものであってもよい。
【００１３】
ブローカーモジュール１０６は、１以上の攻撃検出モジュール１０４からＤｏＳ攻撃の表示を受信するよう動作する。このような表示を受信すると、ブローカーモジュール１０６は、攻撃検出モジュールから攻撃インスタンスデータを受信するよう動作し、この攻撃インスタンスデータをピアブローカーモジュール１０６に通信するようにしてもよい。
【００１４】
上述のシステムの動作は、ＴＣＰ／ＩＰ  ＳＹＮ攻撃の例を参照することにより説明される。しかしながら、後述されるシステムの動作は、他のタイプのＤｏＳ攻撃にもまた適用される。本発明の各種実施例の動作に関するさらなる詳細は、以下の方法のセクションにおいて提供される。
【００１５】
図２は、ＴＣＰ／ＩＰ環境におけるネットワーク接続初期化トラフィックを示す図である。ＴＣＰ／ＩＰ環境における接続プロセスは、一般にはスリーウェイハンドシェイク（ｔｈｒｅｅ−ｗａｙ  ｈａｎｄｓｈａｋｅ）と呼ばれる。典型的にはクライアントシステム２０２である、他のシステムとの接続を所望するシステムが、典型的にはサーバシステム２０４である、第２システムにＳＹＮパケット２１０を送信すると、接続が開始される。その後、サーバシステム２０４は、ＳＮＹ／ＡＣＫパケット２１２により応答する。最後に、クライアントシステム２０２は、ＡＣＫパケット２１４により応答する。上述の接続プロセスがピア・ツー・ピアシステム及びマルチタイアシステムにおいて等しく動作するということは、当業者には理解されるであろう。
【００１６】
典型的なＳＹＮフラッドＤｏＳ攻撃では、攻撃側システム２０２は、ＳＹＮパケット２１０を発行するが、ＡＣＫパケット２１４による引き続く処理は行わない。このことはサーバシステム２０２をＡＣＫパケット２１４を待機する「ｈａｌｆ−ｏｐｅｎ」状態に留める。このｈａｌｆ−ｏｐｅｎ状態では、サーバシステム２０４は、そうでない場合に正当な接続に利用可能となるメモリリソース及び／またはプロセッサを確保しておかねばならなくなる。十分なｈａｌｆ−ｏｐｅｎ接続が生成される場合、サーバ２０４では、リソースが不足するようになり、さらなる接続の試行を処理することができなくなり、これにより、正当なクライアントがサービスを拒絶されることになる。
【００１７】
図１に戻って、攻撃者システム１５０．１及び１５０．２が犠牲者システム１０２に対しＤｏＳ攻撃を開始すると仮定する。本発明の不明瞭化を回避するため、図１にはＤＤｏＳに対し２つの攻撃元のみが示される。典型的なＤＤｏＳにおける攻撃者システムの実際の個数は可変であり、３以上でなりうるということは、当業者には認識されるであろう。
【００１８】
攻撃者システム１５０．１からの攻撃は、ネットワーク１３０．４、１３０．５及び１３０．１を含むパスに従う。攻撃者システム１５０．２からの攻撃は、ネットワーク１３０．３、１３０．６及び１３０．１を含むパスに従う。攻撃検出モジュール１０４．１は、可能性のあるＤｏＳ攻撃を示す異常なトラフィックを検出する。攻撃検出モジュール１０４．１は、ブローカーモジュール１０６．１に警告を送信するようにしてもよい。ここで、攻撃検出モジュール１０４はまた、収集したキャッシュ情報をピアブローカーモジュール１０６に送信するようにしてもよい。攻撃検出モジュール１０４．１により発生された警告に基づき、ブローカーモジュール１０６．１は、当該攻撃の可能な攻撃元をフィルタリングするため、キャッシュの情報を解析するようにしてもよい。各攻撃は、典型的には、自らのシグネチャを有し、ブローカーモジュール１０６．１は攻撃シグネチャに基づき該当するエントリをフィルタリングするようにしてもよい。
【００１９】
例えば、上述のＴＣＰ  ＳＹＮフラッド攻撃の場合、ブローカーモジュール１０６．１は、キャッシュを用いてＴＣＰトラフィックを表すキャッシュデータを決定し、不完全な接続確立を有する、すなわち、当該プロトコルがＴＣＰを示し、ＳＹＮビットセットを有するが、ＡＣＫビットセットは含まないソースアドレスのショートリストを検出するであろう。一部の実施例では、ブローカーモジュールはさらに、ＳＹＮ−ＡＣＫビットセットを有するキャッシュの対応するリバースエントリのキャッシュをチェックする。これは、サーバがＳＹＮ−ＡＣＫにより応答するが、クライアントがハンドシェークを完了していない接続試行を示す。
【００２０】
ポートスキャニング攻撃の場合、ブローカーモジュール１０６．１は、同一の送信元アドレスと送信先アドレスを有するが、異なるポート番号を有し、パケット数やパケットサイズが比較的小さなキャッシュエントリを検索する。
【００２１】
ブローカーモジュール１０６．１が当該攻撃の可能性のある攻撃元を特定すると、ブローカーモジュール１０６．１は、この可能性のある攻撃元と攻撃タイプを特定する攻撃インスタンスデータを生成するようにしてもよい。その後、ブローカーモジュール１０６．１は、それのボーダー（ｂｏｒｄｅｒ）攻撃検出モジュール１０４．２、１０４．５及び１０４．６からキャッシュ情報を取得するようにしてもよい。その後、ブローカー１０６．１は、可能性のある攻撃元のＩＰアドレスの何れがボーダー攻撃検出モジュール１０４．２、１０４．５及び１０４．６の何れかにより確認されたか判断するため、それのキャッシュデータを解析するようにしてもよい。本例では、攻撃検出モジュールにより確認された送信元アドレスの一部はショートリストのアドレスと一致するであろう。ブローカーモジュール１０６．１は、ブローカーモジュール１０６．３（及び攻撃検出モジュール１０４．６により確認されたトラフィックに寄与するドメインの他の何れかのピアブローカー）と通信し、攻撃検出モジュール１０４．１と１０４．６により確認されたキャッシュエントリのリストを送信するようにしてもよい。同様に、攻撃インスタンスデータは、攻撃検出モジュール１０４．１と１０４．５に共通のエントリのリストによりブローカー１０６．４に送信されてもよい。ここで、攻撃検出モジュール１０４．２は、それのネットワーク１３０．２がＤｏＳ攻撃のパスにないため、情報に寄与しない可能性が高い。
【００２２】
ブローカー１０６．３と１０６．５は、攻撃元を特定するため、各自のドメイン内で同様の解析を行うことが可能である。攻撃元が決定されると、ブローカー１０６により各自のドメインの内部において攻撃を抑えるためのアクションがとられうる。これらのアクションには、以下に限定されるものではないが、攻撃を行うマシーンをオフにしたり、犠牲者を標的とするマシーンから送られるトラフィックを停止したり、マスタコントローラを調査及び特定するため、攻撃するマシーン（攻撃元）とのやりとりのトラフィックパターンを解析したりすることが含まれる。
【００２３】
本発明の一部の実施例では、ブローカーモジュール１０６は、各自の攻撃検出モジュール１０４から受信したキャッシュ情報を保持する。保持されたデータは、それらが受信された時間や保持されるデータ量の上限に依存させることが可能である。保持されるデータは、ポスト攻撃解析の予測のため利用されてもよい。
【００２４】
本セクションは、ＤｏＳ攻撃の検出及び当該攻撃の探知を行うシステムにおける各種論理モジュールを説明した。上記モジュールを実現するソフトウェアが当該技術分野では既知である、以下に限定されるものではないが、Ｃ／Ｃ＋＋、Ｊａｖａ（登録商標）、Ｖｉｓｕａｌ  Ｂａｓｉｃ、Ｓｍａｌｌｔａｌｋ、Ｐａｓｃａｌ、Ａｄａおよび同様のプログラミング言語を含む何れかのプログラミング言語により記述可能であるということは、当業者には理解されるであろう。本発明は、実現のため何れか特定のプログラミング言語に限定されるものではない。
【００２５】
本発明の実施例の方法
前のセクションでは、本発明の各種実施例を含む一例となるハードウェア及びソフトウェア環境の動作のシステムレベルの概要が説明された。本セクションでは、一例となる実施例を実行する動作環境により実行される本発明の方法が、図３Ａ、３Ｂ及び４に示されるフローチャートを参照することにより説明される。本動作環境により実行される方法は、コンピュータ実行可能な指示から構成されるコンピュータプログラムから構成される。フローチャートを参照することにより本方法を説明することにより、当業者は適切なコンピュータ（コンピュータ可読媒体からの命令を実行するコンピュータのプロセッサ）上で本方法を実行するための指示を含むプログラムを開発することが可能となる。図３Ａ、３Ｂ及び４に示される方法は、本発明の一実施例を実行する動作環境により実行される動作を含む。
【００２６】
図３Ａは、本発明の一実施例によるＤｏＳ攻撃の検出及び追跡を行うための方法を示すフローチャートである。本方法は、ブローカーモジュール１０６などのシステムが攻撃検出モジュール１０４から状態の更新を受信すると開始される（ブロック３０２）。この状態の更新は、ＤｏＳ攻撃により開始されてもよいし、あるいは定期的な更新であってもよい。
【００２７】
次に、本システムは可能性のある攻撃が侵入したかどうか判断する（ブロック３０４）。攻撃が検出されない場合、本方法はブロック３０２に戻り、次の状態更新を待機する。しかしながら、可能性のある攻撃が示されると、本システムは１以上の通信可能に接続される攻撃検出モジュール１０４からキャッシュ情報を抽出する（ブロック３０６）。ネットワークプロトコルがＴＣＩＰ／ＩＰプロトコルである一部の実施例では、キャッシュされている情報は送信元ＩＰアドレス、送信先ＩＰアドレス、送信元ポート、送信先ポート及び接続フローのプロトコルを含むものであるかもしれない。本発明の他の実施例では、キャッシュされたデータはさらに、バイトカウント、パケットカウント、ファーストパケットタイム及びラストパケットタイムに関する統計を含む。さらなる他の実施例では、キャッシュされたデータは、接続状態（確立済み、切断済み、ｈａｌｆ−ｏｐｅｎなど）を示すＴＣＰフラグを含む。
【００２８】
その後、本システムは、１以上の攻撃検出モジュール１０４から収集したキャッシュデータを解析し、攻撃シグネチャが存在するか判断する（ブロック３０８）。攻撃タイプに応じて、各種攻撃シグネチャタイプが可能である。例えば、ＳＹＮフラッド攻撃では、これらのシグネチャは、キャッシュされたデータの多数のｈａｌｆ−ｏｐｅｎ接続から構成されてもよい。ポートスキャンの場合には、攻撃シグネチャは同一の送信元アドレスから連続的にポートをオープンさせる多数の試行から構成されるかもしれない。
【００２９】
攻撃シグネチャを特定した後、攻撃インスタンスデータが生成され、ピアブローカーモジュール１０６に送信される（ブロック３１０）。攻撃インスタンスデータは、特定の攻撃の攻撃元とそのタイプを特定するのに用いられてもよい。
【００３０】
次に、一部の実施例では、本システムは、ピアブローカーモジュール１０６からの通信を待機する（ブロック３１２）。この通信は、攻撃の確認であってもよいし、あるいはピアブローカーモジュール１０６が攻撃を確認していないということを示す情報であってもよい。この情報は、可能性のある攻撃元を絞り込むのに利用することができる。
【００３１】
図３Ｂは、本発明の一実施例によるＤｏＳ攻撃を追跡する方法のさらなる詳細を提供するフローチャートである。図３Ｂで詳述される動作は、他のピアブローカー１０６から可能性のある攻撃を通知された後、ピアブローカーモジュール１０６により実行されてもよい。本方法は、ブローカーモジュール１０６がピアブローカーモジュール１０６から攻撃インスタンスデータを受信すると開始される（ブロック３２０）。
【００３２】
次に、本システムは、ブローカーモジュール１０６と同じネットワークドメインのボーダー攻撃検出モジュールからキャッスデータを抽出する（ブロック３２２）。収集されたキャッシュデータは、上述のように可能性のある攻撃シグネチャを決定するため解析されてもよい。その後、この可能性のある攻撃シグネチャは解析され、攻撃インスタンスデータと比較されてもよい（ブロック３２４）。
【００３３】
一致が存在する場合（ブロック３２６）、本発明の一部の実施例では、攻撃対処策が開始されるようにしてもよい（ブロック３２８）。この攻撃対処策には、攻撃インスタンスデータから特定された攻撃元からのパケットのフィルタリング、疑わしい攻撃元のオフ、あるいは攻撃のネットワークコンソールへの通知が含まれるかもしれない。
【００３４】
図４は、本発明の一実施例によるＤｏＳ攻撃を検出するための方法を示すフローチャートである。本方法は、ＤｏＳ攻撃を検出することを所望するシステムがネットワークパケットの到着を待機すると開始される（ブロック４０２）。パケットの受信後（ブロック４０４）、パケットタイプがチェックされる。本発明の一部の実施例では、パケットが初期化パケットであるか確認するためチェックが行われる（ブロック４０６）。一部の実施例では、初期化パケットはＳＹＮパケットである。
【００３５】
パケットが初期化パケットである場合、当該パケットに関するデータがメモリにキャッシュ処理（格納）される（ブロック４０８）。一部の実施例では、このデータには、送信元アドレス、送信元ポート、送信先アドレス、送信先ポート、パケットタイプ及びタイムスタンプが含まれる。制御はブロック４０２に移行し、他のパケットの到着を待機する。
【００３６】
そうでない場合には、パケットが初期化アクノリッジメントパケットであるか確認するチェックが行われる（ブロック４１０）。一部の実施例では、この初期化アクノリッジメントパケットは、ＳＹＮ／ＡＣＫパケットとなるであろう。パケットが初期化アクノリッジメントパケットである場合、本発明の一部の実施例は、当該パケットの送信元アドレス、送信元ポート、送信先アドレス、送信先ポート、パケットタイプ及びタイムスタンプを記録する。その後、制御はブロック４０２に移行し、次のパケットが到着するのを待機する。
【００３７】
そうでない場合、パケットが初期化アクノリッジメントパケットでない場合、本発明の一部の実施例は、当該パケットがアクノリッジメントパケットであるか判断するため当該パケットをチェックする（ブロック４１２）。パケットがアクノリッジメントパケットでない場合、制御はブロック４０２に移行し、次のパケットを待機する。
【００３８】
一部の実施例では、パケットがアクノリッジメントパケットである場合、当該アクノリッジメントパケットが対応する初期化パケットの後に到着したか判断するためチェックされる（ブロック４１４）。本発明の一部の実施例では、このアクノリッジメントパケットはＡＣＫパケットとなるであろう。アクノリッジメントパケットが以前に発行された初期化パケットに対応していない場合、制御はブロック４０２に戻り、次のパケットを待機する。
【００３９】
しかしながら、本発明の一部の実施例では、アクノリッジメントパケットが以前に発行されたパケットと対応していない場合、当該アクノリッジメントパケットが対応する初期化アクノリッジメントパケットの後に到着したか判断するチェックが行われる（ブロック４１６）。それが対応する初期化アクノリッジメントパケットの後に到着した場合、制御はブロック４０２に戻り、次のパケットを待機する。この場合、接続はフルにオープンされ、正当な接続である可能性が最も高い。
【００４０】
しかしながら、アクノリッジメントパケットが対応する初期化アクノリッジメントパケットの前に到着している場合、本システムは、可能性のあるＤｏＳ攻撃を示す（ブロック４１８）。ＴＣＰの場合には、可能性のあるＳＹＮフラッド攻撃が示される。このケースは、攻撃側がパケットのタイミング関係を判断しようとすることなく、アクノリッジメントレスポンスと初期化リクエストの個数を単にカウントするスプーフシステムに試行している状況を表す。
【００４１】
さらに、本方法の任意の時点において、本システムは、ブロック４０８及び４１０において収集されたデータを精査し、対応するアクノリッジメントパケットなしにいくつの初期化パケットが生成されたか示すカウントを決定するようにしてもよい（ブロック４２０）。このカウントが設定可能な閾値または所定の閾値を上回る場合、本システムがＤｏＳ攻撃を受けているという表示が生成されてもよい。
【００４２】
結論
ＤｏＳ攻撃を検出し、当該攻撃の攻撃元を探知するシステム及び方法が開示された。本発明の実施例は、従来システムに対する効果を提供する。例えば、開示されたシステム及び方法は、ＤｏＳ攻撃の早期かつ正確な検出を提供する。さらに、本システム及び方法は、ＤｏＳ攻撃の攻撃元を自動的に探知し、人手による介入を軽減または解消することができる。これにより、攻撃元の早期の特定が可能となる。
【００４３】
ここでは具体的な実施例が図示及び説明されたが、同一の目的を達成するのに計算される任意の構成が図示された具体的な実施例の代わりに利用可能であるということは、当業者には理解されるであろう。本出願は、本発明の任意の適応または変形をカバーするものとする。
【００４４】
本出願で用いられた用語は、上記環境のすべてを含むことを意図したものである。上記説明は例示的なものであり、限定的なものではないと理解されるべきである。上記説明を参照することにより、他の多数の実施例が当業者には明らかとなるであろう。従って、本発明は以下の請求項とその均等物によってのみ限定されるということが明らかに意図される。
【図面の簡単な説明】
【００４５】
【図１】図１は、本発明の実施例が実現可能な一例となる環境のシステムレベルの概要を示すブロック図である。
【図２】図２は、ネットワークセッション初期化を示す図である。
【図３Ａ】図３Ａは、本発明の一実施例によるＤｏＳ攻撃の検出及び追跡を行う方法を示すフローチャートである。
【図３Ｂ】図３Ｂは、本発明の一実施例によるＤｏＳ攻撃を追跡する方法のさらなる詳細を提供するフローチャートである。
【図４】図４は、本発明の一実施例によるＤｏＳ攻撃を検出する方法を示すフローチャートである。
【図１】
2006512856.tif 000003
【図２】
2006512856.tif 000004
【図３Ａ】
2006512856.tif 000005
【図３Ｂ】
2006512856.tif 000006
【図４】
2006512856.tif 000007
【国際調査報告】
2006512856.tif 000008
2006512856.tif 000009
2006512856.tif 000010
2006512856.tif 000011
2006512856.tif 000012