説明

ファイアウォールにおけるルール情報変更方法、管理装置及びプログラム

【課題】ファイアウォール装置のルール情報が、セキュリティ・ポリシに適合しているか否か判定する際に、クエリとルール情報との照合回数をできる限り少なくすることができるルール情報変更方法、管理装置及びプログラムを提供する。
【解決手段】最初に、ルール情報RL(j)の中で、依存関係にあるルール要素RL(j,k)の対の組み合わせDRL(j)を検出する。クエリQのクエリ要素Q(i)毎に、以下のステップを繰り返す。ルール情報RL(j)における最上位のルール要素RL(j,k)(k=1〜n)から順に、クエリ要素Q(i)に適合する適合ルール要素MRを検出し、適合ルール要素MRと依存関係にある1つ以上の依存ルール要素DRを検出し、MR及びDRの相対順序を変更することなく最上位へ移動させることを繰り返す。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ファイアウォールにおけるルール情報変更方法、管理装置及びプログラムに関する。
【背景技術】
【0002】
ファイアウォール(Firewall)は、管理対象ネットワークと外部ネットワークとの接続点に設置されるルータの一種である。ファイアウォールは、管理対象ネットワークの安全性を高めるために、組織の方針(セキュリティ・ポリシ)に基づいて必要なパケットのみを通過させ、危険なパケットを阻止する。従って、ファイアウォール装置の構成情報、特にルール情報は、セキュリティ・ポリシに基づいて適切に設定される必要がある。尚、ファイアウォール装置は、管理対象ネットワーク内のセグメントネットワーク同士の間(例えば部署Aのイントラネットと部署Bのイントラネットとの間)に配置されるものであってもよい。
【0003】
ファイアウォール装置が保持するルール情報は、複数の「ルール要素」の順列によって構成される。ファイアウォール装置の管理者は、セキュリティ・ポリシを適切に実現するべく、ルール情報内のルール要素の内容及び順列を設定する。ファイアウォール装置は、外部ネットワーク(又は他のセグメントネットワーク)から受信したパケットが、いずれのルール要素に該当するか照合し、該当するルール要素に記述されるアクションに基づいて、そのパケットの転送可否を決定する。
【0004】
ファイアウォール管理装置は、ファイアウォール装置におけるパケット転送性能を高めるために、以下の2つの方法でルール情報を制御することができる。
【0005】
第1に、ルール情報内のルール要素の数を少なくし、受信したパケットに対するルール要素の照合回数を全体的に少なくする。そのために、「アクセス・ログ」におけるルール要素毎のログ記録回数をカウントし、その記録回数0(又は0に近い)のルール要素を不要として削除する技術がある(例えば特許文献1参照)。
【0006】
第2に、受信される複数のパケットについて、ルール情報の中で「適合」しやすいルール要素を上位に並べ、照合回数を全体的に少なくする。そのために、「アクセス・ログ」におけるルール要素毎のログ記録回数をカウントし、その記録回数が多いルール要素ほど、上位の順列に移動させる技術がある(例えば特許文献2参照)。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】US7,016,980B1
【特許文献2】特許第3568850号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
ファイアウォール装置の管理者が、ルール情報を修正した場合、所望のセキュリティ・ポリシに適合しているか否かを確認する必要がある。ここで、「クエリ」を用いて、ルール情報を照合することができる。「クエリ」とは、ファイアウォールのルール情報(ルール要素群)が、所定のポリシを実現しているかを確認するリストである。クエリを、ルール情報と照合することによって、どのルール要素に該当し、転送許可(accept)若しくは転送禁止(deny)か、又は、どのルールにも適合しないか、を判定することができる。
【0009】
しかしながら、クエリQのクエリ要素Q(i)と、ファイアウォール装置j毎のルール情報RL(j)のルール要素RL(j,k)とを、逐一且つ順次に確認するために、著しく時間がかかる。また、ファイアウォール装置の数が多くなるほど、又は、ルール要素数及びクエリ要素数が多くなるほど、その確認に要する時間は著しく長くなる。
【0010】
そこで、本発明は、ファイアウォール装置のルール情報が、セキュリティ・ポリシに適合しているか否か判定する際に、クエリとルール情報との照合回数をできる限り少なくすることができるルール情報変更方法、管理装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0011】
本発明によれば、クエリ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を検出する第1のステップと、
ルール情報RL(j)の中で、適合ルール要素MRと依存関係にある1つ以上の依存ルール要素DRを検出する第2のステップと、
適合ルール要素MRと1つ以上の依存ルール要素DRとの相対順序を変更することなく、適合ルール要素MRを最上位へ移動させる第3のステップと
を繰り返すことを特徴とする。
【0012】
本発明のファイアウォール装置のルール情報変更方法における他の実施形態によれば、
適合ルール要素MR毎に、適合カウンタMC(j,MR)を有し、
クエリQのクエリ要素Q(i)毎に、以下のステップを繰り返す際に、
第1のステップについて、クエリ要素Q(i)に適合する適合ルール要素MRの適合カウンタMC(j,MR)を1増分し、
第3のステップについて、複数の適合ルール要素MRが存在する場合、適合カウンタMC(j,MR)が大きい適合ルール要素MRほど上位へ移動させることも好ましい。
【0013】
本発明のファイアウォール装置のルール情報変更方法における他の実施形態によれば、
クエリ対象の想定パケットが通過すると想定される、複数のファイアウォール装置jと、それらの通過順番とを表す経路情報Rを有し、
経路情報に含まれる上流のファイアウォール装置jから順に、ルール要素の照合順序が変更されることも好ましい。
【0014】
本発明のファイアウォール装置のルール情報変更方法における他の実施形態によれば、経路情報Rは、複数のファイアウォール装置jの構成情報から推定されることも好ましい。
【0015】
本発明のファイアウォール装置のルール情報変更方法における他の実施形態によれば、
クエリQは、特定のパケットを想定した送信元アドレス、宛先アドレス、プロトコル、送信元ポート番号及び宛先ポート番号からなる複数のクエリ要素Q(i)から構成され、
ルール情報RL(j)は、送信元アドレス、宛先アドレス、プロトコル、送信元ポート番号、宛先ポート番号及びアクションからなる複数のルール要素RL(j,k)から構成されることも好ましい。
【0016】
本発明のファイアウォール装置のルール情報変更方法における他の実施形態によれば、ファイアウォール装置は、アクセスコントロールリストに基づくパケット転送制御機能を有する汎用のルータであってもよい。
【0017】
本発明によれば、クエリQに基づいて、ファイアウォール装置j毎に蓄積されたルール情報RL(j)におけるルール要素RL(j,k)の照合順序を変更するファイアウォール管理装置であって、
ルール情報RL(j)の中で、依存関係にあるルール要素RL(j,k)の対の組み合わせDRL(j)を検出する依存関係検出手段と、
クエリ要素Q(i)に適合する適合ルール要素MRを検出する適合ルール要素検出手段と、
ルール情報RL(j)の中で、適合ルール要素MRと依存関係にある1つ以上の依存ルール要素DRを検出する依存ルール要素検出手段と、
適合ルール要素MRと1つ以上の依存ルール要素DRとの相対順序を変更することなく、適合ルール要素MRを最上位へ移動させるルール順序変更手段と、
適合ルール要素検出手段、依存ルール要素検出手段及びルール順序変更手段を、ルール情報RL(j)における最上位のルール要素RL(j,k)(k=1〜n)から順に繰り返すルール要素回帰手段と、
適合ルール要素検出手段、依存ルール要素検出手段、ルール順序変更手段及びルール要素回帰手段を、クエリQのクエリ要素Q(i)毎に繰り返すクエリ要素回帰手段と
を有することを特徴とする。
【0018】
本発明のファイアウォール管理装置における他の実施形態によれば、
適合ルール要素MR毎に、適合カウンタMC(j,MR)を有し、
クエリ要素回帰手段によってクエリQのクエリ要素Q(i)が回帰される毎に、
適合ルール要素検出手段は、クエリ要素Q(i)に適合する適合ルール要素MRの適合カウンタMC(j,MR)を1増分し、
ルール順序変更手段は、複数の適合ルール要素MRが存在する場合、適合カウンタMC(j,MR)が大きい適合ルール要素MRほど上位へ移動させることも好ましい。
【0019】
本発明のファイアウォール管理装置における他の実施形態によれば、
クエリ対象の想定パケットが通過すると想定される、複数のファイアウォール装置jと、それらの通過順番とを表す経路情報Rを有し、
適合ルール要素検出手段、依存ルール要素検出手段、ルール順序変更手段及びルール要素回帰手段を、経路情報に含まれる上流のファイアウォール装置jから順に繰り返す経路情報回帰手段を更に有することも好ましい。
【0020】
本発明のファイアウォール管理装置における他の実施形態によれば、経路情報Rを、複数のファイアウォール装置jの構成情報から推定する経路情報推定手段を更に有することも好ましい。
【0021】
本発明のファイアウォール管理装置における他の実施形態によれば、
クエリQは、特定のパケットを想定した送信元アドレス、宛先アドレス、プロトコル、送信元ポート番号及び宛先ポート番号からなる複数のクエリ要素Q(i)から構成され、
ルール情報RL(j)は、送信元アドレス、宛先アドレス、プロトコル、送信元ポート番号、宛先ポート番号及びアクションからなる複数のルール要素RL(j,k)から構成されることも好ましい。
【0022】
本発明のファイアウォール管理装置における他の実施形態によれば、ファイアウォール装置は、アクセスコントロールリストに基づくパケット転送制御機能を有する汎用のルータであることも好ましい。
【0023】
本発明によれば、クエリQに基づいて、ファイアウォール装置j毎に蓄積されたルール情報RL(j)におけるルール要素RL(j,k)の照合順序を変更するファイアウォール管理装置に搭載されたコンピュータを機能させるプログラムであって、
ルール情報RL(j)の中で、依存関係にあるルール要素RL(j,k)の対の組み合わせDRL(j)を検出する依存関係検出手段と、
クエリ要素Q(i)に適合する適合ルール要素MRを検出する適合ルール要素検出手段と、
ルール情報RL(j)の中で、適合ルール要素MRと依存関係にある1つ以上の依存ルール要素DRを検出する依存ルール要素検出手段と、
適合ルール要素MRと1つ以上の依存ルール要素DRとの相対順序を変更することなく、適合ルール要素MRを最上位へ移動させるルール順序変更手段と、
適合ルール要素検出手段、依存ルール要素検出手段及びルール順序変更手段を、ルール情報RL(j)における最上位のルール要素RL(j,k)(k=1〜n)から順に繰り返すルール要素回帰手段と、
適合ルール要素検出手段、依存ルール要素検出手段、ルール順序変更手段及びルール要素回帰手段を、クエリQのクエリ要素Q(i)毎に繰り返すクエリ要素回帰手段と
してコンピュータを機能させることを特徴とする。
【発明の効果】
【0024】
本発明のルール情報変更方法、管理装置及びプログラムは、ファイアウォール装置のルール情報が、セキュリティ・ポリシに適合しているか否か判定する際に、クエリとルール情報との照合回数をできる限り少なくすることができる。
【図面の簡単な説明】
【0025】
【図1】本発明におけるシステム構成図である。
【図2】ファイアウォール管理装置がルール情報を生成するフローチャートである。
【図3】本発明におけるファイアウォール管理装置のフローチャートである。
【図4】本発明におけるクエリ情報及びルール情報の第1のリストである。
【図5】本発明におけるクエリ情報及びルール情報の第2のリストである。
【図6】図5における適合ルール要素MR及び依存ルール要素DRの移動後のルール情報である。
【図7】本発明におけるファイアウォール管理装置の機能構成図である。
【発明を実施するための形態】
【0026】
以下、本発明の実施の形態について、図面を用いて詳細に説明する。
【0027】
図1は、本発明におけるシステム構成図である。
【0028】
図1によれば、管理対象ネットワーク(イントラネット4)と、外部ネットワーク(インターネット5又は他企業のネットワーク6)との間に、ファイウォール装置2及びルータ3が接続されている。ファイアウォール装置2は、管理対象ネットワークに対するセキュリティ・ポリシに基づいたルール情報を保持する。尚、ファイアウォール装置2は、ファイアウォールとして独立した装置であってもよいし、アクセスコントロールリストに基づくパケット転送制御機能を有する汎用のルータであってもよい。
【0029】
図1のような大規模ネットワークの場合、多数のファイアウォール装置2が配置される。このような場合、その膨大なルール情報を一元管理するファイアウォール管理装置1を配置することが好ましい。ファイアウォール管理装置1は、各ファイアウォール装置2に保持されるルール情報を設定管理する。ファイアウォール装置1は、複数のイントラネット4を含む管理対象ネットワーク全体のセキュリティ・ポリシを維持するように、各ファイアウォール装置2に対してルール情報を設定する。
【0030】
図2は、ファイアウォール管理装置がルール情報を生成するフローチャートである。
【0031】
(S21)ファイアウォール管理装置1は、ファイアウォール装置2及びルータ3から構成情報を収集する。
【0032】
(S22)ファイアウォール管理装置1は、これら構成情報を自動的に解析し、ファイアウォール装置を含む経路情報を推定する。
【0033】
(S23)次に、ファイアウォール装置j毎に、ルール情報RL(j)を生成する。図2によれば、ファイアウォール装置j(j=1)におけるルール情報RL(1)のルール要素RL(1,k)(k=1〜12)のリストが表されている。ファイアウォール装置j=1におけるルール情報RL(1)について、k番目のルール要素を、「RL(1,k)」と表記する。ルール情報RL(j)は、複数のルール要素RL(j,k)を照合順に並べたものである。
【0034】
ルール情報のルール要素RL(j,k)は、以下の2つのグループに対してアクションが定義される。
「ホスト・グループ」:
送信元アドレス(SrcIP)
宛先アドレス(DstIP)
(IPアドレスの範囲を表すものであってもよい。"0"は、任意"any"を表す。)
「サービス・グループ」:
プロトコル(Proto)
送信元ポート番号(SrcPort)
宛先ポート番号 (DstPort)
("0"は、任意"any"を表す。)
「アクション(Action)」:
転送許可(accept)又は転送禁止(deny)
【0035】
「ホスト・グループ」として、送信元アドレス(SrcIP)及び宛先アドレス(DstIP)は、特定のIPアドレスであってもよいし、一定のIPアドレス範囲であってもよい。例えば、ルール要素RL(1,1)の送信元アドレス(SrcIP)"140.192.36.20/32"は、特定のIPアドレス"140.192.36.20"を表す。また、ルール要素RL(1,2)の送信元アドレス(SrcIP)"140.192.36.0/8"は、ビット列のネットマスクが8ビットであり、IPアドレス範囲を意味する。
【0036】
「サービス・グループ」として、プロトコル(Proto)は、例えばtcp(transport control protocol)又はudp(user datagram protocol)である。また、送信元ポート番号(SrcPort)及び宛先ポート番号(DstPort)は、特定のポート番号を表す。尚、ポート番号"0"は、任意"any"を表し、他のポート番号を包含する。
【0037】
一般的なファイアウォール装置によれば、ルール情報は「オーダ・センシティブ」である。即ち、受信されたパケット毎に、ルール情報内に記述された先頭のルール要素から順次、末尾のルール要素へ、「適合」/「不適合」を照合していく。そして、最初に「適合」したルール要素のアクションが実行される。それ以降のルール要素については、照合されることなく(無視され)、処理を終了する。そのために、通常、ルール情報の末尾に記述されたルール要素には、あらゆるパケットに適合するべく、デフォルト・アクションが記述される。
【0038】
(S24)ファイアウォール管理装置1は、ルール情報RL(j)の中で、依存関係にあるルール要素RL(j,k)の対の組み合わせDRL(j)を検出する。
【0039】
図2によれば、ルール要素間の依存関係を表すルール情報のリストが表されている。「依存関係(dependency)」とは、2つのルール要素におけるプロトコル、IPアドレス及びポート番号が、互いに共通部分を持つ、即ち互いに素(disjoint)でない関係をいう。具体的には、2つのルール要素が、以下の全ての条件を満たす関係にあることをいう。
・プロトコル(Proto)が、同一である。
・送信元アドレス(SrcIP)が、共通部分を持つ。
宛先アドレス(DstIP)が、共通部分を持つ。
・送信元ポート番号(SrcPort)が、共通部分を持つ。
・宛先ポート番号(DstPort)が、共通部分を持つ。
【0040】
以下では、ルール要素RL(1,1)と依存関係のある全てのルール要素RL(1,k)(k=2〜n)を検出する場合について説明する。
【0041】
ルール要素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)に包含される)
【0042】
(S241)最初に、プロトコル及びポート番号について、ルール要素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
【0043】
(S242)次に、ルール要素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
【0044】
(S243)次に、ルール要素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
【0045】
図2によれば、ルール要素RL(1,1)及びRL(1,2)は依存関係にあり、セキュリティ・ポリシを維持するためにも、RL(1,1)->RL(1,2)の順序を変更してはならない。同様に、ルール要素RL(1,3)及びRL(1,9)は依存関係にあり、RL(1,3)->RL(1,9)の順序を変更してはならない。
【0046】
尚、図2のルール情報RL(j)には、ルール要素RL(j,k)毎に適合カウンタMC(j,RL(j,k))を有する。適合カウンタは、ルール要素RL(j,k)がクエリQ(i)と適合する毎に1増分されるカウンタである。適合カウンタの回数が多いルール要素RL(j,k)ほど、ルール情報RL(j)の上位に並べることによって、照合回数を少なくすることができる。適合カウンタの初期値は、0である。
【0047】
図3は、本発明におけるファイアウォール管理装置のフローチャートである。
【0048】
図3によれば、クエリのリストが表されている。「クエリ」とは、管理対象ネットワークに対するセキュリティ・ポリシに基づいて、ファイアウォール装置のルール情報(ルール要素群)を確認するためのリストである。クエリQは、複数のクエリ要素Q(i)を照合順に並べたものである。クエリ要素Q(i)は、ファイアウォール装置j毎のルール情報RL(j)におけるルール要素RL(j,k)と、逐一且つ順次、照合される。クエリ要素Q(i)が、どのルール要素R(j,k)に適合しaccept/denyされるか、又は、どのルール要素R(j,k)にも適合しないかを確認する。
【0049】
(S301)セキュリティ・ポリシに基づいて、クエリQのクエリ要素Q(i)を展開する。クエリ要素Q(i)は、セキュリティ・ポリシに基づくパケットの送信元アドレス(SrcIP)、宛先アドレス(DstIP)及びサービスグループ(プロトコル(Proto)、送信元ポート番号(SrcPort)及び宛先ポート番号(DstPort))を有する。
(S302)クエリQのクエリ要素Q(i)毎に、S303〜S310のステップを繰り返す。
(S303)クエリ要素Q(i)の経路情報を特定する。その経路上にあるファイアウォール装置jが特定される。
(S304)特定された経路における上流のファイアウォール装置j(j=1〜n)から順に、S305〜S309のステップを繰り返す。
(S305)ルール情報RL(j)における先頭のルール要素RL(j,k)(k=1〜n)から順に、S306〜S308のステップを繰り返す。
(S306)クエリ要素Q(i)に適合する適合ルール要素MR(=RL(j,k))を検出する。このとき、クエリ要素Q(i)に適合する適合ルール要素MRの適合カウンタMC(j,MR)を1増分する。
(S307)ルール情報RL(j)の中で、適合ルール要素MRと依存関係にある1つ以上の依存ルール要素DRを検出する。
(S308)適合ルール要素MRと1つ以上の依存ルール要素DRとの相対順序を変更することなく、適合ルール要素MRを最上位へ移動させる。このとき、複数の適合ルール要素MRが存在する場合、適合カウンタMC(j,MR)が大きい適合ルール要素MRほど上位へ移動させる。
(S309)ルール情報RL(j)における最下位のルール要素RL(j,n)(k=n)まで、S305へ再帰する。
(S310)特定された経路における末端のファイアウォール装置j(j=n)まで、S304へ再帰する。
(S311)クエリQにおける最後のクエリ要素Q(i)(i=m)まで、S302へ再帰する。
【0050】
図4は、本発明におけるクエリ情報及びルール情報の第1のリストである。
【0051】
図4におけるクエリ及びルール情報は、図2と全く同様である。従って、依存関係ルール要素の組み合わせDRL(1)={[RL(1,1),RL(1,2)], [RL(1,3),RL(1,9)]}であるとする。
【0052】
クエリ要素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))を1増分する。
【0053】
次に、ルール情報RL(1)の中で、適合ルール要素MR(=RL(1,1))と依存関係にある1つ以上の依存ルール要素DRを検出する。依存関係ルール要素DRL(1)によれば、適合ルール要素MR(=RL(1,1))と依存関係にある依存ルール要素DRは、RL(1,2)である。
【0054】
そして、適合ルール要素MRと依存ルール要素DRとの相対順序を変更することなく、適合ルール要素MRを最上位へ移動させる。このとき、ルール要素RL(1,1)は、ルール情報RL(1)の中で最上位であるため、移動(re-order)されない。
【0055】
図5は、本発明におけるクエリ情報及びルール情報の第2のリストである。
【0056】
次に、クエリ要素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)と適合しない。
【0057】
その後、ルール要素RL(1,2)〜RL(1,8)も、クエリ要素Q(2)と適合しない。
【0058】
そして、クエリ要素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))を1増分する。
【0059】
次に、ルール情報RL(1)の中で、適合ルール要素MR(=RL(1,9))と依存関係にある1つ以上の依存ルール要素DRを検出する。依存関係ルール要素DRL(1)によれば、適合ルール要素MR(=RL(1,9))と依存関係にある依存ルール要素DRは、RL(1,3)である。
【0060】
そして、適合ルール要素MRと依存ルール要素DRとの相対順序を変更することなく、適合ルール要素MRを最上位へ移動させる。
【0061】
図6は、図5における適合ルール要素MR及び依存ルール要素DRの移動後のルール情報である。
【0062】
図6によれば、適合ルール要素MR(=RL(1,9))が、依存ルール要素DR(=RL1,3))との相対順序を変更することなく、最上位へ移動される。この場合、適合ルール要素RL(1,9)を、RL(1,3)よりも下位(DR内の相対順序は変更されない)であって、かつ、第4行目(MRよりMCの高いルールの上位とならないような、最も上位)へ並び替えられる。
【0063】
尚、ルール要素RLのインデックス(RL(i,j)のjの値)及び適合カウンタMCは、順列の並べ替え後も維持される。
【0064】
図7は、本発明におけるファイアウォール管理装置の機能構成図である。
【0065】
図7によれば、ファイアウォール管理装置1は、クエリQに基づいて、ファイアウォール装置j毎に蓄積されたルール情報RL(j)におけるルール要素RL(j,k)の照合順序を変更する。ファイアウォール管理装置1は、ルール情報記憶部100と、依存関係検出部101と、適合ルール要素検出部102と、依存ルール要素検出部103と、ルール要素順序変更部104と、ルール要素回帰部105と、経路情報回帰部106と、クエリ要素回帰部107と、通信インタフェース部110とを有する。通信インタフェース部以外のこれら機能構成部は、ファイアウォール管理装置に搭載されたコンピュータを機能させるプログラムを実行することによって実現される。
【0066】
ルール情報記憶部100は、ファイアウォール装置j毎のルール情報RL(j)を記憶する。
【0067】
依存関係検出部101は、ルール情報RL(j)の中で、依存関係にあるルール要素RL(j,k)の対の組み合わせDRL(j)を検出する。
【0068】
適合ルール要素検出部102は、クエリ要素Q(i)に適合する適合ルール要素MRを検出する。また、適合ルール要素検出部102は、クエリ要素Q(i)に適合する適合ルール要素MRの適合カウンタMC(j,MR)を1増分する。
【0069】
依存ルール要素検出部103は、ルール情報RL(j)の中で、適合ルール要素MRと依存関係にある1つ以上の依存ルール要素DRを検出する。
【0070】
ルール要素順序変更部104は、適合ルール要素MRと1つ以上の依存ルール要素DRとの相対順序を変更することなく、適合ルール要素MRを最上位へ移動させる。このとき、ルール要素順序変更部104は、複数の適合ルール要素MRが存在する場合、適合カウンタMC(j,MR)が大きい適合ルール要素MRほど上位へ移動させる。
【0071】
ルール要素回帰部105は、適合ルール要素検出部102、依存ルール要素検出部103及びルール順序変更部104を、ルール情報RL(j)における最上位のルール要素RL(j,k)(k=1〜n)から順に繰り返す。
【0072】
経路情報回帰部106は、適合ルール要素検出部102、依存ルール要素検出部103、ルール順序変更部104及びルール要素回帰部105を、経路情報に含まれる上流のファイアウォール装置jから順に繰り返す。経路情報は、クエリ対象の想定パケットが通過すると期待される、複数のファイアウォール装置jと、それらの通過順番とを表す。
【0073】
クエリ要素回帰部107は、適合ルール要素検出部102、依存ルール要素検出部103、ルール順序変更部104及びルール要素回帰部105を、クエリQのクエリ要素Q(i)毎に繰り返す。
【0074】
経路情報推定部108は、ファイアウォール装置及びルータから、構成情報を受信し、経路情報を推定する。経路情報を推定することによって、クエリQのクエリ要素Q(i)の想定パケットが通過しない経路について、そのファイアウォール装置に対するルール情報の照合を避けることができる。
【0075】
以上、詳細に説明したように、本発明のルール情報変更方法、管理装置及びプログラムは、ファイアウォール装置のルール情報が、セキュリティ・ポリシに適合しているか否か判定する際に、クエリとルール情報との照合回数をできる限り少なくすることができる。
【0076】
クエリに基づいてルール情報を確認している処理の実行中であっても、ルール情報の照合順序を逐次変更することによって、その後のクエリの照合処理を高速化することができる。本発明によれば、ルール要素間の依存関係を維持したまま、その並びを変更するために、セキュリティ・ポリシの安全性も維持される。
【0077】
前述した本発明の種々の実施形態について、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。
【符号の説明】
【0078】
1 ファイアウォール管理装置
100 ルール情報記憶部
101 依存関係検出部
102 適合ルール要素検出部
103 依存ルール要素検出部
104 ルール要素順序変更部
105 ルール要素回帰部
106 経路情報回帰部
107 クエリ要素回帰部
108 経路情報推定部
110 通信インタフェース部
2 ファイアウォール装置

