説明

IPsecを使ってネットワーク検疫を提供するシステムおよび方法

【課題】IPsecを使ってネットワーク検疫を提供するシステムおよび方法を提供すること。
【解決手段】無効な、または破損した状態を有するマシンがホストリソースにアクセスするのを制限されるようにするシステムおよび方法が提供される。クライアントマシン上に位置する検疫エージェント(QA)は、複数の検疫ポリシークライアントから健全性ステートメントを獲得する。QAは、それらのステートメントをパッケージ化し、そのパッケージを検疫実施クライアント(QEC)に提供する。QECは、健全性証明書を求める要求と共にそのパッケージを検疫健全性証明書サーバ(HCS)に送る。クライアントが有効な健全性ステートメントを提供した場合、HCSは、IPsecセッション折衝で使用され得るクライアント健全性証明書を与える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、一般に、コンピュータアクセス管理に関し、より詳細には、クライアントのホストリソースへのアクセスを許可する前にクライアントのセキュリティ状態をチェックすることに関する。
【背景技術】
【0002】
コンピュータネットワークにおいて、クライアント、サーバ、およびピアは、一般に、信頼モデルおよび機構を使って、許可されていないユーザがネットワーク上のホストコンピュータにアクセスできないようにする。これらの信頼モデルおよび機構は、悪意のないユーザを識別するのに使用される。しかしながら、ユーザのマシンが、そのユーザの知らないうちに他のコンピュータに危険をもたらすこともあり得る。例えば、マシンは、ウイルスを含むこともあり、ユーザが気付いていないセキュリティホールを有することもある。ゆえに、ユーザにどんなに悪意がなくとも、ユーザのマシンの保護されていない状態は、そのセキュリティ欠陥が修復されるまでネットワークから隔離される結果となるべきである。
【0003】
IPsecは、データ暗号化およびデータ保全を含む、通信を保護する複数の機能を定義する。IPsecは、認証ヘッダ(AH)を使って暗号化なしで発信元認証および保全性を提供し、カプセル化セキュリティペイロード(ESP)を使って暗号化と共に認証および保全性を提供する。IPsecを用いる場合、送信者と受信者だけがセキュリティ鍵を知っている。認証データが有効である場合、受信者は、その通信がその送信者からもたらされたこと、およびその通信が送信中に変更されなかったことがわかる。
【0004】
IPsecは、伝送制御プロトコル/インターネットプロトコル(TCP/IP)スタック内の1つの層としてイメージされ得る。この層は、各コンピュータ上のセキュリティポリシーおよび送信者と受信者の間のネゴシエートされたセキュリティアソシエーションによって制御される。このポリシーは、1組のフィルタおよび関連付けられたセキュリティ挙動からなる。あるパケットのIPアドレス、プロトコル、およびポート番号がフィルタにマッチする場合、そのパケットは、それに関連付けられたセキュリティ挙動に従う。第1のそのようなパケットは、送信者と受信者の間のセキュリティアソシエーションのネゴシエーションをトリガする。インターネットキー交換(IKE)はこのネゴシエーションの標準プロトコルである。IKEネゴシエーションの間、2つのコンピュータは、認証およびデータセキュリティ方法に同意し、相互認証を行い、次いで、その後のデータ暗号化のための共有鍵を生成する。
【0005】
セキュリティアソシエーションが確立された後、データ伝送が各コンピュータごとに進行し、リモートの受信者に送信するパケットにデータセキュリティ処理を適用する。この処理は、単に送信されるデータの保全性を保証することもでき、送信されるデータを暗号化することもできる。IPペイロードのデータ保全性およびデータ認証は、IPヘッダとトランスポートヘッダの間に位置する認証ヘッダによって提供され得る。認証ヘッダは認証データおよびシーケンス番号を含み、それらは共に、送信者を検証し、メッセージが送信中に変更されていないことを保証し、反射攻撃を防ぐのに使用される。
【0006】
ESPは、このアーキテクチャにおける鍵形式であり、保護されるデータを暗号化し、暗号化されたデータをIP ESPのデータ部分に入れることによって機密性および保全性を提供する。ユーザのセキュリティ要件に応じて、この機構は、トランスポート層セグメント(例えば、TCP、UDP、ICMP、IGMP)を暗号化するのにも、IPデータグラム全体を暗号化するのにも使用され得る。元のデータグラム全体の機密性を提供するためには、保護されたデータをカプセル化することが必要である。ESPヘッダは、IPヘッダの後、上位層プロトコルヘッダ(トランスポートモード)の前またはカプセル化IPヘッダ(トンネルモード)の前に挿入される。
【発明の開示】
【発明が解決しようとする課題】
【0007】
しかしながら、従来の認証手順は、保護されていない、または悪質ですらあるマシンがホストのアクセスするのを妨げない。コンピュータは有効な認証を提示し得るが、マシン自体が、そのマシンが別のコンピュータのネットワークリソースへのアクセスを許可される前に修正されるべきウイルスに感染し、またはセキュリティホールを含んでいることがある。したがって、当分野では、クライアントが、セキュリティチェックに合格するまでホストにアクセスすることを許可されないようにするシステムおよび方法が求められている。
【課題を解決するための手段】
【0008】
以上を考慮して、本発明は、ホストが、クライアントからのクライアント健全性ステートメントを含むインターネットキー交換(IKE)パケットを受け取り、クライアント健全性ステートメントを検証し、クライアント健全性ステートメントが有効である場合には、クライアントにホスト健全性ステートメントを送り、クライアント健全性ステートメントが無効である場合には、ホストへのクライアントのアクセスを拒否することによって、IPセキュリティプロトコル(IPsec)を使用するネットワークにおいて選択的ネットワーク隔離(isolation)を提供する方法を提供する。健全性ステートメントは、クライアントの、ネットワークのセキュリティポリシーへの適合性(conformance)を記述する。この方法は、クライアント健全性証明書(client health certificate)が受け入れられる場合には、任意選択で暗号化された通信を介してクライアントと通信を行うことをさらに含む。健全性証明書は、本発明の様々な実施形態では、X509証明書、Kerberosチケット、またはWS−Securityトークンとすることができる。
【0009】
本発明の別の実施形態は、1つまたは複数の健全性ステートメントを健全性証明書サーバに送ること、健全性証明書サーバから健全性ステートメント応答を受け取ること、および健全性ステートメントが健全性証明書サーバによって有効と確認される場合には、健全性証明書を受け取り、ホストを、ホストへのクライアントのアクセスを許可する前にクライアントからのクライアント健全性証明書を必要とするIPsecポリシーを実施するように構成することを含む、ホストが健全性証明書を獲得する方法を提供する。健全性ステートメントが有効と確認されない場合には、健全性ステートメント応答は、そのホストがネットワークセキュリティポリシーに適合していないことを示す。
【0010】
本発明のさらに別の実施形態は、ネットワーク隔離モデルを実施するコンピュータネットワークを対象とする。このネットワークは、各コンピュータが健全性証明書を所有し、やはり有効な健全性証明書を所有するコンピュータとだけ通信を行う第1のコンピュータグループと、各コンピュータが健全性証明書を所有し、ネットワーク中の他のすべてのコンピュータと通信を行う第2のコンピュータグループと、各コンピュータが健全性証明書を所有せず、ネットワーク中の他のコンピュータの全部または一部と通信を行う第3のコンピュータグループとを含む。第1のグループ中のコンピュータ間、および第1のグループのコンピュータと第2のグループのコンピュータの間の通信は、IPsecを使って達成される。
【0011】
本発明のさらなる特徴および利点は、添付の図を参照して進められる、以下の例示的実施形態の詳細な説明を読めば明らかになる。
【0012】
本明細書に組み込まれ、その一部を形成する添付の図面には、本発明のいくつかの態様が示されており、それらは、その記述と共に、本発明の原理を説明する役割を果たす。
【0013】
本発明をいくつかの好ましい実施形態との関連で説明するが、本発明をそれらの実施形態に限定する意図はない。その反対に、すべての代替形態、変更形態および均等物を、添付の特許請求の範囲によって定義される本発明の精神および範囲内に含まれるものとして包含することが意図されている。
【発明を実施するための最良の形態】
【0014】
図面に戻ると、そこでは類似の参照番号は類似の要素を参照しており、本発明が、適切なコンピューティング環境で実施されるものとして示されている。以下の説明は、本発明の実施形態に基づくものであり、本明細書で明示的に説明されない代替の実施形態に関して本発明を限定するものとみなすべきではない。
【0015】
次に、本発明が使用され得る、ネットワーク化された環境の一例を、図1Aを参照して説明する。この例示的ネットワークは、雲形によって表されるネットワーク111を介して相互に通信を行ういくつかのコンピュータ110を含む。ネットワーク111は、ルータ、ゲートウェイ、スイッチなど、多くの周知の構成要素を含むことができ、コンピュータ110が有線および/または無線媒体を介して通信することを可能にする。ネットワーク111を介して相互に対話するとき、コンピュータの1つまたは複数は、他のコンピュータに対してクライアント、ネットワークサーバ、検疫サーバ、またはピアとして機能することができる。したがって、本発明の様々な実施形態は、たとえ本明細書に含まれる具体例がこれらの種類のコンピュータすべてに言及しないとしても、クライアント、ネットワークサーバ、検疫サーバ、ピア、またはこれらの組合せにおいて実施され得る。
【0016】
図1Bに、本発明が実施され得る適切なコンピューティングシステム環境100の一例を示す。コンピューティングシステム環境100は、適切なコンピューティング環境の一例にすぎず、本発明の用途または機能の範囲に関するどんな限定を示唆することを意図したものではない。また、コンピューティング環境100は、例示的コンピューティング環境100に示す構成要素のいずれか1つまたはそれらの組合せに関連するいずれの依存関係または要件を有するものであるとも解釈すべきではない。
【0017】
本発明は、他の多数の汎用または専用コンピューティングシステム環境または構成と共に動作する。本発明と共に使用するのに適し得る周知のコンピューティングシステム、環境、および構成の例には、それだけに限らないが、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルドまたはラップトップ機器、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、プログラム可能な家庭用電化製品、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、上記のシステムまたは機器のいずれかを含む分散コンピューティング環境などが含まれる。
【0018】
本発明は、コンピュータにより実行される、プログラムモジュールなどのコンピュータ実行可能命令の一般的なコンテキストで説明することができる。一般に、プログラムモジュールには、特定のタスクを実行し、または特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造体などが含まれる。また、本発明は、タスクが、通信ネットワークを介してリンクされたリモート処理装置により実行される分散コンピューティング環境でも実施され得る。分散コンピューティング環境では、プログラムモジュールは、メモリ記憶装置を含むローカルとリモート両方のコンピュータ記憶媒体に置くことができる。
【0019】
図1Bを参照すると、本発明を実施する例示的システムは、本発明のコンテキスト内でクライアント、ネットワークサーバ、検疫サーバ、またはピアとして働くことのできるコンピュータ110の形態の汎用コンピューティングデバイスを含む。コンピュータ110の構成要素には、それだけに限らないが、処理装置120、システムメモリ130、およびシステムメモリ130を含む様々なシステム構成要素を処理装置120に結合するシステムバス121が含まれ得る。システムバス121は、様々なバスアーキテクチャのいずれかを使用したメモリバスまたはメモリコントローラ、周辺バス、およびローカルバスを含む数種類のバス構造のいずれでもよい。例をあげると、それだけに限らないが、そのようなアーキテクチャには、ISA(Industry Standard Architecture)バス、MCAバス(Micro Channel Architecture)バス、EISA(Enanced ISA)バス、VESA(Video Electronics Standards Associate)ローカルバス、およびメザニンバスとも呼ばれるPCI(Peripheral Component Interconnect)バスが含まれる。
【0020】
コンピュータ110は、通常、様々なコンピュータ可読媒体を含む。コンピュータ可読媒体は、コンピュータ110によってアクセスされ得る任意の使用可能な媒体とすることができ、それには揮発性と不揮発性両方の媒体、取り外し可能と取り外し不能両方の媒体が含まれる。例をあげると、それだけに限らないが、コンピュータ可読媒体には、コンピュータ記憶媒体および通信媒体が含まれ得る。コンピュータ記憶媒体には、コンピュータ可読命令、データ構造、プログラムモジュールまたはその他のデータなどの情報を記憶するための任意の方法または技術で実施された、揮発性と不揮発性両方、取り外し可能と取り外し不能両方の媒体が含まれる。コンピュータ記憶媒体には、それだけに限らないが、RAM、ROM、EEPROM、フラッシュメモリや他のメモリ技術、CD−ROM、デジタル多用途ディスクや他の光ディスク記憶、磁気カセット、磁気テープ、磁気ディスク記憶や他の磁気記憶装置、あるいは所望の情報を格納するのに使用でき、コンピュータ110によってアクセスすることができる他の任意の媒体が含まれる。通信媒体は、通常、コンピュータ可読命令、データ構造、プログラムモジュールまたはその他のデータを、搬送波や他の搬送機構などの変調されたデータ信号中に具現化されるものであり、任意の情報配信媒体を含む。「変調されたデータ信号」という用語は、その特性の1つまたは複数が、その信号に情報を符号化するような方式で設定または変更されている信号を意味する。例をあげると、それだけに限らないが、通信媒体には、有線ネットワークや直接配線接続などの有線媒体、および音響、RF、赤外線、その他の無線媒体などの無線媒体が含まれる。上記のいずれかの組合せも、コンピュータ可読媒体の範囲内に含めるべきである。
【0021】
システムメモリ130は、読出し専用メモリ(ROM)131やランダムアクセスメモリ(RAM)132などの揮発性および不揮発性メモリの形でコンピュータ記憶媒体を含む。基本入出力システム(BIOS)133は、始動時などに、コンピュータ110内の諸要素間での情報転送を支援する基本ルーチンを含み、通常、ROM131に格納される。RAM132は、通常、処理装置120から直ちにアクセス可能であり、または処理装置120によって現在操作されているデータおよびプログラムモジュールを含む。例として、それだけに限らないが、図1Bに、オペレーティングシステム134、アプリケーションプログラム135、その他のプログラムモジュール136、およびプログラムデータ137を示す。
【0022】
また、コンピュータ110は、他の取り外し可能/取り外し不能、揮発性/不揮発性コンピュータ記憶媒体も含み得る。例にすぎないが、図1Bに、取り外し不能、不揮発性磁気媒体との間で読取りまたは書込みを行うハードディスクドライブ141、取り外し可能、不揮発性磁気ディスク152との間で読取りまたは書込みを行う磁気ディスクドライブ151、およびCD−ROMや他の光媒体などの取り外し可能、不揮発性光ディスク156との間で読取りまたは書込みを行う光ディスクドライブ155を示す。例示的コンピューティング環境100で使用され得るその他の取り外し可能/取り外し不能、揮発性/不揮発性のコンピュータ記憶媒体には、それだけに限らないが、磁気テープカセット、フラッシュメモリカード、デジタル多用途ディスク、デジタルビデオテープ、ソリッドステートRAM、ソリッドステートROMなどが含まれる。ハードディスクドライブ141は、通常、インターフェース140などの取り外し不能メモリインターフェースを介してシステムバス121に接続され、磁気ディスクドライブ151および光ディスクドライブ155は、通常、インターフェース150などの取り外し可能メモリインターフェースによってシステムバス121に接続される。
【0023】
前述の、図1Bに示す各ドライブおよびそれらに関連するコンピュータ記憶媒体は、コンピュータ110のためのコンピュータ可読命令、データ構造、プログラムモジュールおよびその他のデータの記憶を提供する。図1Bでは、例えば、ハードディスクドライブ141は、オペレーティングシステム144、アプリケーションプログラム145、その他のプログラムモジュール146、およびプログラムデータ147を格納するものとして示されている。これらのコンポーネントは、オペレーティングシステム134、アプリケーションプログラム135、その他のプログラムモジュール136、およびプログラムデータ137と同じでも、異なっていてもよいことに留意されたい。オペレーティングシステム144、アプリケーションプログラム145、その他のプログラムモジュール146、およびプログラムデータ147には、少なくともそれらが異なるコピーであることを示すために、異なる番号を付与してある。
【0024】
ユーザは、キーボード162や、一般に、マウス、トラックボール、タッチパッドと呼ばれるポインティングデバイス161などの入力装置を介してコンピュータ110にコマンドおよび情報を入力することができる。他の入力装置(図示せず)には、マイクロホン、ジョイスティック、ゲームパッド、衛星パラボラアンテナ、スキャナなどが含まれ得る。上記およびその他の入力装置は、しばしば、システムバス121に結合されたユーザ入力インターフェース160を介して処理装置120に接続されるが、パラレルポート、ゲームポート、ユニバーサルシリアルバスなどの他のインターフェースおよびバス構造によっても接続することができる。また、モニタ191または他の種類の表示装置も、ビデオインターフェース190などのインターフェースを介してシステムバス121に接続される。また、モニタ191に加えて、コンピュータ110は、出力周辺装置インターフェース195を介して接続され得る、スピーカ197やプリンタ196など他の周辺出力装置を含むこともできる。
【0025】
コンピュータ110は、リモートコンピュータ180など、1つまたは複数のリモートコンピュータへの論理接続を使用した、ネットワーク化された環境で動作し得る。リモートコンピュータ180は、別のパーソナルコンピュータ、サーバ、ルータ、ネットワークPC、ピアデバイスまたはその他一般のネットワークノードとすることができ、図1Bにはメモリ記憶装置181だけしか示されていないが、通常は、パーソナルコンピュータ110に関連して前述した要素の多くまたはすべてを含む。図1Bに示す論理接続には、ローカルエリアネットワーク(LAN)171および広域ネットワーク(WAN)173が含まれるが、他のネットワークも含まれ得る。そのようなネットワーク環境は、オフィス、企業規模のコンピュータネットワーク、イントラネットおよびインターネットでは一般的なものである。
【0026】
LANネットワーク環境で使用されるとき、パーソナルコンピュータ110はネットワークインターフェースまたはアダプタ170を介してLAN171に接続される。WANネットワーク環境で使用されるとき、コンピュータ110は、通常、モデム172、またはインターネットなどのWAN173を介して通信を確立する他の手段を含む。モデム172は、内蔵されても外付けされてもよく、ユーザ入力インターフェース160または他の適切な機構を介してシステムバス121に接続され得る。ネットワーク化された環境では、パーソナルコンピュータ110に関連して示すプログラムモジュール、またはその一部は、リモートのメモリ記憶装置181に格納され得る。例として、それだけに限らないが、図1Bに、リモートアプリケーションプログラム185を、メモリ装置181上にあるものとして示す。図示のネットワーク接続は例であり、コンピュータ間での通信リンクを確立する他の手段も使用され得ることが理解されよう。
【0027】
以下の説明では、特に指示しない限り、本発明を、1つまたは複数のコンピュータによって実行される動作および操作の記号表現を参照して説明する。そのようなものとして、そのような動作および操作は、時々コンピュータで実行されるともいわれ、構造化された形でデータを表す電気信号の、コンピュータの処理装置による操作を含むことが理解されよう。この操作は、データを変換し、またはデータをコンピュータのメモリシステム中の場所に維持し、当業者によってよく理解されている手法でコンピュータの操作を再構成し、または別のやり方で変更する。データが維持されるデータ構造体は、データの形式によって定義される特定の属性を持つメモリの物理的場所である。しかしながら、本発明は、前述のコンテキストで説明されてはいるが、以下で説明される様々な動作および操作がハードウェアでも実施され得ることを当業者が理解するように、限定することを意図していない。
【0028】
本発明は、IPセキュリティ(IPsec)プロトコルとホストファイアウォールを組み合わせてネットワーク隔離を提供するネットワークアクセス保護のための実施機構(enforce mechanism)を対象とする。IPsecとホストファイアウォールの組合せを認証ファイアウォール(AFW)という。検疫実施クライアント(QEC:Quarantine Enforcement Client)は、ホスト上で、IPsecおよびファイアウォールポリシーを連係させるように動作する。QECは、さらに、他のIPsecポリシー対応ホストと通信を行うための健全性証明書を獲得する役割も果たす。
【0029】
図2に、本発明が実施され得る典型的なネットワーク環境を示す。クライアント200は、健全性証明書サーバ(HCS)210に健全性ステートメント(SoH)を送る。HCSは、ポリシーサーバ230a、230b、230cからの更新されたポリシー要件を維持するインターネット認証サーバ(IAS)220を介してSoHを検証する。SoHがすべてのポリシー要件に合格した場合、HCS210は、クライアント200に健全性証明書を発行する。次いで、クライアント200は、健全性証明書を使って、図2のVPNゲートウェイ240やDHCPサーバ250など他の保護されたシステムと通信を行うことができる。
【0030】
HCSは、健全性チェックを満足させるクライアントに証明書を発行する。一実施形態では、健全性証明書は、(構成可能であるが、数時間程度の)非常に短い存続期間を有するX509証明書である。しかしながら、健全性証明書は、KerberosチケットやWS−Securityトークンなど、システムの健全性を示す任意の検証可能なデータ構造体とすることができる。システムは、健全性証明書を持つと、それを使って他のシステムとの認証によってその健全性を証明することができる。一実施形態では、HCSは独立型であり、HCSがすでにインストールされている場合には、PKI階層に統合される必要がない。別の実施形態では、HCSは、管理目的のために、または特定のエンティティに結び付けられた健全性証明書を使用可能にするために、既存のPKIに統合される。標準NAPブートストラップの一部として、クライアントに、そのHCSからルート証明書が与えられる。クライアントは、このルートを、検疫目的専用の専用ストアにインストールすることもでき(既存のPKIが活用されている場合、システムは、このルートトラスト(root trust)がすでに備わっており、ブートストラップが不要であると想定する)、このルートを、マシンまたはユーザの標準証明書ストアにインストールすることもできる。
【0031】
AFW隔離は、DHCPや802.1xといった他の検疫実施機構によって提供される隔離とは異なる。AFW隔離は、ネットワーク接続が提供されているポイントで一元的に実施されるのではなく、各個別ホストによって分散して実施される。これは、各ホストに、DHCPや802.1x検疫などの他の実施機構では不可能な、ネットワーク上に悪質なホストが存在する場合でさえもそれ自体を保護する能力が与えられることを意味する。AFWは、ホストごと、ポートごと、またはアプリケーションごとに提供され得る唯一の隔離オプションである。
【0032】
AFW検疫は、図3に示すように、物理ネットワークを3つ以上の論理リングに分割する。各コンピュータは、いかなるときにもただ1つの論理リングに存在する。これらのリングは、健全性証明書の所有および健全性証明書の通信要件に関して定義される。これらのリングは、すべてのシステムに最大限の通信機能を与え、しかも、不健全なシステムからの攻撃から健全なシステムを保護する。保護されたリングは、健全性証明書を持ち、それらのピアが健全性証明書を持つことを必要とし得るコンピュータの集合体(collection)であると定義される。大部分のクライアントおよびサーバは、このリングに存在するであろう。保護されたリング中のコンピュータは、管理者によって定義されるサイトポリシーに従って、保護されたリングまたは境界リング中のコンピュータの一部または全部と自由に通信を行うことができる。保護されたリング中のコンピュータは、やはりサイトポリシーに従って、その保護されたリング中のコンピュータが通信を開始するという条件で、検疫リング中のコンピュータと通信を行うことができる。例えば、保護されたリング中のクライアントは、検疫リング中のサーバにWebページを要求することができる。しかしながら、検疫リング中のクライアントは、保護されたリング中のサーバにWebページを要求するのを阻止される。管理者が(全コンピュータではなく)特定のアプリケーションを検疫しようとする場合、リング間の通信は、それらのアプリケーションについてのみ制限される。例えば、FTP通信が検疫される場合、検疫リング中のFTPクライアントは、保護されたリング中のFTPサーバに接続するのを阻止される。しかしながら、その特定の場合において、同じ2つのコンピュータは、それらのリングへの帰属に関係なく、HTTPを介して自由に通信を行うことができるであろう。
【0033】
境界リングは、健全性証明書を持つが、それらのピアが健全性証明書を持つことを必要としないコンピュータの集合体であると定義される。そのようなコンピュータは、リングへの帰属に関係なく、他の任意のコンピュータと自由に通信を行うことができる。境界リングは、通常、そこに存在するように特に構成されたごくわずかなコンピュータを含むであろう。境界リング中のシステムは、普通、リングへの帰属に関係なく、すべてのクライアントへのトラフィックを開始する必要があるサーバである。例えば、パッチサーバ(patch server)は、検疫リング中のクライアントに健全性証明書が発行されるように、それらのクライアントにパッチを提供する必要がある。また、パッチサーバは、保護されたリング中のクライアントにサービスを提供し、保護されたリング中の管理サーバから通信を受け入れる必要もある。
【0034】
検疫リングは、健全性証明書を持たないコンピュータの集合体であると定義される。それらのコンピュータは、それらが健全性チェックを完了していないため、それらがネットワーク上のゲストであるため、またはそれらが検疫システムに関与することができないため、健全性証明書を持つことができない。検疫リング中のコンピュータは、保護されたリング中のコンピュータとの場合を除いて、自由に通信を行うことができる。IPsecポリシーおよび要件を変更することにより、他の隔離モデルも実施され得ることを当業者は理解されよう。
【0035】
図4に戻ると、AFW検疫実施クライアント(QEC)430を備えるクライアント400上で、検疫プラットフォームアーキテクチャが拡大されている。AFW QECの目的は、健全性証明書サーバとネゴシエートして、健全性証明書を獲得し、IPsecおよびファイアウォールコンポーネントをしかるべく構成することである。検疫エージェント(QA)は、システム健全性エージェント(SHA)410a、410b、410cと連係してSoHを組み立てる。各SHA410a、410b、410cは、そのクライアントが、健全性証明書に必要とされるポリシーおよび要求すべてを満足させるかどうか判定する役割を果たす。QA420は、SHA APIを介してこれらのチェックの結果を獲得し、それらの結果を、QEC430に提供され得るSoHに組み立てる。QEC430は、新しい健全性証明書を獲得すると、まず、そのSoHおよび認証資格証明(authenticate credentials)をHCS470に伝達する。一実施形態では、この伝達は、保護されたハイパーテキスト転送プロトコル(HTTPS)を介するものである。QEC430がすべてのポリシー要件を満たす場合、QEC430は、HCS470からSoH応答および健全性証明書を受け取る。QEC430は、ファイアウォールおよびIPsecサブシステム460に対するデフォルト検疫規則を構成する。検疫システムが独立型である場合、QECは健全性証明書を専用証明書ストア450に入れる。クライアントがすべての健全性チェックに合格していない場合、QECはHCSから、そのクライアントがポリシー要件の1つまたは複数に合格していないことを知らせる1つまたは複数のSoH応答を受け取る。SoH応答は、クライアントが合格しなかった特定の要件を明示することができる。次いで、QECは、クライアントを健全な状態に戻すのに必要なパッチおよび更新をインストールするために、修正サーバ(fix−up server)を捜し出すことができる。
【0036】
図5に、システムがAFW検疫システムに関与するときに従うプロセスを示す。ステップ510で、システムが起動する。システムは、(DHCPベースの検疫実施が展開されていないものと仮定して)そのDHCPサーバから無制限のIPアドレスを獲得する。システムのファイアウォールは、他のシステムがそこに接続することができないように、「例外なしにオン」モードにある。この時点で、システムは、最新の健全性証明書を持たないため、検疫リングにある。システムは、他の検疫済みシステムと通信を行うことができ、インターネットにアクセスすることができる。保護されたリング中のコンピュータは、このシステムがそれらのコンピュータに接続することを阻止する。ステップ520で、AFW QECが開始する。ステップ530で、QECは、健全性証明書サーバ(HCS)への接続を開始し、その証明書を信頼されるHCSサーバのリストに照らして検証することによって、このHCSが信頼されていることを検証する。ステップ540で、QECは、クライアントの現在の健全性ステートメント(SoH)情報をHCSに送る。ステップ550で、HCSは、そのSoH情報をIASサーバに渡す。ステップ560で、IASサーバは、SoH情報およびその構成されたポリシーに基づいて、クライアントに健全性証明書を与えるべきかどうか決定する。IASサーバは、健全性証明書サーバに、クライアントに健全性証明書が発行されるべきかどうか示す値と共に、健全性ステートメント応答(SoHR)を返す。
【0037】
ステップ570で、健全性証明書サーバは、そのSoHRをAFW QECに返す。クライアントが健全性チェックに合格した場合、そのクライアントにはこのときに健全性証明書も発行される。AFW QECは、新しいSoH情報が検疫エージェントに到着するたび、または現在の健全性証明書が失効しようとするたびに、ステップ530から570を経る。AFW QECに健全性証明書が発行された場合、ステップ580で、AFW QECはその証明書をコンピュータのマシンストアに加える。AFW QECは、健全性証明書を用いて、それが認証を受けることのできる任意のピアとの認証を試みるようにIPsecサブシステムを構成する。AFW QECは、ホストファイアウォールを、IPsecを使用する健全性証明書を用いて認証を受けた任意のピアからの着信接続を許可するように構成する。この時点で、コンピュータは、今度は、保護されたリングで動作している。
【0038】
AFW検疫に関与することのできないシステムは、単に、検疫リングの中に起動し、そこに留まることになる。そのシステムは、インターネット、および、おそらく、境界リングまたは検疫リング中の他の任意のコンピュータにアクセスすることができる。保護されたリングのコンピュータは、これらのコンピュータに接続することができるが、その逆はできない。
【0039】
図6に、クライアントがIPsec対応のホストと通信を開始するためのプロセスを示す。ステップ610で、クライアントは、ホストに、クライアントの健全性証明書を含むIKEパケットを送る。ステップ620で、ホストは、その健全性証明書を検証し、それに応答してそれ自体の健全性証明書を提供する。ステップ630で、クライアントは、ESPを使ってTCP/IPハンドシェークを開始する。ステップ640で、ハンドシェークが完了し、任意選択で、クライアントとホストの間で暗号化された通信が使用可能とされる。
【0040】
以上の本発明の様々な実施形態の説明は、例示および説明のために提示したものである。網羅的であること、または本発明を開示の実施形態とまったく同一のものに限定することは意図されていない。前述の説明に照らして、多数の変更形態および変形形態が可能である。前述の実施形態は、本発明の原理およびその実際の適用の最善の例示を提供し、それによって当業者が、本発明を、様々な実施形態において、意図されている特定の用途に適した様々な変更と共に利用することができるように選択され、説明されたものである。そのようなすべての変更形態および変形形態は、添付の特許請求の範囲が、公正、合法的、かつ公平に権利を有する広さに従って解釈されるときに、添付の特許請求の範囲によって決定される本発明の範囲内に含まれる。
【図面の簡単な説明】
【0041】
【図1A】本発明がそれを介して動作する例示的ネットワーク環境を一般的に示す概略図である。
【図1B】本発明がそこに属する例示的コンピュータシステムを一般的に示すブロック図である。
【図2】本発明の一実施形態の構成要素間の対話を示す概略図である。
【図3】本発明のネットワーク隔離モデルを示す図である。
【図4】本発明の検疫実施クライアントを示す図である。
【図5】本発明による、クライアントが健全性証明書を獲得するためのプロセスを示す図である。
【図6】本発明による、クライアントがホストとの通信を開始するためのプロセスを示す図である。
【符号の説明】
【0042】
110 コンピュータ
111 ネットワーク
120 処理装置
121 システムバス
130 システムメモリ
134 オペレーティングシステム
135 アプリケーションプログラム
136 その他のプログラムモジュール
137 プログラムデータ
140 取り外し不能不揮発性メモリインターフェース
144 オペレーティングシステム
145 アプリケーションプログラム
146 その他のプログラムモジュール
147 プログラムデータ
150 取り外し可能不揮発性メモリインターフェース
160 ユーザ入力インターフェース
161 マウス
162 キーボード
170 ネットワークインターフェース
171 ローカルエリアネットワーク
172 モデム
173 広域ネットワーク
180 リモートコンピュータ
185 リモートアプリケーションプログラム
190 ビデオインターフェース
195 出力周辺装置インターフェース
196 プリンタ
197 スピーカ
200 AHFW QECを備えるクライアントシステム
210 健全性証明書サーバ
220 IASサーバ
230a〜c ポリシーサーバ
240 VPNゲートウェイ
250 DHCPサーバ

