(57)【要約】【課題】ファイアウォール装置のルール情報が、セキュリティ・ポリシに適合しているか否か判定する際に、クエリとルール情報との照合回数をできる限り少なくすることができるルール情報変更方法、管理装置及びプログラムを提供する。【解決手段】最初に、ルール情報RL(j)の中で、依存関係にあるルール要素RL(j,k)の対の組み合わせDRL(j)を検出する。クエリQのクエリ要素Q(i)毎に、以下のステップを繰り返す。ルール情報RL(j)における最上位のルール要素RL(j,k)(k=1〜n)から順に、クエリ要素Q(i)に適合する適合ルール要素MRを検出し、適合ルール要素MRと依存関係にある１つ以上の依存ルール要素DRを検出し、MR及びDRの相対順序を変更することなく最上位へ移動させることを繰り返す。【選択図】図３
2010287116.tif 000002
【特許請求の範囲】
【請求項１】
クエリQに基づいて、ファイアウォール装置j毎に、ファイアウォール管理装置に蓄積されたルール情報RL(j)におけるルール要素RL(j,k)の照合順序を変更するルール情報変更方法であって、
前記ルール情報RL(j)の中で、依存関係にあるルール要素RL(j,k)の対の組み合わせDRL(j)を検出する初期ステップを有し、
前記クエリQのクエリ要素Q(i)毎に、以下のステップを繰り返すものであり、
前記ルール情報RL(j)における最上位のルール要素RL(j,k)(k=1〜n)から順に、
前記クエリ要素Q(i)に適合する適合ルール要素MRを検出する第１のステップと、
前記ルール情報RL(j)の中で、適合ルール要素MRと依存関係にある１つ以上の依存ルール要素DRを検出する第２のステップと、
前記適合ルール要素MRと１つ以上の前記依存ルール要素DRとの相対順序を変更することなく、前記適合ルール要素MRを最上位へ移動させる第３のステップと
を繰り返すことを特徴とするファイアウォール装置のルール情報変更方法。
【請求項２】
前記適合ルール要素MR毎に、適合カウンタMC(j,MR)を有し、
前記クエリQのクエリ要素Q(i)毎に、以下のステップを繰り返す際に、
第１のステップについて、前記クエリ要素Q(i)に適合する前記適合ルール要素MRの適合カウンタMC(j,MR)を１増分し、
第３のステップについて、複数の前記適合ルール要素MRが存在する場合、前記適合カウンタMC(j,MR)が大きい前記適合ルール要素MRほど上位へ移動させる
ことを特徴とする請求項１に記載のファイアウォール装置のルール情報変更方法。
【請求項３】
クエリ対象の想定パケットが通過すると想定される、複数のファイアウォール装置jと、それらの通過順番とを表す経路情報Rを有し、
前記経路情報に含まれる上流のファイアウォール装置jから順に、ルール要素の照合順序が変更されることを特徴とする請求項１又は２に記載のファイアウォール装置のルール情報変更方法。
【請求項４】
前記経路情報Rは、複数の前記ファイアウォール装置jの構成情報から推定されることを特徴とする請求項１から３のいずれか１項に記載のファイアウォール装置のルール情報変更方法。
【請求項５】
前記クエリQは、特定のパケットを想定した送信元アドレス、宛先アドレス、プロトコル、送信元ポート番号及び宛先ポート番号からなる複数のクエリ要素Q(i)から構成され、
前記ルール情報RL(j)は、送信元アドレス、宛先アドレス、プロトコル、送信元ポート番号、宛先ポート番号及びアクションからなる複数のルール要素RL(j,k)から構成される
ことを特徴とする請求項１から４のいずれか１項に記載のルール情報変更方法。
【請求項６】
前記ファイアウォール装置は、アクセスコントロールリストに基づくパケット転送制御機能を有する汎用のルータであることを特徴とする請求項１から５のいずれか１項に記載のルール情報変更方法。
【請求項７】
クエリQに基づいて、ファイアウォール装置j毎に、ファイアウォール管理装置に蓄積されたルール情報RL(j)におけるルール要素RL(j,k)の照合順序を変更するファイアウォール管理装置であって、
前記ルール情報RL(j)の中で、依存関係にあるルール要素RL(j,k)の対の組み合わせDRL(j)を検出する依存関係検出手段と、
前記クエリ要素Q(i)に適合する適合ルール要素MRを検出する適合ルール要素検出手段と、
前記ルール情報RL(j)の中で、適合ルール要素MRと依存関係にある１つ以上の依存ルール要素DRを検出する依存ルール要素検出手段と、
前記適合ルール要素MRと１つ以上の前記依存ルール要素DRとの相対順序を変更することなく、前記適合ルール要素MRを最上位へ移動させるルール順序変更手段と、
前記適合ルール要素検出手段、前記依存ルール要素検出手段及びルール順序変更手段を、前記ルール情報RL(j)における最上位のルール要素RL(j,k)(k=1〜n)から順に繰り返すルール要素回帰手段と、
前記適合ルール要素検出手段、前記依存ルール要素検出手段、前記ルール順序変更手段及び前記ルール要素回帰手段を、前記クエリQのクエリ要素Q(i)毎に繰り返すクエリ要素回帰手段と
を有することを特徴とするファイアウォール管理装置。
【請求項８】
前記適合ルール要素MR毎に、適合カウンタMC(j,MR)を有し、
前記クエリ要素回帰手段によって前記クエリQのクエリ要素Q(i)が回帰される毎に、
前記適合ルール要素検出手段は、前記クエリ要素Q(i)に適合する前記適合ルール要素MRの適合カウンタMC(j,MR)を１増分し、
前記ルール順序変更手段は、複数の前記適合ルール要素MRが存在する場合、前記適合カウンタMC(j,MR)が大きい前記適合ルール要素MRほど上位へ移動させる
ことを特徴とする請求項７に記載のファイアウォール管理装置。
【請求項９】
クエリ対象の想定パケットが通過すると想定される、複数のファイアウォール装置jと、それらの通過順番とを表す経路情報Rを有し、
前記適合ルール要素検出手段、前記依存ルール要素検出手段、前記ルール順序変更手段及びルール要素回帰手段を、前記経路情報に含まれる上流のファイアウォール装置jから順に繰り返す経路情報回帰手段を更に有することを特徴とする請求項７又は８に記載のファイアウォール管理装置。
【請求項１０】
前記経路情報Rを、複数の前記ファイアウォール装置jの構成情報から推定する経路情報推定手段を更に有することを特徴とする請求項７から９のいずれか１項に記載のファイアウォール管理装置。
【請求項１１】
前記クエリQは、特定のパケットを想定した送信元アドレス、宛先アドレス、プロトコル、送信元ポート番号及び宛先ポート番号からなる複数のクエリ要素Q(i)から構成され、
前記ルール情報RL(j)は、送信元アドレス、宛先アドレス、プロトコル、送信元ポート番号、宛先ポート番号及びアクションからなる複数のルール要素RL(j,k)から構成される
ことを特徴とする請求項７から１０のいずれか１項に記載のファイアウォール管理装置。
【請求項１２】
前記ファイアウォール装置は、アクセスコントロールリストに基づくパケット転送制御機能を有する汎用のルータであることを特徴とする請求項７から１１のいずれか１項に記載のファイアウォール管理装置。
【請求項１３】
クエリQに基づいて、ファイアウォール装置j毎に蓄積されたルール情報RL(j)におけるルール要素RL(j,k)の照合順序を変更するファイアウォール管理装置に搭載されたコンピュータを機能させるプログラムであって、
前記ルール情報RL(j)の中で、依存関係にあるルール要素RL(j,k)の対の組み合わせDRL(j)を検出する依存関係検出手段と、
前記クエリ要素Q(i)に適合する適合ルール要素MRを検出する適合ルール要素検出手段と、
前記ルール情報RL(j)の中で、適合ルール要素MRと依存関係にある１つ以上の依存ルール要素DRを検出する依存ルール要素検出手段と、
前記適合ルール要素MRと１つ以上の前記依存ルール要素DRとの相対順序を変更することなく、前記適合ルール要素MRを最上位へ移動させるルール順序変更手段と、
前記適合ルール要素検出手段、前記依存ルール要素検出手段及びルール順序変更手段を、前記ルール情報RL(j)における最上位のルール要素RL(j,k)(k=1〜n)から順に繰り返すルール要素回帰手段と、
前記適合ルール要素検出手段、前記依存ルール要素検出手段、前記ルール順序変更手段及び前記ルール要素回帰手段を、前記クエリQのクエリ要素Q(i)毎に繰り返すクエリ要素回帰手段と
してコンピュータを機能させることを特徴とするファイアウォール管理装置用のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファイアウォールにおけるルール情報変更方法、管理装置及びプログラムに関する。
【背景技術】
【０００２】
ファイアウォール(Firewall)は、管理対象ネットワークと外部ネットワークとの接続点に設置されるルータの一種である。ファイアウォールは、管理対象ネットワークの安全性を高めるために、組織の方針（セキュリティ・ポリシ）に基づいて必要なパケットのみを通過させ、危険なパケットを阻止する。従って、ファイアウォール装置の構成情報、特にルール情報は、セキュリティ・ポリシに基づいて適切に設定される必要がある。尚、ファイアウォール装置は、管理対象ネットワーク内のセグメントネットワーク同士の間（例えば部署Ａのイントラネットと部署Ｂのイントラネットとの間）に配置されるものであってもよい。
【０００３】
ファイアウォール装置が保持するルール情報は、複数の「ルール要素」の順列によって構成される。ファイアウォール装置の管理者は、セキュリティ・ポリシを適切に実現するべく、ルール情報内のルール要素の内容及び順列を設定する。ファイアウォール装置は、外部ネットワーク（又は他のセグメントネットワーク）から受信したパケットが、いずれのルール要素に該当するか照合し、該当するルール要素に記述されるアクションに基づいて、そのパケットの転送可否を決定する。
【０００４】
ファイアウォール管理装置は、ファイアウォール装置におけるパケット転送性能を高めるために、以下の２つの方法でルール情報を制御することができる。
【０００５】
第１に、ルール情報内のルール要素の数を少なくし、受信したパケットに対するルール要素の照合回数を全体的に少なくする。そのために、「アクセス・ログ」におけるルール要素毎のログ記録回数をカウントし、その記録回数０（又は０に近い）のルール要素を不要として削除する技術がある（例えば特許文献１参照）。
【０００６】
第２に、受信される複数のパケットについて、ルール情報の中で「適合」しやすいルール要素を上位に並べ、照合回数を全体的に少なくする。そのために、「アクセス・ログ」におけるルール要素毎のログ記録回数をカウントし、その記録回数が多いルール要素ほど、上位の順列に移動させる技術がある（例えば特許文献２参照）。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】ＵＳ７，０１６，９８０Ｂ１
【特許文献２】特許第３５６８８５０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ファイアウォール装置の管理者が、ルール情報を修正した場合、所望のセキュリティ・ポリシに適合しているか否かを確認する必要がある。ここで、「クエリ」を用いて、ルール情報を照合することができる。「クエリ」とは、ファイアウォールのルール情報（ルール要素群）が、所定のポリシを実現しているかを確認するリストである。クエリを、ルール情報と照合することによって、どのルール要素に該当し、転送許可(accept)若しくは転送禁止(deny)か、又は、どのルールにも適合しないか、を判定することができる。
【０００９】
しかしながら、クエリQのクエリ要素Q(i)と、ファイアウォール装置j毎のルール情報RL(j)のルール要素RL(j,k)とを、逐一且つ順次に確認するために、著しく時間がかかる。また、ファイアウォール装置の数が多くなるほど、又は、ルール要素数及びクエリ要素数が多くなるほど、その確認に要する時間は著しく長くなる。
【００１０】
そこで、本発明は、ファイアウォール装置のルール情報が、セキュリティ・ポリシに適合しているか否か判定する際に、クエリとルール情報との照合回数をできる限り少なくすることができるルール情報変更方法、管理装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明によれば、クエリQに基づいて、ファイアウォール装置j毎に蓄積されたルール情報RL(j)におけるルール要素RL(j,k)の照合順序を変更するルール情報変更方法であって、
ルール情報RL(j)の中で、依存関係にあるルール要素RL(j,k)の対の組み合わせDRL(j)を検出する初期ステップを有し、
クエリQのクエリ要素Q(i)毎に、以下のステップを繰り返すものであり、
ルール情報RL(j)における最上位のルール要素RL(j,k)(k=1〜n)から順に、
クエリ要素Q(i)に適合する適合ルール要素MRを検出する第１のステップと、
ルール情報RL(j)の中で、適合ルール要素MRと依存関係にある１つ以上の依存ルール要素DRを検出する第２のステップと、
適合ルール要素MRと１つ以上の依存ルール要素DRとの相対順序を変更することなく、適合ルール要素MRを最上位へ移動させる第３のステップと
を繰り返すことを特徴とする。
【００１２】
本発明のファイアウォール装置のルール情報変更方法における他の実施形態によれば、
適合ルール要素MR毎に、適合カウンタMC(j,MR)を有し、
クエリQのクエリ要素Q(i)毎に、以下のステップを繰り返す際に、
第１のステップについて、クエリ要素Q(i)に適合する適合ルール要素MRの適合カウンタMC(j,MR)を１増分し、
第３のステップについて、複数の適合ルール要素MRが存在する場合、適合カウンタMC(j,MR)が大きい適合ルール要素MRほど上位へ移動させることも好ましい。
【００１３】
本発明のファイアウォール装置のルール情報変更方法における他の実施形態によれば、
クエリ対象の想定パケットが通過すると想定される、複数のファイアウォール装置jと、それらの通過順番とを表す経路情報Rを有し、
経路情報に含まれる上流のファイアウォール装置jから順に、ルール要素の照合順序が変更されることも好ましい。
【００１４】
本発明のファイアウォール装置のルール情報変更方法における他の実施形態によれば、経路情報Rは、複数のファイアウォール装置jの構成情報から推定されることも好ましい。
【００１５】
本発明のファイアウォール装置のルール情報変更方法における他の実施形態によれば、
クエリQは、特定のパケットを想定した送信元アドレス、宛先アドレス、プロトコル、送信元ポート番号及び宛先ポート番号からなる複数のクエリ要素Q(i)から構成され、
ルール情報RL(j)は、送信元アドレス、宛先アドレス、プロトコル、送信元ポート番号、宛先ポート番号及びアクションからなる複数のルール要素RL(j,k)から構成されることも好ましい。
【００１６】
本発明のファイアウォール装置のルール情報変更方法における他の実施形態によれば、ファイアウォール装置は、アクセスコントロールリストに基づくパケット転送制御機能を有する汎用のルータであってもよい。
【００１７】
本発明によれば、クエリQに基づいて、ファイアウォール装置j毎に蓄積されたルール情報RL(j)におけるルール要素RL(j,k)の照合順序を変更するファイアウォール管理装置であって、
ルール情報RL(j)の中で、依存関係にあるルール要素RL(j,k)の対の組み合わせDRL(j)を検出する依存関係検出手段と、
クエリ要素Q(i)に適合する適合ルール要素MRを検出する適合ルール要素検出手段と、
ルール情報RL(j)の中で、適合ルール要素MRと依存関係にある１つ以上の依存ルール要素DRを検出する依存ルール要素検出手段と、
適合ルール要素MRと１つ以上の依存ルール要素DRとの相対順序を変更することなく、適合ルール要素MRを最上位へ移動させるルール順序変更手段と、
適合ルール要素検出手段、依存ルール要素検出手段及びルール順序変更手段を、ルール情報RL(j)における最上位のルール要素RL(j,k)(k=1〜n)から順に繰り返すルール要素回帰手段と、
適合ルール要素検出手段、依存ルール要素検出手段、ルール順序変更手段及びルール要素回帰手段を、クエリQのクエリ要素Q(i)毎に繰り返すクエリ要素回帰手段と
を有することを特徴とする。
【００１８】
本発明のファイアウォール管理装置における他の実施形態によれば、
適合ルール要素MR毎に、適合カウンタMC(j,MR)を有し、
クエリ要素回帰手段によってクエリQのクエリ要素Q(i)が回帰される毎に、
適合ルール要素検出手段は、クエリ要素Q(i)に適合する適合ルール要素MRの適合カウンタMC(j,MR)を１増分し、
ルール順序変更手段は、複数の適合ルール要素MRが存在する場合、適合カウンタMC(j,MR)が大きい適合ルール要素MRほど上位へ移動させることも好ましい。
【００１９】
本発明のファイアウォール管理装置における他の実施形態によれば、
クエリ対象の想定パケットが通過すると想定される、複数のファイアウォール装置jと、それらの通過順番とを表す経路情報Rを有し、
適合ルール要素検出手段、依存ルール要素検出手段、ルール順序変更手段及びルール要素回帰手段を、経路情報に含まれる上流のファイアウォール装置jから順に繰り返す経路情報回帰手段を更に有することも好ましい。
【００２０】
本発明のファイアウォール管理装置における他の実施形態によれば、経路情報Rを、複数のファイアウォール装置jの構成情報から推定する経路情報推定手段を更に有することも好ましい。
【００２１】
本発明のファイアウォール管理装置における他の実施形態によれば、
クエリQは、特定のパケットを想定した送信元アドレス、宛先アドレス、プロトコル、送信元ポート番号及び宛先ポート番号からなる複数のクエリ要素Q(i)から構成され、
ルール情報RL(j)は、送信元アドレス、宛先アドレス、プロトコル、送信元ポート番号、宛先ポート番号及びアクションからなる複数のルール要素RL(j,k)から構成されることも好ましい。
【００２２】
本発明のファイアウォール管理装置における他の実施形態によれば、ファイアウォール装置は、アクセスコントロールリストに基づくパケット転送制御機能を有する汎用のルータであることも好ましい。
【００２３】
本発明によれば、クエリQに基づいて、ファイアウォール装置j毎に蓄積されたルール情報RL(j)におけるルール要素RL(j,k)の照合順序を変更するファイアウォール管理装置に搭載されたコンピュータを機能させるプログラムであって、
ルール情報RL(j)の中で、依存関係にあるルール要素RL(j,k)の対の組み合わせDRL(j)を検出する依存関係検出手段と、
クエリ要素Q(i)に適合する適合ルール要素MRを検出する適合ルール要素検出手段と、
ルール情報RL(j)の中で、適合ルール要素MRと依存関係にある１つ以上の依存ルール要素DRを検出する依存ルール要素検出手段と、
適合ルール要素MRと１つ以上の依存ルール要素DRとの相対順序を変更することなく、適合ルール要素MRを最上位へ移動させるルール順序変更手段と、
適合ルール要素検出手段、依存ルール要素検出手段及びルール順序変更手段を、ルール情報RL(j)における最上位のルール要素RL(j,k)(k=1〜n)から順に繰り返すルール要素回帰手段と、
適合ルール要素検出手段、依存ルール要素検出手段、ルール順序変更手段及びルール要素回帰手段を、クエリQのクエリ要素Q(i)毎に繰り返すクエリ要素回帰手段と
してコンピュータを機能させることを特徴とする。
【発明の効果】
【００２４】
本発明のルール情報変更方法、管理装置及びプログラムは、ファイアウォール装置のルール情報が、セキュリティ・ポリシに適合しているか否か判定する際に、クエリとルール情報との照合回数をできる限り少なくすることができる。
【図面の簡単な説明】
【００２５】
【図１】本発明におけるシステム構成図である。
【図２】ファイアウォール管理装置がルール情報を生成するフローチャートである。
【図３】本発明におけるファイアウォール管理装置のフローチャートである。
【図４】本発明におけるクエリ情報及びルール情報の第１のリストである。
【図５】本発明におけるクエリ情報及びルール情報の第２のリストである。
【図６】図５における適合ルール要素MR及び依存ルール要素DRの移動後のルール情報である。
【図７】本発明におけるファイアウォール管理装置の機能構成図である。
【発明を実施するための形態】
【００２６】
以下、本発明の実施の形態について、図面を用いて詳細に説明する。
【００２７】
図１は、本発明におけるシステム構成図である。
【００２８】
図１によれば、管理対象ネットワーク（イントラネット４）と、外部ネットワーク（インターネット５又は他企業のネットワーク６）との間に、ファイウォール装置２及びルータ３が接続されている。ファイアウォール装置２は、管理対象ネットワークに対するセキュリティ・ポリシに基づいたルール情報を保持する。尚、ファイアウォール装置２は、ファイアウォールとして独立した装置であってもよいし、アクセスコントロールリストに基づくパケット転送制御機能を有する汎用のルータであってもよい。
【００２９】
図１のような大規模ネットワークの場合、多数のファイアウォール装置２が配置される。このような場合、その膨大なルール情報を一元管理するファイアウォール管理装置１を配置することが好ましい。ファイアウォール管理装置１は、各ファイアウォール装置２に保持されるルール情報を設定管理する。ファイアウォール装置１は、複数のイントラネット４を含む管理対象ネットワーク全体のセキュリティ・ポリシを維持するように、各ファイアウォール装置２に対してルール情報を設定する。
【００３０】
図２は、ファイアウォール管理装置がルール情報を生成するフローチャートである。
【００３１】
（Ｓ２１）ファイアウォール管理装置１は、ファイアウォール装置２及びルータ３から構成情報を収集する。
【００３２】
（Ｓ２２）ファイアウォール管理装置１は、これら構成情報を自動的に解析し、ファイアウォール装置を含む経路情報を推定する。
【００３３】
（Ｓ２３）次に、ファイアウォール装置j毎に、ルール情報RL(j)を生成する。図２によれば、ファイアウォール装置j(j=1)におけるルール情報RL(1)のルール要素RL(1,k)(k=1〜12)のリストが表されている。ファイアウォール装置j=1におけるルール情報RL(1)について、k番目のルール要素を、「RL(1,k)」と表記する。ルール情報RL(j)は、複数のルール要素RL(j,k)を照合順に並べたものである。
【００３４】
ルール情報のルール要素RL(j,k)は、以下の２つのグループに対してアクションが定義される。
「ホスト・グループ」：
送信元アドレス(SrcIP)
宛先アドレス(DstIP)
（ＩＰアドレスの範囲を表すものであってもよい。"0"は、任意"any"を表す。）
「サービス・グループ」：
プロトコル(Proto)
送信元ポート番号(SrcPort)
宛先ポート番号 (DstPort)
（"0"は、任意"any"を表す。）
「アクション(Action)」：
転送許可(accept)又は転送禁止(deny)
【００３５】
「ホスト・グループ」として、送信元アドレス(SrcIP)及び宛先アドレス(DstIP)は、特定のＩＰアドレスであってもよいし、一定のＩＰアドレス範囲であってもよい。例えば、ルール要素RL(1,1)の送信元アドレス(SrcIP)"140.192.36.20/32"は、特定のＩＰアドレス"140.192.36.20"を表す。また、ルール要素RL(1,2)の送信元アドレス(SrcIP)"140.192.36.0/8"は、ビット列のネットマスクが８ビットであり、ＩＰアドレス範囲を意味する。
【００３６】
「サービス・グループ」として、プロトコル(Proto)は、例えばtcp(transport control protocol)又はudp(user datagram protocol)である。また、送信元ポート番号(SrcPort)及び宛先ポート番号(DstPort)は、特定のポート番号を表す。尚、ポート番号"0"は、任意"any"を表し、他のポート番号を包含する。
【００３７】
一般的なファイアウォール装置によれば、ルール情報は「オーダ・センシティブ」である。即ち、受信されたパケット毎に、ルール情報内に記述された先頭のルール要素から順次、末尾のルール要素へ、「適合」／「不適合」を照合していく。そして、最初に「適合」したルール要素のアクションが実行される。それ以降のルール要素については、照合されることなく（無視され）、処理を終了する。そのために、通常、ルール情報の末尾に記述されたルール要素には、あらゆるパケットに適合するべく、デフォルト・アクションが記述される。
【００３８】
（Ｓ２４）ファイアウォール管理装置１は、ルール情報RL(j)の中で、依存関係にあるルール要素RL(j,k)の対の組み合わせDRL(j)を検出する。
【００３９】
図２によれば、ルール要素間の依存関係を表すルール情報のリストが表されている。「依存関係(dependency)」とは、２つのルール要素におけるプロトコル、ＩＰアドレス及びポート番号が、互いに共通部分を持つ、即ち互いに素(disjoint)でない関係をいう。具体的には、２つのルール要素が、以下の全ての条件を満たす関係にあることをいう。
・プロトコル(Proto)が、同一である。
・送信元アドレス(SrcIP)が、共通部分を持つ。
宛先アドレス(DstIP)が、共通部分を持つ。
・送信元ポート番号(SrcPort)が、共通部分を持つ。
・宛先ポート番号(DstPort)が、共通部分を持つ。
【００４０】
以下では、ルール要素RL(1,1)と依存関係のある全てのルール要素RL(1,k)(k=2〜n)を検出する場合について説明する。
【００４１】
ルール要素RL(1,1)と以下の条件を全て満たすルール要素RL(1,k)が検出される。
RL(1,1)：tcp, 140.192.36.20/32, 0, 0.0.0.0/0,        80, deny
・プロトコルは、tcpと同一。
・送信元アドレスは、140.192.36.20/32と共通部分を持つアドレス範囲。
即ち、140.192.36.20/32に等しいか、又は包含する。
・宛先アドレスは、0.0.0.0/0と共通部分を持つ。
即ち、0.0.0.0/0に等しいか又は包含される。
・送信元ポート番号は、"0"(any)と共通部分を持つ。
即ち、"0"(any)又は任意のポート番号である。
・宛先ポート番号は、80と共通部分を持つ。
即ち、80に等しいか又は包含するポート番号範囲。
（宛先ポート番号"80"は、宛先ポート番号"0"(any)に包含される）
【００４２】
（Ｓ２４１）最初に、プロトコル及びポート番号について、ルール要素RL(1,1)と依存関係にあるルール要素RL(1,k)のみを検出し、以下のようにリスト化する。
RL(1,1)：tcp, 140.192.36.20/32, 0, 0.0.0.0/0,        80, deny
RL(1,2)：tcp, 140.192.36.0/8,   0, 0.0.0.0/0,        80, accept
RL(1,3)：tcp, 140.192.37.0/24,  0, 0.0.0.0/0,        80, deny
RL(1,9)：tcp, 0.0.0.0/0,        0, 161.120.33.40/32, 80, accept
【００４３】
（Ｓ２４２）次に、ルール要素RL(1,1)の送信元アドレス"140.192.36.20/32"と等しいか又は包含するアドレス範囲となる送信元アドレスであって、且つ、ルール要素RL(1,1)の宛先アドレス"0.0.0.0/0"と等しい宛先アドレスとなるルール要素RL(1,k)を検出する。ここで、ルール要素RL(1,2)の送信元アドレス"140.192.36.0/8"は、ルール要素RL(1,1)の"140.192.36.20/32"を包含する。また、ルール要素RL(1,2)の宛先アドレス"0.0.0.0/0"は、ルール要素RL(1,1)の宛先アドレス"0.0.0.0/0"と等しい。
RL(1,1)：tcp, 140.192.36.20/32, 0, 0.0.0.0/0,        80, deny
RL(1,2)：tcp, 140.192.36.0/8,   0, 0.0.0.0/0,        80, accept
【００４４】
（Ｓ２４３）次に、ルール要素RL(1,3)の送信元アドレス"140.192.37.0/24"と等しいか又は包含するアドレス範囲となる送信元アドレスであって、且つ、ルール要素RL(1,3)の宛先アドレス"0.0.0.0/0"と等しい宛先アドレスとなるルール要素RL(1,k)を検出する。ここで、ルール要素RL(1,9)の送信元アドレス"0.0.0.0/0"は、ルール要素RL(1,3)の"140.192.37.0/24"を包含する。また、ルール要素RL(1,3)の宛先アドレス"0.0.0.0/0"は、ルール要素RL(1,9)の宛先アドレス"161.120.33.40/3"を包含する。
RL(1,3)：tcp, 140.192.37.0/24,  0, 0.0.0.0/0,        80, deny
RL(1,9)：tcp, 0.0.0.0/0,        0, 161.120.33.40/32, 80, accept
【００４５】
図２によれば、ルール要素RL(1,1)及びRL(1,2)は依存関係にあり、セキュリティ・ポリシを維持するためにも、RL(1,1)->RL(1,2)の順序を変更してはならない。同様に、ルール要素RL(1,3)及びRL(1,9)は依存関係にあり、RL(1,3)->RL(1,9)の順序を変更してはならない。
【００４６】
尚、図２のルール情報RL(j)には、ルール要素RL(j,k)毎に適合カウンタMC(j,RL(j,k))を有する。適合カウンタは、ルール要素RL(j,k)がクエリQ(i)と適合する毎に１増分されるカウンタである。適合カウンタの回数が多いルール要素RL(j,k)ほど、ルール情報RL(j)の上位に並べることによって、照合回数を少なくすることができる。適合カウンタの初期値は、０である。
【００４７】
図３は、本発明におけるファイアウォール管理装置のフローチャートである。
【００４８】
図３によれば、クエリのリストが表されている。「クエリ」とは、管理対象ネットワークに対するセキュリティ・ポリシに基づいて、ファイアウォール装置のルール情報（ルール要素群）を確認するためのリストである。クエリQは、複数のクエリ要素Q(i)を照合順に並べたものである。クエリ要素Q(i)は、ファイアウォール装置j毎のルール情報RL(j)におけるルール要素RL(j,k)と、逐一且つ順次、照合される。クエリ要素Q(i)が、どのルール要素R(j,k)に適合しaccept/denyされるか、又は、どのルール要素R(j,k)にも適合しないかを確認する。
【００４９】
（Ｓ３０１）セキュリティ・ポリシに基づいて、クエリQのクエリ要素Q(i)を展開する。クエリ要素Q(i)は、セキュリティ・ポリシに基づくパケットの送信元アドレス(SrcIP)、宛先アドレス(DstIP)及びサービスグループ（プロトコル(Proto)、送信元ポート番号(SrcPort)及び宛先ポート番号(DstPort)）を有する。
（Ｓ３０２）クエリQのクエリ要素Q(i)毎に、Ｓ３０３〜Ｓ３１０のステップを繰り返す。
（Ｓ３０３）クエリ要素Q(i)の経路情報を特定する。その経路上にあるファイアウォール装置jが特定される。
（Ｓ３０４）特定された経路における上流のファイアウォール装置j(j=1〜n)から順に、Ｓ３０５〜Ｓ３０９のステップを繰り返す。
（Ｓ３０５）ルール情報RL(j)における先頭のルール要素RL(j,k)(k=1〜n)から順に、Ｓ３０６〜Ｓ３０８のステップを繰り返す。
（Ｓ３０６）クエリ要素Q(i)に適合する適合ルール要素MR(=RL(j,k))を検出する。このとき、クエリ要素Q(i)に適合する適合ルール要素MRの適合カウンタMC(j,MR)を１増分する。
（Ｓ３０７）ルール情報RL(j)の中で、適合ルール要素MRと依存関係にある１つ以上の依存ルール要素DRを検出する。
（Ｓ３０８）適合ルール要素MRと１つ以上の依存ルール要素DRとの相対順序を変更することなく、適合ルール要素MRを最上位へ移動させる。このとき、複数の適合ルール要素MRが存在する場合、適合カウンタMC(j,MR)が大きい適合ルール要素MRほど上位へ移動させる。
（Ｓ３０９）ルール情報RL(j)における最下位のルール要素RL(j,n)(k=n)まで、Ｓ３０５へ再帰する。
（Ｓ３１０）特定された経路における末端のファイアウォール装置j(j=n)まで、Ｓ３０４へ再帰する。
（Ｓ３１１）クエリQにおける最後のクエリ要素Q(i)(i=m)まで、Ｓ３０２へ再帰する。
【００５０】
図４は、本発明におけるクエリ情報及びルール情報の第１のリストである。
【００５１】
図４におけるクエリ及びルール情報は、図２と全く同様である。従って、依存関係ルール要素の組み合わせDRL(1)＝{[RL(1,1),RL(1,2)], [RL(1,3),RL(1,9)]}であるとする。
【００５２】
クエリ要素Q(1)に適合するルール要素RL(1,k)(k=1〜n)を検出する。最初に、クエリ要素Q(1)とルール要素RL(1,1)とが照合される。
Q(1)   ：tcp, 140.192.36.20/32, 0, 0.0.0.0/0,        80
RL(1,1)：tcp, 140.192.36.20/32, 0, 0.0.0.0/0,        80, deny
このとき、ルール要素RL(1,1)は、クエリ要素Q(1)と適合し、適合ルール要素MRとなる(MR=RL(1,1))。また、適合カウンタMC(1,
RL(1,1))を１増分する。
【００５３】
次に、ルール情報RL(1)の中で、適合ルール要素MR(=RL(1,1))と依存関係にある１つ以上の依存ルール要素DRを検出する。依存関係ルール要素DRL(1)によれば、適合ルール要素MR(=RL(1,1))と依存関係にある依存ルール要素DRは、RL(1,2)である。
【００５４】
そして、適合ルール要素MRと依存ルール要素DRとの相対順序を変更することなく、適合ルール要素MRを最上位へ移動させる。このとき、ルール要素RL(1,1)は、ルール情報RL(1)の中で最上位であるため、移動(re-order)されない。
【００５５】
図５は、本発明におけるクエリ情報及びルール情報の第２のリストである。
【００５６】
次に、クエリ要素Q(2)に適合するルール要素RL(1,k)(k=1〜n)を検出する。最初に、クエリ要素Q(2)とルール要素RL(1,1)とが照合される。
Q(2)   ：tcp, 0.0.0.0/0,        0, 161.120.33.40/32, 80,
RL(1,1)：tcp, 140.192.36.20/32, 0, 0.0.0.0/0,        80, deny
このとき、ルール要素RL(1,1)は、クエリ要素Q(1)と適合しない。
【００５７】
その後、ルール要素RL(1,2)〜RL(1,8)も、クエリ要素Q(2)と適合しない。
【００５８】
そして、クエリ要素Q(2)とルール要素RL(1,9)とが照合される。
Q(2)   ：tcp, 0.0.0.0/0,        0, 161.120.33.40/32, 80,
RL(1,9)：tcp, 0.0.0.0/0,        0, 161.120.33.40/32, 80, deny
このとき、ルール要素RL(1,9)は、クエリ要素Q(2)と適合し、適合ルール要素MRとなる(MR=RL(1,9))。また、適合カウンタMC(1, RL(1,9))を１増分する。
【００５９】
次に、ルール情報RL(1)の中で、適合ルール要素MR(=RL(1,9))と依存関係にある１つ以上の依存ルール要素DRを検出する。依存関係ルール要素DRL(1)によれば、適合ルール要素MR(=RL(1,9))と依存関係にある依存ルール要素DRは、RL(1,3)である。
【００６０】
そして、適合ルール要素MRと依存ルール要素DRとの相対順序を変更することなく、適合ルール要素MRを最上位へ移動させる。
【００６１】
図６は、図５における適合ルール要素MR及び依存ルール要素DRの移動後のルール情報である。
【００６２】
図６によれば、適合ルール要素MR(=RL(1,9))が、依存ルール要素DR(=RL1,3))との相対順序を変更することなく、最上位へ移動される。この場合、適合ルール要素RL(1,9)を、RL(1,3)よりも下位（DR内の相対順序は変更されない）であって、かつ、第４行目（MRよりMCの高いルールの上位とならないような、最も上位）へ並び替えられる。
【００６３】
尚、ルール要素RLのインデックス(RL(i,j)のjの値)及び適合カウンタMCは、順列の並べ替え後も維持される。
【００６４】
図７は、本発明におけるファイアウォール管理装置の機能構成図である。
【００６５】
図７によれば、ファイアウォール管理装置１は、クエリQに基づいて、ファイアウォール装置j毎に蓄積されたルール情報RL(j)におけるルール要素RL(j,k)の照合順序を変更する。ファイアウォール管理装置１は、ルール情報記憶部１００と、依存関係検出部１０１と、適合ルール要素検出部１０２と、依存ルール要素検出部１０３と、ルール要素順序変更部１０４と、ルール要素回帰部１０５と、経路情報回帰部１０６と、クエリ要素回帰部１０７と、通信インタフェース部１１０とを有する。通信インタフェース部以外のこれら機能構成部は、ファイアウォール管理装置に搭載されたコンピュータを機能させるプログラムを実行することによって実現される。
【００６６】
ルール情報記憶部１００は、ファイアウォール装置j毎のルール情報RL(j)を記憶する。
【００６７】
依存関係検出部１０１は、ルール情報RL(j)の中で、依存関係にあるルール要素RL(j,k)の対の組み合わせDRL(j)を検出する。
【００６８】
適合ルール要素検出部１０２は、クエリ要素Q(i)に適合する適合ルール要素MRを検出する。また、適合ルール要素検出部１０２は、クエリ要素Q(i)に適合する適合ルール要素MRの適合カウンタMC(j,MR)を１増分する。
【００６９】
依存ルール要素検出部１０３は、ルール情報RL(j)の中で、適合ルール要素MRと依存関係にある１つ以上の依存ルール要素DRを検出する。
【００７０】
ルール要素順序変更部１０４は、適合ルール要素MRと１つ以上の依存ルール要素DRとの相対順序を変更することなく、適合ルール要素MRを最上位へ移動させる。このとき、ルール要素順序変更部１０４は、複数の適合ルール要素MRが存在する場合、適合カウンタMC(j,MR)が大きい適合ルール要素MRほど上位へ移動させる。
【００７１】
ルール要素回帰部１０５は、適合ルール要素検出部１０２、依存ルール要素検出部１０３及びルール順序変更部１０４を、ルール情報RL(j)における最上位のルール要素RL(j,k)(k=1〜n)から順に繰り返す。
【００７２】
経路情報回帰部１０６は、適合ルール要素検出部１０２、依存ルール要素検出部１０３、ルール順序変更部１０４及びルール要素回帰部１０５を、経路情報に含まれる上流のファイアウォール装置jから順に繰り返す。経路情報は、クエリ対象の想定パケットが通過すると期待される、複数のファイアウォール装置jと、それらの通過順番とを表す。
【００７３】
クエリ要素回帰部１０７は、適合ルール要素検出部１０２、依存ルール要素検出部１０３、ルール順序変更部１０４及びルール要素回帰部１０５を、クエリQのクエリ要素Q(i)毎に繰り返す。
【００７４】
経路情報推定部１０８は、ファイアウォール装置及びルータから、構成情報を受信し、経路情報を推定する。経路情報を推定することによって、クエリQのクエリ要素Q(i)の想定パケットが通過しない経路について、そのファイアウォール装置に対するルール情報の照合を避けることができる。
【００７５】
以上、詳細に説明したように、本発明のルール情報変更方法、管理装置及びプログラムは、ファイアウォール装置のルール情報が、セキュリティ・ポリシに適合しているか否か判定する際に、クエリとルール情報との照合回数をできる限り少なくすることができる。
【００７６】
クエリに基づいてルール情報を確認している処理の実行中であっても、ルール情報の照合順序を逐次変更することによって、その後のクエリの照合処理を高速化することができる。本発明によれば、ルール要素間の依存関係を維持したまま、その並びを変更するために、セキュリティ・ポリシの安全性も維持される。
【００７７】
前述した本発明の種々の実施形態について、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。
【符号の説明】
【００７８】
１  ファイアウォール管理装置
１００  ルール情報記憶部
１０１  依存関係検出部
１０２  適合ルール要素検出部
１０３  依存ルール要素検出部
１０４  ルール要素順序変更部
１０５  ルール要素回帰部
１０６  経路情報回帰部
１０７  クエリ要素回帰部
１０８  経路情報推定部
１１０  通信インタフェース部
２  ファイアウォール装置
【図１】
2010287116.tif 000003
【図２】
2010287116.tif 000004
【図３】
2010287116.tif 000005
【図４】
2010287116.tif 000006
【図５】
2010287116.tif 000007
【図６】
2010287116.tif 000008
【図７】
2010287116.tif 000009