【特集】 ファイアウォールの機能の現状と将来 (前編)
〜ポイントは、使用目的に応じたファイアウォールの選択〜
丸山 龍一郎
ストーンソフト・ジャパン
ネットワークセキュリティーマネージャー
2001/11/21
“製品ありき”の導入でよいのか |
「あなたの会社はどのようなセキュリティ対策をしていますか?」と聞かれて最初に思い浮かぶのは、恐らく“ファイアウォールの導入”であろう。これほどまでに社会に認識されるようになったファイアウォールであるが、実際に企業で導入する場合には何を基準として検討されているのか?
製品の選定担当者は、ビデオカメラやオーディオ製品などの家電製品と同じようにカタログデータや雑誌の評価記事を基に、機能面/性能面/サポート面を比較して検討していると思われる。雑誌などに掲載されるファイアウォール製品の機能比較やマーケットにおけるシェアなどの統計情報は少なくないが、筆者としては現在のマーケット動向を示す指標という以外あまり意味を感じない。
しかし、実際は、統計情報や評判を基にファイアウォール製品を決定するケースが多い。「あの企業もあそこのファイアウォールを使っているようだ」といった、いわゆる“まず製品ありき”というのが現状であり、米国でも同様な状況だ。これはファイアウォール製品だけに限ったことではなく、アンチウイルス製品や侵入検知製品でも同様である。実際、ファイアウォールには複数のアーキテクチャがあり、それぞれ得意/不得意がある。また、企業がインターネットやエクストラネットと接続する場合には、その環境を使用してどのような業務を実現したいのかということが最初にあるはずである。従って、ファイアウォール製品は、実現したいことが問題なく可能で、実現方法がよりセキュアなファイアウォール・アーキテクチャを持ち、運用面、サポート面が充実している製品を選定すべきだろう。
日本では2000年7月にセキュリティ評価・認定制度という日本工業規格(JIS X 5070)が制定された。これは、国際的な情報セキュリティ評価基準であるISO/IEC
15408に基づいた制度。この制度は、情報システムやそれを構成する製品について、セキュリティ製品の機能や実現されるセキュリティレベルを評価基準に基づいて評価するものだ。そして、その評価の過程と結果を第三者の認証機関が認証するというもの。これによって、セキュリティ製品のカタログ上に記載されている機能が実現されているか、マニュアルに記載されているとおりに動作するかなど、いままで実際に導入してみないと明らかにならなかった部分が第三者によって評価されるわけである。この制度により、セキュリティ製品を調達する場合の1つの判断基準が完成する。近い将来は、ISO/IEC
15408をクリアしていることがセキュリティ製品を導入するうえでの最初の選択基準となるだろう。
このようにセキュリティ製品側は世界標準に基づいて評価される環境が整いつつある現在、ユーザー側ではより的確にどの製品を選定すべきかを判断できるような目を養う必要がでてくる。
ファイアウォールの基本機能 |
本記事では、ファイアウォール製品を選定するうえでどのようなアーキテクチャを持つ製品が最も適しているか個々のアーキテクチャについて詳細に説明することにする。説明に当たっては、製品としてはすでに存在していないが、ファイアウォール機能を分割して実現していた「SEAL」(Secure
External Access Link)という製品を使用して説明する。
世界で最初の商用ファイアウォールは、ディジタルイクイップメント(現在のコンパックコンピュータ)のSEALであるといわれている。SEALの基本構成は3台のコンピュータにファイアウォールの機能を分割してセキュリティシステムを構築するというものだった(図1)。
|
||||||||||
図1 SEALの構成例 |
ファイアウォールに必要とされる最も基本的な機能は、アプリケーション・ゲートウェイ機能、パケットフィルタリング機能、ロギング機能の3つである。
SEALでは、これらの機能を下記の3台のシステムで実装していた。
Gatekeeperシステム | アプリケーション・ゲートウェイを実行するシステム |
Gateシステム | パケットフィルタリングを実行するシステム |
Mailgateシステム | メールスプール・ログ収集を実行するシステム |
3台のシステムについて詳細に説明する。
- アプリケーション・ゲートウェイ機能
ファイアウォールの導入目的は、企業が持つセキュリティポリシーをシステム的に実装することにある。例えば、「インターネット上で公開されているようなホワイトペーパーなどの資料はダウンロードしてもいいが、社内で作成された資料に関しては一切持ち出しは禁止する」といったアプリケーションの利用ポリシーを実装するには、アプリケーション層で制御をする必要がある。SEALでは、Gatekeeper上に利用するアプリケーション・ゲートウェイを定義する。一般的な企業では、SMTP、 HTTP/HTTPS、 FTP、 DNSなどのアプリケーション・プロトコルが対象となる。
- パケットフィルタリング機能
パケットフィルタリングは、双方のネットワーク間で送受信されるパケットの種類を制限する。さらに、アプリケーションを利用する場合のアクセスの方向性(イントラネットからインターネットへのアクセスのみ許可するなど)を制限することを目的としている。SEALでは、イントラネット上のクライアントが直接インターネット上のリソースへアクセスしないように、アクセス経路を制限するためにパケットフィルタリングを使用している。つまり、社内からインターネット上のリソースにアクセスするには必ずGatekeeper上のアプリケーション・ゲートウェイを経由しなければならないということである(これにより、アプリケーションの利用に関するポリシーは、Gatekeeper上のアプリケーション・ゲートウェイに定義されている内容に準じる)。
- ロギング機能
パケットフィルタリング機能が処理した情報やアプリケーション・ゲートウェイが処理した情報は、個々のシステム上に保存される。これらの情報は、仮にシステムに侵入された際にはその形跡を消すために侵入者によって書き換えや削除をされる可能性が高い。これを妨ぐためにSEALでは個々のシステムでロギングすると同時にSYSLOGの機能を使用してMailgateシステム上にも転送して2カ所でロギングを実行した。
このように複数台のシステムから構成されるSEALは、当時(1980年代)では、インターネット接続をしている企業が少なく、高いセキュリティを実現したい企業の導入実績に限られていた。
しかし、現在は、インターネット接続が当たり前となり、接続する場合にファイアウォールは必須のセキュリティデバイスとなった。さらに大企業からSOHOまでをカバーするような製品ラインナップがそろい、設定や管理もより容易にできるようにOne-Box化やアプライアンス化が図られている。One-Box化されることで先に説明した3つの基本機能が1つのシステムで実装されるようになった。
SEALのように3台構成でファイアウォールを構築することで、侵入者はルータ->Gatekeeper->Gateに侵入しないと社内ネットワークには入り込めないといった高いセキュリティレベルを実現していた。
しかし、これは業務上利用するアプリケーション(FTPやTelnetなど)が限られていたために実現できていることだ。インターネットが普及してくるにつれてさまざまなタイプのアプリケーションが開発されてきた。例えば、ストリーミング系のアプリケーションである。これらは、データ転送にUDPを使用するため、SEALでは対応できなかった。
ファイアウォール製品がマーケットに残るためには、ネットワークアドレス変換(NAT)、暗号化(VPN)、侵入検知(IDS)、クラスタリング、パフォーマンスなどといったそのときのインターネット環境の変化に伴う用途にこたえる機能を持たなければならないのである。
ファイアウォールのアーキテクチャ |
現在マーケットに展開されている商用ファイアウォールをアーキテクチャによって分類すると大きく2種類のタイプに区別することができる。
パケットフィルタリング型
|
アプリケーション・ゲートウェイ型
|
ここで2つのアーキテクチャについて詳細に説明する。
(1)パケットフィルタリング型
主にルータに実装されているアーキテクチャであり、ネットワーク層でのアクセス制御を行う。アクセス制御は、通過するパケットのIPヘッダ情報(送信元アドレス/ポート番号、送信先アドレス/ポート番号)と、定義されているフィルタリング・ルールを比較走査することによって行われる(図2)。
|
|
図2 パケットフィルタリング型 |
例えば、ネットワークA(network-A)からネットワークB(network-B)へのPINGを許可するフィルタリング・ルールを記述する場合、以下のようなルールとなる。
from network-A to network-B proto
icmp type echo-request accept; from network-B to network-A proto icmp type echo-reply accept; |
フィルタリング・ルールを定義する場合、上で示したようにTCP/IPとその上位のアプリケーションに関する知識を必要とする。さらに、定義されたルールは上から下の方向に比較走査されるため、何行にもわたるルールを定義すると整合性チェックのパフォーマンスを下げる(パケット通過パフォーマンスの低下と考えてよい)と同時に管理者側でのルールの整合性・一貫性のチェックも困難となり、セキュリティホールの原因につながる。
利点 | ・ネットワーク層で実行するため、高いパフォーマンスを実現 ・アプリケーションに依存しない |
欠点 | ・IPヘッダ情報のみで判断するため、セキュリティレベルが低い(IP Spoofing(IPアドレス偽装)攻撃には弱い) ・アプリケーションレベルでのアクセス制御ができない(パケットのペイロードに関しては制御できない) ・RFC1817に基づくプライベートアドレスを社内のネットワークで使用する場合は、アドレス変換機能が必要(アプリケーションによっては、アドレス変換に対応していないものがある) ・アプリケーションの通信が複数のセッションから構成される場合のアクセス制御に制限がある ・ ログ情報はIPヘッダ情報以外記録できない |
(2)アプリケーション・ゲートウェイ型
アプリケーション層でアクセス制御を行うため、個々のアプリケーションに対応したゲートウェイプログラムが必要となる(例えば、FTPを利用する場合には、FTP-GWというゲートウェイプログラムが必要)。このゲートウェイプログラムは、1つのサーバ/クライアント間の論理セッションを実現するために2つの物理セッションを使用する。クライアント−ゲートウェイ間とゲートウェイ−サーバ間のセッションである(図3)。
|
|
図3 アプリケーション・ゲートウェイ型 |
アクセス制御は、そのアプリケーションに応じて複数のステップで行われる。
|
FTPを例にすると、
|
利点 | ・アプリケーション層で詳細にアクセス制御を実行するため、高いセキュリティレベルを実現 ・ログ情報も詳細に記録可能 (アプリケーションが使用するレベルの情報までログに残すことが可能である。例えば、FTPの場合であれば、GETしたファイル名、PUT使用としたファイル名などを確実にログに記録するこ とが可能である) |
欠点 | ・パフォーマンスが悪い(すべての通信をアプリケーション層で実行するため) ・システムリソースが必要(システムチューニングがなかなか難しい) ・新規アプリケーションに対するゲートウェイプログラムのサポートに時間がかかる |
ここまでは、第1世代のファイアウォールが実装していた機能である。インターネット接続企業の増加や新たなアプリケーションの出現、さらにビジネスのインフラとしてのインターネットの利用といった環境の変化を機に、2つのアーキテクチャに対して改良が加えられることになる。
「ファイアウォール・アーキテクチャの改良」へ |
|
||||||||||||
|
|
Security&Trust記事一覧 |
- Windows起動前後にデバイスを守る工夫、ルートキットを防ぐ (2017/7/24)
Windows 10が備える多彩なセキュリティ対策機能を丸ごと理解するには、5つのスタックに分けて順に押さえていくことが早道だ。連載第1回は、Windows起動前の「デバイスの保護」とHyper-Vを用いたセキュリティ構成について紹介する。 - WannaCryがホンダやマクドにも。中学3年生が作ったランサムウェアの正体も話題に (2017/7/11)
2017年6月のセキュリティクラスタでは、「WannaCry」の残り火にやられたホンダや亜種に感染したマクドナルドに注目が集まった他、ランサムウェアを作成して配布した中学3年生、ランサムウェアに降伏してしまった韓国のホスティング企業など、5月に引き続きランサムウェアの話題が席巻していました。 - Recruit-CSIRTがマルウェアの「培養」用に内製した動的解析環境、その目的と工夫とは (2017/7/10)
代表的なマルウェア解析方法を紹介し、自社のみに影響があるマルウェアを「培養」するために構築した動的解析環境について解説する - 侵入されることを前提に考える――内部対策はログ管理から (2017/7/5)
人員リソースや予算の限られた中堅・中小企業にとって、大企業で導入されがちな、過剰に高機能で管理負荷の高いセキュリティ対策を施すのは現実的ではない。本連載では、中堅・中小企業が目指すべきセキュリティ対策の“現実解“を、特に標的型攻撃(APT:Advanced Persistent Threat)対策の観点から考える。
|
|