【特許請求の範囲】
【請求項1】
クエリ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を検出する第1のステップと、
前記ルール情報RL(j)の中で、適合ルール要素MRと依存関係にある1つ以上の依存ルール要素DRを検出する第2のステップと、
前記適合ルール要素MRと1つ以上の前記依存ルール要素DRとの相対順序を変更することなく、前記適合ルール要素MRを最上位へ移動させる第3のステップと
を繰り返すことを特徴とするファイアウォール装置のルール情報変更方法。
【請求項2】
前記適合ルール要素MR毎に、適合カウンタMC(j,MR)を有し、
前記クエリQのクエリ要素Q(i)毎に、以下のステップを繰り返す際に、
第1のステップについて、前記クエリ要素Q(i)に適合する前記適合ルール要素MRの適合カウンタMC(j,MR)を1増分し、
第3のステップについて、複数の前記適合ルール要素MRが存在する場合、前記適合カウンタMC(j,MR)が大きい前記適合ルール要素MRほど上位へ移動させる
ことを特徴とする請求項1に記載のファイアウォール装置のルール情報変更方法。
【請求項3】
クエリ対象の想定パケットが通過すると想定される、複数のファイアウォール装置jと、それらの通過順番とを表す経路情報Rを有し、
前記経路情報に含まれる上流のファイアウォール装置jから順に、ルール要素の照合順序が変更されることを特徴とする請求項1又は2に記載のファイアウォール装置のルール情報変更方法。
【請求項4】
前記経路情報Rは、複数の前記ファイアウォール装置jの構成情報から推定されることを特徴とする請求項1から3のいずれか1項に記載のファイアウォール装置のルール情報変更方法。
【請求項5】
前記クエリQは、特定のパケットを想定した送信元アドレス、宛先アドレス、プロトコル、送信元ポート番号及び宛先ポート番号からなる複数のクエリ要素Q(i)から構成され、
前記ルール情報RL(j)は、送信元アドレス、宛先アドレス、プロトコル、送信元ポート番号、宛先ポート番号及びアクションからなる複数のルール要素RL(j,k)から構成される
ことを特徴とする請求項1から4のいずれか1項に記載のルール情報変更方法。
【請求項6】
前記ファイアウォール装置は、アクセスコントロールリストに基づくパケット転送制御機能を有する汎用のルータであることを特徴とする請求項1から5のいずれか1項に記載のルール情報変更方法。
【請求項7】
クエリQに基づいて、ファイアウォール装置j毎に、ファイアウォール管理装置に蓄積されたルール情報RL(j)におけるルール要素RL(j,k)の照合順序を変更するファイアウォール管理装置であって、
前記ルール情報RL(j)の中で、依存関係にあるルール要素RL(j,k)の対の組み合わせDRL(j)を検出する依存関係検出手段と、
前記クエリ要素Q(i)に適合する適合ルール要素MRを検出する適合ルール要素検出手段と、
前記ルール情報RL(j)の中で、適合ルール要素MRと依存関係にある1つ以上の依存ルール要素DRを検出する依存ルール要素検出手段と、
前記適合ルール要素MRと1つ以上の前記依存ルール要素DRとの相対順序を変更することなく、前記適合ルール要素MRを最上位へ移動させるルール順序変更手段と、
前記適合ルール要素検出手段、前記依存ルール要素検出手段及びルール順序変更手段を、前記ルール情報RL(j)における最上位のルール要素RL(j,k)(k=1〜n)から順に繰り返すルール要素回帰手段と、
前記適合ルール要素検出手段、前記依存ルール要素検出手段、前記ルール順序変更手段及び前記ルール要素回帰手段を、前記クエリQのクエリ要素Q(i)毎に繰り返すクエリ要素回帰手段と
を有することを特徴とするファイアウォール管理装置。
【請求項8】
前記適合ルール要素MR毎に、適合カウンタMC(j,MR)を有し、
前記クエリ要素回帰手段によって前記クエリQのクエリ要素Q(i)が回帰される毎に、
前記適合ルール要素検出手段は、前記クエリ要素Q(i)に適合する前記適合ルール要素MRの適合カウンタMC(j,MR)を1増分し、
前記ルール順序変更手段は、複数の前記適合ルール要素MRが存在する場合、前記適合カウンタMC(j,MR)が大きい前記適合ルール要素MRほど上位へ移動させる
ことを特徴とする請求項7に記載のファイアウォール管理装置。
【請求項9】
クエリ対象の想定パケットが通過すると想定される、複数のファイアウォール装置jと、それらの通過順番とを表す経路情報Rを有し、
前記適合ルール要素検出手段、前記依存ルール要素検出手段、前記ルール順序変更手段及びルール要素回帰手段を、前記経路情報に含まれる上流のファイアウォール装置jから順に繰り返す経路情報回帰手段を更に有することを特徴とする請求項7又は8に記載のファイアウォール管理装置。
【請求項10】
前記経路情報Rを、複数の前記ファイアウォール装置jの構成情報から推定する経路情報推定手段を更に有することを特徴とする請求項7から9のいずれか1項に記載のファイアウォール管理装置。
【請求項11】
前記クエリQは、特定のパケットを想定した送信元アドレス、宛先アドレス、プロトコル、送信元ポート番号及び宛先ポート番号からなる複数のクエリ要素Q(i)から構成され、
前記ルール情報RL(j)は、送信元アドレス、宛先アドレス、プロトコル、送信元ポート番号、宛先ポート番号及びアクションからなる複数のルール要素RL(j,k)から構成される
ことを特徴とする請求項7から10のいずれか1項に記載のファイアウォール管理装置。
【請求項12】
前記ファイアウォール装置は、アクセスコントロールリストに基づくパケット転送制御機能を有する汎用のルータであることを特徴とする請求項7から11のいずれか1項に記載のファイアウォール管理装置。
【請求項13】
クエリQに基づいて、ファイアウォール装置j毎に蓄積されたルール情報RL(j)におけるルール要素RL(j,k)の照合順序を変更するファイアウォール管理装置に搭載されたコンピュータを機能させるプログラムであって、
前記ルール情報RL(j)の中で、依存関係にあるルール要素RL(j,k)の対の組み合わせDRL(j)を検出する依存関係検出手段と、
前記クエリ要素Q(i)に適合する適合ルール要素MRを検出する適合ルール要素検出手段と、
前記ルール情報RL(j)の中で、適合ルール要素MRと依存関係にある1つ以上の依存ルール要素DRを検出する依存ルール要素検出手段と、
前記適合ルール要素MRと1つ以上の前記依存ルール要素DRとの相対順序を変更することなく、前記適合ルール要素MRを最上位へ移動させるルール順序変更手段と、
前記適合ルール要素検出手段、前記依存ルール要素検出手段及びルール順序変更手段を、前記ルール情報RL(j)における最上位のルール要素RL(j,k)(k=1〜n)から順に繰り返すルール要素回帰手段と、
前記適合ルール要素検出手段、前記依存ルール要素検出手段、前記ルール順序変更手段及び前記ルール要素回帰手段を、前記クエリQのクエリ要素Q(i)毎に繰り返すクエリ要素回帰手段と
してコンピュータを機能させることを特徴とするファイアウォール管理装置用のプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2010−287116(P2010−287116A)
【公開日】平成22年12月24日(2010.12.24)
【国際特許分類】
【出願番号】特願2009−141441(P2009−141441)
【出願日】平成21年6月12日(2009.6.12)
【出願人】(000208891)KDDI株式会社 (2,700)
【Fターム(参考)】