(57)【特許請求の範囲】
【請求項１】
複数のネットワークが相互に通信する権限を与えられているか、及び、前記ネットワークの２つの組み合わせの各々の間の通信のためにどのＩＰプロトコルが用いられるかを判断する方法であって、コンピュータに下記ステップを実行させることを含み、当該ステップは、
前記複数のネットワークの各々からのネットワーク・データを探索するステップと、
前記ネットワーク・データの受信に応答して、各々のネットワークのセキュリティ・ポリシー、各々のネットワークのタイプ、各々のネットワークのファイアウォール又はルータを通じて許可されたＩＰプロトコル、並びに各々のネットワークのファイアウォール又はルータによって許可される宛先ネットワーク及びソース・ネットワークを表すデータ構造を生成するステップと、
前記生成されたデータ構造から、前記ネットワークの複数の組み合わせを識別するステップであって、前記ネットワークの組み合わせの各々がソース・ネットワーク及び宛先ネットワークを含む、前記識別するステップと、
前記識別された組み合わせの各々について、該各組み合わせにおける該ネットワークの各々が該各組み合わせにおける他のネットワークと通信することが許可されているか、及び、どのＩＰプロトコルが該各組み合わせにおける該ネットワークの両方に共通であるかを判断するステップと、
前記許可を権限データ・ストア内に格納するステップと
を含む、前記方法。
【請求項２】
前記生成するステップが、ＩＰプロトコル並びに宛先アドレス及びソース・アドレスの記録を格納するステップを含み、
前記格納するステップが、前記宛先アドレスをそれぞれのネットワーク・タイプに関連付け且つ前記ソース・アドレスをそれぞれのネットワーク・タイプに関連付けるテーブルを格納するステップを含む、請求項１に記載の方法。
【請求項３】
前記ネットワークの２つについて前記ネットワークの各々と共に用いることが許可された前記ＩＰプロトコルが、ＴＣＰを含み、
前記判断するステップが、該２つのネットワークのＴＣＰのポートを比較することを含む、請求項１に記載の方法。
【請求項４】
前記２つの各ネットワークで用いることが許可された前記ＩＰプロトコルが、ＵＤＰを含み、
前記判断するステップが、前記２つのネットワークのＵＤＰのポートを比較することを含む、請求項１に記載の方法。
【請求項５】
前記２つの各ネットワークで用いることが許可された前記ＩＰプロトコルが、ＩＣＭＰを含み、
前記判断するステップが、前記２つのネットワークのＩＣＭＰのコード及びタイプを比較することを含む、請求項１に記載の方法。
【請求項６】
前記判断するステップが、前記他のネットワークのタイプを、前記各ネットワークと通信することが許可された他のネットワークのタイプの記録と比較するステップを含む、請求項１に記載の方法。
【請求項７】
複数のネットワークが相互に通信する権限を与えられているか、及び、前記ネットワークの２つの組み合わせの各々の間の通信のためにどのＩＰプロトコルが用いられるかを判断するためのシステムであって、
前記複数のネットワークの各々からのネットワーク・データを探索するセキュリティ・チェックプログラムと、
前記ネットワーク・データの受信に応答して、各々のネットワークのセキュリティ・ポリシー、各々のネットワークのタイプ、各々のネットワークのファイアウォール又はルータを通じて許可されたＩＰプロトコル、並びに各々のネットワークのファイアウォール又はルータによって許可される宛先ネットワーク及びソース・ネットワークを表すデータ構造を生成する初期化コンポーネントと、
前記生成されたデータ構造から、前記ネットワークの複数の組み合わせを識別する識別コンポーネントであって、前記ネットワークの組み合わせの各々がソース・ネットワーク及び宛先ネットワークを含む、前記識別コンポーネントと
を備えており、
前記システムは、前記識別された組み合わせの各々について、該各組み合わせにおける該ネットワークの各々が該各組み合わせにおける他のネットワークと通信することが許可されているか、及びどのＩＰプロトコルが該各組み合わせにおける該ネットワークの両方に共通であるかを判断し、前記許可を権限データ・ストア内に格納する、前記システム。
【請求項８】
ＩＰプロトコル並びに宛先ネットワーク及びソース・ネットワークの記録を格納する格納コンポーネントをさらに含み、
前記格納コンポーネントが、前記宛先アドレスをそれぞれのネットワーク・タイプに関連付け且つ前記ソース・アドレスをそれぞれのネットワーク・タイプに関連付けるテーブルを格納するための手段を含む、請求項７に記載のシステム。
【請求項９】
コンピュータに、請求項１〜６のいずれか１項に記載の方法の各ステップを実行させるコンピュータ・プログラム。
【請求項１０】
複数のネットワーク間の通信を管理するシステムであって、
（Ａ）前記複数のネットワークの各々からのネットワーク・データを探索する探索手段と、
（Ｂ）前記ネットワーク・データの受信に応答して、前記複数のネットワークのそれぞれについて、（ａ）前記ネットワークのタイプ、（ｂ）前記ネットワークがソース・ネットワーク及び／又は宛先ネットワークであるかどうか、及び（ｃ）前記各ネットワークによってサポートされるＩＰプロトコルを表すデータ構造を生成する生成手段と、
（Ｃ）前記生成されたデータ構造から、前記ネットワークの複数の組み合わせを識別する識別手段であって、前記ネットワークの複数の組み合わせの各々がソース・ネットワーク及び宛先ネットワークを含む、前記識別手段と、
（Ｄ）前記識別された組み合わせの各々について、（ａ）どのようなＩＰプロトコルが前記各組み合わせにおける前記ネットワークによってサポートされるか、及び（ｂ）前記各組み合わせにおける前記ネットワークについての個々のファイアウォールが前記各組み合わせにおける前記ネットワークによってサポートされるＩＰプロトコルを有するメッセージ・フローを許可するか、を判断する判断手段と、及び
（Ｅ）上記（Ｄ）の判断手段による判断に基づいて、前記複数のネットワークのどの組み合わせが、（ｃ）前記複数のネットワークの各組み合わせにおけるネットワークのタイプに基づいて相互に通信するようにされているネットワークであり且つ（ｄ）前記複数のネットワークの各組み合わせにおけるネットワークにおいてサポートされるＩＰプロトコル及び前記複数のネットワークの各組み合わせのためのファイアウォールを介する許可されたメッセージ・フローのＩＰプロトコルに基づいて相互に通信することが出来るネットワークを含むかを判断する判断手段と
を含む、前記システム。
【請求項１１】
前記複数のネットワークは、信頼タイプ・ネットワーク、非武装地帯（ＤＭＺ）タイプ・ネットワーク、及び非信頼タイプ・ネットワークを含む、請求項１０に記載のシステム。
【請求項１２】
前記信頼タイプ・ネットワークは、前記ＤＭＺネットワークと通信することは許可されるが、前記非信頼タイプ・ネットワークと通信することを許可されていず、前記ＤＭＺネットワークは、前記信頼タイプ・ネットワーク及び前記非信頼タイプ・ネットワークと通信することを許可されている、請求項１１に記載のシステム。
【請求項１３】
前記複数のネットワークによってサポートされる前記ＩＰプロトコルが、ＴＣＰ及びＵＤＰのいずれかを含む、請求項１０に記載のシステム。
【請求項１４】
前記複数のネットワークによってサポートされる前記ＩＰプロトコルがまた、ＩＣＭＰを含み、
前記（Ｄ）の判断手段が、前記ネットワークの前記各組み合わせについてのＩＣＭＰのコード及びタイプを比較する比較手段を含む、請求項１３に記載のシステム。
【請求項１５】
（Ｂ）前記生成手段、（Ｃ）前記識別手段、（Ｄ）前記判断手段、（Ｅ）前記判断手段、及び前記比較手段の全てが、前記信頼タイプ・ネットワーク上のコンピュータ上に存在する、請求項１４に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、コンピュータ・ネットワーク間の通信に関し、より具体的には、どのネットワークに互いに通信する権限が与えられるか、及びそのネットワークの構成に基づいた通信のためにどのＩＰプロトコルを用いるべきかを判断するためのシステム及び方法を扱う。
【背景技術】
【０００２】
通信は１つのネットワークから別のネットワークへと流れ、各々のネットワークのための通信ゲートウェイが、通常、ファイアウォール又はルータである。ファイアウォールは、ルータと不要なメッセージをふるい落とすためのフィルタとを含む。様々なタイプのネットワークがある。例えば、企業内の局所的通信のためのイントラネットがある。皆が同じ企業で働いているので、イントラネットの全てのユーザは信頼に足ると考えられる。したがって、通常、イントラネット内では、相対的にセキュリティ上の問題がほとんどない。しかしながら、多くの場合、イントラネットのユーザは、該イントラネットの外側の別のネットワーク上にある別のエンティティと通信することを望む。この別のエンティティはその企業で働いておらず、この別のネットワークはその企業の制御下にないので、この別のエンティティ及びネットワークを完全に信頼することはできない。したがって、そのイントラネットへのゲートウェイにファイアウォールをインストールすることがある。ファイアウォールは、受信する通信のためのセキュリティ・ポリシーの実施を担う。このセキュリティ・ポリシーは、イントラネットが通信することが許可されているネットワークのタイプ、及び通信のためにどのプロトコルが許可されるかを定めることができる。
【０００３】
例えば、ファイアウォールは、もしあるとしたら、企業の「非武装地帯」すなわち「Demilitarized  Zone（ＤＭＺ）」との通信だけを許可することができる。企業のＤＭＺは、企業が供給し、管理するサーバ及び他の関連した装置を含むが、重要データ又は重要データの唯一のコピーは含んでいない。したがって、企業のＤＭＺ内のサーバが他のネットワークからの通信によって破壊された場合、その損傷は修理可能である。また、企業のＤＭＺ内のサーバ及び関連した装置を管理することより、該企業が、該企業のＤＭＺにおけるセキュリティの尺度を定めることが可能になる。企業のＤＭＺに、直接又は別の企業の別のＤＭＺを通して信頼できないネットワークと通信する権限を与えることができる。ファイアウォールを有するイントラネットを１つ又はそれ以上の信頼できないネットワークに直接接続し、イントラネットのファイアウォールに依存してセキュリティを提供することもできる。あまり安全でない他のタイプのネットワークは、ファイアウォールを有していない。代わりに、それらは、ルータを通して他のネットワークに直接接続する。
【０００４】
最も一般的なプロトコルは、ＴＣＰ、ＵＤＰ、及びＩＣＭＰである。これらのプロトコルの各々は、特定のタイプの要求のためのＴＣＰ及びＵＤＰによって使用されるポートの範囲、及びＩＣＭＰのタイプ及びコードのような付加的な基準を含む。ＴＣＰポート及びＵＤＰポートは、受信側装置のどのアプリケーションが要求されたサービスを提供すべきかを示す。場合によっては、特定のタイプの通信のためのポートの範囲を制限することも望ましい。ポートの範囲の制限は、要求されたサービスの処理を容易にする。例えば、多くのプログラムは、いずれかの利用可能なＴＣＰポート又はＵＤＰポートを開けるように書かれている。このことは、こうしたポートを用いるアプリケーションの識別を困難にする。こうした一部の例では、ポートを使用しているアプリケーションの識別を助けるために、これらのアプリケーションに使用可能なポートの範囲を制限することが可能である。一部のネットワークが、異なる範囲のＴＣＰポート又はＵＤＰポートを用いる別のネットワークと通信しないことは好ましい。また、一部のネットワークが、特定のタイプのＩＣＭＰメッセージを受信しないように望むことも可能である。例えば、「経路リダイレクト」を送信する装置を信頼できないとき、一部の宛先ネットワークが、「経路リダイレクト」メッセージの処理を望まないことがある。さらに、幾つかのプロトコルは、他のものと比べるとより制御可能である。例えば、ＴＣＰは、あらゆる通信に対して「ハンドシェーク」を提供するが、ＵＤＰは提供しない。このように、ＴＣＰはＵＤＰと比べてより制御可能であり、よって一部のネットワークがＵＤＰ通信を受信しないことが好ましい。
【０００５】
ファイアウォール又はルータを通して接続された２つのネットワークに互いに通信する権限が与えられるか、及び通信のための権限が、付加的な基準を含むどのプロトコルに与えられるかを判断するために、異なる技術が用いられた。例えば、外部ネットワークのシステム管理者が、そのファイアウォール又はルータを通して、企業のファイアウォールを有する企業に通信することを望む場合、該外部ネットワークのシステム管理者は、単にその構成情報を企業のシステム管理者に送ることができる。構成情報は、外部ネットワークのタイプ、及び各々のプロトコルについての付加的な基準を含む、該外部ネットワークがサポートするプロトコルを含むことができる。次に、企業のシステム管理者は、手作業で構成情報を検討し、この外部ネットワークが、該企業のファイアウォールを通して該企業と通信するのを許可すべきかどうか、許可すべき場合には、どのＩＰプロトコルを使用するかを判断する。要求されたフローが、会社のポリシーに照らして許容可能なものであるとシステム管理者が考える場合には、システム管理者は、企業のファイアウォール内のファイルを更新し、付加的な基準を含む特定のＩＰプロトコルを用いて外部ネットワークとの通信を可能にする。同様に、外部ネットワークのシステム管理者は、そのファイアウォール又はルータ内のファイルを更新し、付加的な基準を含む特定のＩＰプロトコルを用いて外部ネットワークからの通信を受信することを可能にする。
【０００６】
会社のポリシーによって、通常は年に一度、時にはそれ以上、全てのフィルタ規則を検証し、これらが依然として会社のポリシーに適合していることを保証する必要がある。従来より、このことは、システム管理者、又はセキュリティ管理者のようなファイアウォールの日常操作に携わっていない人によって手作業で完了される。システム管理者又はセキュリティ管理者は、各々のファイアウォール規則を検討して、各々のＩＰアドレスのネットワーク・タイプを確認し、該ファイアウォール内に構成されたフローが、会社のポリシーに照らして許容可能なものであることを保証する。この技術は有効なものであるが、通信を希望する各ネットワークからの構成情報を人が延々と検討しなければならず、こうしたネットワークが多くある。また、この技術は、潜在的に許可される全ての通信を判断するのではなく、特定の通信の許容可能性の確認に焦点を合わせている。また、ネットワークのルータ及びファイアウォールは変更されることが多く、このことにより、システム管理者又はセキュリティ管理者の間で前述の相互作用を繰り返すことが必要になる。
【０００７】
ファイアウォール又はルータを通して接続される２つのネットワークに互いに通信する権限が与えられているか、及び通信の権限が（付加的な基準を含む）どのプロトコルに与えられるかを判断するための別の技術がある。この技術によると、パケット生成装置が、送信側ネットワークのファイアウォール又はルータの内部に配置され、他のネットワークとの互換性を確認する。パケット生成装置は、１組の通信パケットをネットワーク上に、好ましくは空いているＩＰアドレスに送信する。各組の通信パケットは、送信側ネットワークがサポートするものを除いて、異なる付加的な基準を有する異なるＩＰプロトコルを有している。「スニファ（ｓｎｉｆｆｅｒ）」が、送信側ネットワークのファイアウォール又はルータのすぐ外側に配置され、該送信側ネットワークのファイアウォール又はルータを通過することができる生成されたパケットをログに記録する。「スニファ」がログに記録する元のパケットの有無に基づいて、ファイアウォール又はルータがどのトラフィックの通過を可能にするかについての報告書を作成することができる。次に、この報告書を企業のセキュリティ基準と比較することができる。この技術は、部分的に自動化されるものの、処理すべき多くの通信パケットでネットワークに負担をかける。また、この技術は、送信側ネットワークが通信を許可すべきかどうかを判断する際の基準として宛先ネットワークのタイプを考慮しないので、いったん報告書が手作業で作成されると、このことが、依然として手作業として残される。他の問題は、企業のセキュリティ基準がしばしば変わることである。
【０００８】
非特許文献１は、ファイアウォール及びファイアウォール・ポリシーについての入門情報を開示する概要Ｄ１を開示する。Ｄ１は、ファイアウォールの設計、選択、配置、及び管理、並びにファイアウォール環境について説明する。パケットが許可されたアクセスであるか拒否されたアクセスであるかどうかを判断するために、規則の組がファイアウォールによって用いられる。規則の組は、管理者によって手作業で設定される。
【０００９】
特許文献１は、装置にアクセスする要求を受信するステップと、該装置への経路を求めるステップと、所定の経路についてどのファイアウォール規則が存在するかを確かめるステップと、クライアントを適切なプロキシーにリダイレクトさせるステップとを含む、コンピュータ・ネットワークにおいてプロキシー・サービスを提供する方法を開示する。
【００１０】
特許文献２は、複数のネットワーク・セキュリティ装置を構成する方法を開示する。これは、ネットワーク・ディレクトリ・サービスを、複数のネットワーク・セキュリティ装置の１つに結合されたネットワーク・サーバに提供することを含む。セキュリティ・ポリシーに応答して、複数のネットワーク・セキュリティ装置についての構成情報を提供するために、ネットワーク・ディレクトリ・サービスにおいて、複数のネットワーク・セキュリティ装置のセキュリティ・ポリシーを実施する。
【００１１】
【特許文献１】Ｌｏｒａｎ  Ｎｅｔｗｏｒｋ  ｍａｎａｇｅｍｅｎｔ  ｌｉｍｉｔｅｄによる国際公開第０２／０７３９２１Ａ号
【特許文献２】米国特許第Ｂ−６２１２５５８１号
【非特許文献１】Ｗａｃｋ  Ｊ他、「Ｇｕｉｄｅｌｉｎｅｓ  ｏｎ  ｆｉｒｅｗａｌｌ  ａｎｄ  ｆｉｒｅｗａｌｌ  ｐｏｌｉｃｙ」、２００２年１月、Ｎａｔｉｏｎａｌ  ｉｎｓｔｉｔｕｔｅ  ｏｆ  ｓｔａｎｄａｒｄｓ  ａｎｄ  ｔｅｃｈｎｏｌｏｇｙ、Ｇａｉｔｈｅｒｓｂｕｒｇ、ＭＤ、ＵＳＡ、ＸＰ００２２９３４６２
【発明の開示】
【発明が解決しようとする課題】
【００１２】
したがって、本発明の一般的な目的は、どのタイプのネットワークが互いに通信でき、こうした通信のためにどのＩＰプロトコル用いることができるかを判断するための技術を提供することである。
【００１３】
本発明のより特定の目的は、少なくとも部分的に自動化された前述のタイプの技術を提供することである。
【課題を解決するための手段】
【００１４】
本発明の第１の態様からの観点は、複数のネットワークの各々からのネットワーク・データを探索し（７２）、該ネットワーク・データの受信に応答して、各々のネットワークのセキュリティ・ポリシー、ネットワークのタイプ、各々のネットワークのファイアウォール又はルータを通して許可されたＩＰプロトコル、並びに該ネットワークの各々のそれぞれのファイアウォール又はルータによって許可される宛先ネットワーク及びソース・ネットワークを表すデータ構造（６８）を生成するステップと、各々のネットワークについて、（ａ）各々のネットワークと共に用いることが許可されたＩＰプロトコルと、（ｂ）各々のネットワークに通信することが許可された他のネットワークのタイプの記録をコンピュータ可読データベース内に格納するステップと、該生成するステップに基づいて、前記生成されたデータ構造から、各々がソース・ネットワーク及び宛先ネットワークを含む、ネットワークの複数の組み合わせを自動的に識別する（１４２）ステップと、該組み合わせの各々について、該各組み合わせ内の該ネットワークの各々が、該各組み合わせ内の他のネットワークと通信することが許可されているか（１４４）、及び、どのＩＰプロトコルが該各組み合わせ内の該ネットワークの両方に共通であるかを判断するステップと、許可を権限データ・ストア内に格納する（７１）ステップとを含む、複数のネットワークに互いに通信する権限が与えられているか、及び前記ネットワークの２つの組み合わせの各々の間の通信のためにどのＩＰプロトコルを用いることができるかを判断する方法を提供する。
【００１５】
本発明の１つの特徴によると、ＩＰプロトコル並びに宛先ネットワーク及びソース・ネットワークの記録が、ＩＰプロトコル並びに宛先アドレス及びソース・アドレスの記録を含む。各々のネットワークのタイプの記録は、宛先アドレスをそれぞれのネットワーク・タイプに関連付け、ソース・アドレスをそれぞれのネットワーク・タイプに関連付けるテーブルを含む。
【発明を実施するための最良の形態】
【００１６】
ここで同様の参照番号が同様の要素を示す図面を詳細に参照すると、図１は、接続性ネットワーク２０によって相互接続されている４つのネットワーク１１−１４を示す。図１の全ては、以下に述べられるセキュリティ・チェック・プログラム７０及び関連したテーブル７１を除いて、従来技術のものである。ネットワーク１１及び１２は、ネットワーク１１及び１２と接続性ネットワーク２０との間に配置されたファイアウォール２１を共有する。ネットワーク１３は、ネットワーク１３と接続性ネットワーク２０との間に配置されたルータ２３を有する。ネットワーク１４は、ネットワーク１４と接続性ネットワーク２０との間に配置されたファイアウォール２４を有する。ファイアウォール２１、ファイアウォール２４、及びルータ２３も従来技術において周知のものである。例として、ネットワーク１１は企業のイントラネットであり、ネットワーク１２はネットワーク１１のためのＤＭＺであり、ネットワーク１３はネットワーク１１の視点から信頼できないネットワークであり、ネットワーク１４はネットワーク１１の視点から信頼できないネットワークである。例として、ネットワーク１４はワールド・ワイド・ウェブであり、ネットワーク１３は第三者の顧客ネットワークである。しかしながら、本発明は、多種多様のネットワークと共に用いることができる。同じく例として、接続性ネットワークは、ＬＡＮ、ＷＡＮ、又はＶＰＮを含む。しかしながら、接続性ネットワーク２０の性質は、本発明に関係しない。ネットワーク１１は、サーバ３２と、ユーザ・ワークステーション３０と、セキュリティ・チェック・プログラム７０を実行するためのネットワーク・マネージャ・ワークステーション３４とを含む。ネットワーク１２は、サーバ４２と、「ヘルプデスク」のためのユーザ・ワークステーション４０とを含む。ネットワーク１３は、ユーザ・ワークステーション５０と、サーバ５２とを含む。ネットワーク１４は、ユーザ・ワークステーション６０と、サーバ６２とを含む。しかしながら、各々のネットワーク内のワークステーションの構成は、セキュリティ・チェック・プログラム及びこの場合ネットワークがサポートするＩＰプロトコルを実行するためのネットワーク管理ステーションを設ける以外、本発明に関係しない。
【００１７】
セキュリティ・チェック・プログラム７０は、ファイアウォール２１の背後のイントラネット１１内のネットワーク・マネージャ・ワークステーション３４において実行される。ネットワーク・マネージャ３４は、ファイアウォール２１を介してＤＭＺネットワーク１２と通信し、ＤＭＺネットワーク１２及び接続性ネットワーク２０を介してネットワーク１３及び１４と通信する。ＤＭＺネットワーク１２は、ファイアウォール２１、接続性ネットワーク２０、及びルータ２３を介してネットワーク１３と通信する。ＤＭＺネットワーク１２は、ファイアウォール２１、接続性ネットワーク２０、及びファイアウォール２４を介してネットワーク１４と通信する。
【００１８】
図２は、セキュリティ・チェック・プログラム７０内の初期化機能６８を示すフローチャートである。初期化機能の目的は、各々のネットワーク１１−１４のセキュリティ・ポリシー、各々のネットワーク１１―１４のタイプ、及び各々のネットワークのファイアウォール又はルータを通して許可されたＩＰプロトコルを表すデータ構造を構築することである。各々のネットワークの「セキュリティ・ポリシー」は、このネットワークがどのタイプの他のネットワークと通信できるか、及びどのＩＰプロトコルを用いることができるかを定義したものである。次に、図３から図５を参照して以下に述べられるセキュリティ・チェック・プログラム７０の残りの部分１００が、このデータ構造を用いて、どのネットワークに互いに通信する権限が与えられるか及びどのＩＰプロトコル（付加的な基準を含む）を通信のために使用すべきかを判断する。示されるフローチャート及びその詳細な説明においては、「ネットワーク」についてだけ説明されるが、セキュリティ・チェック・プログラム７０の以下の詳細な説明は、全ての「ネットワーク・オブジェクト」、すなわちネットワーク、サブ・ネットワーク、又はホスト型ネットワークの各々に等しく適用することができる。
【００１９】
初期化機能６８は、次のように作動する。最初に、機能６８は、セキュリティ・ポリシーを探索する（ステップ７２）。このポリシーは、システム管理者が作成するファイル内に格納することができ、又は初期化機能を実行する前にシステム管理者が手作業で入力することもできる。一般に、システム管理者は、初期化機能が検討する全てのネットワーク（ネットワーク１１―１４のような）間の通信について責任を負っており、これらのネットワークのＩＰ構成について何らかの知識を有する。各々のネットワークについてのセキュリティ・ポリシーは、「イントラネット」、「ＤＭＺ」、「顧客」、及び「インターネット」のような各々のネットワークの文書化された企業セキュリティ・ポリシーに従って各々のネットワークと通信することが許可される他のネットワークのタイプ、並びに各々のネットワーク・タイプ間で許可されるトラフィック／プロトコルのタイプを定義する。システム管理者は、ネットワーク１１―１４のルータ又はファイアウォールについてのテキスト構成情報も必要とする。各々のルータ又はファイアウォールについてのテキスト構成情報は、ソースＩＰアドレス、宛先ＩＰアドレス、ＩＰプロトコル、及びルータ又はファイアウォールによって許可されるポート及びタイプを含む。「ソースＩＰアドレス」は、ルータ又はファイアウォールを通してパケットを送信することができるネットワークのＩＰアドレスであり、「宛先ＩＰアドレス」は、ルータ又はファイアウォールを通して送信されたパケットを受信することができるネットワークのＩＰアドレスである。各々のルータ又はファイアウォールのためのテキスト構成ファイル内に格納された「ＩＰプロトコル」は、ソースＩＰアドレスと宛先ＩＰアドレスとの間の通信の各々のためにサポートされるＩＰプロトコルである。システム管理者は、ルータ又はファイアウォールのデフォルト通信方式（及び任意にプロトコル）を用いて、初期化機能を実行する前に該ルータ又はファイアウォールについてのテキスト構成ファイルを獲得する。
【００２０】
セキュリティ・ポリシーが既知のものである場合（判断７４）、該セキュリティ・ポリシーが、機能６８に読み込まれる（ステップ７６）。セキュリティ・ポリシーが既知のものでない場合、機能６８は、他のいずれのネットワークとの通信も許可しないデフォルト・セキュリティ・ポリシーを作成する（ステップ７８）。次に、システム管理者は、調査中のネットワークについてのセキュリティ・ポリシーを読み込むか、又は使用するためのセキュリティ・ポリシーを作成するかの選択肢を有する（ステップ７９）。次に、機能６８は、システム管理者に、ルータ又はファイアウォールについての上述のファイアウォール又はルータ構成情報を入力するか又は読み込むように指示する（ステップ８０）。（ステップ８０−２５０は、各々のファイアウォール又はルータについて繰り返される）次に、ファイアウォール又はルータ構成が、機能６８に読み込まれる（ステップ８２）。次に、機能６８は、前述のセキュリティ・ポリシー及びＩＰ構成を表すデータ構造を作成する（ステップ８４）。次に、機能６８は、周知のネットワーク・オブジェクトについてのネットワーク・タイプを識別するファイルがあるかどうかを判断する（判断８６）。こうしたファイルは、ネットワーク１１―１４のＩＰアドレスをセキュリティ・ポリシー・ファイルにおいて定義されたネットワーク・タイプにマッピングする。示される例において、可能なタイプは、ソース及び／又は宛先「イントラネット」、ソース及び／又は宛先「ＤＭＺ」、及び「信頼できない」ソース及び／又は宛先である。ネットワーク・タイプが既に格納されている場合には、機能６８は、定義を読み込む（ステップ８８）。ネットワーク・タイプが格納されていない場合には、システム管理者は、情報をリアルタイムで入力する必要がある（ステップ９０）。次に、図２のステップにおいて集められた前述の情報（すなわち、セキュリティ・ポリシーにマッピングするとき、「ネットワーク・オブジェクト」が、ネットワーク、サブ・ネットワーク、又は各ホスト型ネットワークであるネットワーク・オブジェクトの各々のＩＰアドレス）が、ネットワーク・オブジェクトのデータ構造内に格納される（ステップ９２）。
【００２１】
図３から図５は、本発明によるセキュリティ・チェック・プログラム７０内のセキュリティ・チェック機能１００を示すフローチャートを形成する。セキュリティ・チェック機能１００は、ネットワーク・マネージャ・ワークステーション３４においてシステム管理者によっても実行される。セキュリティ・チェック機能１００は、初期化機能６８が実行された後に実行される。セキュリティ・チェック機能１００の目的は、各ネットワーク・オブジェクトの定義を、考え得る他のあらゆる通信パートナーについての他のネットワーク・オブジェクトの各々の定義と比較し、通信する権限が与えられているかどうかを判断し、与えられている場合には、どのプロトコルに権限が与えられているかを判断することである。この権限は、権限テーブル７１内に記録される。
【００２２】
セキュリティ・チェック機能１００は、可能な「ソース」ネットワーク・オブジェクトの各々（すなわち、「宛先」ネットワークに送信される通信の可能なソースの各々）を識別することによって始まる（ステップ１０２）。次に、セキュリティ・チェック機能１００は、このソース・ネットワーク・オブジェクトが、図２に上述されたような定義されたネットワーク・タイプを有するかどうかを判断する（判断１０４）。図２に上述されたような定義されたネットワーク・タイプを有していない場合、このソース・ネットワーク・オブジェクトは、ネットワーク・オブジェクト・データ構造内に「未知のもの」としてリストされる（ステップ１０６）。判断１０４を再び参照すると、ソース・ネットワーク・オブジェクトが定義されていた場合、この定義が、セキュリティ・チェック機能１００によって用いられる（ステップ１０８）。次に、機能１００は、可能な「宛先」ネットワーク・オブジェクトの各々（すなわち、ソース・ネットワークからの通信のための可能な宛先の各々）を特定する（ステップ１２０）。次に、セキュリティ・チェック機能１００は、この宛先ネットワーク・オブジェクトが、図２に上述されたような定義されたネットワーク・タイプを有するかどうかを判断する（判断１２４）。図２に上述されたような定義されたネットワーク・タイプを有していない場合には、この宛先ネットワーク・オブジェクトは、ネットワーク・オブジェクト・データ構造内に「未知のもの」としてリストされる（ステップ１２６）。図２に上述されたような定義されたネットワーク・タイプを有する場合には、この定義は、セキュリティ・チェック機能１００によって用いられる（ステップ１２８）。
【００２３】
ソース・ネットワーク・オブジェクト及び宛先ネットワーク・オブジェクトのあらゆる可能な組み合わせについて、セキュリティ・チェック機能１００は、機能６８によって作成されたネットワーク定義に基づいて以下のことを行う。セキュリティ・チェック機能１００は、ソース・ネットワーク・オブジェクト・タイプ及び宛先ネットワーク・オブジェクト・タイプが、図２に上述されたように定義されているかどうかを判断する（判断１４２）。ソース・ネットワーク又は宛先ネットワークのいずれも有効な定義タイプを有していない場合、これは、エラーとしてテーブル７１内に記録される（ステップ１４３）。テーブルは、ソース・ネットワーク及びそれぞれの宛先ネットワークの各組み合わせについて１組のエントリを有する。判断１４２を再び参照すると、定義における両方のネットワークが定義されていた場合、セキュリティ・チェック機能１００は、ネットワークの組み合わせの各々に、その組み合わせの他のネットワークとの何らかの通信が許可されているかどうか、すなわち２つのネットワークのタイプは互換性があるかどうかを判断する（ステップ１４４）。互換性がない場合には、エラーがテーブル内に記録され（ステップ１４５）、セキュリティ・チェック機能がもとのステップ１２０に戻る。互換性がある場合には、セキュリティ・チェック機能１００は、ＴＣＰが、各組み合わせにおけるソース・ネットワーク及びそれぞれの宛先ネットワークの各々についてのサポートされたＩＰプロトコルとして定義されているかどうかを確認する（判断１４７）。ファイアウォールが、このソース・宛先ネットワークの組み合わせについて定義されたいずれのＴＣＰのフローも有していない場合には、機能１００は判断１８０に進む。ＴＣＰのフローが定義されている場合、機能１００は、ソース・ネットワーク及びそれぞれの宛先ネットワーク・タイプの両方がＴＣＰの使用を許可するかどうかを判断する（判断１４８）。ＴＣＰの使用を許可していない場合には、このソース・ネットワーク及び宛先ネットワークの組み合わせについて、エラーがテーブル内に記録される（ステップ１５０）。ＴＣＰの使用を許可する場合、次に、機能１００は、許可されたＴＣＰポートについて、ソース・ネットワーク及び宛先ネットワークの両方のセキュリティ・ポリシーを確認し（ステップ１５２）、ＴＣＰソース・ポートが両方のポリシーと一致するかどうかを判断する（判断１５４）。ＴＣＰの使用が許可されない場合には、機能１００は、エラーをテーブル内に記録する（ステップ１６０）。ＴＣＰの使用が許可される場合、次に、機能１００はステップ１５２に戻り、現在のソース及び宛先ネットワークのフローの次のＴＣＰポートを分析する。
【００２４】
ＴＣＰソース・ポートの整合性についてＴＣＰの組み合わせの全てを分析した後、機能１００は、ＴＣＰ宛先ポートについて同様の確認を行う。したがって、機能１００は、ＴＣＰ宛先ポートについての各組み合わせのソース・ネットワーク・オブジェクト及びそれぞれの宛先ネットワーク・オブジェクトの両方のセキュリティ・ポリシーを確認し（ステップ１７０）、ＴＣＰ宛先ポートがポリシーと一致するかどうかを判断する（判断１７２）。一致しない場合には、機能１００は、エラーをテーブル内に記録する（ステップ１７６）。一致する場合には、次に、機能１００は１７０に戻り、ソース・ネットワーク及び宛先ネットワークの現在の組み合わせの次のＴＣＰ宛先ポートを分析する。
【００２５】
ソース・ネットワーク及び宛先ネットワークの現在の組み合わせのＴＣＰポートがこのような方法で分析された後、機能１００は、現在のソース・ネットワーク・オブジェクト及び宛先ネットワーク・オブジェクトについてのファイアウォール又はルータ構成において、ＵＤＰのフローが構成されたかどうかを確認する（ステップ１８０）。ファイアウォールが、このソース及び宛先ネットワークの組み合わせについて定義された何らかのＵＤＰのフローを有していない場合には、機能１００は判断２１０に進む。ＵＤＰのフローが構成されている場合には、次に、機能１００は、ＵＤＰのフローが、各組み合わせのソース・ネットワーク及び宛先ネットワークの各々によって許可されるかどうかを判断する（判断１８４）。ＵＤＰのフローが許可されない場合、機能１００は、エラーをテーブル内に記録し（ステップ１８６）、判断２１０に続く。ＵＤＰのフローが許可される場合には、次に、機能１００は、各々のＵＤＰソース・ポートについてのソース・ネットワーク及び宛先ネットワークの両方のセキュリティ・ポリシーを確認し（ステップ１８８）、ＵＤＰソース・ポートが該ポリシーと一致するかどうかを判断する（判断１９０）。ポリシーと一致しない場合には、機能１００は、エラーをテーブル内に記録し（ステップ１９２）、次に、ステップ１８８に戻り、現在のソース及び宛先ネットワークの組み合わせの次のＵＤＰソース・ポートを分析する。一致する場合には、次に、機能１００はステップ１８８に戻り、現在のソース及び宛先ネットワークの組み合わせの次のＵＤＰソース・ポートを分析する。
【００２６】
ＵＤＰソース・ポートの遵守性について全ての組み合わせを分析した後、機能１００は、ＵＤＰ宛先ポートについて同様の確認を行う。機能１００は、各々のＵＤＰ宛先ポートについてソース・ネットワーク・オブジェクト及び宛先ネットワーク・オブジェクトの両方のセキュリティ・ポリシーを確認し（ステップ２０２）、現在のソース・ネットワーク及び宛先ネットワークについてのＵＤＰ宛先ポートがポリシーと一致するかどうかを判断する（判断２０４）。ポリシーと一致しない場合、機能１００は、エラーをテーブル内に記録し（ステップ２０６）、次に、ステップ２０２に戻り、現在のソース・ネットワーク及び宛先ネットワークの組み合わせの次のＵＤＰ宛先ポートを分析する。ポリシーと一致する場合、次に、機能１００はステップ２０２に戻り、現在のソース・ネットワーク及び宛先ネットワークの組み合わせの次のＵＤＰ宛先ポートを分析する。
【００２７】
それぞれの組み合わせ内の両方のネットワークのセキュリティ・ポリシーの遵守性について、全ての現在のソース・ネットワーク／宛先ネットワークの組み合わせのＵＤＰ宛先ポートを分析した後、機能１００は、ルータ又はファイアウォールが、現在のソース・ネットワーク・オブジェクト及び宛先ネットワーク・オブジェクトの組み合わせについて定義されたＩＣＭＰのフローを有するかどうかを確認する（判断２１０）。ルータ又はファイアウォールが構成されたいずれのＩＣＭＰのフローも有していない場合、機能１００は判断２４０に進む。ＩＣＭＰのフローが定義されている場合、次に、機能１００は、ＩＣＭＰのフローが、ソース・ネットワーク・オブジェクト及び宛先ネットワーク・オブジェクトの現在の組み合わせを用いて許可されるかどうかを判断する（判断２１４）。許可されない場合には、機能１００は、それぞれの組み合わせについてのテーブル内にエラーを記録する（ステップ２１６）。ＩＣＭＰのフローが定義されている場合、機能１００は、現在の組み合わせのソース・ネットワーク及び宛先ネットワークのＩＣＭＰのタイプを確認し（ステップ２１８）、次に、現在の組み合わせのソース・ネットワーク及び宛先ネットワークのＩＣＭＰコードを確認し（ステップ２２０）、これらが現在の組み合わせのソース・ノード及び宛先ノードのポリシーと一致するかどうかを判断する（判断２３０）。一致しない場合には、機能１００は、エラーをテーブル内に記録し（ステップ２３２）、ステップ２２０に戻り、次のコードを分析する。各々のタイプについて全てのコードが確認されると、次のコードの分析に戻る（ステップ２１８）。
【００２８】
次に、機能１００は、現在のソース・ネットワーク・オブジェクト及びそれぞれの宛先ネットワーク・オブジェクトを確認し、いずれかの他のＩＰプロトコルが定義されているかどうかを判断する（判断２４０）。他のＩＰプロトコルが定義されていない場合、機能１００は次の宛先ネットワークの分析に戻る（ステップ１２０）。他のＩＰプロトコルが構成される場合には、機能１００は、ポリシーが、現在のソース・ネットワーク及び宛先ネットワークについてのこのような別の定義されたＩＰプロトコルを許可するかどうかを判断する（判断２４２）。許可しない場合には、次に、機能１００は、エラーをテーブル内に記録し（ステップ２４４）、次の宛先ネットワークの分析に戻る（ステップ１２０）。ソース・ネットワーク及び宛先ネットワークの現在の組み合わせについて、安全ポリシーが他のＩＰプロトコルを許可する場合（ステップ２４６）、機能１００は、他の定義されたＩＰプロトコルの１つが現在のソース・ネットワーク及び宛先ネットワークの組み合わせのセキュリティ・ポリシーによって許可されるかどうかを判断する（ステップ２４８）。他のＩＰプロトコルが許可されない場合、機能１００は、エラーをテーブル内に記録し（ステップ２５０）、次にステップ２４６に戻る。
【００２９】
次に、機能１００はステップ１２０に戻り、次の宛先ネットワークについての全ての次のステップを繰り返す。全ての宛先ネットワークが分析されると、機能１００はステップ１０２に戻り、次のソース・ネットワークを分析し、該機能における全ての次のステップを繰り返す。
【００３０】
図３から図５に示される全ての前述のステップを実行した後、ソース・ネットワーク・オブジェクト及び宛先ネットワーク・オブジェクトの各組み合わせ、並びにＩＰプロトコル（付加的な基準を含む）についてテーブル内にエラーがないことが、こうした通信に権限が与えられていることを示す。次に、ネットワーク・オブジェクトのデータ構造が、ネットワーク定義ファイル内に格納される（ステップ３００）。次に、各々のネットワークのシステム管理者にテーブル７１を送信し（ステップ３０１）、これに応じてそのネットワークのファイアウォール又はルータを更新することができる（ステップ３０２）。各々のネットワークにおいてテーブル内のエラーを表示できるので、ネットワークの中央のシステム管理者は、所望であれば、ネットワークのセキュリティ・ポリシー、ＩＰ構成、又はネットワーク・タイプを修正又は変更することができる。何らかのこうした変更がなされた場合、それらの変更は、ネットワーク１１のシステム管理者に伝達され、セキュリティ・チェック・プログラム７０を再実行する。
【００３１】
上記に基づいて、ネットワークのセキュリティ・ポリシーの遵守性を自動的に確認するためのシステム及び方法が開示された。しかしながら、本発明の範囲から逸脱することなく、多くの修正及び置換をなすことができる。例えば、ソース・ネットワーク及び宛先ネットワーク分析の両方について定義されたネットワークの全てを通してループするのではなく、幾つかのシナリオにおいては、定義されたソース・ネットワークだけを分析し、次に、各々の構成されたデータ・フローについての構成された宛先ネットワークだけを分析することが許容可能である。したがって、本発明は、制限としてではなく例証として開示されており、本発明の範囲を判断するために、上記の特許請求の範囲について説明する必要がある。
【図面の簡単な説明】
【００３２】
【図１】本発明を用いることができる、本発明によるセキュリティ・チェック・プログラムを実行するためのネットワーク・マネージャを含む、相互接続された複数のネットワークのブロック図である。
【図２】図１のセキュリティ・チェック・プログラムの初期化部分の作動を示すフローチャートである。
【図３】図１のセキュリティ・チェック・プログラムの別のセキュリティ・チェック部分の作動を示すフローチャートである。
【図４】図１のセキュリティ・チェック・プログラムの別のセキュリティ・チェック部分の作動を示すフローチャートである。
【図５】図１のセキュリティ・チェック・プログラムの別のセキュリティ・チェック部分の作動を示すフローチャートである。
【図１】
0004493654.tif 000002
【図２】
0004493654.tif 000003
【図３】
0004493654.tif 000004
【図４】
0004493654.tif 000005
【図５】
0004493654.tif 000006