説明

ネットワークリソースへの正常性ベースのアクセス

コンピュータシステムの動的な正常性状態、及びリソースの動的な評価の組み合わせに基づいて、コンピュータシステムが特定のリソースにアクセスできるか否かを動的に判定するものとして、本明細書で保護システムを説明する。ユーザがリソースへのアクセスを試みるとき、保護システムは要求を横取りする。保護システムは、ユーザがアクセスを試みているリソースの評価及びユーザがリソースにアクセスを試みているコンピュータシステムの正常性を判定する。判定されたリソースの評価及び判定されたコンピュータシステムの正常性に基づいて、保護システムはリソースへの要求されたアクセスを許可するか否かを判定する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ネットワークリソースへの正常性ベースのアクセスに関する。
【背景技術】
【0002】
アンチウイルス、アンチスパイウェア及び他のアンチマルウェアのアプリケーションは、有害なアプリケーション又は有害な他の実行可能なコードを特定し、有害なコードを取り除くか少なくとも無効にすることにより、クライアントコンピュータを保護しようとする。現在のアンチマルウェアのアプリケーション(例えばMicrosoft(登録商標) Windows(登録商標) Defender、Microsoft Forefront(登録商標) Client Security、Microsoft OneCare(登録商標)、Microsoft Forefront Server for Exchange Serverなど)は、署名ベースの手法を使用し、ウイルス、ワーム及びスパイウェアを検出する。マルウェア防止の一つの共通の型は、ユーザが要求する(例えばウェブブラウザにおいて)URL(Uniform Resource Locators)又はIP(Internet Protocol)アドレスを調査し、悪意がある又は悪意の可能性があるとして警告を与えられたURLへのアクセスをブロックすることに依存する。多くの場合、ユーザがウェブサイトを訪問し、「未知のソフトウェア(unknown software)」のインストールを許可する(通常ユーザは良いソフトウェアをインストールしていると信じる)ときにクライアントコンピュータを感染させるため、悪意があるとして知られているサイトへのアクセスをブロックすることは、ユーザのコンピュータを感染から保護することができる。
【0003】
マシンの正常性状態(health state)は、コンピュータシステムの正常性を判定し、コンピュータシステムの正常性に基づいてコンピュータシステムが実行できる動作を判定するために使用される技術である。例えば、多くの会社のLAN(local area network)の管理者は、ポリシが会社のネットワークにアクセスすることをコンピュータシステムに許可する前に、各コンピュータシステムが満たすポリシを定義する。例えば、管理者は、ポリシがLANにアクセスすることをコンピュータシステムに許可する前に組織のコンピュータシステム上に存在する特定のオペレーティングシステムパッチ又は特定のアンチウイルスの定義バージョンを指定するポリシを定義することができる。
【0004】
現在のウェブフィルタリング技術である、ホストベース(ローカルマシン)又は境界(edge)ベース(ゲートウェイデバイス/サーバ)のいずれかは、ポリシを使用し、ネットワークのプロトコル又はネットワークの宛先へのアクセスを制御する。これらのポリシは通常、グループにおけるメンバを検査するか、宛先のサイト名又は送信元のサイト名を検査するか、あるネットワークリソースへのアクセスについての時間帯の制限を課す等のポリシのオーサリング時間(policy authoring time)で知られるマシン属性又はユーザ属性を使用する。
【0005】
一つの問題は、これらの保護メカニズムが不必要に制限的であることが多いことである。ユーザにコンテンツを作成することを可能にするウェブサイトは、ウェブサイトのいくつかの悪意のある領域に加えて、多くのウェブサイトの悪意のない領域を有する場合がある。さらに、ユーザの仕事は、(例えばユーザを雇う会社に対する著作物の違法な配布を特定するために)害のあるウェブサイトを訪問することを伴う場合があり、ユーザは、他の予防策を取り、ユーザのコンピュータシステムの感染のリスクを防ぐことができる。例えば、ユーザは、プロテクトモード又はサンドボックスモードでブラウザを実行し、ウェブサイトがコンピュータシステムの他の要素に影響することを防ぐことができる。ユーザは厳格なアンチウイルスソフトウェアを実行し、感染のリスクを減らすこともできる。マシンの健全(正常性)の場合では、めったにラップトップを使用しないユーザは、プレゼンテーションのためにラップトップをとり、ウェブサイトにアクセスしたい場合があるが、ユーザは最近パッチをラップトップに更新していなかったため、アクセスを阻まれる。
【0006】
他の機会において、従来の保護メカニズムは十分に制限されない場合がある。例えば、URLベースのブロッキングは既知の悪意のあるURLのリストの限りにおいては良い。マルウェアの作者は、マルウェアをホストするドメイン名を絶えず変更するがゆえ、URLベースのブロッキングは、管理者がそのウェブサイトを悪意のあるウェブサイトのリストに追加するまでの一定の期間、悪意のあるウェブサイトを特定することに失敗する場合がある。
【発明の概要】
【0007】
保護システムを、コンピュータシステムの正常性状態及びリソースの評価の組み合わせに基づいて、コンピュータシステムが特定のリソースにアクセスできるか否かを判定するとして本明細書で説明する。ユーザがリソースへのアクセスを試みるとき、保護システムは要求を横取りする。保護システムはユーザがアクセスを試みているリソースの評価を判定する。保護システムは、ユーザがそれを介してリソースにアクセスを試みているコンピュータシステムの正常性も判定する。判定されたリソースの評価及び判定されたコンピュータシステムの正常性に基づいて、保護システムは要求されたリソースへのアクセスを許可するか否かを判定する。従って保護システムは、管理者がコンピュータシステムの正常性に基づいて悪意のある可能性のあるリソースからコンピュータシステムを保護することを可能にする。コンピュータシステムの正常性及び特定のリソースの評価の両方が時間と共に変化する場合があるので、保護は動的であり、保護システムは要求時点の評価及び正常性に基づいてコンピュータシステムを保護する。
【0008】
本「発明の概要」を、「発明を実施するための形態」において以下でさらに説明される簡略化された形式で概念の選択を紹介するために提供する。本「発明の概要」は、特許請求の範囲に記載された主題の主要な特徴又は重要な特徴を特定することを意図せず、特許請求の範囲に記載された主題の範囲を限定するために使用されることも意図しない。
【図面の簡単な説明】
【0009】
【図1】一実施形態において、保護システムのコンポーネントを示すブロック図である。
【図2】一実施形態において、保護システムを用いる環境を示すブロック図である。
【図3】一実施形態において、リソースにアクセスするために受信された要求を処理するシステムの処理を示すフロー図である。
【図4】一実施形態において、リソースにアクセスする要求を許可又は拒否するためのアクセス制御コンポーネントの処理を示すフロー図である。
【発明を実施するための形態】
【0010】
コンピュータシステムがコンピュータシステムの正常性状態及びリソースの評価の組み合わせに基づいて特定のリソースにアクセスできるか否かを判定するものとして、保護システムを本明細書で説明する。本システムは、不健全な(unhealthy)マシンより健全な(healthy)マシンが、リソースのより広い範囲にアクセスすることを可能にすることができる。例えば、健全なマシンは、最近のウイルス定義の全てを最新にインストールされたアンチウイルスソフトウェアを有するマシンとすることができる。このようなマシンは、アンチウイルスソフトウェアがインストールされていないマシンより、ウェブサイトのコンテンツから危険にさらされる可能性ははるかに少ない。本システムは、不健全なマシンが、高く評価できるとして知られるリソースにのみアクセス可能にすることができる。
【0011】
ユーザがリソースへのアクセスを試みるとき、保護システムは要求を横取りする。例えばユーザは、ウェブブラウザを使用し、URLを指定することにより特定のウェブページを要求することができる。保護システムはユーザがアクセスを試みているリソースの評価を判定する。例えば、リソースがウェブサイトである場合、システムは信頼されたURLの評価サービスにURLを送信し、リソースについての評価スコアを示す応答を受信することができる。保護システムは、ユーザがそれを介してリソースへのアクセスを試みているコンピュータシステムの正常性を判定する。例えば、保護システムは、システム(NAC(Network Access Control、ネットワークアクセス制御)と呼ばれることもある)のNAP(Network Access Protection、ネットワークアクセス保護)状態を検査し、またはコンピュータシステムについての正常性のスコアを判定するために1以上の正常性検査を実行することができる。判定されたリソース評価及び判定されたコンピュータシステムの正常性に基づいて、保護システムはリソースへの要求されたアクセスを許可するか否かを判定する。従って保護システムは、管理者がコンピュータシステムの正常性に基づいて、悪意のある可能性のあるリソースからコンピュータシステムを保護することを可能にする。コンピュータシステムの正常性及び特定のリソースの評価の両方が時間と共に変化する場合があるため、保護は動的であり、保護システムは要求時点の評価及び正常性に基づいてコンピュータシステムを保護する。
【0012】
正常性
本明細書で示されるように、保護システムは、コンピュータシステムの正常性を判定し、正常性に基づいて制限の異なるレベルを適用することができる。これらは、保護システムが使用し、コンピュータシステムの正常性を判定するか、または正常性検査を定義する多くの要素及び処理である。いくつかの実施例を本明細書でさらに詳細に説明し、当業者は保護システムで使用できる正常性を判定するための他の実施例を認識することができる。正常性の検査は、悪意のあるコンテンツに対する防御のコンピュータシステムのレベルを判定するコンピュータシステムの任意の測定を含むことができる。
【0013】
本明細書で説明されるような正常性のスコアは、正常性の指示の広い範囲を指すことができる。例えば、正常性のスコアの単純な実装は、システムが健全又は不健全であるという論理型(Boolean)の終了を含む。より複雑な正常性のスコアは、低い正常性、中程度の正常性及び高い正常性等の正常性のレベルを有することができる。あるいはまた、正常性のスコアは、0−100等の数字の範囲を含むことができ、その範囲の一端は管理者により定義される全ての正常性のポリシについてのシステムの失敗を示し、その範囲の他端は全ての正常性のポリシを通過するシステムを示す。各場合において、保護システムは、管理者が正常性のスコアの定義された各増加について、独立してリソースへのアクセスのレベルを定義することを可能にする。保護システムは正常性のスコア、本明細書でさらに説明されるリソース評価スコア、及び任意の定義されたポリシを考慮し、どのリソースに特定のコンピュータシステムがアクセスできるかを判定する。
【0014】
アプリケーションは、保護システムが呼び出しコンピュータシステムの現在の正常性状態を判定する正常性の検査を実装することができる。例えば、Windows Security Center等の製品、アンチウイルス製品、パッチ管理製品、及び他のセキュリティ製品又はこれらの製品の組み合わせは、システムに正常性の検査を提供することができる。NAP若しくは他の正常性ベースのサーバを呼び出すことによる帯域内で、又はより早く判定された正常性状態を認証する正常性の証明書に依存することにより帯域外で、クライアントの正常性のNAPエージェントにアクセスすること等により、本システムは様々な時間で、正常性検査を実施することもできる。(例えばNAPにより提供されるような)マシンの正常性に加えて、保護システムは、リソースアクセスの判定を行うときにユーザの正常性を受け取ることもできる。例えば、Microsoft Forefront Client‘s Security State Assessmentにおいて、いくつかの検査はマシン毎であり、いくつかの検査はユーザ毎である。ユーザ毎の検査について、マシンベース及びユーザベースの正常性検査が通過しない限り、IEのゾーンの設定又はOfficeのマクロの設定のような未知のリソースをユーザのためにブロックすることができる。
【0015】
リソース評価
本明細書で示されるように、保護システムは特定のリソース(例えばURL)の評価スコアを判定し、低い評価でのリソースへのアクセスを、低い正常性のコンピュータシステムのためにブロック又は制限することができる。保護システムは、本明細書で更に詳細に説明されるいくつかの方法を使用し、リソースの評価を判定することができる。当業者は、本明細書で説明される方法に加えて他のリソース評価の方法で保護システムを使用できることを理解されたい。
【0016】
正常性のスコアと同様に、本明細書で説明されるリソースの評価スコアは、評価の指示の広い範囲を参照することができる。例えば、評価のスコアの単純な実装は、リソースが悪意のあるものか又は安全であるか、論理型の終了を含む。より複雑な評価のスコアは、低い評価、中程度の評価、高い評価等の評価のレベルを有することができる。あるいは、評価のスコアは0−100等の数字の範囲を含むことができ、範囲の一端は既知の乏しい評価を示し、範囲の他端は既知の高い評価を示す。各場合において、保護システムは、管理者が評価スコアの定義された各増加について独立してリソースへのアクセスのレベルを定義することを可能にする。保護システムは、本明細書でさらに説明される正常性のスコア、リソースの評価スコア、及び任意の定義されたポリシを考慮し、どのリソースに特定のコンピュータシステムがアクセスできるかを判定する。
【0017】
ある実施形態において、保護システムは、評価されなかったか又は利用できなかった評価の未知のリソースに対応するリソースの評価スコアを定義する。例えば、新しいウェブサイトは、発見されるために、またリソース評価サービスに評価されるためにある程度時間がかかる場合がある。この時間の間、それは保護システムになお有用であり、リソースが未知であることを知る。保護システムは、コンピュータシステムが、評価情報が利用可能でないリソースにアクセスできるか否かを判定するポリシを、管理者が定義することを可能にする。未知の状態が論理型ではなくむしろ傾度のレベル(gradient level)(例えば0から100)であるとき、管理者はポリシを介して未知の状態をカスタマイズできる可能性がある。例えば、一組織の管理者は未知のサイトについて50より大きいスコアが危険であると感じる一方、他の組織の管理者は75より大きいスコアが危険と感じる場合がある。従って、注意深い管理者は、未知のリソースのアクセスを拒否するか、又は未知のリソースへのアクセスを要求するコンピュータシステムの特定の最低限の正常性状態を指定することができる。例えば、クライアントシステムがリアルタイムの保護が可能なアンチウイルスを有し、署名及びパッチが最新である場合、管理者はクライアントシステムが未知のURLを閲覧できることを指定するポリシを定義することができる。以前のシステムは通常、未知のURLをブロックするか又は従来の境界ファイアウォールのルールにおいて使用される静的な基準に基づいてアクセスを許可する。
【0018】
ある実施形態において、保護システムがリソース評価サービスから受信する評価情報は、リソースにより提供されるコンテンツのタイプを説明する1以上のカテゴリを含む。例えば、ウェブサイトは、スポーツ、ニュース、ポルノ等のカテゴリに属することができる。保護システムは、クライアントシステムがアクセスできるカテゴリを管理者が定義することを可能にし、クライアントシステムが得る閾の正常性状態と関連付け、特定のカテゴリのリソースにアクセスする。ある実施形態において、カテゴリはどの程度の粒度(granular)のデータが評価サービスから返されるかに依存して、0から100等の確信レベル(confidence level)に割り当てられる。これは「確からしい(probable)」カテゴリに基づいてポリシが、動的に格付けされたコンテンツに一致することを可能にする。例えば、ポルノコンテンツの確信が80より大きい場合、ポリシはURLをブロッキングすることを指定することができる。
【0019】
システムコンポーネント
図1は、一実施形態において、保護システムのコンポーネントを示すブロック図である。保護システム100は、リソース要求コンポーネント110、リソース評価コンポーネント120、正常性状態コンポーネント130、ポリシコンポーネント140及びアクセス制御コンポーネント150を含む。これらのコンポーネントの各々を、本明細書でさらに詳細に説明する。
【0020】
リソース要求コンポーネント110は、要求を受信し、ユーザプログラム又は他のアプリケーション(例えばオペレーティングシステムサービス)からリソースにアクセスする。ある実施形態において、保護システム100は、カーネルモードのネットワークフィルタを用い、ネットワークの要求を横取りし、コンピュータシステムを保護するために本明細書で説明されるステップを実行する。多くのオペレーティングシステムは、ネットワーキングのスタックにネットワークフィルタを追加するAPI(application-programming interface、アプリケーションプログラムインターフェース)を提供する。例えば、Microsoft Windowsは、本明細書で説明されるステップを実行できるNDIS(Network Driver Interface Specification)フィルタのいくつかの型を追加するAPIを提供する。あるいは、またはさらに、保護システム100は、要求するコンピュータシステムと要求されたリソースとの間におけるネットワークルーター等のリソースで動作することができる。任意の特定のアプリケーションよりも低いレベルでコンピュータシステムと相互作用することにより、保護システム100は、ユーザがネットワークにアクセスするために使用するアプリケーション(例えばウェブブラウザ、インスタントメッセージのアプリケーション、電子メールクライアントなど)に関わらず、コンピュータシステムに保護を提供することができる。リソース要求コンポーネント110により受信される要求は、IPアドレス、ドメイン名、URL、又は同様の識別等によりアクセスされることになるリソースを特定する。
【0021】
リソース評価コンポーネント120は、リソース要求コンポーネント110を介して受信されるリソース要求についての要求されたリソースの評価スコアを判定する。例えば、リソース要求コンポーネント110はURLを受信することができ、リソース評価コンポーネント120は、インターネット上にホストされるリソース評価サービスにURLを送信し、リソースの評価を判定することができる。評価サービスは、要求されたリソースの評価を示す応答、又はある場合においては要求されたリソースの評価が評価サービスに知られていないことを示す応答を提供する。
【0022】
正常性状態コンポーネント130は、リソース要求を作るコンピュータシステムの正常性のスコアを判定する。正常性のスコアは、管理者定義の正常性のポリシの結果又は結果の集合を含むことができる。正常性のポリシは、オペレーティングシステムのパッチのレベル、ウイルス定義のレベル、ドライバが署名されるか否か、コンピュータシステム上にインストールされたアプリケーションか、パッチが各アプリケーションについて最新かどうか等のコンピュータシステムの正常性を示すこととして管理者が定義する様々な種類の情報を含むことができる。システムの正常性状態は、ユーザの動作(例えばアプリケーションのインストール)、外部の要因(例えば新しいウイルス定義をリリースするアンチウイルスソフトウェアのベンダー)、及び/又は管理者により定義されるポリシの変更に基づいて、時間と共に変化する場合がある。従って、保護システム100は、コンピュータシステムの現在の正常性状態に基づいて、特定のアクセス要求を許可又は拒否するかを判定する。
【0023】
ポリシコンポーネント140は、保護システム100が使用し、特定のアクセス要求を許可又は拒否するかを判定する、管理者により定義されるポリシを受信及び格納する。例えば、任意の正常性のレベルのコンピュータシステムにより高い評価リソースにアクセス、中程度の正常性のレベルのコンピュータシステムにより中程度の評価リソースにアクセス、及び高い正常性のレベルのコンピュータシステムにより低い評価リソースにアクセスを許可するポリシを管理者は定義することができる。管理者は、評価情報が利用可能でないリソースについてのポリシも定義することができる。管理者により定義されたポリシは、システムの正常性を判定するコンピュータシステムの質を修正することも含むことができる。ポリシは、本明細書でさらに説明されるように、自動修復特性及び/又は監査特性を可能にすることも含むことができる。
【0024】
管理者は、本明細書で説明され、大きな会社の環境において通常行動しているが、その管理者は、家庭において子供のコンピュータシステムについて1以上のポリシを定義する親等のホームユーザである場合もある。従って、管理者は、コンピュータシステムが使用される組織の大きさ又は組織の種類によってではなく、管理者の役割で行動するユーザが保護システム100に関して実行することができる行動により定義される。
【0025】
これらの制御コンポーネント150は、要求するコンピュータシステムの判定された正常性のスコア及びコンピュータシステムがアクセスを要求するリソースの評価スコアに、定義されたポリシを適用することにより、要求されたリソースへのアクセスを許可するか否かを判定する。アクセス制御コンポーネント150がリソースへのアクセスを許可する場合、保護システム100が要求を横取りしなかったかのように、コンポーネント150はネットワークのスタックを介して受信した要求を送信する。リソースはその後、要求を受信し、(例えば要求に関連付けられたプロトコルに基づいて)適切な応答を提供することができる。
【0026】
ある実施形態において、アクセス制御コンポーネント150がリソースへのアクセスを拒否する場合、コンポーネント150は、リソースへのアクセスの失敗を示す、要求への応答を(例えばリソース要求コンポーネント110を介して)提供する。例えば、要求がウェブブラウザから受信されたHTTP(Hypertext Transfer Protocol)要求である場合、アクセス制御コンポーネント150は、404(リソースが見つからず)又は他の適切なHTTPエラーコードをウェブブラウザに提供し、システムが要求を拒否したユーザに通知する(及びアプリケーションがタイムアウトを待つこと及び/又は繰り返して再試行することを防ぐ)ことができる。
【0027】
システムが実装されるコンピューティングデバイスは、中央処理ユニット、メモリ、入力デバイス(例えばキーボード及びポインティングデバイス)、出力デバイス(例えばディスプレイデバイス)、及びストレージデバイス(例えばディスクドライブ又は他の不揮発性ストレージ媒体)を含むことができる。メモリ及びストレージデバイスは、システムを実装又は可能にするコンピュータ実行可能命令(例えばソフトウェア)でエンコードされることができるコンピュータ可読ストレージ媒体である。さらに、データ構造及びメッセージ構造を、通信リンク上の信号等のデータ送信媒体を介して格納又は送信することができる。様々な通信リンクを、インターネット、ローカルエリアネットワーク、ワイドエリアネットワーク、ポイント・ツー・ポイントのダイヤルアップ接続、携帯電話網等で使用することができる。
【0028】
システムの実施形態を、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルドデバイス又はラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサベースのシステム、プログラム制御可能な家庭用電化製品、デジタルカメラ、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、上述のシステム又上述のデバイスの任意を含む分散コンピュータ環境等を含む様々な動作環境において実装することができる。コンピュータシステムは、携帯電話、PDA(Personal Digital Assistants)、スマートフォン、パーソナルコンピュータ、プログラム制御可能な家庭用電化製品、デジタルカメラ等とすることができる。
【0029】
システムを、1以上のコンピュータ又は他のデバイスにより実行されるプログラムモジュール等のコンピュータ実行可能命令の一般的な文脈で説明することができる。一般に、プログラムモジュールは、特定のタスクを実行し、または特定の抽象データ型を実装する、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造等を含む。一般に、プログラムモジュールの機能性を、様々な実施形態において望まれるように組み合わせるか、分散することができる。
【0030】
図2は、一実施形態において、保護システムを用いる環境を示すブロック図である。この図は、ホストベースのNAP対応のウェブフィルタリングを示し、ここで境界のゲートウェイデバイスはない。1以上のクライアントコンピュータシステム210は、ホストされたサーバの3セットと通信され、3セットは、(マイクロソフト評価サービス(MRS)・アレイ、及びマイクロソフト評価サービス(MRS)データベースとして示される)URL評価サービス220、(ルート・サイロ(Root Silo)、ルート証明機関(CA)、サービス・サイロ(Serving Silo)として示される)ポリシ及び遠隔測定(telemetry)についてのマシン/ユーザ・管理サーバ230、及び(ネットワークアクセス保護(NAP) 正常性登録機関(HRA)・アレイ、ネットワークアクセス保護(NAP) 中間証明機関(CA)、ネットワークアクセス保護(NAP) ネットワークポリシサーバ(NPS)・アレイとして示される)ホストされたNAPサーバ240である。コンピュータシステムの各々は、インターネット、LAN、WAN、無線ネットワークなどの1以上のネットワーク250を介して通信する。
【0031】
NAPサーバ240は、NAPサーバ240がクライアントマシン上のNAPエージェントに送信する(ある場合において改ざんを防ぐために暗号化して署名された)正常性のステートメント(statement-of-health)を提供する。保護システムの施行ポリシは、NAPエージェントによりキャッシュされる正常性のステートメントと呼ぶことができ、URL評価カテゴリ、ユーザグループのメンバ、又はクライアントコンピュータシステム210の1つが、要求されたリソースにアクセスすることができるか否かを判定するための時間帯の制限を含むポリシの組み合わせにおいて使用できる。NAPエージェントをサポートしない、またはNAP検査を免除されるクライアントマシンのために、保護システムが、NAP対応クライアントと同様に、リソースポリシを評価することに使用することができるNAP適用除外証明書をインストールすることができる。
【0032】
URL評価サービス220を、様々な目的(例えばフィッシングのフィルタ、ウェブアクセス制御など)で、第三者により提供することができる。例えば、Microsoft Live OneCareは、インターネットを介してアクセス可能なURL評価サービス220を含み、クライアントコンピュータシステム210は、評価要求をURL評価サービス220に送ることができる。同様に、NAPサーバ240を、クライアントコンピュータシステム210の正常性を保証し、正常性の検証として正常性のステートメントを提供する正常性の提供者によりホストすることができる。保護システムを、それ自身の独立したURL評価サービス及び正常性サーバを提供するように構成することができるか、又は保護システムは、本明細書で説明される処理を実行するために説明されるもの等の第三者のサービスを使用することができる。
【0033】
図3は、一実施形態において、リソースにアクセスするための受信された要求を処理するシステムの処理を示すフロー図である。ブロック310において、システムは、リソースの識別を含む要求を受信し、リソースにアクセスする。ユーザがリソースにアクセスを試みるとき、保護システムは要求を横取りする。例えば、ユーザはウェブブラウザを使用し、URLを指定することにより、特定のウェブページを要求することができる。引き続きブロック320では、システムは要求されたリソースの評価を判定する。例えばリソースがウェブサイトである場合、その後システムはURLを信頼されたURL評価サービスに送り、リソースについての評価スコアを示す応答を受信することができる。その評価は、リソースにアクセスすることが、悪意のあるコンテンツをダウンロードすることを引き起こすか、又は別の方法でコンピュータシステムに悪く影響することになる可能性(likelihood)を示す。
【0034】
引き続きブロック330では、システムは要求を受信するコンピュータシステムの正常性を判定する。例えば、保護システムは、システムのNAP(ネットワークアクセス保護)状態を検査するか、又は1以上の正常性検査を実行し、コンピュータシステムについての正常性のスコアを判定することができる。引き続きブロック340では、システムは、リソース評価、及びコンピュータシステムが要求されたリソースにアクセスすることを許可されたコンピュータシステムの正常性に基づいて、1以上の状況を特定するアクセスポリシにアクセスする。
【0035】
引き続きブロック350では、システムはアクセスポリシを適用し、アクセスポリシに基づいて要求されたリソースにアクセスすることをコンピュータシステムに許可するか否かを判定する。このステップを、図4を参照してさらに説明する。コンピュータシステムの正常性及び特定のリソースの評価は、時間と共に変化する場合があり、保護システムは、コンピュータシステムの正常性、及び要求時点のリソースの評価に基づいてリソースにアクセスすることができるか否かを動的に判定することを管理者に可能にする。ブロック350の後、これらのステップは終了する。
【0036】
図4は、一実施形態において、リソースにアクセスする要求を許可又は拒否するためのアクセス制御コンポーネントの処理を示すフロー図である。示された実施形態において、保護システムは、高い評価、中程度の評価又は低い評価を示す評価スコア、及び高い正常性、中程度の正常性又は低い正常性を示す正常性状態を受信する。本明細書で説明されるように、保護システムにより使用される評価及び/正常性状態は、示されるものより、細かい粒度であったり、粗い粒度であったりする場合がある。
【0037】
ブロック410において、コンポーネントは、要求に基づいてシステムにより判定される正常性スコア及び評価スコアを受信する。例えば、システムは、図3を参照して説明される処理に基づいて正常性及び評価スコアを判定することができる。引き続き判定ブロック420では、要求されたリソースの評価が高い場合(例えば既定の閾値より上)、その後コンポーネントはブロック425に続き、コンピュータシステムが要求されたリソースにアクセスすることを許可し、それ以外のコンポーネントはブロック430に続く。例えば、要求されたリソースは、管理者定義のポリシが、コンピュータシステムの現在の正常性に関わらずリソースへのアクセスを許可するこのような高い評価のリソース(例えばhttp://www.microsoft.com)とすることができる。
【0038】
引き続き判定ブロック430では、要求するコンピュータシステムの正常性が高い場合、その後コンポーネントはブロック425に続き、コンピュータシステムが要求されたリソースにアクセスすることを許可し、それ以外のコンポーネントはブロック440に続く。例えば、管理者定義の正常性のポリシは十分に制限的であるため(例えば全てのパッチがインストール済み、プロテクトモードのブラウザ、JavaScriptがオフ、ウイルス定義が最新など)、管理者は、高い正常性のマシンが要求されたリソースの評価に関わらず安全であることを確信することができる。引き続き判定ブロック440では、要求するコンピュータシステムの正常性が中程度である場合、その後コンポーネントはブロック450に続き、それ以外のコンポーネントはブロック460に続き、かつコンピュータシステムが要求されたリソースにアクセスすることを拒否する。
【0039】
引き続き判定ブロック450では、要求されたリソースの評価が中程度である場合、その後コンポーネントはブロック425に続き、コンピュータシステムが要求されたリソースにアクセスすることを許可し、それ以外のコンポーネントはブロック460に続き、かつコンピュータシステムが要求されたリソースにアクセスすることを拒否する。引き続きブロック460では、コンポーネントは要求されたリソースへのコンピュータシステムのアクセスを拒否する。ブロック460の後、これらのステップは終了する。
【0040】
ある実施形態において、保護システムは、自動化された修復及び/又はリソースへのアクセスの監査を提供する。例えば、ウェブサイトへのユーザアクセスを拒否するとき、保護システムは、ユーザがアンチウイルスソフトウェアを更新するか、又は推奨されたオペレーティングシステムのパッチを適用する場合に、ユーザがリソースへアクセスすることができるユーザに、ユーザ情報のためのユーザインターフェースを表示することができる。このシステムはユーザに尋ねることなくこのような修復を自動的に適用することができる。さらに、保護システムがリソースへのユーザアクセスを拒否するとき、システムは、管理者が閲覧し、例えば、ポリシがある未知のサイトを許可できたか否か、又はシステムが合法サイトへのアクセスを拒否しているか否かなど、判定することができる監査記録(audit trail)(例えばログ)を作成することができる。これは、報告を介したセキュリティポリシの広範囲の可視度、NAPの正常性検査に基づいてウェブアクセスのブロックを介したセキュリティの広範囲の遵守度、及びNAPの自動修復の特性を介したセキュリティの広範囲の修復度を可能にする。NAPの正常性検査の失敗が原因で、まずウェブアクセスをブロックする代わりに、NAPの自動修復動作を試みた後、システムは最後の手段としてアクセスを拒否することができる。例えば、自動修復は、ファイアウォールの設定を整理して掛けること(locking down)、セキュリティパッチをインストールすること、アンチウイルス署名の更新をインストールすること、リソースへのアクセスが拒否される前に自動的にセキュリティ特性を可能にすることを含むことができる。
【0041】
ある実施形態において、保護システムは、従来のフィルタリング技術の代わりというよりはむしろその組み合わせで機能する。例えばシステムは、ユーザのグループのメンバ、URL評価のカテゴリ、又は時間帯の制限の組み合わせで正常性検査を使用し、特定のリソースへのアクセスを許可するか否かを判定することができる。保護システムは、各グループにおけるユーザの予想される高度さ(expected sophistication)、又は他の基準に基づき、他のグループのユーザ(例えばゲスト)より、あるグループのユーザ(例えば管理者又はパワーユーザ)に、より制限的でないアクセスを提供することができる。
【0042】
ある実施形態において、保護システムを、組織における十分なサーバ基盤なしにクライアントマシンを保護する、オンラインでホストされたサービスとして提供する。例えば組織は、オンラインサービスへの加入権(subscription)を購入することができ、オンラインサービスを介して管理者はアクセスポリシを定義でき、オンラインサービスにクライアントはアクセス要求を送り、かつ従来のファイアウォール、プロキシサーバ、又は組織内の他の基盤なしに許可/拒否の応答を受信する。これは管理者を大きな負担から解放し、組織のハードウェアのコストを節約することができる。
【0043】
ある実施形態において、保護システムは、さらに正常性の検査を加えること、又はシステムが監視することができる(例えばネットワークプロトコルによる)リソース要求の新しいタイプを定義することにより、第三者がシステムを拡張することを可能にする。例えば、Apple(登録商標) iTune(登録商標)等のアプリケーションは、アプリケーションに全ての最新のパッチがインストールされたときにシステムに知らせるプラグインをシステムに提供することができる。保護システムは、アプリケーションをホストするクライアントシステムの正常性のスコアを判定する要素として、この情報を使用することができる。
【0044】
以上から、システムの指定の実施形態を、例示目的で本明細書に説明してきたが、様々な変更を、本発明の精神及び本発明の範囲から逸脱することなく行なうことができることを理解されよう。例えば、ウェブサイトをリソースの一種類として説明してきたが、保護システムは、ネットワーク共有、ftpサイト、RSSフィード、ビデオプレイリストなどを含むリソースの多くの種類で使用することができる。従って、本発明は添付の特許請求の範囲によらない限り限定されない

【特許請求の範囲】
【請求項1】
コンピュータシステムを悪意のあるネットワークリソースにアクセスすることから保護するコンピュータで実行される方法であって、
リソースの識別を含む要求を受信し、前記リソースにアクセスするステップ(310)と、
前記要求されたリソースの評価を判定するステップ(320)であって、前記評価は、アクセスする前記リソースが悪意あるコンテンツを前記コンピュータシステムにダウンロードする可能性を示す、判定するステップ(320)と、
前記要求を受信した前記コンピュータシステムの正常性状態を判定するステップ(330)と、
前記リソースの評価、及び前記要求されたリソースにアクセスすることを許可される前記コンピュータシステムの正常性状態に基づいて、1以上の状況を示すアクセスポリシにアクセスするステップ(340)と、
前記アクセスポリシを適用し、前記アクセスポリシに基づいて前記要求されたリソースにアクセスすることを前記コンピュータシステムに許可するか否かを判定し、それによって前記コンピュータシステムを悪意あるネットワークリソースにアクセスすることから保護するステップ(350)と
を備え、これらのステップを少なくとも1つのプロセッサにより実行するようにしたことを特徴とするコンピュータで実行される方法。
【請求項2】
前記要求を受信するステップは、前記コンピュータシステム上にインストールされたネットワークフィルタを使用し、前記要求をアプリケーションから横取りするステップを備えたことを特徴とする請求項1に記載のコンピュータで実行される方法。
【請求項3】
前記要求を受信するステップは、複数のアプリケーションから要求を受信するステップと、前記コンピュータシステムを、前記複数のアプリケーションから悪意のあるネットワークリソースにアクセスすることから保護するステップとを備えたことを特徴とする請求項1に記載のコンピュータで実行される方法。
【請求項4】
前記要求されたリソースの前記評価を判定するステップは、前記要求されたリソースの前記識別を、ウェブベースの評価サービスに送るステップと、前記評価サービスから、前記要求されたリソースについての評価スコアを示す応答を受信するステップとを備えたことを特徴とする請求項1に記載のコンピュータで実行される方法。
【請求項5】
前記正常性状態を判定するステップは、NAP(ネットワークアクセス保護)サーバにアクセスし、前記コンピュータシステムの前記正常性状態を判定するステップを備えたことを特徴とする請求項1に記載のコンピュータで実行される方法。
【請求項6】
前記コンピュータシステムがより高く良い正常性状態である場合、前記アクセスポリシがより多くのアクセスを提供するようにしたことを特徴とする請求項1に記載のコンピュータで実行される方法。
【請求項7】
前記コンピュータシステムの前記正常性状態、及び前記要求されたリソースの前記評価は時間と共に変化し、前記方法は、前記コンピュータシステムの正常性状態、及び前記要求時点の前記リソースの前記評価に基づいて、前記要求されたリソースにアクセスすることを前記コンピュータシステムに許可するか否かを動的に判定するようにしたことを特徴とする請求項1に記載のコンピュータで実行される方法。
【請求項8】
ネットワークリソースへのアクセスを要求し、コンピュータの正常性に基づいて前記ネットワークリソースへのアクセスをブロックするコンピュータシステムであって、
ソフトウェアの命令を実行するように構成されたプロセッサ及びメモリと、
要求を受信するように構成され、ユーザプログラム又は他のアプリケーションからリソースにアクセスするリソース要求コンポーネント(110)であって、前記リソース要求コンポーネントにより受信された要求は、アクセスされることになる前記リソースを特定する、リソース要求コンポーネント(110)と、
前記リソース要求コンポーネントを介して受信されたリソース要求に対する前記ネットワークリソースの評価スコアを判定するように構成されたリソース評価コンポーネント(120)と、
前記リソースの要求を作る前記コンピュータシステムの正常性のスコアを判定するように構成された正常性状態コンポーネント(130)と、
管理者により定義されたポリシを受信及び格納し、特定のリソースアクセス要求を許可又は拒否するかを判定するように構成されたポリシコンポーネント(140)と、
前記要求するコンピュータシステムの前記判定された正常性のスコア、及び前記ネットワークリソースの前記評価スコアに、前記定義されたポリシを適用することにより、要求されたリソースへのアクセスをすることを許可するか否かを判定するように構成されたアクセス制御コンポーネント(150)と
を備えたことを特徴とするコンピュータシステム。
【請求項9】
前記リソース要求コンポーネントは、カーネルモデルのネットワークフィルタを用い、ネットワークフィルタをネットワークスタックに追加するAPI(アプリケーションプログラムインターフェース)を提供されたオペレーティングシステムを介してネットワーク要求を横取りするようにしたことを特徴とする請求項8に記載のコンピュータシステム。
【請求項10】
前記システムは、要求するコンピュータシステムと前記要求されたリソースとの間のリソースにおいて動作し、リソース要求を横取りして、および前記要求されたリソースにアクセスすることを前記要求するコンピュータシステムに許可するか否かを判定するようにしたことを特徴とする請求項8に記載のコンピュータシステム。
【請求項11】
URL(Uniform Resource Locator)を受信して、およびインターネット上にホストされたURL評価サービスに前記URLを送り、前記リソースの前記評価を判定するように、前記リソース評価コンポーネントをさらに構成するようにしたことを特徴とする請求項8に記載のコンピュータシステム。
【請求項12】
評価が前記要求されたネットワークリソースとして知られているか否かを示すように、前記リソース評価コンポーネントをさらに構成し、既知の評価なしにリソースに対する特定のポリシを適用するように、前記ポリシコンポーネントを構成するようにしたことを特徴とする請求項8に記載のコンピュータシステム。
【請求項13】
前記正常性状態コンポーネントは、オペレーティングシステムのパッチレベル、ウイルス定義レベル、ドライバの署名の状態、アプリケーションのインストールの状態、アプリケーションのパッチの状態、及びファイアウォール構成を含むグループから選択された、1以上の正常性検査を含む、管理者が定義した正常性のポリシの結果の集合に基づいて、正常性のスコアを判定するようにしたことを特徴とする請求項8に記載のコンピュータシステム。
【請求項14】
前記ポリシコンポーネントは、任意の正常性レベルのコンピュータシステムによる高い評価のリソースへのアクセス、および高い正常性レベルのコンピュータシステムによる低い評価のリソースへのアクセスを許可するようにしたことを特徴とする請求項8に記載のコンピュータシステム。
【請求項15】
前記管理者は、家庭における1以上のコンピュータシステムに対するポリシを定義するホームユーザを含むことを特徴とする請求項8に記載のコンピュータシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate


【公表番号】特表2012−516502(P2012−516502A)
【公表日】平成24年7月19日(2012.7.19)
【国際特許分類】
【出願番号】特願2011−547933(P2011−547933)
【出願日】平成21年12月11日(2009.12.11)
【国際出願番号】PCT/US2009/067790
【国際公開番号】WO2010/087904
【国際公開日】平成22年8月5日(2010.8.5)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.JAVASCRIPT
【出願人】(500046438)マイクロソフト コーポレーション (3,165)
【Fターム(参考)】