【特集】

生まれ変わったWindows XP - SP2のすべてを知る

3 Windows XP SP2の新機能(2) 外部からのアタックを防ぐ「Windowsファイアウォール」

阿久津良和  [2004/09/01]

ネットワークセキュリティは、現在のようにインターネットが普及している環境では、欠かせない機能と言えるだろう。そのため、セキュリティに敏感なユーザーは、個人向けファイアウォールソフトを独自に導入しているケースが多い。本来Windows XP Service Pack 1にも、「ICF(Internet Connection Firewall)」または「インターネット接続ファイアウォール」というファイアウォール機能が用意されている。しかし、その使い勝手の悪さがたたり、使っているユーザーはあまり多くなかったのが現状だ。それを踏まえてかSP2では、ICFをベースとし大幅に改良を加えた「Windowsファイアウォール」を搭載してきた。

Windowsファイアウォールは、TCP/IP(もしくはIPv6)経由の外部からの接続を回避するための機能で、ネットワークインタフェースごとの有効/無効化や静的ポート公開、アクセスログ機能をサポートしているため、Windows XPをインストールしたPCに2枚のNICを導入し、一方は自宅サーバ用に強固な設定、一方は通常のネットワークアクセスといった使い方も行える。

ただ、この程度の機能ならICF時代でも設定を正しく行うことで可能だった。今回搭載されたWindowsファイアウォールでは、これらの機能に加えて、アプリケーションレベルのデータトラフィックをチェックすることで、データの流れの通過または遮断を判断する「ステートフルパケットフィルタリング」機能が追加されており、あらかじめ「起動時ポリシー」と呼ばれる静的ルールが用意された。これにより、起動直後のネットワーク環境もセキュアな状態に保つことができるというわけだ。ちなみに、Windowsファイアウォールに関するポリシーがシステムから読み込まれた時点で、この静的ルールは破棄される。

この他にもコマンドラインからの制御や自由度の高い設定項目などがあるものの、注目したいのがブロックダイアログの表示機能。たとえばFTPクライアントは、データコネクション確立時に任意のポートが選択され、クライアント側でそのポートを開かなければならない。そのため、これが"外部からのアクセス"と判断され、Windowsファイアウォールが反応するのだが、その際にブロックダイアログが現れる。

このダイアログからは<ブロックする><ブロックを解除する><後で確認する>という3つのボタンが用意されており、それぞれ"対象となるアプリケーションが作成した外部からの接続を閉じる"、"対象となるアプリケーションが作成した外部接続を許可する"、"対象となるアプリケーションが作成した外部接続を一時的に許可する"という動作選択が可能だ(画面10)。

画面10 登録されていないインバウンドトラフィックを検出すると現れるダイアログ

さて、話は前後するが、SP2をWindows XPに導入すると、初期状態からWindowsファイアウォールが有効になるが、この設定を行うためには、前述の「セキュリティセンター」、もしくはコントロールパネルから「Windowsファイアウォール」アイコンをクリック/ダブルクリックしてダイアログを呼び出す。また、ネットワーク接続アイコンのプロパティダイアログからも呼び出し可能だ(画面11、12)。

画面11 コントロールパネルの「Windowsファイアウォール」アイコンからダイアログを呼び出す

画面12 ネットワーク接続アイコンのプロパティダイアログからも呼び出し可能

まず<全般>タブは、Windowsファイアウォール機能の有効/無効を切り替えるためのもので、<例外を許可しない>をチェックすると、後述する<例外>タブの設定が無効になり、新たなブロックダイアログが現れなくなる(画面13)。その<例外>タブでは、インバウンドトラフィックを許可するアプリケーションのリストが用意されており、先のブロックダイアログから追加したアプリケーション名の確認や新規アプリケーションの追加が可能だ(画面14)。また、任意アプリケーションが使用するスコープ範囲の設定もできる。初期設定ではスコープに制限はないが、たとえばLAN内ならば<ユーザーのネットワークのみ>をチェックオンし、任意のIPアドレス範囲ならば、<カスタムの一覧>にチェックを入れればよい(画面15)。

画面13 Windowsファイアウォールの<全般>タブ

画面14 Windowsファイアウォールの<例外>タブ

画面15 スコープの編集ダイアログ

一方、自宅サーバなど特定のポートを常に開く場合は、<ポートの追加>ボタンで開く同名のダイアログから設定を行う。「名前」にリストアップされる名称を入力し、「ポート番号」にインバウンドトラフィックを許可するポート番号を入力して、<OK>ボタンを押せばよい。また、ネットワークアプリケーション同様にスコープの変更も可能だ(画面16)。蛇足だが、インストール直後の「プログラムおよびサービス」セクションは空のままで、Windows標準アプリケーションすら追加されていない。たとえばリモートデスクトップ機能使う場合、「システムのプロパティ」ダイアログの<リモート>タブだけの設定では利用できないので注意して頂きたい。

