説明

セキュリティリスクを評価するための機構

【課題】アプリケーションをロードすることに関連付けられたセキュリティリスクを統合的に評価するための機構を提供すること。
【解決手段】アプリケーションをロードすることに関連付けられたホスティング環境は、セキュリティリスクを評価するトラストマネージャ(505)を呼び出す。トラストマネージャは、複数のトラストエバリュエータを呼び出すが、各トラストエバリュエータは異なるセキュリティリスク(507)の分析および査定を担う。各セキュリティリスク評価の終了により、それらの個々のセキュリティリスク評価の結果は、トラストマネージャ(511)に返される。トラストマネージャは、様々なセキュリティリスク評価結果を集め、集合評価結果(513)に基づきセキュリティ判定を行う。その判定は、アプリケーションのロードを進めること、アプリケーションのロードを停止すること、または恐らくユーザにロードを進めるか否かについての決断を促すことができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンピュータセキュリティシステムに関する。より詳細には、本発明は、コンピューティングシステムに対するセキュリティアセスメント情報の評価および集約に関する。
【背景技術】
【0002】
今日のコンピュータユーザは、多数の異なるアプリケーションおよびユーティリティにアクセスする。典型的なコンピュータユーザは、年間にコンピュータ上で多数のコンピュータプログラムをインストールすることができる。多くの場合、コンピュータユーザは、意識的に自身のコンピュータ上にプログラムをインストールする。例えば、ユーザは、ソフトウェアプログラムを購入し、手動でインストールすることができる。時にはユーザは、ユーザのコンピュータにアプレットまたは小さなプログラムをインストールするよう構成される特定のウェブサイトを訪れることなどにより、無意識にプログラムをインストールする場合がある。コンピュータにプログラムをインストールすることは、ユーザが新しいソフトウェアをインストールすることと関連を持つセキュリティ問題に気付いていない今日では極めて一般的である。他のユーザは、一般的にセキュリティ問題を強く意識するが、概して特定のプログラムのインストールを取り巻く特定の問題は不透明である。
【0003】
大部分のユーザは、新規のプログラムがウイルスまたは他の悪意のあるコードを彼らのコンピュータに持ち込むことが可能であることを理解する。ユーザは、一部のソフトウェア開発者が自由に利用可能なプログラムを作り、それが電子メールメッセージを高めるなどの公然の機能または目的を持ち、およびマーケティングエンティティ(marketing entity)を後で返されるユーザについての情報を記録するなどの秘密の機能または目的を持つことも理解する。この特定のタイプのソフトウェアは、しばしば「スパイウェア」と呼ばれる。ユーザは、多くの場合様々な方法でこれらのセキュリティの脅威から自らを守ろうとする。例えば、多くのユーザは、ウイルスから自らを守るためにアンチ‐ウイルスユーティリティをインストールする。少数のユーザは、スパイウェアセキュリティ問題に対処するアンチ‐スパイウェアユーティリティもインストールする。
【発明の概要】
【発明が解決しようとする課題】
【0004】
残念ながら、各セキュリティユーティリティは、互いに個別に、かつ互いの結果の知識なしに動作し、それ故、各セキュリティユーティリティから情報を取り入れるためユーザに負担をかける。今日セキュリティシステムは、互いに孤立して動作し、各々ユーザにのみ具体的なセキュリティリスクについて報告する。大部分のユーザは、個々の異なるシステムからの異なるセキュリティリスクの個別の通知を欲しがらない。むしろ、ユーザは、自身のためのセキュリティシステムが欲しい。今日のセキュリティユーティリティの寄せ集めの性質上、概して、自身の防御に穴を開け、悪意のあるまたは望ましくないプログラムが擦り抜けることを心配するあまりユーザが置き去りにされる。その不安のために、多くのユーザは、特にオンライン環境において、新しいプログラムを試すことに消極的である。
【0005】
残念ながら、ダウンロード、インストール、または実行時にある特定のソフトウェアプログラムにより複数の異なるセキュリティリスクからユーザを守ることのできる機構は現在のところ存在しない。セキュリティリスクを評価するための適切な機構は、当業者がなかなか実現できなかった。
【課題を解決するための手段】
【0006】
本発明は、便利で有効な方法におけるセキュリティアセスメント情報に関するプログラムおよび動作についてのセキュリティアセスメント情報を蓄積するためのシステムおよび方法を示す。簡単に述べると、ホスティング環境は、アプリケーションのロードに対して責任がある。アプリケーションのロードの開始に応答して、ホスティング環境は、トラストマネージャを呼び出し、アプリケーションに関連した何らかのセキュリティリスクを評価する。トラストマネージャは、複数のトラストエバリュエータ(trust evaluator)を呼び出すが、各エバリュエータは異なるセキュリティリスクの分析および査定(assessing)を担う。各セキュリティリスクの評価終了後、これらの個々のセキュリティリスク評価の結果は、トラストマネージャに返される。トラストマネージャは、様々なセキュリティリスク評価の結果を集め、集められた評価結果に基づきセキュリティ判定を行う。その判定は、アプリケーションのロードを進めるか否か、アプリケーションのロードを停止するか否か、またはおそらく、ロードを進めるか否かについての決断をユーザに促すことができる。好都合にも、決断を促すなら、ユーザは、アプリケーションの統合セキュリティアセスメント(collective security assessment)に基づいた決断をすることができ、そのアプリケーションは、ユーザのコンピュータシステム全般についての高い守りの意識をユーザに持たせる。
【図面の簡単な説明】
【0007】
【図1】本発明の実装において使用されることのできるコンピューティング装置を図示した機能ブロック図である。
【図2】アプリケーションのセキュリティ評価を行うための、およびその評価の統合セキュリティアセスメントをユーザに提供するためのシステムのコンポーネントを一般的に図示する機能ブロック図である。
【図3】アプリケーションとの関連で、特定のパーミッションをアプリケーションのコンポーネントと関連付けるアプリケーションに対する1つの実例となるグラントセットの図形による表現である。
【図4】ユーザに統合セキュリティアセスメント情報を提供するために使用されることができる1つの実例となるユーザインターフェースの図形による表現である。
【図5】アプリケーションに関連付けられたセキュリティリスクを評価するための、および統合セキュリティアセスメントをユーザに提供するためのプロセスを一般的に図示する論理流れ図である。
【発明を実施するための形態】
【0008】
本発明を、本発明の実施形態を実装できる例示的なコンピューティング環境の一例を参照しながらまずここで説明する。次に、本発明の1つの具体的な実施形態の詳細な例を説明する。それに替わる実装は、具体的な実装の特定の詳細についても含まれる場合がある。本発明の実施形態は、これらここでの説明により制限されないことを理解されたい。
【0009】
(本発明の例示的なコンピューティング環境)
図1は、本発明の例示的な実施形態において使用されることができるコンピュータ装置を示す。図1に関連して、本発明を実装するための1つの典型的なシステムは、コンピュータ装置100などのコンピュータ装置を含む。非常に基本的な構成において、コンピュータ装置100は、一般的に少なくとも1つの処理装置102およびシステムメモリ104を含む。的確なコンピュータ装置の構成および形式、システムメモリ104は、揮発性(RAMなど)、不揮発性(ROM、フラッシュメモリなど)またはこれら2つのある組み合わせに依存する。システムメモリ104は、一般にオペレーティングシステム105、1つまたは複数のプログラムモジュール106を含み、およびプログラムデータ107を含む場合がある。この基本的なコンピュータ装置100の構成は、破線108中のこれらのコンポーネントによって図1に示されている。
【0010】
コンピューティング装置100は、追加の特徴または機能を有する。例えば、コンピューティング装置100は、追加のデータストレージ装置(取外し可能なおよび/または固定の)例えば、磁気ディスク、光ディスク、またはテープなども含むことができる。この様な追加のストレージは、取外し可能なストレージ109および固定のストレージ110により図1に示される。コンピュータストレージ媒体は、揮発性および不揮発性、取外し可能および固定の媒体を含むことができ、コンピュータ読取り可能な命令、データ構造、プログラムモジュール、または他のデータなどの情報の格納のための任意の方法または技術において実装される。システムメモリ104は、取外し可能なストレージ109および固定のストレージ110は、コンピュータストレージ媒体のすべての例である。コンピュータストレージ媒体は、限定ではないが、RAM、ROM、EEPROM、フラッシュメモリまたは他のメモリ技術、CD−ROM、デジタル多目的ディスク(「DVD」)または他の光ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージまたは他の磁気ストレージ装置、または所望の情報を記憶するのに用いることが可能なまたはコンピューティング装置100がアクセスすることが可能な任意の他の媒体を含む。任意のこの様なコンピュータストレージ媒体は、コンピューティング装置100の一部となることができる。コンピューティング装置100は、キーボード122、マウス123、ペン、音声入力装置、タッチ入力装置、スキャナなどの入力装置112も有することができる。ディスプレイ、スピーカ、プリンタなどの出力装置114を含むこともできる。これらの装置は、周知でありここで詳細な説明をする必要はない。
【0011】
コンピューティング装置100は、このコンピューティング装置がネットワーク上などの他のコンピューティング装置と通信することを可能にする通信接続116も含むことができる。通信接続116は、通信媒体の一例である。通信媒体は、典型的にコンピュータ読取り可能な命令、データ構造、プログラムモジュール、または搬送波もしくは他の伝送機構などの変調されたデータ信号および任意の情報配信媒体を含む。「変調されたデータ信号」という用語は、特徴集合(characteristics set)または信号中の情報を符号化するための方法などにおいて変換されたもの1つまたは複数を有する信号を意味する。例として、かつ限定ではないが、通信媒体は、有線ネットワークまたは直接有線(direct−wired)接続などの有線媒体、ならびに音響、RF、赤外線および他のワイアレス媒体を含む。本明細書で用いられるコンピュータ読取り可能な媒体という用語は、ストレージ媒体および通信媒体の両者を含む。
【0012】
(具体的な実装の議論)
図2は、一般に本発明を実装する環境のコンポーネントを例示する機能ブロック図である。図2に示すように、トラスト評価システム200は、アプリケーション201を評価し、かつアプリケーション201に関連する何らかのセキュリティリスクを識別するよう構成されている。アプリケーション201は、コンピューティング装置100が利用可能な任意の実行コードであり得る。コンピューティング装置100上で実行するアプリケーション201に関連したセキュリティリスクは、本質的に存在する。例えば、アプリケーション201は、ウイルスを含む場合や、またはスパイウェアである場合がある。従って、システム200は、意味のある方法においてアプリケーション201を分析し、それらのリスクを査定および定量化するよう構成される。トラスト評価システム200は、次いでアプリケーション201をロードすることについての決断をする。
【0013】
アプリケーション201は、接近して動作する個々のコンポーネントから成る場合がある。例えば、アプリケーション201は、アセンブリA202およびアセンブリB203などの複数のモジュールまたはアセンブリを含むことができる。アプリケーション201は、アプリケーションおよびその構成コンポーネント各々を記述するメタデータを含むことができる。そのメタデータは、アプリケーション201に関連して格納されるマニフェスト205または他の手段の中に含まれる。メタデータは、アプリケーションの名前、アプリケーションのバージョン、アプリケーションの構成要素であるコンポーネントが望む権利およびパーミッション、プライバシーポリシー情報、デジタル署名情報などを含む。
【0014】
アプリケーション201はまず、多くの方法の1つでコンピューティング装置100にロードされる。例えば、アプリケーション201がインターネットセッション中にダウンロードされる場合、光ディスクまたは他の固定ストレージにより得られる場合があり、電子メールまたはある他の機構を介して受信される場合がある。この実装において、アプリケーション201は、ホスティング環境220においてロードされ、かつ実行される。この議論の目的のために、ホスティング環境220は、アプリケーション201が実行される任意の環境を含む。例えば、ホスティング環境220は、マネッジドコードランタイム(managed code runtime)環境、シェル、他のアプリケーションなどである場合がある。この具体的な実施形態において、ホスティング環境220は、それがホスティングするタイプに基づく優先順位評定を含むことができる。例えば、光ディスクドライブに関連するホスティング環境が、インターネットなどのネットワークセッションと関連付けられるホスティング環境よりセキュリティリスクが低いと判定することができる。優先順位評定は、アプリケーション201に対してセキュリティスコアを割り振った後、使用することができる。
【0015】
ホスティング環境220は、アプリケーション201についてのメタデータに基づきアプリケーション記述オブジェクト(ADO)221を生成するよう構成される。ホスティング環境220は、アプリケーション201に関連するセキュリティリスクを効果的に評価するためのアプリケーション201についての十分な情報をADO221に含める。従って、ADO221は、オブジェクトフォーム内にアプリケーションの名前、アプリケーションのバージョン、アプリケーションの構成コンポーネントが望む権利およびパーミッション、プライバシーポリシー情報、デジタル署名情報などを含むことができる。ホスティング環境220は、評価を行うトラストマネージャ210を呼び出すようさらに構成される。
【0016】
トラストマネージャ210は、コンピューティング装置100に常駐するオペレーティングシステムの信頼されるコンポーネントになることができる。この特定の実施形態において、トラストマネージャ210は、アプリケーション201のセキュリティ評価を開始するホスティング環境220により呼び出されるインターフェースを公開する。トラストマネージャ210は、そのインターフェースを介しホスティング環境220からADO221を受信する。トラストマネージャ201は、アプリケーション201に関連するセキュリティリスクを査定するトラスト評価エンジンの一群を呼び出すようさらに構成される。各評価エンジンは、ADO221における、またはアプリケーション201自身のコンポーネントにおける情報に基づく特定の危険なクラスを評価するよう構成される。例えば、評価エンジン240は、アプリケーションについての証拠を評価するスコアリングエンジンであることができ、ADO221または他の場所に組み込むことのできるような、コンピュータ装置100において悪意ある行為を行うアプリケーションの能力を判定する。評価エンジン241は、ウイルスチェッカーであることができ、および評価エンジン242は、アプリケーション201についてのプライバシーに対する懸念を評価するよう構成されることができる。評価エンジンの各々は、基本クラスから派生することができ、またはインターフェースのように実装されることができる。
【0017】
各評価エンジンは、スコア245を判定するための特定の規則または基準に反するアプリケーション201を査定するよう構成される。スコアの例は、最小値と最大値の間の多数の値を、または代替のセキュリティ水準の組からの離散的な値を含む。これらは単に例であって、完全なリストではない。次いでスコア245は、査定の最後に各評価エンジンによりトラストマネージャ210に返されることができる。トラストマネージャ210は、スコアコレクション250内の個々のスコアを集約するよう構成されており、評価エンジンの存在する領域各々におけるアプリケーションの統合セキュリティアセスメントを表す。存在することができる任意の優先順位は、ホスティング環境220の特定のタイプに関連する優先順位のように、統合セキュリティアセスメントをさらに改良するためスコアコレクション250に適応されることができる。統合セキュリティアセスメントに基づき、トラストマネージャ210は、ユーザを介さずにロードする決断を下すための十分な情報を有する。例えば、判定前の(デフォルトの設定のまたは恐らくユーザにより与えられた)閾値は、プログラムがユーザの受諾を求めることなくロードされること、またはプログラムがユーザを促すことなく停止されることを管理することができる。もしロードされている特定のアプリケーションに対する統合セキュリティアセスメントがこれら2つの閾値の間に収まるなら、ロードするとの決断からユーザを呼び出すことができる。
【0018】
トラストマネージャ210は、アプリケーションがロードされる場合のパーミッションの水準を記述するトラストオブジェクト(TO)261を作成する。トラストオブジェクト261は、コンポーネントごとにアプリケーションのためのグラントセット(grant set)262のパーミッションを定義したデータを含むことができる。例示的なグラントセット262のパーミッションの1つの例を、図3に図示し、以下で説明する。もし、アプリケーション201に対する統合セキュリティアセスメントが上述の2つの閾値の間に収まるなら、トラストマネージャ210は、ユーザを呼び出すことができるようユーザインターフェース260にトラストオブジェクト261を受け渡す。
【0019】
ユーザインターフェース260は、ユーザが処理について詳細な説明を受けたうえでの決断を行うことのできるように、意味のある方法で統合セキュリティアセスメントをユーザに提供するための機構である。ユーザインターフェース260は、ダイアログボックス、音響信号、アイコニックインジケータなど多くの形を取ることができる。潜在的なユーザインターフェース260の1つの例は図4に図示し、以下で説明する。本質的に、ユーザインターフェース260は、従来のシステムにおいて存在しない、多様で異なるセキュリティ情報に対する提供の一項目を示す。
【0020】
ユーザインターフェース260は、アプリケーションのロードの開始を許可するための潜在的なセキュリティ問題を対してユーザに促すことができ、場合によってはアプリケーションに割り当てられることができるウイルスのパーミッション水準をユーザに提供する。ユーザは、アプリケーションのロードを進めるか否かの決断をするよう求められる。ユーザインターフェース260は、ユーザの応答情報をトラストオブジェクト261に加え、そのトラストオブジェクトをトラストマネージャ210に返す。
【0021】
アプリケーション201が立ち上げられ、または実行される度、そのホスティング環境220は、アプリケーション201のセキュリティアセスメントを読み出すトラストマネージャ210を呼び出すことが可能である。グラントセット262が既に生成されている場合、トラストマネージャ210は、そのグラントセット262をホスティング環境220に返すことができる。またはそれに替えて、ホスティング環境220は、トラストマネージャ210を介さず後の使用のため、セキュリティアセスメント情報をキャッシュに格納することができる。ホスティング環境220は、次いでグラントセット262において識別された何らかのアクセス権をアプリケーション201に適用する。より具体的には、ホスティング環境220は、アクセス権を、アセンブリA202などの、アプリケーション201の各個々のコンポーネントに適用することができる。ホスティング環境220またはある他のアプリケーションが、コンポーネントの実行時に具体的な意図なくセキュリティアセスメントのためコンポーネントをトラストマネージャ210に提供することは、同様に実行可能である。
【0022】
図3は、本発明の実装によって生成された1つの例示的なグラントセット301の図の表現である。「グラントセット」という用語は、本明細書で使われるように、アプリケーションが実行できるセキュリティ環境を定義するために使用される情報の任意のコレクションを意味することに気を付けられたい。本明細書において用いる「グラントセット」という用語は、共通言語ランタイム(CLR)環境など、特定のセキュリティ環境に限定するものではなく、むしろ、アプリケーションが特定の動作環境にかかわりなく実行するセキュリティ環境を定義するために用いられる情報を網羅することを意図している。
【0023】
この特定の例において、グラントセット301は、トラストオブジェクトまたはそれに準ずるものなどのオブジェクト内のデータであり得る。この例において、グラントセット301は、アプリケーションの各コンポーネントを識別する情報を含む。加えて、グラントセット301は、アプリケーションの各コンポーネントに対するパーミッションを定義する情報を含む。この場合、コンポーネントテーブル310は、コンポーネントアセンブリA、アセンブリB、およびアセンブリC、ならびにパーミッションセットを伴ったこれらコンポーネント各々を関連付ける。例えば、グラントセット301において、アセンブリAは、パーミッションセットSP1を有するように識別される。
【0024】
パーミッションテーブル320もまた、具体的にはこれらパーミッションが各パーミッションセットに関連付けられたセキュリティ権限であると定義するグラントセット301に含まれる。この例では、パーミッションセットPS1は、パーミッション1として例において識別されるこれらのパーミッションおよび権限を含む。上述のように、ホスティング環境220がアプリケーションのコンポーネントをロードし始めたとき、グラントセット301を参照することにより適切なパーミッションを、アプリケーションとの関係においてアプリケーションの各コンポーネントに適用することができる。換言すると、ある他のアプリケーションは、アセンブリBも含み、しかし他のアプリケーションとの関係において、アセンブリBは、異なるパーミッションセットを有することができる。その場合、他のアプリケーションが実行され、およびアセンブリBがロードされたとき、他のアプリケーションに関連付けられたグラントセットによって定義されたパーミッションセットを有する。
【0025】
図4は、アプリケーションのセキュリティアセスメントに基づいてユーザに提供されることのできる例示的なユーザインターフェースダイアログである。この特定の例において、ダイアログ401は、ファイルシステムおよびネットワークへのアクセスを要求するアプリケーションの評価に基づいて提供される。加えて、ウイルスエバリュエータは、アプリケーションがウイルスを含まないことを判定する。リスク水準405のアイコン表示も含まれることができる。ユーザは、OKボタン410をクリックすることによるなど、ロードを進めることを許可する選択肢、またはロードを中止する選択肢を提供される。図4に示されるユーザインターフェースは、単に例示であり、ユーザに提供されるセキュリティ情報のための限定または専用の機構とされることはない。実際、統合セキュリティアセスメント表示の非常に多くの異なる形状が本明細書に記載の技術から明らかになることが想定される。
【0026】
図5は、アプリケーションがもたらすセキュリティリスクについての情報を、意味のある方法で識別する、およびまとめて提供するためのプロセスを一般的に図示する論理流れ図である。そのプロセスは、開始ブロック501から始まり、そこではアプリケーションがコンピューティングシステム上での実行のためロードされている。上記のように、アプリケーションは、多様なタイプのホストを介した多くの方法においてロードされることができる。従って、開始ブロック501で、特定のアプリケーションは、特定のホストを用いてロードされている。
【0027】
ブロック503で、ホストは、アプリケーションについての情報に基づきアプリケーション記述オブジェクト(ADO)を構成する。上記のように、その情報を、アプリケーションに付随するマニフェストから、またはアプリケーションに関連付けられた任意の他のメタデータを介して取得することができる。ADOは、アプリケーションの名前およびバージョン、アプリケーションにより要求された任意の権限、アプリケーションにより要求されたコードアクセスパーミッション、アプリケーションに関連したデジタル署名情報、プライバシーポリシー情報、ならびにこれらに準ずるものなど、アプリケーションについての記述的情報を含む。プロセスはブロック505へと続く。
【0028】
ブロック505でホストは、アプリケーションに関連付けられたセキュリティリスクを評価するための命令を有するトラストマネージャを呼び出す。ホストは、評価を行うためにトラストマネージャにADOを受け渡す。
【0029】
ブロック507でトラストマネージャは、各々がセキュリティリスクの特定の領域を評価する一連のトラストエバリュエータを呼び出すことにより、アプリケーションのセキュリティリスクの評価を始める。例えば、ウイルスエバリュエータは、アプリケーションがウイルスを含む可能性について各コンポーネントを調べるよう構成されることができる。プライバシーエバリュエータは、アプリケーションが示すプライバシーの脅威の水準を決めるため、アプリケーションによって要求されたパーミッションを評価することができる。当業者には明らかなように、多くの他のトラストエバリュエータもまた、用いられることができる。
【0030】
ループ508は、システムにおけるトラストエバリュエータごとに実行される。ループ508は、ブロック509から始まり、そこでは現在のトラストエバリュエータがセキュリティリスクを査定するために、ADO内の情報および/またはアプリケーションのコンポーネントを調べる。ADO内の情報は、アプリケーションのセキュリティリスクを計るスコアを作成するための一連の規則または他の基準と比較されることができる。一例として、スコアは、0(最大リスク)から1(最小リスク)の値を取ることができる。スコアはまた、優先順位および文字列記述子(string descriptor)も含むことができる。
【0031】
各トラストエバリュエータにより行われる評価は、従来の機構によって行われた同様のセキュリティリスク評価と類似する。しかし本発明により、各トラストエバリュエータは、個別のセキュリティリスクを査定し、およびスコアコレクションをトラストマネージャ(ブロック511)に返す。各トラストエバリュエータがトラストマネージャにそのスコアコレクションを返したとき、ループ508は終了し、およびプロセスはブロック513へと続く。
【0032】
ブロック513で、トラストマネージャは、トラスト評価からスコアコレクションを分析する。トラストマネージャは、特定のトラスト評価と関連付けられた優先順位など、ある事前に定義された基準、またはある他の優先順位案に基づいてスコアコレクションに優先順位をつける。例えば、ウイルスの存在するハイリスクは、プライバシー違反が発生する場合のあるローリスクより重要であることができる。トラストマネージャは、優先順位をつけられたスコアコレクションから、コンピューティングシステム上の集合セキュリティインパクトを判定する。もし、システム上の集合セキュリティインパクトがある事前に定義された閾値を超えた場合、トラストマネージャは、容易にアプリケーションのロードを停止することができる。もし、集合セキュリティインパクトがある他の閾値より低い場合、トラストマネージャは、容易にアプリケーションを実行するための十分なパーミッションを含むトラストオブジェクトを作成することができる。しかしこれらのどちらの場合も存在しないとき、トラストマネージャは、ユーザに判定することを促すユーザインターフェースを呼び出すことができる。
【0033】
ブロック515で、トラストマネージャは、ユーザから要求された場合、最後の評価に対し、優先順位のつけられたスコアコレクションおよび集合インパクト情報をユーザインターフェースに受け渡す。そうだとすると、集合セキュリティインパクトは、ユーザに提供される。提供は、具体的にはアプリケーションをロードすることと関連付けられたセキュリティリスクを要約する、または詳述するダイアログボックスの形態であり得る。例えば、スコアリングエンジンは、コンピュータ上のファイルを読取り、および編集し、ならびにネットワーク接続を介し伝送するために十分なパーミッションを要求するアプリケーションを判定することができる。その情報に基づき、恐らく他の証拠と一緒に、プライバシーエバリュエータは、そのアプリケーションがネットワークを介してユーザの情報を共有する可能性が高いと判定することができる。したがって、その情報は、ロードするアプリケーションがテレマーキングキャンペーンまたはユーザの個人情報を他の不適切な使用によって、ユーザを標的にさせる可能性が高いことをユーザに知らせるために組み合わされることができる。都合良く、ユーザは、ダイアログボックスなどの共通の通知に集まった異なるセキュリティ情報を提供される。
【0034】
ブロック517で、ユーザインターフェースからの何らかの入力により、トラストマネージャは、アプリケーションを実行することができるセキュリティ環境を記述するトラストオブジェクトを修正する。一実施形態において、トラストオブジェクトは、パーミッションのグラントセットを伴うアプリケーション、またはアプリケーションのコンポーテントと関連付けられたデータを含む。パーミッションのグラントセットは、実行されたときにアプリケーションに適用するセキュリティの水準を記述する。1つの具体的な実施形態において、パーミッションのグラントセットは、アプリケーションの各コンポーネントと関連付けられる。あのように、異なるアプリケーション間で共有されるコンポーネントは、実行されるアプリケーションの状況に依存する、異なるパーミッションで実行されることができる。プロセスは、アプリケーションが実際に実行されるまでブロック517で待機することができる。そのとき、プロセスはブロック519を維持する。
【0035】
ブロック519で、アプリケーションは、ホストによってロードされている。アプリケーションに適用するセキュリティポリシーの一端として、ホストは、アプリケーションと関連付けられたトラストオブジェクトのためにトラストマネージャに問い合わせを行う。アプリケーションの各コンポーネントがロードされるので、そのコンポーネントと関連付けられたパーミッションのグラントセットは適用される。このように、本発明に従ってロードされたアプリケーションは、ユーザが告知の方法において直接的におよび包括的に確立されるこれらのパーミッションの許可だけする。もし実行するのに十分な特権がアプリケーションに許可されなかった場合、トラストマネージャは、アプリケーションの実行を停止することができる。
【0036】
上記の詳述での、例およびデータは、本発明の趣旨および例示的な実装の完全な説明を提供する。本発明の多くの実施形態が本発明の精神と範囲から逸脱しない以上、本発明は、特許請求の範囲に属する。

