§1.ファイアーウォール概要
インターネットは危なっかしい場所です。インターネット上の犯罪者は、個人情報や他の目的のために他人のコンピュータに侵入することを企てています。そし
て誰にも見つからないように隠れる能力を持っています。さらに悪いことには、現在使用されているソフトウェアやオペレーティングシステム(OS)には常に
セキュリティホールがつきまとっています。このセキュリティホールは、多くの人のコンピュータがハッキングされた後に修正されるのが現状です。では、どう
すればいいのでしょう。
このまま放置するのか? インターネットを止めるのか? それとも、何かすべき対策があるのか?
ファイアーウォールを使用すれば自分自身を守ることが出来ます。過去、ファイアーウォールは会社のような組織が使用する高価なものでした。インターネット
にアクセスする大多数の個人利用者のものではありませんでした。十分な速度が確保できないダイヤルアップはハッカーの目的にそぐわなかったのです。そこ
で、ハッカーはより大きい帯域幅を利用している会社を攻撃の対象としていました。
今や、多くのインターネットユーザは極めて高速な帯域幅を安価な料金で利用できるようになっています。このようなインターネット世界の状況の変化にもかか
わらず、多くのユーザは自身のコンピュータの安全性を軽視している傾向があるため、ホームユーザはハッカーにとって安易に攻撃出来る対象に変化してきまし
た。このような経緯から、ホームユーザが自分自身を保護できるよう安価で強力なパーソナルユース(個人利用者用)のファイアーウォールがリリースされたの
です。
以下に記すことは、将来的にも自分自身が容易にウィルスやハッカーのターゲットにならないようにするために、「ファイアーウォールでどのように自分自身を
守るか?」ということに重点をおいています。
§2.ファイアーウォール
ファイアーウォールはあなたのコンピュータとインターネットの間に位置するハードウェア・デバイスもしくはソフトウェアです。要求した所以外からやってく
る全てのインターネット・トラフィックを遮断する道具です。
あるサイトを訪問した場合、ファイアーウォールはユーザのコンピュータにそのWebサイトからのトラフィックの受け入れを許可します。他方、そのWebサ
イトからの情報をユーザが要求していないのであれば、そしてWebサイトから勝手にトラフィックが送られてきたのであれば、そのトラフィックの受け入れを
拒否します。この時、あなたが許可を求められることはありません。なお、ファイアーウォールの設定は変更することが可能です。
パーソナルユースのファイアーウォールは、ハードウェアもしくはソフトウェアの一部とすることが可能です。
ハードウェアFirewallはインターネット接続とその他のプラグインとの間に位置するデバイスです。言い換えれば、インターネットなど外部ネットワー
クとLANなど内部ネットワークとの接点に設置され、ファイアーウォール機能を専門に提供するハードウェアということになります。このようなファイアー
ウォールは複数のコンピュータに接続を許可しているハブ中に設立されます(ハブは一つのインターネット接続を複数のコンピュータで共有するための道具で
す)。価格的にも高く、一般的には大規模なネットワークや高いセキュリティを必要とする組織などで導入されることが多いものです。個人ユーザがハードウェ
アFirewallを設定することはまずありません。
これらのファイアーウォールは、Network Address Translation(
NAT)と呼ばれる技術を用いてハブに接続する全てのコンピュータを保護します。この保護はプライベートIPアドレス(例えば、192.168.1.*)
を使用するため、Internet経由でそのコンピュータに到達することが出来なくなります。ハードウェアFirewallは内部的IPアドレスをファイ
アーウォールに割り当てられている公式のIPアドレスに変換します。このようにしてハードウェアFirewallはユーザの訪問先等からの入力要求を受け
入れます。このような手法のためコンピュータの外部から直接接続することはは不可能なのです。
パーソナルファイアーウォールは防御を必要とする各コンピュータにインストールされるソフトウェアの一つです。パーソナルファイアーウォールは全ての入力
側トラフィックと、ときどき出力側トラフィックをフィルターします。そして、要求された、あるいは明らかに通過を許さなければならないデータのみを許可し
ます。
パーソナルファイアーウォールはハードウェアFirewallより多くの機能を有する傾向にあります。しかし、ネットワーク上の複数のコンピュータにイン
ターネット接続を分配する機能は持っていません。
どのタイプのファイアーウォールを採用するかは、ユーザがどのような計画を持っているかによります。もしも、一台のコンピュータだけを防御したいのであれ
ばパーソナルソフトウェアベースのファイアーウォールがより適しています。複数のコンピュータを防御したいのであれば、ハードウェアベースのものの方が大
きなコスト効果があるでしょう。
一部の人々はネットワークを守るためにハードウェアFirewallとコンピュータを守るためにパーソナルFirewallの両方を使用すべきと言いま
す。しかし、この考えは「良い」と言い切れません。このような考えは多くのユーザが購入を中止するコストになります。ただ、金銭が選択肢にならないのであ
れば、両方使用することはセキュリティレベルをより高めることになります。
ココからは、パーソナルFirewallに焦点を当てています。
§3.ファイアーウォールの特徴
ファイアーウォールを選定する時は、それぞれのファイアーウォールがどのような特徴を持っているかということに注意を払うことが重要です。コンピュータを
どのように守るかということで大きな違いがあります。ある人達は特定の特徴を他より重要視しますが、セキュリティにおいて最も重要なことは入出力フィル
ター機能、アプリケーションの防御、警告、ステルスモードです。
入出力フィルタリング
フィルタリングとはファイアーウォールが、それを通り抜けようとする情報を調べ、その情報が出力あるいは入力される事が許容されるべきなのか、または作成
された規則に基づきフィルタされて捨てられるべきかを決定することです。
この機能がファイアーウォールのメインです。そして、この機能をどのように取り扱うかということが、セキュリティにとって重要なことなのです。
多くの人たちは入力側フィルタリング(コンピュータにデータが入ってくるときの処理)を最も重要な機能だと思っているようです。しかし、出力側フィルタリ
ング(コンピュータからデータが出て行くときの処理)もまたコンピュータセキュリティに重要な役割を演じています。ユーザの認識なしにマルウェアはコン
ピュータ中にインストールされます。このコンピュータに出力側フィルタリング機能を持つファイアーウォールをインストールすると、あなたのコンピュータ中
のデータが、インターネット上の何処かのリモートホストに送信されようとしているのが発見されるかもしれません。出力側フィルタリングは個人情報を守る上
で重要な機能なのです。
これらのフィルターは、コンピュータにやってくるインターネット接続のうち、特定のものを許可するように修正したり、あるいはコンピュータ中の特定のアプ
リケーションのインターネットへのデータ転送を許可するように修正したり出来ます。これらのルールをどのように作成するかは偏にユーザの必要性によりま
す。
ユーザがリモートデスクトップ(遠隔地からのWindowsの操作を受け付ける機能。WindowsXP
Professional等に搭載されています)を有効にしたいのであれば、リモードデスクトップの接続ポート(port 3389)を開放し、ファイ
アーウォールに通過を許可させる必要があります。このことは、インターネット上の遠隔地にある特定のコンピュータが、ファイアーウォールが守っているコン
ピュータに対しアクセスする許可が与えられているということを意味しています。
ステルスモード
ユーザのコンピュータに接続しようとする要求をブロックするだけでなく、そのコンピュータがインターネット上に存在しないように装うことも重要なことで
す。
インターネットにアクセスしている時、PCの入り口であるポートに対して無差別にポートスキャンと呼ばれる通信が行われています。この通信に対しファイ
アーウォールが通信を遮断したという反応を返さず、そこに入り口があることを隠す機能をステルスモードといいます。このため、ハッカーはあなたのコン
ピュータがインターネット上に存在するのか否かが判断できません。そこで、継続的攻撃を受け難くなるわけです。
プライバシーの保護
現在、多くのファイアーウォールがスパイウェア、ハイジャッカー、アドウェアをブロックする機能を持つようになってきています。これは、あなたのインター
ネット環境等からのプライバシー情報の流出を保護します。これらの機能は製品版ファイアーウォールには通常同梱されています。
アプリケーションの正当性(Application Integrity)
ファイアーウォールはコンピュータ中のファイルの修正や実行方法の変更を監視しています。このような変更が行われた時ユーザに対してアプリケーションを起
動するか否か、あるいはインターネットにデータを送信するか否かの警告を発します。これをApplication
Integrityと呼びます。多くの場合このような修正はアップグレードの場合です。しかし、悪意あるプログラム(マルウェア)が修正しているのかもし
れません。
侵入検知
侵入を企てる者はコンピュウタセキュリティを突破する様々な方法を使用します。侵入検知はコンピュータに入ってこようとするデータを分析し不正アクセスと
思われるパケットを検出して管理者に通知するシステムです。
侵入検知の通知はあなたのコンピュータがハッキングされようとしていることを意味しています。
警告
ユーザに対しファイアーウォール上で何が発生しているのか、あなたのコンピュータに対してどのような方法で侵入が企てられているのかを知らせてくれます。
§4.ファイアーウォールのモニタリングと習慣付け
監視
あなたが使用するファイアーウォールにかかわらず、時々ファイアーウォールのログをモニターする習慣をつけて下さい。ログのモニタリングを通じてセキュリ
ティの意識は向上し、コンピュータセキュリティそのものが向上することになります。
大部分のハッカーはハッキングする前にコンピュータに対する検証を行っています。ハッカーのこの検証のためのアクセスがファイアーウォールのログに残って
いるにもかかわらず、これを無視した結果ハッキングされるという事例が多いことは統計的に見ても明らかなのです。
コンピュータの管理者がハッカーの検証に気がついたならば、自分達のシステムの何処に脆弱性があるのかを確認することが出来るかもしれません。あなたのコ
ンピュータにファイアーウォールを導入し、ログを確認した時、如何に多くの入力通信があなたの認識無しに行われているかということに驚かれると思います。
ログファイルをモニタリングする理由は主に三つあります
予防対策 : ファイアーウォールのログをモニタする
ことによって、ハッカーが食い物にしようとしているのは、どのポートなのか、どのサービスなのかを理解することが出来ます。
この情報を利用して食い物にされそうになっている部分のセキュリティを高めることで、コンピュータをより安全にすることが出来ます。
例えば、ログにポート3127へのポートスキャンが多ければ、そして、その意味することを研究すれば、ハッカーやウィルスがMyDoom型ウイルスの亜種
によって残されたバックドア(裏口)を探しているのかもしれないということが解ります。
そこで、現在の潜在的脆弱性を利用されないようにする対策を取ることが出来るようになるのです。
鑑識 : あなたのコンピュータがリモートコンピュー
タによって感染させられていて、ファイルがハッカーによって置き換えられていた場合、そのファイルが置き換えられた日付と時刻を決定することが出来ます。
ハッカーがどのようにして侵入したかを決定するため、この情報を使用することで、その日時の活動をログのアーカイブからチェックすることが出来ます。この
情報はセキュリティにとって有用です。
当局への報告 : 一般的にハッキングに成功された場
合や、ハッキングが企てられている場合はログファイル中に見出される情報を使用して当局に通報することが許されています。ログ中には攻撃している者のIP
アドレス、使用された方法、実行された日時が含まれています。この情報が犯罪にかかわる場合は、所轄のISPや当局が機能してくれるはずです。
ルール確認の習慣付け
あなたのコンピュータの入出力トラフィックの許可・不許可を設定するためのルールやフィルターをときどき検証することを習慣付けてください。
時に、ファイル共有を含む様々な理由(プロトコル、メール、ftp、、ウェブ)でコンピュータへの接続を許したかもしれません。多くの場合、この時点で
ルールが作成されます。そして、ルールが作られていることを忘れ、残したままにしてしまうことは非常によく見られる現象です。
ファイアーウォールの設定は時々確認してください。不要なルールがあれば削除してください。必要の無いルールを作成したまま放置することは、ハッカーに潜
在的な通路を提供していることに他なりません。自分のコンピュータを危うくしている行為です。
§5.ファイアーウォールの一般的な問題
殆どのインターネットアプリケーションは、アプリケーションとインターネットの間にファイアーウォールが存在しないという前提で作成されています。ファイ
アーウォールを使用していると時々アプリケーションの一部の機能が動作しないことに出会ったことのある方は少なくないと思います。
たいていの場合、ファイアーウォールの入力トラフィックを許可するように設定変更することで実行可能になります。このような状況が発生した場合は、このア
プリケーションを許可するカスタムルールを作成してください。
この一例は、Windows XP
Professionalで他のコンピュータからあなたのリモートデスクトップに対しリモート接続を可能にしている場合です。ファイアーウォールは
Defaultであなたのコンピュータの全ての入力トラフィックをブロックするように設定されています。そのため、リモートデスクトップに対し接続を試み
た時、接続は拒否されます。Googleでリモートデスクトップを検索すれば、リモートデスクトップが入力接続の受け入れにTCPポート3389を使用し
ていることを見出せるはずです。そこで、TCPポート3389の入力接続を受け入れるようにファイアーウォールのルールを変更してください。こうすれば、
遠隔的にあなたのコンピュータにアクセスすることが可能になります。
ファイアーウォールと共にアプリケーションを使用し結果として問題を抱えた時は、そのアプリケーションがファイアーウォールに要求しているサービスは何か
(例えば、TCP、UDP等)、開こうとしているポートは何かということをインターネットで検索してください。その後、コンピュータに到着する特定のトラ
フィックを許可するようにファイアーウォールのカスタムルールを作成してください。
§6.良く知られているファイアーウォール
市場には多くのタイプのファイアーウォールがあります。それぞれ、強さも弱さも持っています。以下にパーソナルFirewallをリストアップしておきま
す。無料版ファイアーウォールが提供されている時は、機能があなたの要求を満たすものであるか否かを十分検討してください。製品版ファイアーウォールと較
差のある場合が多いですから。
無料版パーソナルFirewall
Jetico Personal
Firewall : http://www.jetico.com/index.htm#/jpfirewall.htm
Kerio Personal Firewall : http://www.kerio.com/ (2005年12月31日で更新終了となります)
NetVeda Safety.Net : http://www.netveda.com/consumer/safetynet.htm
Outpost Firewall : http://www.agnitum.com/
Zone Alarm Free : http://jp.zonelabs.com/
製品版パーソナルFirewall
Black Ice : http://www.blackice.jp/
Kaspersky Anti-Hacker : http://www.kaspersky.com/antihacker
Kerio Personal Firewall : http://www.kerio.com/ (2005年12月31日で更新終了となります)
McAfee Personal Firewall : http://www.mcafeesecurity.com/japan/products/
Norton Person
Firewall : http://www.symantec.com/region/jp/products/index.html
Outpost Firewall Pro : http://canon-sol.jp/product/op/index.html
Tiny Personal Firewall : http://www.tinysoftware.com/
Zone Alarm Pro/Plus : http://jp.zonelabs.com/
SygateはSymantecに買収されましたので、リストから外しています。