(57)【要約】【課題】２つ以上のプロトコルのメッセージを使用する侵入を検知する方法を提供すること。【解決手段】このような侵入はＶｏｉｃｅ  ｏｖｅｒ  Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ（ＶｏＩＰ）システムだけでなく、２つ以上のプロトコルがＶｏＩＰ以外の何らかのサービスをサポートするシステムでも発生しうる。本発明の例示されている実施形態では、ステートフルの侵入検知システムは、相互プロトコルの前提条件を持つルールを使用することができる。例示されている実施形態は、このようなルールを使用して、さまざまなＶｏＩＰベースの侵入の試みだけでなく、呼ハイジャック、ＢＹＥ攻撃などを認識することができる。さらに、例示されている実施形態は、このようなルールを使用して、２つ以上のプロトコルがＶｏＩＰ以外のサービスをサポートする他の種類の侵入の試みを認識することができる。例示されている実施形態は、さらに、相互プロトコルの前提条件とともにルールを使用することができるステートフルのファイヤウォールも含む。【選択図】図１
2006120138.tif 000002
【特許請求の範囲】
【請求項１】
データ処理システムにおいて、
（ｉ）第１のセッションの第１のプロトコルの状態と、
（ｉｉ）第２のセッションの第２のプロトコルの状態と、に基づいて信号を発生する処理を含む方法であって、
前記第１のプロトコルは前記第２のプロトコルと異なることを特徴とする方法。
【請求項２】
前記信号は、潜在的侵入を示す請求項１に記載の方法。
【請求項３】
前記信号は、その後前記データ処理システムで受信されたメッセージが宛先に届くのをブロックされることを示す請求項１に記載の方法。
【請求項４】
前記第１のプロトコルおよび前記第２のプロトコルは、アプリケーション層プロトコルである請求項１に記載の方法。
【請求項５】
前記第１のプロトコルおよび前記第２のプロトコルは、サービスをサポートする請求項１に記載の方法。
【請求項６】
前記サービスは、Ｖｏｉｃｅ  ｏｖｅｒ  Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌである請求項５に記載の方法。
【請求項７】
前記第１のセッションおよび前記第２のセッションは、１つの呼に属す請求項１に記載の方法。
【請求項８】
（ａ）第１のプロトコルに従うメッセージをデータ処理システムで受信する処理と、
（ｂ）前記データ処理システムにおいて、
（ｉ）前記メッセージと、
（ｉｉ）セッションの第２のプロトコルの状態とに基づき信号を発生する処理とを含み、
前記第１のプロトコルは前記第２のプロトコルと異なることを特徴とする方法。
【請求項９】
前記信号は、潜在的侵入を示す請求項８に記載の方法。
【請求項１０】
前記信号は、
（ｉ）前記メッセージがその宛先に届くのをブロックされることと、
（ｉｉ）前記データ処理システムでその後受信されるメッセージがその宛先に届くのをブロックされることのうちの少なくとも一方を示す請求項８に記載の方法。
【請求項１１】
前記第１のプロトコルおよび前記第２のプロトコルは、アプリケーション層プロトコルである請求項８に記載の方法。
【請求項１２】
前記第１のプロトコルおよび前記第２のプロトコルは、サービスをサポートする請求項８に記載の方法。
【請求項１３】
前記サービスは、Ｖｏｉｃｅ  ｏｖｅｒ  Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌである請求項１２に記載の方法。
【請求項１４】
（ａ）前記データ処理システムにおいて、
（ｉ）第１のプロトコルに従う第１のメッセージと、
（ｉｉ）前記第１のプロトコルと異なる第２のプロトコルに従う第２のメッセージを受信する処理と、
（ｂ）前記データ処理システムにおいて、前記第１のメッセージおよび前記第２のメッセージに基づいて信号を発生する処理とを含む方法。
【請求項１５】
前記信号は、潜在的侵入を示す請求項１４に記載の方法。
【請求項１６】
前記信号は、
（ｉ）前記第１のメッセージがその宛先に届くのをブロックされることと、
（ｉｉ）前記第２のメッセージがその宛先に届くのをブロックされることと、
（ｉｉｉ）前記データ処理システムでその後受信されるメッセージがその宛先に届くのをブロックされることのうちの少なくとも１つを示す請求項１４に記載の方法。
【請求項１７】
前記第１のプロトコルおよび前記第２のプロトコルは、アプリケーション層プロトコルである請求項１４に記載の方法。
【請求項１８】
前記第１のプロトコルおよび前記第２のプロトコルは、サービスをサポートする請求項１４に記載の方法。
【請求項１９】
前記サービスは、Ｖｏｉｃｅ  ｏｖｅｒ  Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌである請求項１８に記載の方法。
【請求項２０】
前記第１のメッセージは、第１のセッションに属し、前記第２のメッセージは、第２のセッションに属し、前記第１のセッションおよび前記第２のセッションは１つのトランザクションに属す請求項１８に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、通信システムに関するものであり、より具体的には、ネットワーク・セキュリティに関するものである。
【背景技術】
【０００２】
侵入とは、無許可ユーザ（例えば、「ハッカー」など）がコンピュータ・システムに侵入したり、コンピュータ・システムを悪用しようと（例えば、機密データを盗もうと）試みることである。侵入検知システム（ＩＤＳ）は、コンピュータ・システムに入ってくるメッセージおよびコンピュータ・システムから出て行くメッセージ（例えば、パケットなど）を監視し、それらのメッセージに基づき、侵入が試みられているかどうかを判別しようとする。侵入検知システムでは、不規則な、または不審なメッセージ・シーケンスが出現した場合、またはメッセージ・シーケンスが知られている「侵入シグネチャ」と一致した場合に、侵入試行が進行中であると結論することができる。
【０００３】
図１は、従来技術による通信システム１００の概略図を示している。図１に示されているように、通信システム１００は、外部ネットワーク（例えば、インターネットなど）を介してメッセージを受信し、外部ネットワークを介してメッセージを外部データ処理システムに送信する、内部ネットワーク１０１（例えば、企業首都圏ネットワーク、住宅ローカル・エリア・ネットワークなど）を含む。
【０００４】
図２は、従来技術による内部ネットワーク１０１の要素の概略図を示している。図２に示されているように、内部ネットワーク１０１は、侵入検知システム２０２、ファイヤウォール２０３、およびＮを正の整数としてコンピュータ・システム２０４−１から２０４−Ｎを含み、図のように相互接続されている。
【０００５】
ｎ∈１，２，Ｋ，Ｎの場合それぞれのコンピュータ・システム２０４−ｎは、パーソナル・コンピュータ、サーバ、ラップトップ・コンピュータ、無線ローカル・エリア・ネットワーク通信機能を備えるパーソナル・デジタル・アシスタント（ＰＤＡ）とすることが可能である。
【０００６】
ｎ∈１，２，Ｋ，Ｎとしてコンピュータ・システム２０４−ｎに向けられた入メッセージは、最初に、メッセージを検査し、メッセージを宛先に届かないようにブロックするか、またはルール集合内のいくつかのルールに基づいてメッセージを通すかを決定するファイヤウォール２０３を通る。ルールの実施例としては、ドメインｂａｄｇｕｙｓ．ｃｏｍからすべてのメッセージをブロックする、特定のプロトコルタイプのメッセージを除くすべてのメッセージをブロックする、などがある。
【０００７】
ファイヤウォール２０３で、入メッセージを通す場合、侵入検知システム２０２は、その後、メッセージを受信して検査する。侵入検知システム２０２は、ファイヤウォール２０３を通ることを許可された１つまたは複数のメッセージを含む侵入の試みを検知することにより追加セキュリティ層を用意する。例えば、ファイヤウォール２０３は、内部ネットワーク１０１内のＷｅｂサーバへの外部アクセスをポート８０に制限することが可能であるが、侵入検知システムがないと、Ｗｅｂサーバソフトウェア（ＣｏｌｄＦｕｓｉｏｎ、Ａｐａｃｈｅなど）のバグのせいでポート８０を通る正当なトラフィックを介してＷｅｂサーバ自体を攻撃することが可能な場合がありうる。類推として、ファイヤウォール２０３は、内部ネットワーク１０１を囲む「フェンス」と機能する。フェンスは、セキュリティを実現するが、誰かが（例えば、地下トンネルなどを掘って）押し入ろうとしたときにそのことを検知する機能を持たない。しかし、侵入検知システム２０２は、ファイヤウォール２０３が検知できないいくつかの押し入り試行を認識することができる。
【０００８】
Ｖｏｉｃｅ  ｏｖｅｒ  Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ（ＶｏＩＰ）システムは、回路交換電話網（例えば、公衆交換電話網など）の代わりにパケット交換インターネット・プロトコル（ＩＰ）データ・ネットワーク上で音声トラフィックを伝送する。通常、Ｖｏｉｃｅ  ｏｖｅｒ  Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌシステムは、Ｈ３２３およびＳｅｓｓｉｏｎ  Ｉｎｉｔｉａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ（ＳＩＰ）の２つの主要なプロトコルのうちの１つに基づく。両方のタイプのシステムにおいて、起呼側および被呼側通信端末（例えば、ヘッドホン、ソフトホンなど）でのＶｏＩＰユーザ・エージェントは、Ｒｅａｌ−ｔｉｍｅ  Ｔｒａｎｓｐｏｒｔ  Ｐｒｏｔｏｃｏｌ（ＲＴＰ）による符号化音声信号を含むパケットを送受信する。さらに、ＶｏＩＰゲートウェイは、Ｍｅｄｉａ  Ｇａｔｅｗａｙ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ（ＭＧＣＰ）またはＭＥＧＡＣＯ／Ｈ．２４８などのメディア管理プロトコルを採用し、ＩＰベースのネットワークと非ＩＰベースのネットワークとの間（例えばＰＳＴＮ電話とＩＰ電話との間など）のトラフィックを透過的に翻訳することも可能である。
【０００９】
ＶｏＩＰの主要な利点は、音声およびデータ・ネットワークの集中が可能になるという点である。しかし、音声トラフィックをデータ・ネットワークに移行させると、音声ネットワークは、プライバシー、サービスの品質、および正確な請求書作成を損なう侵入および他の攻撃（例えば、サービス拒否攻撃、認証攻撃など）に対し脆弱になる。さらに、Ｖｏｉｃｅ  ｏｖｅｒ  Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌシステムの特性により、従来技術のいくつか侵入検知システムでは、ＶｏＩＰパケットを採用する侵入（つまり、ＶｏＩＰベースの侵入）を採用する不適切なセキュリティが用意される。
必要なのは、ＶｏＩＰベースの侵入の試みだけでなく、ＶｏＩＰベースの侵入と同じ特性のいくつかを示す他の種類のいくつかの侵入の試みを検知できる侵入検知システムである。
【発明の開示】
【発明が解決しようとする課題】
【００１０】
本発明は、Ｖｏｉｃｅ  ｏｖｅｒ  Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌトラフィックの特定の特性がある種の侵入検知システムによるＶｏＩＰベースの侵入の試みの認識を困難にさせる可能性があるという観察結果に基づく。
【課題を解決するための手段】
【００１１】
特に、例示されている実施形態は、（ｉ）Ｖｏｉｃｅ  ｏｖｅｒ  Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌは、複数のプロトコル（例えば、ＳＩＰ、ＲＴＰなど）によりサポートされるサービスであり、（ｉｉ）それらのプロトコルのうちの２つ以上にまたがる特定のメッセージ・シーケンスを介してデータ処理システムを攻撃する可能性があるという事実に基づく。
【００１２】
例えば、呼ハイジャックはＶｏＩＰベースの侵入の一種である。呼ハイジャックでは、攻撃者は、被呼端末でＳＩＰ  ＲＥＩＮＶＩＴＥメッセージをＶｏＩＰユーザ・エージェントに送信する。通常、ＲＥＮＩＶＩＴＥメッセージは、呼移送（例えば、有線電話から携帯電話などに呼を転送する）のために送信される。しかし、第三者攻撃者により送信される悪意あるＲＥＩＮＶＩＴＥメッセージは、被呼端末に送信されたＲＴＰトラフィックを他の何らかの端末にリダイレクトすることができる。
【００１３】
ＶｏＩＰベースの侵入の他の例は、ＢＹＥ攻撃と呼ばれるもので、完了しないうちに呼を終了させることを目標とする。ＢＹＥ攻撃では、攻撃者は、見せかけのＳＩＰ  ＢＹＥメッセージを、ＶｏＩＰ呼に現在関わっているユーザ・エージェントＡに送信する。ユーザ・エージェントＡは、ＢＹＥメッセージを受信した後、リモート・パーティのユーザ・エージェント（ユーザ・エージェントＢ）がその呼を終了したがっていると結論する。したがって、ユーザ・エージェントＡは、出ＲＴＰメッセージ・ストリームを即座に停止するが、ユーザ・エージェントＢは、第三者ＢＹＥメッセージに気づかず、ＲＴＰメッセージをユーザ・エージェントＡに送信し続ける。
【００１４】
これらの実施例の両方において、侵入は、ＳＩＰおよびＲＴＰの２つのアプリケーション層プロトコルのメッセージに基づく。このような侵入は、本発明の例示されている実施形態では、侵入検知システムのルール・ベースに適切な相互プロトコル・ルールを含めることによりブロックすることができる（つまり、２つ以上のプロトコルを対象とする前提条件を持つルール）。当業者であれば理解するように、上述の例示されているＶｏＩＰベースの侵入は、プロトコルＳＩＰおよびＲＴＰを伴うが、ある種のＶｏＩＰベースの侵入は、他のプロトコルの組み合わせに基づく可能性もある。例えば、いくつかのインスタント・メッセージング攻撃は、ＳＩＰおよびＩＰメッセージの組み合わせに基づく。
【００１５】
当業者にとっては明らかであるように、本発明の例示されている実施形態では、相互プロトコル・ルールを使用して、Ｖｏｉｃｅ  ｏｖｅｒ  Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ以外のサービスに基づく侵入から保護することができる。さらに、上で例示されているように、相互プロトコル侵入（ＶｏＩＰベースかどうかに関係なく）は、アプリケーション層の下のプロトコル（例えば、インターネット・プロトコルなど）とともに、アプリケーション層プロトコル（例えば、ＳＩＰ、ＲＴＰなど）を使用する可能性がある。
【００１６】
相互プロトコル・ルールを許すことのほかに、例示されている実施形態の侵入検知システムはステートフルである（つまり、特定のセッション内のプロトコルの状態に基づく前提条件を持つルールを使用できる）。当業ではよく理解されているように、セッション内の特定の時点のプロトコルの状態は、そのセッション内の先立つイベントに基づくようにできる（例えば、メッセージ、タイムアウトなど）。さらに、相互プロトコル侵入は、通常、何らかの形で相互関係付けられている２つ以上のセッション（例えば、ＳＩＰセッションおよびＲＴＰセッションなど）を伴う（例えば、セッションは、同じ呼に属す、同じトランザクションに属す、など）。
【００１７】
本発明の例示されている実施形態では、ファイヤウォールは、侵入検知システムのように、ステートフルであり、相互プロトコル・ルールを使用することができる。しかし、当業者であれば理解するように、本発明のいくつかの実施形態では、ファイヤウォールはステートフルでない場合があるか、または侵入検知システムに似た相互プロトコル・ルールを採用できない場合がある。
【００１８】
例示されている実施形態は、（ｉ）第１のセッションにおける第１のプロトコルの状態、および（ｉｉ）第２のセッションにおける第２のプロトコルの状態に基づき、データ処理システム側で信号を発生することを含むが、ただし、第１のプロトコルは第２のプロトコルと異なる。
【発明を実施するための最良の形態】
【００１９】
図３は、本発明の例示されている実施形態による、内部ネットワーク３０１の要素の概略図を示している。図３に示されているように、内部ネットワーク３０１は、侵入検知システム３０２、ファイヤウォール３０３、およびＮを正の整数としてコンピュータ・システム２０４−１から２０４−Ｎを含み、図のように相互接続されている。
【００２０】
コンピュータ・システム２０４−１から２０４−Ｎは、本発明の例示されている実施形態により、従来技術から何ら変わっていない。したがって、本発明の実施形態を作成し、使用するうえで、コンピュータ・システム２０４のソフトウェア、ハードウェアなどに変更はいっさい必要ない。
【００２１】
侵入検知システム３０２は、本発明の例示されている実施形態により、何らかの侵入の試みから内部ネットワーク３０１を保護することができる。特に、侵入検知システム３０２は、ルール・ベースにステートフルの相互プロトコル侵入シグネチャを格納することができ、また以下で、図４および５に関して説明されているように、それらのシグネチャのうちの１つまたは複数と一致する侵入の試みを認識することができる。
【００２２】
ファイヤウォール３０３は、本発明の例示されている実施形態により、選択された入メッセージが内部ネットワーク３０１にさらに入り込まないように防止することができる。以下で、図６および７に関して説明されているように、ファイヤウォール３０３は、ルール・ベースにステートフルの相互プロトコル・ルールを格納することができ、またそれに応じてそれらのルールのうちの１つまたは複数に基づき入メッセージをブロックすることができる。
【００２３】
当業者であれば理解するように、いくつかの実施形態では、侵入検知システム３０２およびファイヤウォール３０３の一方または両方は、さらに、内部ネットワーク３０１から出るメッセージを検査することも可能である。このような実施形態では、出メッセージはブロックされるか（例えば、ファイル転送プロトコル・セッションを開くためのメッセージなど）、または侵入アラートが、その出メッセージ（例えば、スプーフィングされた出ＶｏＩＰメッセージなど）に基づいて生成するようにすることも可能である。
【００２４】
さらに当業者であれば理解するように、いくつかの実施形態では、侵入検知システム３０２は、プロセッサおよびメモリを備えるハードウェアベースの「アプライアンス」とすることが可能であるが、他のいくつかの実施形態では、侵入検知システム３０２は、サーバ、パーソナル・コンピュータなどの上で実行されるプログラムとすることも可能である。同様に、いくつかの実施形態では、ファイヤウォール３０３は、プロセッサおよびメモリを備えるハードウェア・アプライアンスとすることが可能であるが、他のいくつかの実施形態では、ファイヤウォール３０３は、サーバ、パーソナル・コンピュータなどの上で実行されるプログラムとすることも可能である。当業者であればさらに理解するように、いくつかの実施形態では、侵入検知システム３０２およびファイヤウォール３０３は、単一のハードウェア・アプライアンスに属すか、または単一のプラットフォーム上で実行されるプログラムとすることが可能である。
【００２５】
図４は、本発明の例示されている実施形態による、侵入検知システム３０２の論理的アーキテクチャを示す。図４に示されているように、侵入検知システム３０２は、メッセージ・プロセッサ４１０、状態生成器４２０、イベント生成器４３０、およびルール照合エンジン４４０の４つのプログラム・モジュール、およびトレイル・ヒストリ４１５、トレイル状態４２５、イベント・ヒストリ４３５、およびルール・ベース４４５の４つのデータを備える。入メッセージが侵入検知システム３０２に届いたときに発生する制御およびデータフロー・イベントのシーケンスは、図４では、イベント４０７、４１３、４１７、４２２、４２３、４２７、４３２、４３３、４３７、４４２、４４３、および４４７により表されている。
【００２６】
侵入検知システム３０２に届く入メッセージ（データフロー・イベント４０７）は、メッセージ・プロセッサ４１０により受信される。メッセージ・プロセッサ４１０は、以下を行える。
（ｉ）適切なプロトコル（例えば、インターネット・プロトコルなど）による断片化および再組み立て、
（ｉｉ）プロトコル復号化、および
（ｉｉｉ）フットプリント（つまり、メッセージに関する情報）をトレイル・ヒストリ４１５に格納すること（データフロー・イベント４１３）。
【００２７】
トレイル・ヒストリ４１５は、フットプリントを特定のセッション／プロトコルの組み合わせを表すトレイルに編成する（例えば、第１のＳＩＰトレイル、第２のＳＩＰトレイル、第１のＲＴＰトレイルなど）。
【００２８】
その後、制御は状態生成器４２０に渡る（制御イベント４１７）。状態生成器４２０は、更新されたトレイル・ヒストリ４１５を読み込み（データフロー・イベント４２２）、１つまたは複数のトレイル状態を発生し（例えば、既存のトレイルの状態を更新し、新規作成されたトレイルの状態を初期化する、など）、それに応じてトレイル状態４２５の中の情報を更新する（データフロー・イベント４２３）。
【００２９】
その後、制御はイベント生成器４２０に渡る（制御イベント４２７）。イベント生成器４３０は、更新されたトレイル状態４２５を読み込み（データフロー・イベント４３２）、この情報に基づき１つまたは複数のイベントを発生する。イベントは、フットプリント内の情報の相関関係を求める抽象化の１つの層であり、その情報を単一の記述的エンティティに集中させる。イベントは、（ｉ）ルール照合プロセス（後述）のいくつかの詳細を隠し、（ｉｉ）入フットプリント毎にではなく注目する瞬間にルール照合をトリガし、それにより性能を改善できるという面があるため有利である。その後、イベント生成器は、それに応じて、イベント・ヒストリ４３５を更新し（データフロー・イベント４２３）を更新し、制御権がルール照合エンジン４４０に渡る（制御イベント４３７）。
【００３０】
ルール照合エンジン４４０は、更新されたイベント・ヒストリ４３５（データフロー・イベント４４２）およびルール・ベース４４５（データフロー・イベント４４３）をロードし、ルール・ベース４４５のルールと突き合わせて１つまたは複数のイベントの照合を試みる。例えば、ルール・ベース４４５は、以下のルールを含むことが可能である。
ユーザ・エージェントＡからのＳＩＰ  ＢＹＥメッセージの後にユーザ・エージェントＡからのＲＴＰメッセージが受信された場合
呼ハイジャック侵入アラートを発生する
【００３１】
当業者にはよく知られているように、ルール・ベース内のルールを表現し、そのようなルールと突き合わせて情報（例えば、論理述語、記号表現など）を照合する方法は多数ある。ルール照合エンジン４４０が照合ルールを見つけた場合、図４においてイベント４４７として表されている出力信号により示されているようにルールは「発火」される（例えば、侵入アラートが生成される、入メッセージがブロックされる、新しいルールがルール・ベース４４５に追加される、など）。照合ルールが見つからない場合、イベント４４７で、入メッセージは内部ネットワーク３０１の適切な宛先コンピュータ・システム２０４に出力される。（上述のように、いくつかの実施形態では、侵入検知システム３０２で受信されたメッセージは、実際には、内部ネットワーク３０１からの出メッセージである可能性があり、その場合、メッセージはイベント４４７でファイヤウォール３０３に受け渡される。）
【００３２】
当業者であれば理解するように、侵入検知システム３０２のいくつかの実施形態では、知識表現の代替え方法を、例示されている実施形態のルール・ベース・システムの代わりに使用することができる。例えば、いくつかの実施形態では、決定木、ベイジアン推論ネットワーク、ニューラル・ネットワークなどを使用することが可能である。当業者であればさらに理解するように、本発明のいくつかの実施形態では、侵入検知システム３０２は、イベント単独の代わりに、イベント、トレイル状態、および個別のフットプリントの何らかの組み合わせに基づくルールを使用することが可能である。本明細書を読んだ後、そのような実施形態を作成し、使用する方法が当業者に明らかになるであろう。
図５は、侵入検知システム３０２の顕著なタスクを流れ図の形で示している。
【００３３】
タスク５１０で、プロトコルＰに従うメッセージＭが、よく知られている方式で受信される。
タスク５２０は、（ｉ）メッセージＭが属すセッションと（ｉｉ）プロトコルＰとの組み合わせに対応するトレイル・ヒストリ４１５内にすでにトレイルがあるかどうかをチェックする。もしあれば、実行はタスク５４０から続き、そうでなければ、実行はタスク５３０に進む。
【００３４】
タスク５３０で、上記の（ｉ）と（ｉｉ）の組み合わせに対応する新しいトレイルがトレイル・ヒストリ４１５内に作成される。
タスク５４０で、メッセージＭに関する情報（例えば、メッセージの送信者、メッセージの宛先、メッセージのタイプ、メッセージの内容など）が、トレイル・ヒストリ４１５の適切なトレイル内のフットプリントによく知られている方法で格納される。
【００３５】
タスク５５０で、トレイル・ヒストリ４１５内の各トレイルに対する更新された状態は、トレイル・ヒストリ４１５内の先立つ状態およびタスク５４０の追加されたフットプリントに基づいて、よく知られている方法により生成される（例えば、状態遷移図などを介して）。
タスク５６０で、イベントＥは、トレイル・ヒストリ４１５の更新されたトレイル状態に基づいて生成され、イベント・ヒストリ４３５に格納される。当業者であれば理解するように、タスク５６０は、状態遷移の円弧を出力イベントに関連付けるなどのさまざまな方法により遂行することができる。
【００３６】
タスク５７０では、ルール・ベース４４５内のルールの侵入シグネチャが、新規生成されたイベントＥを含むイベント・ヒストリ４３５のイベントと一致するかどうかをチェックする。一致する場合、実行はタスク５８０に進み、一致しない場合、実行はタスク５９５から続く。
【００３７】
タスク５８０では、タスク５７０で一致したルールに従って、アラートが発行されるか、またはアクションが実行されるか、またはその両方が実行される。
タスク５９０では、メッセージＭがブロックされる（つまり、侵入検知システム３０２から出ないようにされる）かどうかをチェックする。もしそうであれば、実行はタスク５１０に戻って続行し、そうでなければ、実行はタスク５９５から続く。
タスク５９５で、メッセージＭは、よく知られている方法で、侵入検知システム３０２から出力される。タスク５９５の後、実行はタスク５１０に戻って継続する。
【００３８】
図６は、本発明の例示されている実施形態による、ファイヤウォール３０３の論理的アーキテクチャを示す。図６に示されているように、ファイヤウォール３０３は、メッセージ・プロセッサ６１０、状態生成器６２０、およびルール照合エンジン６３０の３つのプログラム・モジュール、およびトレイル・ヒストリ６１５、トレイル状態６２５、およびルール・ベース６４５の３つのデータを備える。入メッセージがファイヤウォール３０３に届いたときに発生する制御およびデータフロー・イベントのシーケンスは、図６では、イベント６０７、６１３、６１７、６２２、６２３、６２７、６４２、６４３、および６４７により表されている。
【００３９】
ファイヤウォール３０３に届く入メッセージ（データフロー・イベント６０７）は、メッセージ・プロセッサ６１０により受信される。メッセージ・プロセッサ６１０は、以下を行える。
（ｉ）適切なプロトコル（例えば、インターネット・プロトコルなど）による断片化および再組み立て、
（ｉｉ）プロトコル復号化、および
（ｉｉｉ）メッセージに対するフットプリントをトレイル・ヒストリ６１５に格納すること（データフロー・イベント６１３）。
【００４０】
その後、制御は状態生成器６２０に渡る（制御イベント６１７）。状態生成器６２０は、更新されたトレイル・ヒストリ６１５（データフロー・イベント６２２）を読み込み、１つまたは複数のトレイル状態を生成し、それに応じてトレイル状態６２５内の情報を更新する（データフロー・イベント６２３）。
【００４１】
その後、制御はルール照合エンジン６４０に渡る（制御イベント６２７）。ルール照合エンジン６４０は、トレイル状態６２５（データフロー・イベント６４２）およびルール・ベース６４５（データフロー・イベント６４３）をロードし、ルール・ベース６４５のルールと突き合わせて１つまたは複数のイベントの照合を試みる。当業者にはよく知られているように、ルール・ベース内のルールを表現し、そのようなルールと突き合わせて情報（例えば、論理述語、記号表現など）を照合する方法は多数ある。ルール照合エンジン６４０が照合ルールを見つけた場合、図６においてイベント６４７として表されている出力信号により示されているようにルールは「発火」される（例えば、侵入アラートが生成される、入メッセージがブロックされる、新しいルールがルール・ベース６４５に追加される、など）。照合ルールが見つからない場合、イベント６４７で、入メッセージは侵入検知システム３０２に出力される。（上述のように、いくつかの実施形態では、ファイヤウォール３０３で受信されたメッセージは、実際には、侵入検知システム３０２が調査後ファイヤウォール３０３に転送した内部ネットワーク３０１からの出メッセージである可能性がある。そのような場合、メッセージは外部ネットワークを介してその宛先に送信される。）
【００４２】
当業者であれば理解するように、ファイヤウォール３０３のいくつかの実施形態では、知識表現の代替え方法を、例示されている実施形態のルール・ベース・システムの代わりに使用することが可能である。例えば、いくつかの実施形態では、決定木、ベイジアン推論ネットワーク、ニューラル・ネットワークなどを使用することが可能である。当業者であればさらに理解するように、本発明のいくつかの実施形態では、ファイヤウォール３０３は、侵入検知システム２０２の例示されている実施形態の場合のように、トレイル状態の代わりの、またはトレイル状態と組み合わせたイベントに基づくルールを使用することが可能である。本明細書を読んだ後、そのような実施形態を作成し、使用する方法が当業者に明らかになるであろう。
【００４３】
図７は、本発明の例示されている実施形態による、ファイヤウォール３０３の顕著なタスクの流れ図である。
タスク７１０で、プロトコルＰに従うメッセージＭが、よく知られている方式で受信される。
タスク７２０は、（ｉ）メッセージＭが属すセッションと（ｉｉ）プロトコルＰとの組み合わせに対応するトレイル・ヒストリ６１５内にすでにトレイルがあるかどうかをチェックする。もしあれば、実行はタスク７４０から続き、そうでなければ、実行はタスク７３０に進む。
【００４４】
タスク７３０で、上記の（ｉ）と（ｉｉ）の組み合わせに対応する新しいトレイルがトレイル・ヒストリ６１５内に作成される。
タスク７４０で、メッセージＭに関する情報（例えば、メッセージの送信者、メッセージの宛先、メッセージのタイプ、メッセージの内容など）が、トレイル・ヒストリ６１５の適切なトレイル内のフットプリントによく知られている方法で格納される。
【００４５】
タスク７５０で、トレイル・ヒストリ６１５内の各トレイルに対する更新された状態は、トレイル・ヒストリ６１５内の先立つ状態およびタスク７４０の追加されたフットプリントに基づいて、よく知られている方法により生成される（例えば、状態遷移図などを介して）。
【００４６】
タスク７７０で、トレイル状態およびルール・ベース６４５に基づいて、メッセージＭがファイヤウォール３０３を通過することを許されるかどうかをチェックする。許可される場合、実行はタスク７８０に進み、許可されない場合、実行はタスク７９５から続く。
タスク７８０で、メッセージＭがブロックされたという指示は、よく知られた方法でログに記録される。タスク７８０の後、実行はタスク７１０に戻って継続する。
タスク７９５で、メッセージＭは、よく知られている方法で、ファイヤウォール３０３から出力される。タスク７９５の後、実行はタスク７１０に戻って継続する。
【００４７】
図８は、本発明の例示されている第２の実施形態による、内部ネットワーク３０１の要素の概略図を示している。この第２の例示されている実施形態では、第１の例示されている実施形態における侵入検知システム３０２の機能は、メッセージ・プロセッサ８０１、侵入検知システム８０２、およびメッセージ・プロセッサ８０４−１から８０４−Ｎに分散される。
【００４８】
侵入検知システム８０２の論理アーキテクチャは、メッセージ・プロセッサ４１０がないことを除き、侵入検知システム３０２（つまり、図４）のと類似している。メッセージ・プロセッサ４１０の機能は、メッセージ・プロセッサ８０１およびメッセージ・プロセッサ８０４−１から８０４−Ｎが代わって実行する。メッセージ・プロセッサ８０１およびメッセージ・プロセッサ８０４−１から８０４−Ｎ（つまり、フットプリント）の出力は侵入検知システム８０２に送信され、侵入検知システム３０２の残りの機能（つまり、状態生成器４２０、イベント生成器４３０、およびルール照合エンジン４４０）が実行される。
【００４９】
第２の例示されている実施形態の利点は、内部ネットワーク３０１全体にメッセージ処理を分散させることにより、内部通信（例えば、２つのコンピュータ・システム２０４−ｉと２０４−ｊとの間のＶｏＩＰ呼など）に対する攻撃を検出することができることにある。しかし、第２の例示されている実施形態の欠点は、分散アーキテクチャを展開し維持することがますます複雑化することである。さらに、第２の例示されている実施形態で複数のメッセージ・プロセッサを拡散させることにより、ハードウェアのコストがかなり高くなる可能性がある。当業者には、第２の例示されている実施形態のメッセージ・プロセッサ８０１、侵入検知システム８０２、およびメッセージ・プロセッサ８０４−１から８０４−Ｎを作成し、使用する方法が明らかであろう。
【００５０】
上述の実施形態は、単に本発明を例示しているだけであり、当業者であれば、上述の実施形態の多くの変更形態を、本発明の範囲から逸脱することなく考案できることは理解されるであろう。例えば、本明細書では、本発明の例示されている実施形態を完全に説明し、理解できるようにするために、多数の具体的詳細を述べている。ただし、当業者であれば、本発明は、特定の詳細の１つまたは複数を使用せずに、または他の方法、材料、コンポーネントなどを使用して、実践できることを理解するであろう。
【００５１】
さらに、いくつかの場合には、例示されている実施形態の態様をわかりにくくしないため、よく知られている構造、材料、またはオペレーションについては、示されていないか、または詳述されていない。図に示されているさまざまな実施形態は例示するものであり、必ずしもスケール通りに描かれていないことも理解されるであろう。「一実施形態」または「いくつかの実施形態」と記述されている場合、これは、（複数の）実施形態に関して説明されている特定の機能、構造、材料、または特性は、本発明の少なくとも一実施形態に含まれるが、必ずしもすべての実施形態に含まれるわけではないことを意味する。したがって、「一実施形態では」または「いくつかの実施形態では」という語句が明細書のさまざまな箇所に記載されていても、必ずしもすべて同じ実施形態を参照しているとは限らない。さらに、特定の機能、構造、材料、または特性は、１つまたは複数の実施形態において、適当な方法により組み合わせることができる。したがって、このような変更形態は、請求項およびその等価物の範囲内に含まれることが意図される。
【図面の簡単な説明】
【００５２】
【図１】従来技術による通信システムを示す概略図である。
【図２】従来技術による、図１に示されているような、内部ネットワーク１０１の要素を示す概略図である。
【図３】本発明の例示されている実施形態による、内部ネットワークの要素を示す概略図である。
【図４】本発明の例示されている実施形態による、図３に示されているような、侵入検知システム３０２の論理的アーキテクチャを示す図である。
【図５】本発明の例示されている実施形態による、侵入検知システム３０２の顕著なタスクの流れ図である。
【図６】本発明の例示されている実施形態による、図３に示されているような、ファイヤウォール３０３の論理的アーキテクチャを示す図である。
【図７】本発明の例示されている実施形態による、ファイヤウォール３０３の顕著なタスクの流れ図である。
【図８】本発明の例示されている実施形態による、図３に示されているような、内部ネットワーク３０１の要素を示す概略図である。
【図１】
2006120138.tif 000003
【図２】
2006120138.tif 000004
【図３】
2006120138.tif 000005
【図４】
2006120138.tif 000006
【図５】
2006120138.tif 000007
【図６】
2006120138.tif 000008
【図７】
2006120138.tif 000009
【図８】
2006120138.tif 000010