(57)【要約】  本発明の一実施例によれば、ネットワーク攻撃を防止するシステムが提供される。このシステムは、プロセッサを有するコンピュータとコンピュータ可読媒体とを有する。このシステムはまた、コンピュータ可読媒体に格納されたシールドプログラムを有する。シールドプログラムは、プロセッサにより実行されたときに、ネットワークを対象とした攻撃に応じて、ネットワークの１つ以上のノードのそれぞれにエージェントを送信するように動作可能である。エージェントは、ノードでの攻撃の効力の低減を開始するように動作可能である。【特許請求の範囲】
【請求項１】
ネットワーク攻撃を防止する方法であって、
管理システムにおいて、ネットワークの１つ以上のノードを対象とした攻撃が生じていることを決定し、
前記決定に応じて、前記管理システムから前記ノードのそれぞれにエージェントを送信し、
前記ノードのそれぞれで前記エージェントを受信したことに応じて、前記ノードのそれぞれで、実行されたときに前記ノードでの前記攻撃の効力を低減するように動作可能なプログラムを実行することを有する方法。
【請求項２】
前記１つ以上のノードは、ユーザにより直接使用されるようにそれぞれ構成されたエンドホストノードである請求項１に記載の方法。
【請求項３】
前記エージェントは前記プログラムを有し、
前記エージェントを受信した後に、前記ノードのそれぞれに前記プログラムをインストールすることを更に有する請求項１に記載の方法。
【請求項４】
前記１つ以上のノードは、前記ネットワークの前記ノードの全てを有する請求項１に記載の方法。
【請求項５】
前記管理システムを使用して前記攻撃のソースの識別情報を決定することを更に有し、
前記エージェントは、前記決定された識別情報を有する請求項１に記載の方法。
【請求項６】
前記プログラムは、前記プログラムを実行するノードが、前記攻撃の特定されたソースからネットワークトラヒックを受信することを中止するように動作可能である請求項５に記載の方法。
【請求項７】
前記プログラムは、前記決定された識別情報を使用して前記攻撃のソースに信号を送信することにより、前記攻撃のソースに対して攻撃的動作を行うように動作可能である請求項５に記載の方法。
【請求項８】
前記攻撃的動作は、前記攻撃のソースにPINGすることを有する請求項７に記載の方法。
【請求項９】
前記攻撃のソースは、前記ネットワークの特定のノードを有し、
前記特定のノードは、ネットワークインタフェースカードを有し、
前記プログラムは、前記特定のノードの前記ネットワークインタフェースカードを無効にするように動作可能である請求項５に記載の方法。
【請求項１０】
前記１つ以上のノードは、侵入検出を実行するようにそれぞれ動作可能な１つ以上の第１の管理システムを有し、
それぞれの第１の管理システムで前記エージェントを受信したことに応じて、それぞれの第１の管理システムから侵入検出を実行するようにそれぞれ動作可能な複数の第２の管理システムに、前記エージェントを送信し、
それぞれの第２の管理システムで前記エージェントを受信したことに応じて、それぞれの第２の管理システムから侵入検出を実行するようにそれぞれ動作可能な複数の第３の管理システムに、前記エージェントを送信し、
前記第２及び前記第３の管理システムは、前記ネットワークにある請求項１に記載の方法。
【請求項１１】
前記エージェントを受信した前記それぞれのノードから前記ネットワークの２つ以上の他のノードに、前記エージェントを送信することを更に有する請求項１に記載の方法。
【請求項１２】
前記攻撃のソースのアドレスを決定し、
前記管理システムにおいて複数の論理ステップに従うことにより到達可能なメモリ位置に前記攻撃を記述する情報を格納し、
それぞれの論理ステップは、前記アドレスの特定の位置に基づいて次の論理ステップに導くことを更に有する請求項１に記載の方法。
【請求項１３】
前記アドレスは、複数のオクテットにグループ化された複数の数字を有し、
前記アドレスの特定の部分は、特定のオクテットを有する請求項１２に記載の方法。
【請求項１４】
前記ノードはエンドホストノードであり、
前記管理システムから前記エンドホストノードのそれぞれにエージェントを送信することは、前記エンドホストノードのそれぞれと、前記ネットワークの他のエンドホストノードとにエージェントを送信することを有する請求項１に記載の方法。
【請求項１５】
ネットワーク攻撃を防止するシステムであって、
ネットワークを対象とした攻撃を検出し、前記攻撃の検出を示すメッセージを送信するように動作可能な侵入検出装置と、
前記侵入検出装置に結合され、前記メッセージを受信し、前記メッセージを受信したことに応じて１つ以上のエージェントを送信するように動作可能な管理システムと、
前記管理システムに結合され、前記エージェントを受信し、前記エージェントを受信したことに応じて、エンドホストノードでの前記攻撃の効力を低減するように動作可能なプログラムを実行するように動作可能なエンドホストノードと
を有するシステム。
【請求項１６】
前記エージェントは前記プログラムを有し、
前記エンドホストノードは、前記エージェントを受信した後に、前記プログラムをインストールし、前記プログラムを実行するように更に動作可能である請求項１５に記載のシステム。
【請求項１７】
前記管理システムは、前記攻撃のソースの識別情報を決定するように動作可能であり、
前記エージェントは、前記決定された識別情報を有する請求項１５に記載のシステム。
【請求項１８】
前記プログラムは、前記エンドホストノードが、前記攻撃の特定されたソースからネットワークトラヒックを受信することを中止するように更に動作可能である請求項１７に記載のシステム。
【請求項１９】
前記エージェントを受信し、前記プログラムを実行するようにそれぞれ動作可能な複数の他のエンドホストノードを更に有し、
前記プログラムは、前記他のエンドホストノードと協調して前記攻撃のソースに信号を送信することにより、前記攻撃のソースに対して攻撃的動作を行うように更に動作可能である請求項１７に記載のシステム。
【請求項２０】
前記攻撃的動作は、前記攻撃のソースにPINGすることを有する請求項１９に記載のシステム。
【請求項２１】
前記攻撃のソースは、前記ネットワークの特定のノードを有し、
前記特定のノードは、ネットワークインタフェースカードを有し、
前記プログラムは、前記特定のノードの前記ネットワークインタフェースカードを無効にするように更に動作可能である請求項１７に記載のシステム。
【請求項２２】
前記管理システムは、
前記攻撃のソースのアドレスを決定し、
複数の論理ステップに従うことにより到達可能なメモリ位置に前記攻撃を記述する情報を格納するように更に動作可能であり、
それぞれの論理ステップは、前記アドレスの特定の部分に基づいて次の論理ステップに導く請求項１５に記載のシステム。
【請求項２３】
前記アドレスは、複数のオクテットにグループ化された複数の数字を有し、
前記アドレスの特定の部分は、特定のオクテットを有する請求項２２に記載のシステム。
【請求項２４】
ネットワーク攻撃を防止するシステムであって、
プロセッサを有するコンピュータ及びコンピュータ可読媒体と、
前記コンピュータ可読媒体に格納され、前記プロセッサにより実行されたときに、ネットワークを対象とした攻撃に応じて、ネットワークの１つ以上のノードのそれぞれにエージェントを送信するように動作可能なシールドプログラムと
を有し、
前記エージェントは、前記ノードでの前記攻撃の効力の低減を開始するように動作可能であるシステム。
【請求項２５】
前記１つ以上のノードは、ユーザにより直接使用されるようにそれぞれ構成されたエンドホストノードである請求項２４に記載のシステム。
【請求項２６】
前記エージェントは、前記プログラムを実行する前記ノードで前記攻撃の効力を低減するように動作可能なプログラムを有し、
前記コンピュータに結合され、前記エージェントを受信し、前記エージェントを受信した後に前記プログラムをインストールするようにそれぞれ動作可能な複数のエンドホストノードを更に有する請求項２４に記載のシステム。
【請求項２７】
前記コンピュータに結合され、ネットワーク侵入を検出し、前記エージェントを受信し、前記コンピュータから前記エージェントを受信したことに応じて前記エージェントを前記ネットワークの複数の他のノードに送信し、前記エージェントを受信したことに応じて前記攻撃のソースに対して反撃を始めるようにそれぞれ動作可能な複数のノードを更に有する請求項２４に記載のシステム。
【請求項２８】
前記コンピュータは、前記攻撃のソースの識別情報を決定するように動作可能な相関エンジンを更に有し、
前記エージェントは、前記決定された識別情報を有する請求項２４に記載のシステム。
【請求項２９】
前記コンピュータ可読媒体に格納され、前記コンピュータが前記攻撃の特定されたソースからネットワークトラヒックを受信することを中止するように動作可能なプログラムを更に有する請求項２８に記載のシステム。
【請求項３０】
前記プログラムは、前記攻撃のソースに信号を送信することにより、前記攻撃のソースに対して攻撃的動作を行うように動作可能である請求項２９に記載のシステム。
【請求項３１】
前記攻撃的動作は、前記攻撃のソースにPINGすることを有する請求項３０に記載のシステム。
【請求項３２】
前記コンピュータは、
前記攻撃のソースのアドレスを決定し、
前記コンピュータにおいて複数の論理ステップに従うことにより到達可能な前記コンピュータ可読媒体のメモリ位置に前記攻撃を記述する情報を格納するように動作可能な相関エンジンを更に有し、
それぞれの論理ステップは、前記アドレスの特定の部分に基づいて次の論理ステップに導く請求項２４に記載のシステム。
【請求項３３】
前記アドレスは、複数のオクテットにグループ化された複数の数字を有し、
前記アドレスの特定の部分は、特定のオクテットを有する請求項３２に記載の方法。
【請求項３４】
ネットワーク攻撃を防止するシステムであって、
ほぼネットワークの境界に論理的に配置され、前記ネットワークを対象とした攻撃を検出し、前記攻撃を記述するメッセージを送信するようにそれぞれ動作可能な複数の侵入検出装置と、
前記侵入検出装置に結合され、前記メッセージを受信し、前記攻撃のソースの識別情報を決定し、１つ以上の自律エージェントを送信するように動作可能な管理システムと、
前記管理システムに結合され、特定の自律エージェントを受信し、前記自律エージェントを受信したことに応じて、前記攻撃のソースに信号を送信することにより、前記攻撃のソースからのネットワークトラヒックの受信を中止し、前記攻撃のソースに対して攻撃を開始するように動作可能なプログラムを実行するようにそれぞれ動作可能な複数のエンドホストノードと
を有するシステム。
【請求項３５】
前記自律エージェントは、前記プログラムを有する請求項３４に記載のシステム。
【請求項３６】
前記侵入検出装置による前記攻撃の検出の前に、前記プログラムは、それぞれのエンドホストノードにインストールされる請求項３４に記載のシステム。
【請求項３７】
前記エンドホストノードは、ユーザにより直接使用されるように構成されたコンピュータである請求項３４に記載のシステム。
【請求項３８】
ネットワーク攻撃を防止するシステムであって、
ネットワークを形成し、プロセッサとコンピュータ可読媒体とをそれぞれ有する複数の管理システムであり、それぞれの管理システムは、
前記ネットワークを対象とした攻撃を検出し、
前記攻撃を開始した第１の攻撃者を特定し、
前記第１の攻撃者を特定する第１の自律エージェントを生成し、
前記第１の自律エージェントを前記ネットワークの１つ以上の他の管理システムに送信するように動作可能である複数の管理システムと、
前記コンピュータ可読媒体に格納された侵入シールドプログラムであり、前記高度侵入シールドプログラムは、前記プロセッサにより実行されたときに、
他の管理システムから第２の攻撃者を特定する第２の自律エージェントを受信し、
前記第２の自律エージェントを、前記第２の自律エージェントが受信された他の管理システムではなく、前記ネットワークの複数の他の管理システムに送信し、
前記第２の自律エージェントを受信したことに応じて、前記プロセッサによる防止プログラムの実行を開始する侵入シールドプログラムと
を有し、
前記防止プログラムは、前記コンピュータ可読媒体に格納され、実行されたときに、
前記第２の攻撃者からのネットワークトラヒックの受信を中止し、
前記第２の攻撃者に少なくとも１つの信号を送信することにより、特定された第２の攻撃者に対して反撃を開始するように動作可能であるシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概してネットワークセキュリティに関し、特にネットワーク侵入防止に関する。
【背景技術】
【０００２】
コンピュータウィルスのような手段を使用した電子攻撃はコンピュータネットワークを無効にする可能性があり、このことは、無数のマイナスの結果をもたらすことがある。このような結果を回避するために、ファイヤウォールのような装置及びネットワーク侵入検出システムが、入口点でコンピュータウィルスを検出してブロックすることを目指して、ネットワークの異なる入口点に配置される。しかし、これらの防御機構は、ワームのようないくつかのウィルスに対して十分に効率的でないことがある。ワームは、全体のネットワークに渡って迅速に広まり得る。
【発明の開示】
【課題を解決するための手段】
【０００３】
一実施例によれば、ネットワーク攻撃を防止するシステムが提供される。このシステムは、プロセッサを有するコンピュータとコンピュータ可読媒体とを有する。このシステムはまた、コンピュータ可読媒体に格納されたシールドプログラムを有する。シールドプログラムは、プロセッサにより実行されたときに、ネットワークを対象とした攻撃に応じて、ネットワークの１つ以上のノードのそれぞれにエージェントを送信するように動作可能である。エージェントは、ノードでの攻撃の効力の低減を開始するように動作可能である。
【発明の効果】
【０００４】
本発明の或る実施例は、多数の技術的利点を提供する。他の実施例は、これらの利点のうち一部又は全部を実現してもよく、実現しなくてもよい。例えば、一実施例によれば、ネットワークの一部又は全部のノードに防御及び／又は攻撃機構を送信することにより、ネットワーク攻撃に迅速に反応することができるネットワーク侵入防止方法及びシステムが提供される。他の実施例では、エンドホストレベルで防御及び／又は攻撃機構を配置することにより、ネットワーク侵入防止システムの効率及び機能が拡張される。他の実施例では、エンドホストレベルで防御／攻撃機構を配置し、攻撃のソースに対して攻撃的動作を開始するために比較的多くの数のエンドホスト装置を利用することにより、代替のネットワーク侵入防止方法が提供される。他の利点は、当業者に容易に確認できる。
【発明を実施するための最良の形態】
【０００５】
添付図面と共に以下の説明に言及が行われる。添付図面において、同様の参照符号は同様の部分を表す。
【０００６】
本発明の実施例は、図面の図１〜８を参照することにより最も理解される。同様の番号が様々な図面の同様の部分又は対応する部分に使用される。
【０００７】
図１は、本発明の教示から利益を受け得るネットワーク環境10の一実施例を示す概略図である。環境10は、保護ネットワーク18とネットワーク14とを有する。ネットワーク14及び18は、回線20で相互に通信してもよく、回線20は、物理的及び／又は論理的通信パスでもよい。保護ネットワーク18は、入口点24を通じてネットワーク14及び／又は他のエンティティと通信する。従来では、ファイヤウォールが各入口点24に配置され、入口点24で入来データを選別し、ウィルス攻撃のような攻撃が検出されたときに通信の一部又は全部をブロックし得る。しかし、ファイヤウォールは、１つの入口点24に対して責任があるため、攻撃がネットワーク18の他の部分で生じたときに、ファイヤウォールの使用は非効率になることがあり、及び／又は、ファイヤウォールはウィルス又は他の形式の攻撃を見逃して入口点24を通過することを許容する。攻撃がワームのような迅速に広まる病原体である場合に、このことは特に問題になり得る。
【０００８】
或る実施例によれば、攻撃が検出された後にネットワークの多数のノード又は全てのノードに防御及び／又は攻撃機構を送信することにより、ネットワーク攻撃に迅速に反応することができるネットワーク侵入防止方法及びシステムが提供される。或る実施例では、エンドホストレベルで防御及び／又は攻撃機構を配置することにより、ネットワーク侵入防止システムの効率及び機能が拡張される。他の実施例では、エンドホストレベルで防御／攻撃機構を配置し、攻撃のソースに対して攻撃的動作を開始するために比較的多くの数のエンドホスト装置を利用することにより、代替のネットワーク侵入防止方法が提供される。
【０００９】
図１を参照すると、保護ネットワーク18は複数のノード30を有する。ノード30は、ネットワーク侵入検出システム（NIDS：network  intrusion  detection  system）34a〜34cと、管理システム38a〜38eと、エンドホスト40a〜40dと、オペレータコンソール44とを有する。NIDS34a〜34cは、併せて及び／又は一般的にNIDS34と呼ばれ、管理システム38a〜38eは、併せて及び／又は一般的に管理システム38と呼ばれ、エンドホスト40a〜40dは併せて及び／又は一般的にエンドホスト40又はエンドホストノード40と呼ばれる。エンドホスト40がネットワーク18内のノード30及びネットワーク（ネットワーク14等）の他のノードと通信することができるように、NIDS34、管理システム38及びエンドホストノード40は通信可能に結合されている。ネットワーク侵入防止のためにノード30を構成するために使用され得る様々なアーキテクチャに関する更なる詳細は、図２及び３と共に以下に示される。
【００１０】
NIDS34は、ネットワークトラヒックを走査し、走査されたトラヒックがネットワーク18への侵入を構成するか否かを決定するように動作可能である。NIDS34は、侵入が疑わしい場合又は検出された場合に、ネットワーク18を対象とした攻撃が生じていることを示すメッセージを送信するように動作可能である。或る実施例では、NIDS34は、サンプリング可能なように、ネットワーク18で入口点24に、又は入口点24とノード38／40との間に配置される。NIDS34が配置され得る論理区域はまた、ネットワーク18の“境界”とも呼ばれることがある。或る実施例では、NIDS34は、サーバ・ファームのようにネットワーク18の境界以外の位置に配置されてもよく、管理システム38のように他のノードに配置されてもよい。NIDS34の例は、SNORTとCisco  IDS（CIDS）とSYMANTEC  MANHUNTとを含み、これらに限定されない。
【００１１】
管理システム38は、NIDS34からメッセージを受信し、これに応じて、自律エージェントを生成してエンドホスト40及び／又は他の管理システム38（図１に明示的に図示しない）に送信するように動作可能である。自律エージェントは、ネットワーク18を対象とした攻撃が生じていることを示す。自律エージェントは、防御／攻撃機能を実行するようにエンドホスト40で実行され得るコンピュータプログラムのような侵入防止機構を有してもよい。或る実施例では、管理システム38は、管理システム38により決定された特定の形式の攻撃に応じて、自律エージェントをカスタマイズしてもよい。例えば、管理システム38は、特定の活動が侵入を構成するか否かを決定することができなくてもよく、これに応じて特定の活動に関する何らかの情報を有するか否かを他のノードに問い合わせるように構成された自律エージェントを送信してもよい。或る実施例では、このような自律エージェントの送信は、このような照会の帯域の使用が最小化されるように、１日当たり特定の数に制限されてもよい。例えば、最大で４回のこのような自律エージェントの送信が、管理システム38で許容されてもよい。或る実施例では、侵入防止プログラムは、各ノード30に既にインストールされていてもよく、自律エージェントは、各ノード30の既にインストールされた侵入防止プログラムの実行を開始するトリガーとして機能してもよい。このような実施例では、侵入防止機構がエンドホスト40のような各ノード30に既にインストールされているため、自律エージェントは、侵入防止機構を有さなくてもよい。或る実施例では、ノード30間での帯域使用が低減されるため、このことは有利である。管理システム38は、１つ以上のNIDS34から受信した情報に基づいて、攻撃者の識別情報を決定するように動作可能な相関エンジン（図１に明示的に図示しない）を有してもよい。攻撃者の例示的な識別情報は、攻撃者のIPアドレスを含み、これに限定されない。或る実施例では、決定された攻撃者の識別情報は、他のノード30に送信される自律エージェントに含まれてもよい。
【００１２】
エンドホスト40は、ユーザがネットワーク18内及びネットワーク18外で他のノードとネットワークトラヒックを通信することを可能にするコンピュータプラットフォームである。エンドホスト40はまた、データを格納するように動作可能である。エンドホスト40の例は、デスクトップコンピュータとラップトップコンピュータとを含むが、これらに限定されない。オペレータコンソール44は、オペレータが攻撃を含むネットワーク活動を監視し、ネットワーク18を保護するために適切な動作を行うことを可能にするコンピュータプラットフォームである。オペレータコンソール44は、ネットワーク18に対する攻撃に関するデータを含み、データを格納するように動作可能である。
【００１３】
図１は、別々のノード30で、NIDS34と管理システム38とエンドホスト40とを図示しているが、或る実施例では、NIDS34と管理システム38とエンドホスト40とは、全ての３つのノード34、38及び40の機能を実行する１つのノード30に結合されてもよい。
【００１４】
図２は、図１に示すネットワーク18で使用され得る侵入防止アーキテクチャ50の例を示す概略図である。アーキテクチャ50は、管理システム30とNIDS34とエンドホスト40とを有する。NIDS34は管理システム38に通信可能に結合され、管理システム38はエンドホスト40に通信可能に結合される。
【００１５】
管理システム38は、異なる攻撃の署名からのパターンを認識し、攻撃者の識別情報のような特定の攻撃に関する結論を出すように動作可能である。相関エンジン54はまた、攻撃に関するデータを格納するために使用されてもよい。攻撃情報の格納及び配置に関する更なる詳細は、図６と共に以下に示される。或る実施例では、相関エンジン54は、自律エージェント60の送信を起動する総計の攻撃レベルの閾値を決定するように動作可能でもよい。この自律エージェント40は、指定の期間に指定の攻撃者のIPアドレス及びポートをブロックするようにエンドホスト40に指示してもよい。
【００１６】
エンドホスト40は、自律エージェント60で侵入に従った防御及び／又は攻撃機能を実行するように動作可能な侵入防止シールドプログラム58を有する。シールドプログラム58は、自律エージェント60に含まれてもよく、エンドホスト40に予めインストールされてもよい防止プログラムを受信及び／又は実行するように動作可能である。或る実施例では、シールドプログラム58はコンピュータプログラムである。防止プログラムが既にエンドホスト40にインストールされている実施例では、自律エージェント60は、防止プログラムを有さない。従って、シールドプログラム58は、自律エージェント60を受信し、これに応じて、既にインストールされている防止プログラムの実行を開始するように動作可能である。或る実施例では、このことは、エンドホストレベルで防止の実行を起動するために管理システム38とエンドホスト40との間にあまり帯域が必要にならないため、有利である。
【００１７】
防止プログラム及びシールドプログラム58は、所定の期間に異なる種類の防御的及び攻撃的動作を実行するように動作可能でもよい。防御手段の例は、自律エージェント60により特定された攻撃者との通信を中止することである。或る実施例では、防止プログラム及び／又はシールドプログラム58もまた、特定された攻撃者及び攻撃者であると疑われた他のエンティティとの通信を中止するように動作可能でもよい。他の防御的反応は、ログ記録（攻撃者からのデータフローのログ）、パケットのドロップ／回避（管理システム38から渡された署名から起動され得る特定のIPアドレス及びポートの拒否）、TCPのリセット（IPアドレス及びポートでの通信の却下）、ネットワークインタフェースカードのシャットダウン（攻撃者が高度侵入防止管理システム（Advanced  Intrusion  Prevention-managed  sysmte）である場合）、攻撃のサンドボックス（IP接続を傍受し、有効性を実行／検査し、有効である場合には接続の実行を許容するためにサンドボックス（sandbox）を使用すること）、及びハニーポットへのプロキシ（IPアドレスが疑わしい場合、接続をハニーポットに変更する）を含み、これらに限定されない。
【００１８】
攻撃手段の例は、PING、TCP同期／終了／承認、攻撃者の既知の脆弱性の行使（例えばログ記録から学習したもの）、不変のUDPストリームの送信、継続的なNetBiosセッション接続要求の開始、及び他のDDOS攻撃を含み、これらに限定されない。或る実施例では、これらの手段の１つ以上は、攻撃に応じた反撃として実施されてもよい。攻撃者がシールドプログラム58を有することが決定された場合、管理システム30は、攻撃者のネットワークインタフェースカードのシャットダウンを起動してもよい。多数又は全てのノード30がPING又は他の信号を攻撃者に大量に送る攻撃に関与しているため、本発明の或る実施例は、攻撃者からの攻撃をブロックするために使用され得るだけでなく、攻撃者を無効にするためにも使用され得る。
【００１９】
動作中に、１つ以上のNIDS34は侵入を検出し、警告メッセージ62を管理システム34に送信してもよい。管理システム38の相関エンジン34は、警告メッセージ62の情報を分析し、攻撃についての特定の結論（例えば、検出されたコンピュータウィルスの形式、攻撃者の識別情報、類似／同一の攻撃者の履歴等）に達し、決定された情報の一部又は全部を有する自律エージェント60を１つ以上のエンドホスト40に送信する。自律エージェント60はまた、何の形式の防御／攻撃機能が実行されるべきかについての指示を有してもよい。或る実施例では、自律エージェント60は、SSLを用いてノード30間で通信してもよい。SSLは、暗号化と、自律エージェント60の整合性のデジタル署名とを提供する。
【００２０】
自律エージェント60を受信したことに応じて、エンドホスト40のシールドプログラム58は、エンドホスト40で１つ以上の防止動作を実行する。防止プログラムがエンドホスト40に既にインストールされている或る実施例では、シールドプログラム58は、自律エージェント60を受信したことに応じて防止プログラムを実行する。防止プログラムがエンドホスト40にまだインストールされていない或る実施例では、シールドプログラム58は、自律エージェント60の一部として防止プログラムを受信し、防止プログラムをインストールする。次に、シールドプログラム58は、防止プログラムの実行を開始し、これにより１つ以上の防止動作がエンドホスト40により実行され得る。エンドホスト40は、自律エージェント60を他のエンドホスト40に送信してもよい。エンドホスト40はまた、管理システム38により要求されたときに、自律エージェント60を管理システム38に送信してもよい。
【００２１】
図３は、侵入防止アーキテクチャ80の例を示す概略図である。アーキテクチャ80は管理システム38f〜38iを有し、各管理システム38f〜38iはシールドプログラム58とNIDS34とを有する。図３に示すアーキテクチャ80のようなアーキテクチャでは、ノード30f〜38iのようなノード30は、ネットワーク18を対象とした侵入を検出し、自律エージェント60を他のノード30に送信するように動作可能である。例えば、図３に示す管理システム38fは、NIDS34を使用して侵入を検出し、これに応じて、自律エージェント60を管理システム38g、38h及び38iに送信してもよい。自律エージェント60を受信したことに応じて、管理システム38g、38h及び38iは、自律エージェント60を１つ以上の他のノード30にそれぞれ送信する。次に、他のノード30は、自律エージェント60を受信していない他のノード30に自律エージェント60をそれぞれ送信する。全てのノード30が自律エージェント60を受信するまで、エージェント60の送信はこのように続く。管理システム38gのような他の管理システム38は、ネットワーク侵入を検出し、自律エージェント60の類似のチェーン分配を開始してもよい。自律エージェント60を受信したことに応じて、各管理システム38g、38h、38i、及び自律エージェント60を受信した他のノード30もまた、既にインストールされていてもよい保護プログラムを実行してもよい。例えば、管理システム38gのシールドプログラム58は、自律エージェント60を受信し、これに応じて、既にインストールされている保護プログラム実行する。保護プログラムが管理システム38f〜38iにインストールされていない或る実施例では、自律エージェント60は、管理システム38f〜38iの各シールドプログラム58によるインストール及び実行のための保護プログラムを有する。図４に示すような実施例では、管理システム38は、“エンドホスト”又は“エンドホストレベル”を構成してもよい。図４に示す実施例の管理システム38はまた、NIDS34の機能を実行することができるため、或る実施例では、NIDS34の機能は必ずしもネットワーク18の境界で実行される必要がない。自律エージェント60は、様々な分配プランを通じて、保護ネットワーク18の一部又は全部のノード30に送信されてもよい。自律エージェント60をネットワーク18の一部又は全部に送信する例示的なプランは、図４及び５と共に以下に記載される。
【００２２】
図４は、図１に示す一部又は全部のノード30に自律エージェント60を送信するために使用され得る割り当てられた伝搬プラン100の一実施例を示す概略図である。アーキテクチャ100は、“レベル0”（図４で“L0”として示す）が、侵入が最初に検出される場所であることを仮定する。一例として、ノード30aは、NIDS34を使用して侵入を検出してもよい。侵入を検出すると、ノード30aは、自律エージェント60をノード30bに送信する。ノード30bは同じレベル0にある。ノード30aはまた、侵入を検出した後に、自律エージェント60をレベル1（図４で“L1”として示す）のノード30c及び30dに送信する。自律エージェント60を受信した後に、ノード30c及び30dは、自律エージェントを他の割り当てられたノード30に送信してもよい。
【００２３】
ノード30aから自律エージェント60を受信した後に、ノード30bは、自律エージェント60をレベル1のノード30e及び30fに送信するように動作可能である。自律エージェント60を受信した後に、ノード30eは、自律エージェント60をレベル2（図２で“L2”として示す）のノード30g及び30hに送信する。自律エージェント60を受信した後に、ノード30fは、自律エージェント60をレベル2のノード30i及び30sに送信する。プラン100は、各ノード30が自律エージェント60を受信したことに応じて２つの他のノードに自律エージェント60を送信することを示しているが、如何なる数のノード30が自律エージェント60の受信者になってもよい。例えば、ノード30bは、自律エージェント60をレベル1の１つ、２つ、３つ又はそれ以上のノード30に送信してもよい。３つのレベルのみが図４に図示されているが、ノード数と保護ネットワーク18の特定のアーキテクチャとに応じて、（図４で“LN”として示すレベルNで示すように）如何なる数のレベルが存在してもよい。自律エージェント60を受信したことに応じて自律エージェント60を１つ以上の他のノード30に送信するように各ノード30を割り当てることにより、ネットワーク18を対象とした攻撃を認識したノード30の数が急激且つ迅速に増加し、ワームのようなウィルスへのタイムリーな反応が可能になる。或る実施例では、ネットワーク18の全てのノード30が、自律エージェント60のチェーン分配を使用して通知されてもよい。或る実施例では、特定の攻撃を受けやすいと決定されたノード30のみが、自律エージェント60のチェーン分配を使用して通知されてもよい。
【００２４】
図５は、隣接ノード30への自律エージェント60の伝搬プラン120の一実施例を示す概略図である。自律エージェントを送信する割り当てで各ノード30をプログラムするのではなく、図５に示すような或る実施例では、ノード30は、自律エージェントを通信可能な次のレベルの各ノード30に送信するようにプログラムされてもよい。例えば、レベル0にあるノード30jは、侵入を検出し、自律エージェントをレベル1のノード30k及び30lに送信する。ノード30jはノード30k及び30lと既に確立された通信パスを有しているため、ノード30jは自律エージェントをノード30k及び30lに送信する。ノード30jから自律エージェントを受信したことに応じて、ノード30kは、自律エージェントをレベル2のノード30mに送信する。レベル1のノード30lは、ノード30jから自律エージェントを受信したことに応じて、レベル2のノード30nに自律エージェントを送信する。或る実施例では、ノード30mは、ノード30mと同じレベルにあるノードである30nと確立された通信パスを有してもよいが、このような送信は回避されるか、同じレベルの他のノードから送信されたため、受信ノード（この場合にはノード30n）は単に自律エージェントを無視する。このような規則は、ノード30間での重複した通信のレベルを低減するために実装されてもよい。このことは、帯域使用のレベルを低減する。
【００２５】
ノード30kから自律エージェントを受信した後に、ノード30mは自律エージェントをノード30rに送信する。ノード30lから自律エージェントを受信したことに応じて、ノード30nはノード30p及び30qと確立された通信パスを有しているため、ノード30nは、自律エージェントをレベル3のノード30p及び30qに送信する。プラン120は、それぞれ図２及び３に示す双方のアーキテクチャ50及び80で使用され得る。それぞれ図４及び５に示すプラン100及び120は、１つのノード30が攻撃されることがあるが、同じネットワークの他のノード30が攻撃に気付かないことがある無線環境で特に有利である。
【００２６】
１つ以上のノード30はまた、“全モード”でプログラムされてもよい。“全モード”は、１つ以上のノード30が各サブネット又は全体ネットワーク18内の全ての他のノード30に自律エージェント60をブロードキャスト又はマルチキャストするモードである。このようなモードは、割り当て又は既存の関係により１つのノード30が通信することになっている一部又は全ての他のノード30と１つのノード30が通信できないときに起動されてもよい。例えば、再び図４を参照して、何らかの理由でノード30eがノード30g及び30hと通信することができない場合（例えばノード30g及び30gが感染又は無効又は動作不能である場合）、ノード30eは“全モード”になり、自律エージェント60をサブネット内の全てのノード30にブロードキャストする１つ以上の試みを行う。このようなモードは、技術的問題又は感染のため１つ以上のノード30が無効である場合に、自律エージェントがネットワーク18内のできるだけ多くのノードに広められることを確保する。
【００２７】
図６は、図１のネットワーク18を対象とした攻撃についての情報を見つけるために使用され得るアドレスに基づく論理マップ150を示す論理フローチャートである。図６のそれぞれの円は、判定又は選択が行われる接点を表す。図６のそれぞれの矢印は、１つの接点から次の接点に導く判定パスを表す。論理マップ150は、適切な情報が見つかるまで攻撃者の識別情報の部分が１つの接点から次の接点に移動するように、１つ以上の攻撃に関する情報がデータ構造で見つかるように配置されている。論理マップ150は、それぞれIPアドレス“10.10.2.20”及び“10.10.9.87”を有する２人の攻撃者がネットワーク18での攻撃の履歴を有する例示的なシナリオを使用して記載されている。この例はまた、攻撃者“10.10.2.20”がネットワーク18で57の攻撃を実行しており、57の攻撃に関する情報が管理システム38に送信されていることを仮定する。同じ例示的なシナリオで、攻撃者“10.10.9.87”がネットワーク18で109の攻撃を実行しており、109の攻撃に関する情報が管理システム38に送信されたことを仮定する。データは、図２に示す管理システム38の相関エンジン54を使用して、論理マップ150に従って格納されて見つけられ得る。
【００２８】
接点154において、攻撃者のIPアドレスのオクテットAが検査され、何のパスが取られるべきかを決定する。攻撃者の攻撃情報が攻撃者のIPアドレスを使用して見つかるため、攻撃者のIPアドレスの一部に基づいて各パスが選択される。この例では、攻撃者“10.10.2.20”及び“10.10.9.87”の双方がオクテットAとして“10”を有する。従って、“10”のオクテットAの値に対応するパス190に続く。しかし、オクテットAが異なる値（1〜9又は11〜255の間の何らかの数）である場合、他の接点への、特定の値に対応する異なるパスが取られてもよい。接点158において、攻撃者のアドレスのオクテットBが検査される。この例では、攻撃者“10.10.2.20”及び“10.10.9.87”の双方が“10”のオクテットBの値を有する。従って、接点160へのパス154が取られる。接点160において、オクテットCが検査される。この例では、攻撃者“10.10.2.20”は“2”のオクテットCの値を有しているため、“10.10.2.20”に関連する情報の検索は、接点164へのパス198に従う。接点164で、“10.10.2.20”のオクテットDが検査される。攻撃者“10.10.2.20”は“20”のオクテットDの値を有するため、インシデントキュー168へのパス204に続く。インシデントキュー168で、“10.10.2.20”のIPアドレスに関連する攻撃イベント170〜174に関する情報が見つかる。
【００２９】
接点160を参照すると、攻撃者“10.10.9.87”は“9”のオクテットCの値を有するため、“10.10.9.87”に関する情報の検索は、接点178へのパス200に従う。接点178で、攻撃者のアドレスのオクテットDの値が決定される。攻撃者“10.10.9.87”が“87”のオクテットDの値を有するため、インシデントキュー180へのパス208に続く。インシデントキュー180で、“10.10.9.87”のIPアドレスに関連する攻撃イベント184〜188に関する情報が見つかる。或る実施例で攻撃者のIPアドレスのオクテット値に基づいて攻撃に関する情報を格納することは有利である。この理由は、情報を見つけて格納することが効率的になるからである。
【００３０】
図７は、オペレータがネットワーク状態の認識を維持することを可能にするために、図１に示すコンソール44のようなオペレータコンソールで表示され得るグラフィックユーザインタフェース（GUI）を示す概略図である。或る実施例では、GUI220は、オペレータにより迅速な注意を必要とし得る攻撃者の識別情報を表示する。このような表示は、重要な出来事に反応する機能をオペレータに提供し得る。重要な出来事は、保護ネットワークへの損害のレベルより小さくてもよい。
【００３１】
GUI220は、パネル224とパネル228とを有する。パネル224は、攻撃者のアドレスのリスト234を表示し、パネル228は、ハイライトされた攻撃者238に関する情報を有する。例えば図７に示すように、アドレス“10.10.10.10”がハイライトされており、参照番号238を使用して特定されている。オペレータがこのアドレスを選択したため、パネル228に示される全ての情報は、ハイライトされたアドレスに関連する。攻撃者のアドレスのリストは、最も悪質な攻撃者が最初に記載されるように優先付けられてもよい。例えば、攻撃者“10.10.10.10”が最も悪質な攻撃者であり、攻撃者“10.12.10.101”が次に悪質な攻撃者であり、以下同様である。
【００３２】
パネル228に表示される情報は列に構成される。列230は、攻撃イベント毎の特定の優先レベルを示す。列240は、イベント名を示し、この例では“TELNET”である。列224は、各攻撃の日時を記載する。列248は、攻撃を検出した特定のノード30を特定する。列250は、攻撃毎の攻撃者の識別情報を記載する。或る実施例では、パネル224に示す選択されたアドレス毎の全ての攻撃情報は、図６に示す論理マップ150を使用して見つけられ得る。しかし、特定された攻撃者毎に攻撃情報を格納して見つけるための他の適切な方法が使用されてもよい。特定の攻撃者及び関連する攻撃に関する情報を表示する一例が図７のGUIを使用して図示されているが、何らかの適切なレイアウトが使用されてもよい。
【００３３】
図８は、図１に示すネットワーク18のようなネットワークの侵入を防止する方法300の一実施例を示すフローチャートである。方法300の一部又は全部の動作は、それぞれ図２及び３に示す例示的なアーキテクチャ50及び80を使用して実施されてもよい。しかし、何らかの適切な装置又は装置の組み合わせが方法300を実施するために使用されてもよい。方法300の或る実施例を記載するために、図１、２及び３に示すネットワーク18、ノード30並びにアーキテクチャ50及び80が使用される。しかし、方法300の実施は、以下に示す説明に限定されない。
【００３４】
方法300はステップ304で始まる。ステップ308において、ノード30は、ネットワーク18を対象とした攻撃が生じていることを決定する。ステップ308のノード30は、侵入検出機能を有するNDIS34又は管理システム38でもよい。このような管理システム38の例は、図３に示す管理システム38fである。ステップ310において、自律エージェント60は、１つ以上のエンドホスト40及び／又は１つ以上の管理システム38に送信される。自律エージェント60を受信したことに応じて、ステップ314において、自律エージェント60を受信したエンドホスト40及び／又は管理システム38は、防御的及び／又は攻撃的動作を実行する。或る実施例では、管理システム38もまた、自律エージェント60を他のエンドホスト40及び／又は管理システム38に送信してもよい。或る実施例では、それぞれ図４及び５に示す伝搬プラン100及び120がチェーン分配を行うために使用されてもよい。
【００３５】
ステップ318において、管理システム38の相関エンジン54は、攻撃の重要度に基づいて攻撃者の優先リストを維持してもよい。ステップ320において、図６と共に記載したように、各攻撃に関する情報が攻撃者の識別情報により分類されてもよい。しかし、他の適切な格納方法が使用されてもよい。ステップ324において、攻撃者リストと各攻撃者に関連する攻撃に関する情報とが、コンソール44のような適切なオペレータコンソールを使用して表示され、図７に示すフォーマットで表示されてもよい。方法300はステップ328で終了する。
【００３６】
本発明のいくつかの実施例について詳細に説明したが、特許請求の範囲に記載の本発明の要旨及び範囲を逸脱することなく、様々な変更、置換及び代替が行われ得ることがわかる。
【図面の簡単な説明】
【００３７】
【図１】本発明の教示から利益を受け得るネットワーク環境の一実施例を示す概略図
【図２】図１の環境で使用され得る侵入防止アーキテクチャの一実施例を示す図
【図３】図１の環境で使用され得る侵入防止アーキテクチャの一実施例を示す図
【図４】図２又は図３の例示的なアーキテクチャ内における自律エージェントの割り当てられた伝搬の一実施例を示す概略図
【図５】図２又は図３の例示的なアーキテクチャ内における隣接ノードへの自律エージェントの伝搬の一実施例を示す概略図
【図６】図１のネットワークを対象とした攻撃についての情報が見つかり得るアドレスに基づく論理パスを示す論理フローチャート
【図７】図２又は図３の例示的なアーキテクチャと共に使用され得るグラフィックユーザインタフェースの一実施例を示す概略図
【図８】ネットワーク侵入防止方法の一実施例を示すフローチャート
【図１】
2008527471.tif 000002
【図２】
2008527471.tif 000003
【図３】
2008527471.tif 000004
【図４】
2008527471.tif 000005
【図５】
2008527471.tif 000006
【図６】
2008527471.tif 000007
【図７】
2008527471.tif 000008
【図８】
2008527471.tif 000009
【国際調査報告】
2008527471.tif 000010
2008527471.tif 000011
2008527471.tif 000012