平成 13 年度卒業研究発表会(日本大学工学部情報工学科) B-4 IDS と Firewall を連携した Dynamic Firewall の実装と評価 Implementation and Evaluation of Dynamic Firewall coordinating IDS and Firewall 106140 1 中村 宜史 はじめに 今日、インターネットによる電子メール WWW による 情報検索は、日常生活に欠かせない手段として普及して いる。また、ADSL 等の普及に伴いサーバをインターネ ットに常時接続する SOHO 等も増加している。一方、コ ンピュータウイルスやサーバのハッキングといった負の 面での問題も顕在化しており、インターネットはもはや 自己防衛なしでは利用できないという現状となりつつあ り、今後もこうした事態は深刻化するものと想定される。 現在、こうした問題に対応するため、多くのサイトで IDS(Intrusion Detection System)のようなセキュリ ティシステムの導入が検討されている。また、商用の IDS には Firewall と連携できるものもあり、IDS で検知した 攻撃を逐次 Firewall でフィルタリングすることができ る。しかし、商用の IDS、Firewall は高価なものが多く、 個人や小規模サイトでは導入が困難な場合が多い。しか しながら、小規模サイトのセキュリティがおざなりにな ると、そのサイトのみでなく、そのサイトを踏み台にし て、それ以外のサイトにも影響を及ぼすという悪循環を 生む可能性が生じる。このため、フリーで気軽に使用で きる Firewall と IDS を連携させるソフトが必要となる。 本 研 究 で は 、 こ う し た 問 題 に 対 応 す べ く IDS と Firewall を連携し、DoS(Denial of Service)等の攻撃 を自動的にフィルタリングする Dynamic Firewall を作 成し、評価実験を行った。本稿では、試作した Dynamic Firewall について紹介するとともに、代表的な攻撃パタ ーンに対する実験結果を報告する。 2 3.2 Dynamic Firewall の詳細 Dynamic Firewall は以下の表1のソフトウェアが動 作している環境下で動作可能である。記入されているソ フトは全てフリーである。また、図1に、プログラム構 成を示す。Security Coordinator が新規に作成した機能 で、IDS と Firewall の連携を行っている。 表1.snortwall 動作環境 必要ソフトウェア OS Linux snort、iptables、perl FreeBSD snort、ipfw(ipf)、perl NetBSD snort、ipf、perl OpenBSD snort、ipf、perl Firewall Filtering Type Filter Com mand Security Coordinator Security Coordinator Au dit Fi le IDS Detect Attack Create File Log 図1.Dynamic Firewall のプログラム構成 IDS IDS は、不正侵入行為を検知し、管理者に警告するこ とを目的に作成されたツールである。検出手法と形態か ら以下のような種類に分けることができる。 検出手法からは、不正アクセスによって生じるイベン トの特徴情報をあらかじめデータベールに登録しておい て入力情報と比較する不正検出と、システムやユーザの 正常な挙動の統計情報をプロファイルデータとして保存 し、監視している入力情報とこのプロファイルデータと 相関をとり侵入か否かを判定する異常検出に分けられる。 検出形態からは、ネットワーク上を流れるパケットを 収集し、パケットのヘッダ等の情報を監視し、侵入を監 視する Network-based IDS と、OS やアプリケーション が 生 成 す る ロ グ ( Syslog ) 等 か ら 侵 入 を 検 知 す る Host-based IDS に分類できる。 3 [竹中研究室] 3.3 Dynamic Firewall の設定 (1)ファイル構成 Dynamic Firewall は、本体となる dfw.pl、フィルタ リングする対象となる攻撃名が記述されている attack.conf、フィルタリング時の一時的なデータが保存 される ipsaves から構成される。 (2)攻撃設定ファイル フィルタリングしたい攻撃の設定は、attack.conf とい う攻撃設定ファイル中のフィルタリングしたい攻撃名の コメントアウト(#)を外すことにより行う。このファイ ルにフィルタリングした攻撃名が無い場合は別途書き加 え る 。 図 2 の 例 で は 「 DOS Land attack」 と 「 DOS Teardrop attack」がフィルタ対象となる。 Dynamic Firewall 3.1 Dynamic Firewall の動作概要 Dynamic Firewall は、Snort が検知した攻撃ログを監 視し、ドロップするよう設定した攻撃であった場合、そ の IP からのコネクションを全て切断する、この動作を 繰り返すことで動的なフィルタリングを可能にしている。 また、一度フィルタリングした IP アドレスを一定時間 経過後解放するか、否かの設定が可能で、解放するまで の時間も設定することができる。 フィルター対象 図2.attack.conf 設定例 (3)フィルタリング条件ファイル 本システムでは、dfw.pl ファイル中の各設定項目を変 更することで、「IP 開放時間」等の設定が可能である。 平成 13 年度卒業研究発表会 4 B-4 性能評価実験 Dynamic Firewall のフィルタリング能力について、 以下の実験を行った。 4.1 実験環境 4.2 実験内容 (実験1) 無負荷時でのフィルタリング処理時間 前節で挙げた攻撃を Source から Destination に行い、 フィルタリング処理が完了するまでの所要時間を、 tcpdump の出力ログを確認しながら測定した。実験では、 フィルタされた IP アドレスを30秒で解放する設定と し、繰り返しフィルタリングまでの所要時間を測定した。 この実験を30分間繰り返し、平均値を求めた。 図3に実験結果を示す。横軸は攻撃名、縦軸はフィル タリング処理が完了するまでの所要時間である。この実 験から、Snort のルールに存在する攻撃はフィルタリン グすることが可能であることが確認することができた。 また、図3に示すように、PenⅢマシン、K6-Ⅱマシン共 に5秒以内にフィルタリング処理を完了することができ た 。 こ れ に よ り 、 低 ス ペ ッ ク マ シ ン で も Dynamic Firewall を十分適用可能であることがわかった。 K6-Ⅱ K6-Ⅱ 533MHz 533MHz 10 フ フ 10 99 8 ル ル 8 タタ 77 リリ 66 5 ン ン 5 4 グ グ 4 3 時 時 3 2 間 間 2 (Sec) (Sec)11 00 ィ ィ フ 10 フ 10 99 ル ル 88 タタ 77 リリ 66 ン ン 55 グ グ 44 時 時 33 間 間 22 1 (Sec) (Sec) 1 00 PenⅢ PenⅢ 1GHz 1GHz LAND LAND IGMP IGMP TFN2K TFN2K NMAP NMAP NMAP NMAP-O -O 図3.平均フィルタリング時間 (実験2) 高負荷時の平均フィルタリング処理時間 フリーソフトの Nana を用い、25∼35Mbps の負荷を かけた状態で、実験1と同様の攻撃を行い、フィルタリ ング処理が完了するまでの所要時間を測定した。 図4に実験結果を示す。30Mpbs 程度の環境下におい ても、PenⅢマシンであれば4秒以内に、K6-Ⅱマシンで も 10 秒以内にフィルタリング処理を完了することがで LAND LAND IGMP IGMP TFN2K TFN2K NMAP NMAP NMAP NMAP-O -O 図4.高負荷時の平均フィルタリング時間 4.3 Dynamic Firewall の効果と問題点 DoS や DDoS、スキャン等の攻撃については、フィル タリングできることを確認した。従って、スキャンを行 った後に、ハッキングを行う通常のハッキングに対して は、Dynamic Firewall でスキャンの段階でフィルタリ ングし、ハッキングを未然に防止することが可能である。 外部からの攻撃だけでなく、内部まらの外部への攻撃に 対しても対応できる。また、ウィルス感染による DoS 等 の攻撃を検知し、フィルタリングすることも可能である。 しかし、IDS(Snort)のルールに存在しないような新 規の攻撃や受動攻撃については、Dynamic Firewall の フィルタリングは不可能である。スロースキャンのよう な Snort のデフォルト設定では検知できない手法を用い られた場合、これを検知しフィルタリングするためには Snort の調整が必要となる。また、ウィルスについては Snort に検知機能はあるもの検出速度等の面から適応は 困難と考えられる。 5 K6-Ⅱ K6-Ⅱ 533MHz 533MHz PenⅢ PenⅢ 1GHz 1GHz ィ ィ Source は複数台から成り、正常なパケット、又は不正 なパケット(攻撃)を送信する。Destination は1台か ら成り、IDS(Snort)と Firewall(iptables、ipfw、ipf)、 Dynamic Firewall を動作させる。フィルタリングされ ているか否かは Destination のフィルターリングソフト や tcpdump でチェックする。また、ntop を用いて、ネ ットワーク中のトラヒックを適時測定する。 また、実験には以下の攻撃を用いる。 ・ DoS: LAND、IGMP dos Attack ・ DDoS: TFN2K ・ Scan : Portscan ( NMAP )、 OS 識 別 ス キ ャ ン (NMAP) 代表的な攻撃やスキャンである LAND や IGMP、 TFN2K、Portscan、OS 識別スキャンを用いることによ り、DoS や Scan に対して指標となる値を求めることが 可能である。また、高スペックマシンとして、Pentium Ⅲ 1GHz(以下 PenⅢ)、低スペックマシンとして K6Ⅱ 533MHz(以下 K6-Ⅱ)を使用した。 きた。また、PenⅢマシンを用いた場合、LAND 攻撃や NMAP スキャンについては、無負荷時とほぼ同時間でフ ィルタリング処理を完了していた。このことから、25∼ 35Mbps の負荷では、フィルタリング処理にあまり影響 がないといえる。以上から、30Mbps 以下の個人使用、 SOHO などの小規模ネットワークであれば、低スペック のマシンであっても、本 Dynamic Firewall は十分適用 可能であるといえる。 むすび フリーソフトの IDS と Firewall を連携した Dynamic Firewall を構築した。このシステムに対して、各種の攻 撃ツールを用いた評価実験を行い、フィルタリング時間 測定実験を行った。その結果、IDS 機能を司る Snort の 攻撃検出可能な範囲で、攻撃パケットをフィルタリング 可能なことを確認した。また、30Mpbs 程の環境下にお いて、PenⅢマシンであれば4秒以内に、K6-Ⅱマシンで も 10 秒以内にフィルタリング処理を完了することがで き、個人使用、SOHO などの小規模ネットワークであれ ば 、 低 ス ペ ッ ク の マ シ ン で あ っ て も 、 本 Dynamic Firewall は 十 分 適 用 可 能 で あ る と い え る 。 今 後 は 、 Dynamic Firewall の非検知率あるいは、誤検知率につ いて評価を進め、現実的な環境での適応性を評価すると ともに、より使いやすい HMI を構築していく必要があ る。 参考文献 [1] 武 田 圭 史 , 磯 崎 宏 , ネ ッ ト ワ ー ク 侵 入 検 知 、 SOFT BANK Publishing,pp12-41(2000) [2] Linux 版 ク ラ ッ カ ー 迎 撃 完 全 ガ イ ド ,SAMS impress ,pp441-468(2000)
© Copyright 2024 Paperzz