時空間解析に基づく 分散型ファイアウォール診断技術 ·...
TRANSCRIPT
1
時空間解析に基づく分散型ファイアウォール診断技術
名古屋工業大学
大学院工学研究科 情報工学専攻
教授 高橋 直久
2
研究の背景と問題点
ネットワークトラブル
• それぞれの原因を調査する必要がある.
• 手作業では時間を要する.
• 原因究明が困難な場合もある.
研究室A 研究室B
学科
学校
インターネットインターネット
ファイアウォール
ファイアウォール
症状
• ケーブルの断線
• ホストの設定誤り
• サーバの故障
• ファイアウォールの設定誤りなど・・
原因
ファイアウォールの設定誤りの場合,
誤り箇所と修正方法を知りたい
様々な可能性がある
• 来るべきでないパケットが到着する
• 来るべきパケットが来ない
3
ファイアウォールの設定誤り
ネットワークトラブル
• 来るべきでないパケットが到着する
• 来るべきパケットが来ない
研究室A 研究室B
学科
学校
インターネットインターネット
ファイアウォール
ファイアウォール
症状
セキュリティホールの発生不到達メールの発生
設定誤りの調査(例)[Wool04]企業等で実際に使用されているファイ
アウォール37件を調査したところ,すべてにおいて設定誤りが認められた
[Wool04] A. vishai Wool, "A Quantitative Study of Firewall Configuration Errors." Computer, Vol. 37, No. 6, pp. 62–67, Jun., 2004.
4IPパケットフィルタリング
フィルタ1:フィルタ2:フィルタ3:
……
フィルタリングポリシーアクション条件(述語)
フィルタの構造
Protocol type=tcp/udpSrcIP = 129.6.48.254DesIP = 123.4.5.*SrcPort ≥ 1023DesPort = 25
……
AcceptDeny
記述例
Type SrcIP DesIP SrcPort DesPort Actionf1 tcp * 123.4.5.6 >1023 23 Accept f2 tcp * 123.4.5.* >1023 25 Acceptf3 tcp 129.6.48.254 123.4.5.9 >1023 119 Acceptf4 udp * 123.4.*.* >1023 123 Acceptf5 * * * * * Deny
ヘッダのフィールド毎に条件を設定
条件を総て満たすパケットにアクション(通過/廃棄)を施す
5
FTPサーバ1
ホスト Webサーバ1
FW(下流)
設定 F2
パケットキャプチャ
設定 C
侵入検知システム(IDS)
設定 I
FW(上流)
設定 F1
多地点でのネットワークの監視と制御多地点でのネットワークの監視と制御
• 地点相互の関係を理解するのが困難で,他の設定が及ぼす影響を見落とすことがある.
• 各地点で設定する管理者が異なる場合がある.
• ネットワーク変動や別の設定の変更に応じて設定を変更するのが難しい場合がある
• 公開実験等でサーバを一時的に外部からアクセスできるようにするために設定を変更する.
設定誤りを引き起こす要因
6
階層的なファイアウォーの整合性
WAN
上流の設定
下流の設定
ファイアウォール 1
ファイアウォール 2
矛盾、冗長のフィルタが存在する可能性がある
上流と下流のフィルタリング動作
FTPサーバ
ウェッブサーバ
LAN
パケットA廃棄の指定
パケットA通過の指定
矛盾のある指定(例)
上流
下流
7
f1 123.4.56.78≦SrcIP<123.4.56.90 Accept f2 10≦DstPort≦20 Acceptf3 * * Deny
パケットフィルタの操作的な解釈
if (123.4.56.78≦P.SrcIP and P.SrcIP<123.4.56.90) then Accept Pelse if (10≦P.DstPort and P.DstPort≦20) then Accept Pelse Deny P
フィルタリングポリシー
操作的解釈
8
f1
フィルタリングポリシーの空間的表現
f1,f2は2次元パケット空間の部分空間
X1 X2 Actionf1: 1≤X1<5 1≤X2<4 Acceptf2: 3≤X1<6 3≤X2<6 Deny
フィルタリングポリシー
条件1 条件2
0 1 2 3 4 5 6 7
1234567
f2
X1
f1 f2
2次元パケット空間
X2パケット空間(N次元空間,2H個の点)上の点(ヘッダの値が座標)として表す
ヘッダ
データxx11 xx22 xx33 xxNNパケット
Hビット(Nフィールド)
フィルタ空間全条件を満たすパケットを総て包含する空間としてフィルタを表す
★
パケット
フィルタ空間
10
f1 123.4.56.70≦SrcIP<123.4.56.90 Accept f2 10≦DstPort≦25 Acceptf3 123.4.56.50≦SrcIP<123.4.56.60 15≦DstPort≦20 Acceptdefault * * Deny
設定誤りの例(冗長なフィルタがある場合)
if (123.4.56.70≦P.SrcIP and P.SrcIP<123.4.56.90) then Accept Pelse if (10≦P.DstPort and P.DstPort≦25) then Accept P
else if ((123.4.56.50 ≦P.SrcIP and P.SrcIP<123.4.56.90)and (15≦P.DstPort and P.DstPort≦20) ) then Accept P
else Deny P
操作的解釈
決して実行されないアクションが存在する どこ?
if文の条件部が真にならないような場合があるか?
13
f gg
f fg
fg
(a) disjoint
f g
(b) equivalent (c) inclusion1 (d) inclusion2 (e) correlation
空間的解析に基づく設定誤りの検出
R(f,g): 2つのフィルタ f,g の空間的関係
R’(C,g): フィルタの組合せ C[f1,f2,…,fk] とフィルタ g 空間的関係
Disjoint: 誤り有りCorrelation: ウォーニング(誤りの可能性あり)Inclusion, equivalent: 誤り有り
すべてのフィルタの組合せに対して,R’(C,g) を求めて誤りを網羅的に検出
14
時間変動を伴うファイアウォール
1.ステートフルファイアウォール通信の状態によりフィルタの動作を変化させる例:あるパケットが通過した場合に,他のフィルタを有効にする・ 必要な時だけポートをあけることが可能・ ステートテーブルに通信状態を保持する.・ ステートテーブルの値に従ってフィルタの動作を決める.
2.時限付きフィルタを許すファイアウォールフィルタに付与された時限に従ってフィルタ系列を解釈する
例: 指定された日時だけフィルタを有効にする.
15
ステートフルファイアウォールの動作例
f1:iptables -A FORWARD -m state --state ESTABLISHED -j ACCEPTf2:iptables -A FORWARD -p tcp -d 133.68.13.0/24 --dport 22 -j ACCEPTf3:iptables -A FORWARD -p tcp -d 133.68.13.13.41 --dport 80 -j ACCEPTf4:iptables -A FORWARD -j DROP
ステートフルファイアウォール
ステートフル設定
ステートテーブル
133.68.13.32 1474133.68.13.41 80
パケットP1
[ tcp 120 133.68.13.32 1474 133.68.13.41 80 133.68.13.41 80 133.68.13.32 1474 ]
パケットP1
• ステートテーブルの内容は時刻によって違う• 過去の状態を把握できないため,パケットが到達した原因のフィルタを調
べることが困難
ステートテーブル
ステートフル設定
送信元:133.68.13.41 80宛先:133.68.13.32 1474
廃棄通過
パケットP2送信元:133.68.13.32 1474宛先:133.68.13.41 80
通過
UNREPLIED
送信元:133.68.13.41 80宛先:133.68.13.32 1474
パケットP2
16
時間変動を伴うファイアウォールの解析
1. 時間的解析ステートテーブルの変化,フィルタの時限を解析
して,時間変動のないフィルタ系列に変換する.2. 空間的解析
フィルタ間の空間的関係に基づいて設定誤りを
検出する
17
時限付きフィルタを有するファイアウォールの解析
18
従来技術とその問題点
従来技術として,パケットフィルタの操作的解釈に基づく解析を網羅的に行う設定誤り検出法があるが,
(1)複数のフィルタの組合せにより生じる設定誤りを検出できない,
(2)時間変動を伴うファイアウォールに適用できない,
等の問題があり,広く利用されるまでには至っていない.
19
新技術の特徴・従来技術との比較
• 従来技術では対応できなかった2つ問題を解決することに成功した.
• 従来は操作的解釈に基づいていたため単一フィルタにより生じる設定誤りの検出に限られていたが、空間的解析技術の開発により複数フィルタにより生じる設定誤りなど各種誤りを網羅的に検出することが可能になった.
• 時間的解析と空間的解析を組み合わせた誤り検出技術を開発することにより,従来技術では適用できなかったステートフルファイアウォールなどの時間変動を伴うファイアウォールの設定誤りの検出が可能になった.
20
想定される用途
• 本技術の特徴を生かすためには,ファイアウォールの設定システムに組み込んで設定誤りを検出機能を付加することにより,ファイアウォールシステムの価値を高めることが可能である.
• ネットワーク監視・運用システムに組み込んで,運用時に発生する異常を究明する能力を向上させることにより,システムの価値を高めることが可能である.
• ネットワークの運用指針を定めたセキュリティポリシーとファイアウォールの設定を比較して整合性を検証するシステムへの適用も可能である.
21
実用化に向けた課題
• 現在,標準形式で記述された簡単なファイアウォールの設定例を対象に,設定異常の検出が可能なプロトタイプを開発済み.しかし,実際のファイアウォールに適用するためには,そのファイアウォールの記述言語から標準形式への変換ソフトウェアの開発が必要.
• 今後,解析に必要な計算時間とメモリ量について実験データを取得し,大規模な設定に適用していく場合の条件設定を行っていく.
• 実用化に向けて,計算時間とメモリ量を減少できるよう技術を確立する必要もあり.
22
企業への期待
• ファイアウォールの開発技術及び運用技術を持つ,企業との共同研究を希望.
• また,ネットワークの運用サービス事業を行っている企業には,本技術の導入が有効と思われる.
23
本技術に関する知的財産権
• 発明の名称 :ステートフルファイアウォール設定解析方式
• 出願番号 :特願2008-18839• 出願人 :名古屋工業大学
• 発明者 :高橋直久,片山喜章,肥田和明
• 発明の名称 :ファイアウオールの制御方式及び設定解析方式
• 出願番号 :特願2008-31236• 出願人 :名古屋工業大学
• 発明者 :高橋直久,片山喜章,高木麻未
24
お問い合わせ先
名古屋工業大学大学
産学官連携センター 企画・管理部門
TEL 052-735-5627
FAX 052-735-5542
e-mail c-socc.all@ml.nitech.ac.jp