【特許請求の範囲】
【請求項1】
インストールされたアプリケーションに起因するセキュリティリスクの内、前記インストールされたアプリケーションのメタデータに基づき評価可能なセキュリティリスクを評価するための情報を含むアプリケーション記述オブジェクトを生成するオペレーティングシステムであって、評価可能なセキュリティリスクを評価するための情報は、アプリケーションの名前、アプリケーションのバージョン、アプリケーションの構成コンポーネントが望む権利およびパーミッション、デジタル署名情報からなるメタデータを含む、オペレーティングシステム、
前記アプリケーション記述オブジェクトを前記オペレーティングシステムから受信し、それに応答して、前記アプリケーションに起因する複数の前記評価可能なセキュリティリスクを評価し、前記各評価可能なセキュリティリスクの評価に応じたスコアを算定し、前記スコアの集計結果に基づき統合されたセキュリティ評価を算定するトラストマネージャ、および
前記トラストマネージャによって算定された前記統合されたセキュリティ評価を提示する、前記コンピュータの表示装置に表示されるユーザインターフェース
としてコンピュータを機能させるためのプログラムを記録したコンピュータ読取り可能な記録媒体。
【請求項2】
前記オペレーティングシステムは、前記アプリケーションのメタデータに基づき前記アプリケーションについての記述情報を含むアプリケーション記述オブジェクトを生成して、前記アプリケーション記述オブジェクトを前記トラストマネージャに送信し、
前記トラストマネージャは、前記アプリケーション記述オブジェクトに基づき前記スコアを算定することを特徴とする請求項1に記載のコンピュータ読取り可能な記録媒体。
【請求項3】
前記各評価可能なセキュリティリスクの評価は、複数のトラストエバリュエータによってそれぞれ実行され、前記各トラストエバリュエータは前記アプリケーションに起因する前記評価可能なセキュリティリスクを分析するよう構成されることを特徴とする請求項1に記載のコンピュータ読取り可能な記録媒体。
【請求項4】
前記評価可能なセキュリティリスクは、ウイルスの存在を含むことを特徴とする請求項3に記載のコンピュータ読取り可能な記録媒体。
【請求項5】
前記統合されたセキュリティ評価は、前記アプリケーションをインストールすることに起因する1つまたは複数の前記評価可能なセキュリティリスクを識別することを特徴とする請求項1に記載のコンピュータ読取り可能な記録媒体。
【請求項6】
インストールされたアプリケーションに起因するセキュリティリスクの内、前記インストールされたアプリケーションのメタデータに基づき評価可能なセキュリティリスクを評価するための情報を含むアプリケーション記述オブジェクトを生成するオペレーティングシステムであって、評価可能なセキュリティリスクを評価するための情報は、アプリケーションの名前、アプリケーションのバージョン、アプリケーションの構成コンポーネントが望む権利およびパーミッション、デジタル署名情報からなるメタデータを含む、オペレーティングシステム、と、アプリケーションの前記評価可能なセキュリティリスクを算出して算出結果を表示装置に表示させるトラストマネージャを備えたコンピュータで実行される方法であって、
前記トラストマネージャが、アプリケーションが前記コンピュータにインストールされると、前記アプリケーションについての情報を含むアプリケーション記述オブジェクトを前記オペレーティングシステムから受信するステップと、
前記トラストマネージャが、前記アプリケーション記述オブジェクトに基づき、前記アプリケーションに起因する前記複数の評価可能なセキュリティリスクをそれぞれ算定するステップと、
前記トラストマネージャが、前記複数の評価可能なセキュリティリスクを集計して前記アプリケーションの統合されたセキュリティ評価を算定するステップと、
前記トラストマネージャが、前記統合されたセキュリティ評価を前記表示装置に表示させるステップと、
を含むことを特徴とする方法。
【請求項7】
前記アプリケーションの前記評価可能なセキュリティリスクを算定するステップは、複数のトラストエバリュエータを呼び出すことをさらに含み、各トラストエバリュエータは異なる前記評価可能なセキュリティリスクと関連付けられ、各トラストエバリュエータは前記アプリケーションがそのトラストエバリュエータに対応する前記評価可能なセキュリティリスクを被る可能性を査定するよう動作することを特徴とする請求項6に記載のコンピュータで実行される方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2010−205287(P2010−205287A)
【公開日】平成22年9月16日(2010.9.16)
【国際特許分類】
【出願番号】特願2010−106615(P2010−106615)
【出願日】平成22年5月6日(2010.5.6)
【分割の表示】特願2005−500406(P2005−500406)の分割
【原出願日】平成15年5月17日(2003.5.17)
【出願人】(500046438)マイクロソフト コーポレーション (3,165)
【Fターム(参考)】