画面16 ポートの追加設定ダイアログ

そして最後の<詳細設定>タブには、先のタブに含まれないいくつかの設定が可能になっている(画面17)。まず「ネットワーク接続の設定」セクションでは、Windowsファイアウォールを、ネットワーク接続単位で有効/無効を切り替えたり、特定のポートをオープンする設定が可能だ。同セクション内の<設定>ボタンを押して開く「詳細設定」ダイアログの<サービス>タブでは、Windows XP上で動作させるネットワークサービスを外部に公開するためのポートを意図的に開く設定項目が用意されている(画面18)。あらかじめ登録されているのは特定のサービス「FTPサーバー」「Webサーバー」などとあることからもわかるとおり、Service Pack 1時代と同じ設定項目だ。ICMP(Internet Control Message Protocol)を受け付ける<ICMP>タブの設定もService Pack 1と同等(画面19)。個人的には<例外>タブで開閉ポートを一括管理したほうが便利なように思えるが、ここではネットワーク接続単位でポートのオープンが行えるのがポイントとなるため残されたのだろう。

画面17 Windowsファイアウォールの<詳細設定>タブ

画面18 <詳細設定>タブから呼び出す「詳細設定」ダイアログ

画面19 「詳細設定」ダイアログの<ICMP>タブ

「セキュリティのログ」セクションの<設定>ボタンで開くダイアログでは、Windowsファイアウォールのログに関する設定が可能。その内容に関してはService Pack 1と同じく、成功/ドロップしたパケットのログやログのファイル名、ログファイルのサイズ設定といった内容となっている(画面20、21)。「ICMP」セクションでは、前述したICMPを受け付けるための設定が行われる。こちらの設定項目は、先の「ネットワーク接続」セクションの「詳細設定」ダイアログと同等のものだが、先ほどはネットワーク接続単位、こちらはシステム全体の単位となる。詳細な実験は行っていないが、ネットワーク接続単位で無効にしながらも、「ICMP設定」で有効にした項目が生きていることを踏まえると、こちらが優先されるようだ(画面22)。

画面20 「セキュリティのログ」セクションから呼び出す「ログの設定」ダイアログ

画面21 保存されたWindowsファイアウォールのログファイル

画面22 「ICMP」セクションから呼び出された「ICMP」設定ダイアログ

そして最後の「既定の設定」セクションにある<規定値に戻す>には、Windowsファイアウォールに関するすべての設定を出荷状態に戻すためのボタンが用意されている。<既定値に戻す>ボタンをクリックすると、確認をうながすメッセージが表示されるので、そこで動作を選択すればよい(画面23)。

画面23 <既定値に戻す>ボタンを押して現れるメッセージ

これらの設定はGUIだけではなく、コマンドラインから操作できるのもSP2の特徴だ。Netsh Helperにある拡張が行われており、従来どおりのWindowsファイアウォールの状態表示に加えて、「add」「delete」「reset」といったコマンドが追加されている。数台のWindowsマシンならば、この機能を利用することで簡単に一括設定できるだろう(画面24、25、26)。

画面24 コマンドラインからWindowsファイアウォールの状態を確認

画面25 SP2にあるnetsh.exeのfirewallコンテキスト

画面26 Service Pack 1にあるnetsh.exeのfirewallコンテキスト

さて、Windowsファイアウォールに関する機能を総括すると、Windowsファイアウォールは"インバウンドトラフィック(外から中へ入り込む)"のみ監視し、"アウトバウンドトラフィック(中から外へ流れ出す)"の監視は基本的に行われないため、双方向のトラフィックを監視したい場合は、サードパーティ製ファイアウォールソフトが必要となる。

だが、これはかなり微妙なところで、ここ数年ネットワーク帯域をひっ迫しているワームなどは、メディアやメールの添付ファイルなどインターネット経由以外で侵入して感染した場合、自PC内から感染活動を行う。つまりWindowsファイアウォールが監視しないアウトバンドのトラフィックになるわけで、結局ワームやウイルスをばらまくことになってしまう。

つまりWindowsファイアウォールは、サードパーティ製製品に脅威を与えないために、搭載する機能および同梱するソフトウェアはサブセット版に抑えるというMicrosoftらしいスタンスと、世界レベルで蔓延したワームの侵入を防ぐための機能拡張を加えたものではないかと予想される。より強固なセキュリティ環境を必要とする場合は、ルータのファイアウォール機能や前述したファイアウォールソフトの導入を考慮しなければならないだろう。

    新着記事

    特設サイトの情報

    人気記事

    一覧

    イチオシ記事

    新着記事

    特別企画

    一覧