【特許請求の範囲】
【請求項1】
ホストが、IPセキュリティプロトコル(IPsec)を使用するネットワークにおいて選択的ネットワーク隔離を提供する方法であって、
クライアントからクライアント健全性証明書を含むインターネットキー交換(IKE)パケットを受け取ること、
前記クライアント健全性証明書を検証すること、
前記クライアント健全性証明書が有効である場合、前記クライアントにホスト健全性証明書を送ること、および
前記クライアント健全性証明書が無効である場合、前記ホストへの前記クライアントのアクセスを拒否すること
を備えることを特徴とする方法。
【請求項2】
健全性証明書は、前記証明書の所有者が前記ネットワークのセキュリティポリシーに適合していることを示すことを特徴とする請求項1に記載の方法。
【請求項3】
前記クライアント健全性証明書が有効である場合、IPsec通信を介して前記クライアントと通信を行うことをさらに備えることを特徴とする請求項1に記載の方法。
【請求項4】
前記健全性証明書はX509証明書であることを特徴とする請求項1に記載の方法。
【請求項5】
前記健全性証明書はKerberosチケットであることを特徴とする請求項1に記載の方法。
【請求項6】
前記健全性証明書はWS−Securityトークンであることを特徴とする請求項1に記載の方法。
【請求項7】
請求項1に記載の方法を実行するコンピュータ実行可能命令が格納されていることを特徴とするコンピュータ可読媒体。
【請求項8】
ホストが健全性証明書を獲得する方法であって、
少なくとも1つの健全性ステートメントを健全性証明書サーバに送ること、
健全性証明書サーバから少なくとも1つの健全性ステートメント応答を受け取ること、および
前記少なくとも1つの健全性ステートメントが前記健全性証明書サーバによって有効と確認される場合、健全性証明書を受け取り、前記ホストへのクライアントのアクセスを許可する前に前記クライアントからのクライアント健全性証明書を必要とするIPsecポリシーを実施するように前記ホストを構成すること
を備えることを特徴とする方法。
【請求項9】
前記少なくとも1つの健全性ステートメントが有効と確認されない場合、前記少なくとも1つの健全性ステートメント応答は、前記ホストがネットワークセキュリティポリシーに適合していないことを示すことを特徴とする請求項8に記載の方法。
【請求項10】
前記健全性証明書はX509証明書であることを特徴とする請求項8に記載の方法。
【請求項11】
前記健全性証明書はKerberosチケットであることを特徴とする請求項8に記載の方法。
【請求項12】
前記健全性証明書はWS−Securityトークンであることを特徴とする請求項8に記載の方法。
【請求項13】
請求項8に記載の方法を実行するコンピュータ実行可能命令が格納されていることを特徴とするコンピュータ可読媒体。
【請求項14】
ネットワーク隔離モデルを実施するコンピュータネットワークであって、
各コンピュータが健全性証明書を所有し、やはり有効な健全性証明書を所有するコンピュータとだけ通信を行う第1のコンピュータグループと、
各コンピュータが健全性証明書を所有し、前記ネットワーク中の他のすべてのコンピュータと通信を行う第2のコンピュータグループと、
各コンピュータが健全性証明書を所有せず、前記ネットワーク中の他のすべてのコンピュータと通信を行う第3のコンピュータグループと
を備えることを特徴とするコンピュータネットワーク。
【請求項15】
前記第1のグループ中のコンピュータ間、および前記第1のグループのコンピュータと前記第2のグループのコンピュータの間の通信がIPsecを使って達成されることを特徴とする請求項14に記載のネットワーク。
【請求項16】
前記健全性証明書はX509証明書であることを特徴とする請求項14に記載のネットワーク。
【請求項17】
前記健全性証明書はKerberosチケットであることを特徴とする請求項14に記載のネットワーク。
【請求項18】
前記健全性証明書はWS−Securityトークンであることを特徴とする請求項14に記載のネットワーク。
【請求項19】
前記健全性証明書は、前記証明書の所有者が前記ネットワークの既定のセキュリティポリシーに適合していることを示すことを特徴とする請求項14に記載のネットワーク。
【請求項20】
前記第1のグループ中のコンピュータは、前記第3のグループ中のコンピュータと通信を開始することができるが、前記第3のグループ中のコンピュータは前記第1のグループ中のコンピュータと通信を開始することができないことを特徴とする請求項14に記載のネットワーク。

【図1A】
image rotate

【図1B】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2006−134312(P2006−134312A)
【公開日】平成18年5月25日(2006.5.25)
【国際特許分類】
【外国語出願】
【出願番号】特願2005−299941(P2005−299941)
【出願日】平成17年10月14日(2005.10.14)
【出願人】(500046438)マイクロソフト コーポレーション (3,165)
【Fターム(参考)】