特許第5715693号(P5715693)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ シマンテック コーポレーションの特許一覧

特許5715693マルウェア検出に使用するカスタマイズされた信頼帯を作成するシステム及び方法
<>
  • 特許5715693-マルウェア検出に使用するカスタマイズされた信頼帯を作成するシステム及び方法 図000002
  • 特許5715693-マルウェア検出に使用するカスタマイズされた信頼帯を作成するシステム及び方法 図000003
  • 特許5715693-マルウェア検出に使用するカスタマイズされた信頼帯を作成するシステム及び方法 図000004
  • 特許5715693-マルウェア検出に使用するカスタマイズされた信頼帯を作成するシステム及び方法 図000005
  • 特許5715693-マルウェア検出に使用するカスタマイズされた信頼帯を作成するシステム及び方法 図000006
  • 特許5715693-マルウェア検出に使用するカスタマイズされた信頼帯を作成するシステム及び方法 図000007
  • 特許5715693-マルウェア検出に使用するカスタマイズされた信頼帯を作成するシステム及び方法 図000008
  • 特許5715693-マルウェア検出に使用するカスタマイズされた信頼帯を作成するシステム及び方法 図000009
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5715693
(24)【登録日】2015年3月20日
(45)【発行日】2015年5月13日
(54)【発明の名称】マルウェア検出に使用するカスタマイズされた信頼帯を作成するシステム及び方法
(51)【国際特許分類】
   G06F 21/56 20130101AFI20150423BHJP
【FI】
   G06F21/56
【請求項の数】10
【全頁数】22
(21)【出願番号】特願2013-518400(P2013-518400)
(86)(22)【出願日】2011年5月14日
(65)【公表番号】特表2013-533554(P2013-533554A)
(43)【公表日】2013年8月22日
(86)【国際出願番号】US2011036562
(87)【国際公開番号】WO2012003050
(87)【国際公開日】20120105
【審査請求日】2014年3月3日
(31)【優先権主張番号】12/830,286
(32)【優先日】2010年7月2日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】501113353
【氏名又は名称】シマンテック コーポレーション
【氏名又は名称原語表記】Symantec Corporation
(74)【代理人】
【識別番号】100147485
【弁理士】
【氏名又は名称】杉村 憲司
(74)【代理人】
【識別番号】100134119
【弁理士】
【氏名又は名称】奥町 哲行
(72)【発明者】
【氏名】チェン・ジョセフ
(72)【発明者】
【氏名】パーク・ジェイミー ジュヨン
【審査官】 木村 励
(56)【参考文献】
【文献】 特開2005−250803(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/00 − 21/88
(57)【特許請求の範囲】
【請求項1】
マルウェア検出に使用するカスタマイズされた信頼帯を作成するコンピュータ実施方法であって、前記方法は、
実行可能コンテンツを受信するポータルを識別するステップと、
前記ポータルに関連するメタデータを識別するステップと、
前記メタデータを解析して、前記ポータルを介して受信した実行可能コンテンツがもたらすリスクを特定するステップと、
前記メタデータの前記解析に基づいて、前記ポータルの信頼帯を作成して、前記ポータルを介して受信した実行可能コンテンツの少なくとも1つの処理中に適用するステップであって、前記信頼帯は1組の範囲を含み、前記1組の範囲内の各範囲は、前記ポータルを介して受信した実行可能コンテンツの分類候補に対応する、適用するステップと、
前記ポータルを起源とする実行可能オブジェクトを識別するステップと、
前記実行可能オブジェクトの処理中、前記信頼帯を適用するステップと、
を含
前記方法の各ステップは少なくとも1つの物理プロセッサによって実行される、コンピュータ実施方法。
【請求項2】
前記実行可能コンテンツの処理中に前記信頼帯を適用するステップは、
前記実行可能コンテンツに関連付けられたリスクスコアを識別するステップと、
前記信頼帯内の前記1組の範囲内で、前記リスクスコアが入る範囲を識別するステップと、
前記識別された範囲に基づいて、前記実行可能コンテンツを分類するステップと、
をさらに含む、請求項1に記載のコンピュータ実施方法。
【請求項3】
前記実行可能オブジェクトの前記処理は、
前記実行可能オブジェクトが安全であると判断するステップ
前記実行可能オブジェクトが悪意のあるものであると判断するステップ
前記実行可能オブジェクトの安全性が未知であると判断するステップ
のうちの少なくとも1つを含む、請求項1または2に記載のコンピュータ実施方法。
【請求項4】
前記ポータルは、追加の実行可能オブジェクトを作成可能な実行可能オブジェクトを含む、請求項1〜3のいずれか一項に記載のコンピュータ実施方法。
【請求項5】
前記ポータルは、
インターネットブラウザ、
電子メールクライアント、
ピアツーピアクライアント、
チャットクライアント
のうちの少なくとも1つを含む、請求項1〜4のいずれか一項に記載のコンピュータ実施方法。
【請求項6】
前記メタデータは、
前記ポータルを起源とする実行可能オブジェクトの数、
前記ポータルの人気レベル、
前記ポータルを起源とする信頼できない実行可能オブジェクトの出現
のうちの少なくとも1つを識別する、請求項1〜5のいずれか一項に記載のコンピュータ実施方法。
【請求項7】
前記信頼帯を作成して、前記ポータルに適用するステップは、信頼帯を作成して、ポータルのクラスに適用するステップを含む、請求項1〜6のいずれか一項に記載のコンピュータ実施方法。
【請求項8】
前記メタデータを識別するステップは、前記ポータルの複数のインスタンスについてのメタデータを収集するステップを含む、請求項1〜7のいずれか一項に記載のコンピュータ実施方法。
【請求項9】
前記信頼帯を作成するステップは、前記ポータルに適用可能な少なくとも1つのユーザ構成に基づいて前記信頼帯を作成するステップを含む、請求項1〜8のいずれか一項に記載のコンピュータ実施方法。
【請求項10】
マルウェア検出に使用するカスタマイズされた信頼帯を作成するシステムであって、
識別モジュールであって、
実行可能コンテンツを受信するポータルを識別し、
前記ポータルに関連するメタデータを識別する
ようにプログラムされた識別モジュールと、
前記メタデータを解析して、前記ポータルを介して受信した実行可能コンテンツがもたらすリスクを特定するようにプログラムされた解析モジュールと、
前記メタデータの解析に基づいて、前記ポータルの信頼帯を作成して、前記ポータルを介して受信した実行可能コンテンツの少なくとも1つの処理中に適用するようにプログラムされた作成モジュールであって、前記信頼帯は1組の範囲を含み、前記1組の範囲内の各範囲は、前記ポータルを介して受信した実行可能コンテンツの分類候補に対応する、作成モジュールと、
処理モジュールであって、
前記ポータルを起源とする実行可能オブジェクトを識別し、
前記実行可能オブジェクトの処理中、前記信頼帯を適用する
ようにプログラムされる処理モジュールと、
前記識別モジュール、前記解析モジュール、前記作成モジュール、及び前記処理モジュールを実行するように構成される少なくとも1つのプロセッサと、
を備える、システム。
【発明の詳細な説明】
【技術分野】
【0001】
消費者及び企業は、コンピュータの安定性及び性能と、データのセキュリティを脅かす悪意のあるソフトウェアの増加に直面している。悪意のある動機を有するコンピュータプログラマにより、コンピュータシステムのセキュリティを侵害しようとして、ウィルス、トロイの木馬、ワーム、及び他のプログラム(まとめて「マルウェア」として知られる)が作成されてきており、また、作成され続けている。検出から逃れようとして、悪意のあるプログラマは、マルウェアを正当なプログラム中又は正当なプログラム間に注入する場合がある。
【背景技術】
【0002】
多くのセキュリティソフトウェア企業は、マルウェアシグネチャ(例えば、マルウェアを一意に識別するハッシュ関数)を作成して、顧客に定期的に配布することにより、マルウェアと戦おうとする。しかし、大量のマルウェアが未だ識別されておらず、したがって、特に、マルウェアの作者は、一般に利用されているシグネチャに基づくマルウェア検出メカニズムを避けようとして、マルウェアを定期的に変更し得るため、従来のシグネチャに基づくマルウェア検出メカニズムを使用して検出することができない。
【発明の概要】
【発明が解決しようとする課題】
【0003】
シグネチャに基づく手法への追加又は代替として、セキュリティソフトウェア企業は、様々なヒューリスティックを利用して、様々な特徴及び/又は挙動に基づいてファイル又はプログラムを分類し得る(例えば、マルウェア又は安全として)。不都合なことに、ヒューリスティックに基づく分類方法は、許容できない数の誤検出及び/又は検出漏れを生じさせるおそれがある。したがって、本開示は、改良されたマルウェア検出メカニズム及び技法の必要性を認める。
【課題を解決するための手段】
【0004】
さらに詳細に後述するように、本開示は一般には、マルウェア検出に使用するカスタマイズされた信頼帯を作成するシステム及び方法に関する。一例では、本明細書に記載のシステムは、1)実行可能コンテンツを受信可能なポータル(インターネットブラウザ、電子メールクライアント、ピアツーピアクライアント、チャットクライアント等)を識別し、2)ポータルに関連するメタデータを識別し、3)メタデータを解析して、ポータルを介して受信した実行可能コンテンツがもたらすリスクを特定し、そして4)解析に基づいて、信頼帯を作成して、ポータルを介して受信した実行可能コンテンツの少なくとも1つの処理中に適用することにより、そのようなタスクを達成し得る。
【0005】
いくつかの例では、メタデータは、ポータルを起源とした実行可能オブジェクトの数、ポータルの人気レベル(例えば、ポータルのユーザ数及び/又は使用頻度)、及び/又はポータルを起源とする信頼できない実行可能オブジェクトの出現(例えば、ポータルからダウンロードされた実行可能オブジェクトが、セキュリティシステムによりフラグが付けられる頻度)を識別し得る。本明細書の記載のシステムは、ポータルの複数のインスタンス等の様々なソースから(例えば、様々なユーザのシステムへのポータルの様々なインストールから)そのようなメタデータを収集し得る。いくつかの例では、ポータルは、追加の実行可能オブジェクトを作成可能な(例えば、追加の実行可能オブジェクトをダウンロードし、それにより、ローカルシステムにコピーを作成することにより)実行可能オブジェクト(プロセス、実行可能ファイル等)を含み得る。
【0006】
一例では、本明細書に記載のシステムは、ポータルに適用可能な1つ又は複数のユーザ構成に基づいて、信頼帯を作成し得る。例えば、ユーザ、管理者、及び/又はセキュリティベンダーは、ポータル及び/又はポータルのクラスの既知の特性に基づいて、特定のポータル及び/又はポータルのクラスにパラメータを設定し得る。いくつかの例では、信頼帯は、ポータルのクラス(例えば、特定のインターネットブラウザではなくインターネットブラウザ全体)に適用し得る。
【0007】
信頼帯を作成すると、本明細書の記載のシステムは、1)信頼帯が関連付けられたポータルを起源とする実行可能オブジェクト(例えば、ポータルからダウンロードされた実行可能ファイル)を識別することと、2)実行可能オブジェクトの処理中に信頼帯を適用する(例えば、実行可能オブジェクトの解析と併せて信頼帯を使用して、実行可能オブジェクトに対してとるべきセキュリティ動作がもしあれば、そのセキュリティ動作を決定することにより)こととにより、信頼帯を適用し得る。例えば、本明細書の記載のシステムは、実行可能オブジェクトに関連付けられたリスクスコア(独立して生成されるか、又は評判サービスから受信される)により、実行可能オブジェクトが信頼帯内の安全、悪意のあるもの、又は中間として分類されることになると判断し得る。
【0008】
詳細に後述するように、本明細書に記載のシステム及び方法は、起点となるポータルに基づいて実行可能オブジェクトをカスタマイズして処理できるようにし得る。実行可能オブジェクトの処理中にカスタマイズされた信頼帯を使用することにより、これらのシステム及び方法は、既存のヒューリスティックに基づくマルウェア検出技法を強化して、潜在的に検出漏れ及び/又は誤検出を低減し、それにより、セキュリティ及び/又はユーザ経験を向上させ得る。
【0009】
任意の上述した実施形態からの特徴は、本明細書に記載の一般原理に従って互いに組み合わせて使用し得る。これら及び他の実施形態、特徴、及び利点は、添付の図面及び特許請求の範囲と併せて以下の詳細な説明を読むことでより完全に理解されよう。
【0010】
添付図面は、いくつかの例示的な実施形態を示し、本明細書の一部をなす。以下の説明と一緒に、これらの図面は本開示の様々な原理を示し、説明する。
【図面の簡単な説明】
【0011】
図1】マルウェア検出で使用するカスタマイズされた信頼帯を作成する例示的なシステムのブロック図である。
図2】マルウェア検出で使用するカスタマイズされた信頼帯を作成する例示的なシステムのブロック図である。
図3】マルウェア検出で使用するカスタマイズされた信頼帯を作成する例示的な方法のフローチャートである。
図4】マルウェア検出のための例示的なカスタマイズされた信頼帯の図である。
図5】マルウェア検出で使用するカスタマイズされた信頼帯を作成する例示的なシステムのブロック図である。
図6】マルウェア検出で使用するカスタマイズされた信頼帯を作成する例示的な方法のフローチャートである。
図7】本明細書に記載され、且つ/又は示される実施形態のうちの1つ又は複数を実施可能な例示的な計算システムのブロック図である。
図8】本明細書に記載され、且つ/又は示される実施形態のうちの1つ又は複数を実施可能な例示的な計算ネットワークのブロック図である。
【発明を実施するための形態】
【0012】
図面全体を通して、同一の参照文字及び説明は、同様であるが、必ずしも同一である必要はない要素を示す。本明細書に記載の例示的な実施形態は、様々な変更及び代替の形態を許容可能であるが、特定の実施形態が例として図面に示され、本明細書に詳細に説明される。しかし、本明細書に記載の例示的な実施形態は、開示される特定の形態への限定を意図しない。むしろ、本開示は、添付の特許請求の範囲内にあるすべての変更形態、均等物、及び代替形態を包含する。
【0013】
以下に、図1図2、及び図5を参照して、マルウェア検出に使用するカスタマイズされた信頼帯を作成する例示的なシステムの詳細な説明を提供する。対応するコンピュータ実施方法の詳細な説明も、図3図4、及び図6に関連して提供する。さらに、本明細書に記載の実施形態のうちの1つ又は複数を実施可能な例示的な計算システム及びネットワークアーキテクチャの詳細な説明を図7及び図8のそれぞれに関連して提供する。
【0014】
図1は、マルウェア検出に使用するカスタマイズされた信頼帯を作成する例示的なシステム100のブロック図である。この図に示されるように、例示的なシステム100は、1つ又は複数のタスクを実行する1つ又は複数のモジュール102を含み得る。例えば、さらに詳細に後述するように、例示的なシステム100は、1)実行可能コンテンツを受信するポータルを識別し、2)ポータルに関連するメタデータを識別するようにプログラムされた識別モジュール104を含み得る。例示的なシステム100は、メタデータを解析して、ポータルにより受信した実行可能コンテンツがもたらすリスクを特定するようにプログラムされた解析モジュール106を含むこともできる。例示的なシステム100は、そのような解析に基づいて信頼帯を作成して、ポータルを介して受信した実行可能コンテンツの1つ又は複数の処理中に適用するようにプログラムされた作成モジュール108を含むこともできる。別個の要素として示されるが、図1のモジュール102のうちの1つ又は複数は、単一のモジュール又はアプリケーションの部分も表し得る。
【0015】
特定の実施形態では、図1のモジュール102のうちの1つ又は複数は、計算装置により実行されると、計算装置に1つ又は複数のタスクを実行させ得る1つ又は複数のソフトウェアアプリケーション又はプログラムを表し得る。例えば、さらに詳細に後述するように、モジュール102のうちの1つ又は複数は、図2に示される計算システム202、図7に示される計算システム710、及び/又は図8の例示的なネットワークアーキテクチャ800の部分等の1つ又は複数の計算装置に記憶されて実行されるように構成されたソフトウェアモジュールを表し得る。図1のモジュール102のうちの1つ又は複数は、1つ又は複数のタスクを実行するように構成された1つ又は複数の専用用途コンピュータのすべて又は部分を表すこともできる。
【0016】
図1の例示的なシステム100は、様々な方法で導入し得る。例えば、例示的なシステム100のすべて又は部分は、図2の例示的なシステム200の部分を表し得る。図2に示されるように、システム200は、ネットワーク204を介してサーバ206と通信する計算システム202を含み得る。一実施形態では、計算システム202は、図1からのモジュール102(例えば、識別モジュール104、解析モジュール106、及び作成モジュール108)を含み得る。
【0017】
一例では、さらに詳細に後述するように、モジュール102は、1)実行可能コンテンツを受信可能な(例えば、ネットワーク204を介してサーバ206から)、計算システム202上のポータル(例えば、ポータル210)を識別し、2)ポータルに関連するメタデータ(例えば、メタデータ220)を識別し、3)メタデータを解析して、ポータルを介して受信した実行可能コンテンツがもたらすリスクを特定し、そして4)解析に基づいて信頼帯を作成して、ポータルを介して受信した実行可能コンテンツの1つ又は複数の処理中に適用するようにプログラムし得る(例えば、計算装置202にインストールされたセキュリティソフトウェアの部分として)。次に、モジュール102は、ポータルを起源とする実行可能オブジェクトの処理中に信頼帯を適用し得る(例えば、実行可能オブジェクトの解析と併せて信頼帯を使用して、実行可能オブジェクトに対してセキュリティ動作があれば、そのセキュリティ動作を決定することにより)。
【0018】
計算システム202は一般に、コンピュータ実行可能命令を読み出し可能な任意の種類又は形態の計算装置を表す。計算システム202の例としては、限定ではなく、ラップトップ、デスクトップ、サーバ、セルラ電話、個人情報端末(PDA)、マルチメディアプレーヤ、埋め込みシステム、これらのうちの1つ又は複数の組み合わせ、図7の例示的な計算システム710、又は他の任意の適した計算装置が挙げられる。
【0019】
サーバ206は一般に、実行可能コンテンツ及び/又は実行可能コンテンツを生成する命令を伝送可能な任意の種類又は形態の計算装置を表す。サーバ206の例としては、限定ではなく、様々なデータベースサービスを提供し、且つ/又は特定のソフトウェアアプリケーションを実行するように構成されたアプリケーションサーバ及びデータベースサーバが挙げられる。
【0020】
ネットワーク204は一般に、通信又はデータ転送に役立つことが可能な任意の媒体又はアーキテクチャを表す。ネットワーク204の例としては、限定ではなく、イントラネット、広域ネットワーク(WAN)、ローカルエリアネットワーク(LAN)、パーソナルエリアネットワーク(PAN)、インターネット、電力線通信(PLC)、セルラネットワーク(例えば、GSMネットワーク)、図8の例示的なネットワークアーキテクチャ800等が挙げられる。ネットワーク204は、無線又は有線接続を使用して通信又はデータ転送に役立ち得る。一実施形態では、ネットワーク204は、通信システム202とサーバ206との通信に役立ち得る。
【0021】
図3は、マルウェア検出に使用するカスタマイズされた信頼帯を作成する例示的なコンピュータ実施方法300のフローチャートである。図3に示されるステップは、任意の適したコンピュータ実行可能コード及び/又は計算システムにより実行し得る。いくつかの実施形態では、図3に示されるステップは、図1のシステム100及び/又は図2のシステム200の構成要素のうちの1つ又は複数により実行し得る。
【0022】
図3に示されるように、ステップ302において、本明細書に記載のシステムのうちの1つ又は複数は、実行可能コンテンツを受信するポータルを識別し得る。例えば、識別モジュール104は、図2の計算システム202の部分として、ポータル210を識別し得る。
【0023】
本明細書で使用される場合、「実行可能コンテンツ」という用語は、任意の実行可能ファイル及び/又は実行可能命令セットを指し得る。追加又は代替として、「実行可能コンテンツ」は、実行可能命令に変形可能であり、且つ/又は実行可能命令として解釈可能な任意のデータを指し得る。例えば、「実行可能コンテンツ」は、実行可能ファイルを含むアーカイブファイル、インタプリタにより実行可能な命令を有するスクリプト、ライブラリオブジェクト等を指し得る。いくつかの例では、「実行可能コンテンツ」は、ポータルに実行可能命令を作成させ、生成させ、且つ/又は保存させ得るコンテンツを指し得る。
【0024】
本明細書で使用される場合、「ポータル」という用語は一般に、実行可能コンテンツを受信可能な任意のオブジェクト及び/又はパスを指し得る。ポータルの例としは、限定ではなく、MOZILLA FIREFOX、MICROSOFT INTERNET EXPLORER、又はSAFARI等のインターネットブラウザ(例えば、インターネットから実行可能コンテンツをダウンロード可能なブラウザ);MICROSOFT OUTLOOK等の電子メールクライアント(例えば、添付として実行可能コンテンツを受信し、且つ/又はダウンロード可能なクライアント)、UTORRENT、LIMEWIRE、又はAZUREUS等のピアツーピアクライアント(例えば、ファイル共有クライアントを配信し、且つ/又は分散させる)、SKYPE、AOL INSTANT MESSENGER、又はGOOGLE TALK等のチャットクライアント(例えば、添付として実行可能コンテンツを受信可能であり、且つ/又は実行可能コンテンツへのリンクを受信可能なクライアント)等が挙げられる。
【0025】
いくつかの例では、ポータルは、追加の実行可能オブジェクト(実行可能ファイル、プロセス等)を作成可能な実行可能オブジェクト(すなわち、実行可能コンテンツを含む任意のオブジェクト)を含み得る。この例では、実行可能オブジェクトは、別のロケーションから受信した(例えば、ネットワークを介して)実行可能オブジェクトのローカルコピーを作成することにより、追加の実行可能オブジェクトを「作成」し得る。例えば、ポータルは、追加の実行可能オブジェクトをダウンロード可能な実行可能オブジェクトを含み得る。
【0026】
本明細書に記載のシステムは、ステップ302において任意の適した様式で識別し得る。例えば、識別モジュール104は、新しい実行可能オブジェクトを作成しようという試みを検出し、図2のポータル210を試行源として識別し得る。この例では、識別モジュール104は、ポータル210に関連付けられたI/O動作及び/又はネットワークトラフィックを監視し得る。追加又は代替として、識別モジュール104は、ポータル210を起源とする新たに作成された実行可能オブジェクトを識別するメッセージを受信し得る(例えば、侵入回避システムから)。他の例では、識別モジュール104は、ポータルを識別する(例えば、カスタマイズされた信頼帯を要求するポータルとして)構成ファイルから単純に読み取ることにより、ポータルを識別し得る。
【0027】
いくつかの例では、識別モジュール104は、アプリケーションをポータルとして識別し得る。追加又は代替として、識別モジュール104は、実行可能構成要素(例えば、プラグイン、ライブラリ、拡張子等)をポータルとして識別し得る。例えば、インターネットブラウザが、実行可能コンテンツをダウンロード可能なプラグインを含む場合、識別モジュール104は、インターネットブラウザを識別し、且つ/又はプラグインを識別し得る。
【0028】
図3に戻ると、ステップ304において、本明細書に記載のシステムのうちの1つ又は複数は、ステップ302において識別されたポータルに関連するメタデータを識別し得る。例えば、ステップ304において、識別モジュール104は、図2の計算システム202の部分として、ポータル210に関連するメタデータ220を識別し得る。
【0029】
本明細書で使用される場合、「ポータルに関連するメタデータ」という用語は、ポータルが受信し、且つ/又は作成する実行可能コンテンツの処理において有用な任意のデータを指し得る。そのようなメタデータの例としては、限定ではなく、ポータルが受信するポータル及び/又は実行可能コンテンツに関連する統計、ポータルを起源とする実行可能オブジェクトの数を示す情報(例えば、ポータルが1000個の実行可能オブジェクトを作成したことを示す情報)、ポータルを起源とする信頼できない実行可能オブジェクトの出現を示す情報(例えば、ポータルが100個の信頼できない実行可能オブジェクトを作成したこと、及び/又はポータルが作成した実行可能オブジェクトの10%が信頼できなかったこと等を示す情報)、ポータルの人気レベルを示す情報(例えば、ポータルがどの程度広く採用されているか、ポータルがどの程度使用されているか等)等が挙げられる。
【0030】
いくつかの例では、識別モジュール104は、ポータルの複数のインスタンスについてのメタデータを収集することにより、ポータルに関連するメタデータを識別し得る。例えば、識別モジュール104は、様々なユーザのシステム上のポータルの様々なインストールからのメタデータを識別し、収集し、且つ/又は集計し得る。
【0031】
識別モジュール104は、ステップ304を任意の適した様式で実行し得る。いくつかの例では、識別モジュール104は、ポータルを監視することにより、問題となっているポータルに関連するメタデータを識別し得る。追加又は代替として、識別情報104は、メタデータを示すデータベースから読み取ることにより、問題となっているポータルに関連するメタデータを識別し得る。
【0032】
いくつかの例では、識別モジュール104は、メタデータを別のアプリケーションから受信し得る。例えば、識別モジュール104は、NORTON INSIGHT等のポータルの識別されたインスタンスを追跡可能なセキュリティソフトウェアから、ポータルの人気を示す情報を受信し得る。同様に、識別モジュール104は、実行可能オブジェクトの数並びに/或いはセキュリティソフトウェアからのポータルを起源とする感染し、且つ/又は信頼できない実行可能オブジェクトの比率を示す情報を受信し得る。
【0033】
図3に戻ると、ステップ306において、本明細書に記載のシステムのうちの1つ又は複数は、ステップ304において識別されたメタデータを解析して、ポータルを介して受信した実行可能コンテンツがもたらすリスクを特定し得る。例えば、ステップ306において、解析モジュール106は、図2の計算システム202の部分として、メタデータ220を解析して、ポータル210を介して受信した実行可能コンテンツが計算システム202にもたらすリスクを特定し得る。
【0034】
解析モジュール106は、ステップ306を任意の適した様式で実行し得る。例えば、解析モジュール106は、ステップ304において識別されたメタデータに基づいてリスクスコア及び/又は一連のリスク係数を計算し得る。例えば、解析モジュール106は、ポータルを介して過去に受信した信頼できない実行可能オブジェクトが高いほど、高いリスクスコアを設定し得る。追加又は代替として、解析モジュール106は、人気の低いポータルには高いリスクスコアを設定し得る。いくつかの例では、解析モジュール106は、統計技法、時間の経過に伴う傾向、バージョン番号情報等を使用して、ポータルを介して受信した実行可能オブジェクトの処理に関連する履歴データを解析し得る。
【0035】
ステップ308において、本明細書に記載のシステムのうちの1つ又は複数は、ステップ306において実行された解析に基づいて信頼帯を作成して、ポータルを介して受信した実行可能コンテンツの1つ又は複数の処理中に適用し得る。例えば、ステップ308において、作成モジュール108は、図2の計算システム202の部分として、信頼帯230を作成して、ポータル210を介して受信した実行可能コンテンツの1つ又は複数の処理中に適用し得る。
【0036】
本明細書で使用する場合、「処理」という用語は、分類及び/又は修正の任意のプロセスを指し得る。例えば、さらに詳細に後述するように、実行可能ファイルの処理は、ファイルを安全、悪意のあるもの、又は中間として分類することを含み得る。いくつかの例では、処理の一環として、実行可能オブジェクトは、その実行可能オブジェクトがもたらすリスクを示すスコアを受信し得る。
【0037】
本明細書で使用する場合、「信頼帯」という用語は、処理の異なる結果候補及び/又は分類候補の任意の1組の範囲及び/又は閾値を指し得る。例えば、図4は、システム400でのマルウェア検出のための例示的なカスタマイズされた信頼帯の図である。図4に示されるように、実行可能オブジェクト412、414、422、及び432のそれぞれは、120、−120、20、及び−20のそれぞれのリスクスコア(例えば、解析後にセキュリティソフトウェアにより割り当てられる)を受信し得る。この例では、信頼帯410、420、及び430のそれぞれは異なるポータルに対応し得る。
【0038】
図4に示されるように、実行可能オブジェクト412は、各信頼帯で「良好」分類内に入り得る。同様に、実行可能オブジェクト414は、各信頼帯で「不良」分類内に入り得る。しかし、実行可能オブジェクト422は、信頼帯410、420、又は430に応じて「未知」、「良好」又は「不良」分類に入り得る。同様に、実行可能オブジェクト432も、信頼帯410及び420によれば「未知」分類に入るが、信頼帯430によれば「不良」分類に入り得る。したがって、実行可能オブジェクト422及び432の処理は、どのポータルを起源とするかに依存し得る。図4は3つの分類候補を示すが、さらに詳細に後述するように、信頼帯は、様々な分類、修正、及び/又は他のセキュリティ動作を包含し得る。
【0039】
作成モジュール108は、信頼帯を様々な方法で作成し得る。例えば、作成モジュール108は、信頼帯を作成して、ポータルのクラスに適用し得る。上述したように、ポータルは、インターネットブラウザ、電子メールクライアント、ピアツーピアクライアント等の任意の様々なアプリケ−ションを含み得る。作成モジュール108はそれに従って、特定のポータル(例えば、MOZILLA FIREFOX)に適用する信頼帯を作成し得る。追加又は代替として、作成モジュール108は、ポータルのクラス(例えば、MOZILLA FIREFOX、MICROSOFT INTERNET EXPLORER、SAFARI、GOOGLE CHROME等を含むすべてのインターネットブラウザ)に適用される信頼帯を作成し得る。
【0040】
いくつかの例では、作成モジュール108は、ポータルに適用可能な少なくとも1つのユーザ構成に基づいて信頼帯を作成し得る。例えば、ユーザ、管理者、及び/又はセキュリティベンダーは、特定のポータル及び/又はポータルのクラスに対して、ポータル及び/又はポータルのクラスの既知の特性に基づいてパラメータを設定し得る。例えば、セキュリティベンダーは、ポータルのセキュリティホールを識別し、セキュリティホールが広く利用される可能性が高いと予想し得る。したがって、セキュリティベンダーは、ポータルを起源とする実行可能コンテンツをより厳しく分類するパラメータを、ポータルの信頼帯の構成に追加し得る。
【0041】
図4を例として使用すると、作成モジュール108は、インターネットブラウザ(クラスとして)を起源とする実行可能コンテンツの処理のために、信頼帯410を作成し得る。この例では、作成モジュール108は、インターネットブラウザを起源とする実行可能コンテンツ内のマルウェアの平均出現に基づいて、信頼帯410内の閾値を設定し得る。作成モジュール108は、電子メールクライアント(クラスとして)を起源とする実行可能コンテンツの処理にも信頼帯420を作成し得る。この例では、作成モジュール108は、電子メールクライアントを起源とする実行可能コンテンツでのマルウェアの出現が低いことに基づいて、信頼帯410と比較して「良好」実行可能コンテンツの閾値を下げ得る。さらに、ユーザ(セキュリティベンダー、管理者等)は、パラメータを作成モジュール108に提出して、電子メール内の悪意のある実行可能オブジェクトが一般にゲートウェイでフィルタリングされるという観測に基づいて、「未知」実行可能コンテンツの範囲を低減し得る。
【0042】
作成モジュール108は、ここでもメタデータ解析及びユーザ構成に基づいて、ピアツーピアクライアント(クラスとして)を起源とする実行可能コンテンツの処理のための信頼帯430を作成することもできる。この例では、作成モジュール108は、ピアツーピアクライアントを起源とする実行可能コンテンツでのマルウェアの出現が高いことに基づいて、「良好」実行可能コンテンツの範囲を拡張し、検出漏れを積極的に低減するユーザ構成に従って、信頼帯430内の「未知」実行可能コンテンツの範囲を狭め得る(例えば、管理者は、ピアツーピアダウンロードから生じる検出漏れには、インターネット閲覧又は電子メールの状況での検出漏れよりも関心が低い場合がある)。ステップ308後、方法300は終了し得る。
【0043】
上で詳述したように、本明細書に記載のシステムは、様々なポータルを起源とする実行可能オブジェクトの処理中、図3の例示的な方法300に従って生成される信頼帯を適用し得る。図6は、そのようなカスタマイズされた信頼帯をマルウェア検出に適用する例示的なコンピュータ実施方法600のフローチャートである。図6に示されるステップは、任意の適したコンピュータ実行可能コード及び/又は計算システムにより実行し得る。いくつかの実施形態では、図6に示されるステップは、図1のシステム100、図2のシステム200、及び/又は図5のシステム500の構成要素のうちの1つ又は複数により実行し得る。
【0044】
図6に示されるように、ステップ602において、本明細書に記載のシステムのうちの1つ又は複数は、ポータルを起源とする実行可能オブジェクトを識別し得る。例えば、ステップ602において、処理モジュール510は、図5の計算システム202の部分として、ポータル210を起源とする実行可能オブジェクト520を識別し得る。
【0045】
本明細書に記載のシステムは、ステップ602を任意の適した様式で実行し得る。例えば、処理モジュール510は、新しい実行可能オブジェクトを作成しようとする試みを検出し、図5のポータル210を試行源として識別し得る。この例では、処理モジュール510は、ポータル210に関連付けられたI/O動作及び/又はネットワークトラフィックを監視し得る。追加又は代替として、処理モジュール510は、ポータル210を起源とする新たに作成された実行可能オブジェクトを識別するメッセージを受信し得る(例えば、侵入回避システムから)。
【0046】
ステップ604において、本明細書に記載のシステムのうちの1つ又は複数は、実行可能オブジェクトの処理中、問題となっているポータルに関連付けられた信頼帯を適用し得る。例えば、ステップ604において、処理モジュール510は、図5の計算システム202の部分として、実行可能オブジェクト520の処理中、ポータル210に関連付けられた信頼帯230を適用し得る。ステップ604の完了後、方法600は終了し得る。
【0047】
本明細書に記載のシステムは、ステップ604を任意の適した様式で実行し得る。例えば、処理モジュール510は、実行可能オブジェクトの様々な挙動及び/又は特徴の解析に1つ又は複数のヒューリスティックを使用して、実行可能オブジェクトにリスクスコアを割り当て得る。追加又は代替として、処理モジュール510は、実行可能オブジェクトに前に割り当てられたリスクスコアを識別し得る(例えば、評判サービスにより)。処理モジュール510は、次に、実行可能オブジェクトに割り当てられたリスクスコアが信頼帯230のどこに入るかを特定することにより、実行可能オブジェクトを分類し得る。
【0048】
例えば、図5の処理モジュール510は、ピアツーピアクライアントを介して受信した図4の実行可能オブジェクト422を識別し得る。この例では、処理モジュール510は、評判サービスから実行可能オブジェクト422に前に割り当てられたリスクスコア(この例では、20)を検索し得る(例えば、ハッシュに基づくルックアップシステムを使用して)。次に、処理モジュール510は、このオブジェクトはインターネットブラウザ(信頼帯410)又は電子メールクライアント(信頼帯420)とは対照的に、ピアツーピアクライアントを起源とするため、処理中、信頼帯430を実行可能オブジェクト422に適用し得る。この例では、処理モジュール510は、リスクスコア(この例では、20)が信頼帯430の下帯内に入るため、実行可能オブジェクト422を「不良」に分類し得る。
【0049】
上述したように、実行可能オブジェクトの処理は、様々な分類及び/又は修正を含み得る。例えば、実行可能オブジェクトの処理は、実行可能オブジェクトが安全であるとの判断を含み得る。この例では、処理モジュール510は、実行可能オブジェクトを待機リストに配置し得、実行可能オブジェクトを実行し、実行オブジェクトを検疫から除外し、且つ/又は他の任意の適したセキュリティ動作を実行できるようにする。別の例では、実行可能オブジェクトの処理は、実行可能オブジェクトが悪意のあるものである(例えば、感染、不正)と判断することを含み得る。この例では、処理モジュール510は、実行可能オブジェクトをユーザ、管理者、及び/又はセキュリティベンダーに報告し、実行可能オブジェクトを検疫に配置し、実行可能オブジェクトを除外又は削除し、実行可能オブジェクトの実行を阻止し、且つ/又は他の任意の適したセキュリティ動作を実行し得る。追加の例では、実行可能オブジェクトの処理は、実行可能オブジェクトの安全性が未知であると判断することを含み得る。この例では、処理モジュール510は、実行可能オブジェクトに関連付けられた特権を制限し、実行可能オブジェクトを監視し、且つ/又は他の任意の適したセキュリティ動作を実行し得る。いくつかの例では、実行可能オブジェクトの処理(並びに信頼帯の閾値及び/又は範囲)は、任意の適した修正と共に、より大きな粒度の分類を含み得る。
【0050】
上述したように、本明細書に記載のシステム及び方法は、起点となったポータルに基づいて実行可能オブジェクトのカスタマイズされた処理を可能にし得る。実行可能オブジェクトの処理中、カスタマイズされた信頼帯を使用することにより、これらのシステム及び方法は、既存のヒューリスティックに基づくマルウェア検出技法を強化して、潜在的に検出漏れ及び/又は誤検出を低減し、それにより、セキュリティ及び/又はユーザ経験を向上させ得る。
【0051】
図7は、本明細書に記載され、且つ/又は示される実施形態のうちの1つ又は複数を実施可能な例示的な計算システム710のブロック図である。計算システム710は、コンピュータ可読命令を実行可能な任意のシングル又はマルチプロセッサ計算装置又はシステムを広く表す。計算システム710の例としては、限定ではなく、ワークステーション、ラップトップ、クライアント側端末、サーバ、分散計算システム、ハンドヘルド装置、又は他の任意の計算システム若しくは装置が挙げられる。最も基本的な構成では、計算システム710は、少なくとも1つのプロセッサ714及びシステムメモリ716を含み得る。
【0052】
プロセッサ714は一般に、データを処理し、又は命令を解釈して実行することが可能な任意の種類又は形態の処理ユニットを表す。特定の実施形態では、プロセッサ714は、ソフトウェアアプリケーション又はモジュールから命令を受信し得る。これらの命令は、プロセッサ714に、本明細書に記載され、且つ/又は示される例示的な実施形態のうちの1つ又は複数の機能を実行させ得る。例えば、プロセッサ714は、単独で、又は他の要素と組み合わせて、本明細書に記載の識別するステップ、収集するステップ、解析するステップ、作成するステップ、適用するステップ、及び/又は特定するステップのうちの1つ又は複数を実行させ得、且つ/又はそれ(ら)を実行する手段であり得る。プロセッサ714は、本明細書に記載され、且つ/又は示される他の任意のステップ、方法、又はプロセスを実行し得、且つ/又はそれ(ら)を実行する手段でもあり得る。
【0053】
システムメモリ716は一般に、データ及び/又は他のコンピュータ可読命令を記憶可能な任意の種類又は形態の揮発性又は不揮発性記憶装置又は媒体を表す。システムメモリ716の例は、限定ではなく、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、フラッシュメモリ、又は他の任意の適したメモリ装置が挙げられる。必要なわけではないが、特定の実施形態では、計算システム710は、揮発性メモリユニット(例えば、システムメモリ716等)及び不揮発性記憶装置(例えば、以下に詳細に説明される一次記憶装置732等)の両方を含み得る。一例では、図1からのモジュール102のうちの1つ又は複数をシステムメモリ716にロードし得る。
【0054】
特定の実施形態では、例示的な計算システム710は、プロセッサ714及びシステムメモリ716に加えて、1つ又は複数の構成要素又は要素も含み得る。例えば、図7に示されるように、計算システム710は、メモリコントローラ718と、入出力(I/O)コントローラ720と、通信インタフェース722とを含み得、これらのそれぞれは通信基盤712を介して相互接続し得る。通信基盤712は一般に、計算装置の1つ又は複数の構成要素間の通信を促進可能な任意の種類又は形態の基盤を表す。通信基盤712の例としては、限定ではなく、通信バス(ISA、PC、PCIe、又は同様のバス等)及びネットワークが挙げられる。
【0055】
メモリコントローラ718は一般に、メモリ又はデータを処理可能であり、計算システム710の1つ又は複数の構成要素間を制御することが可能な任意の種類又は形態の装置を表す。例えば、特定の実施形態では、メモリコントローラ718は、通信基盤712を介してプロセッサ714と、システム716と、I/Oコントローラ720との間の通信を制御し得る。特定の実施形態では、メモリコントローラ718は、単独で、又は他の要素と組み合わせて、識別、収集、解析、作成、適用、及び/又は特定等の本明細書に記載され、且つ/又は示されるステップ又は特徴のうちの1つ又は複数を実行し得、且つ/又は実行する手段であり得る。
【0056】
I/Oコントローラ720は一般に、計算装置の入力機能及び出力機能を調整且つ/又は制御可能な任意の種類又は形態のモジュールを表す。例えば、特定の実施形態では、I/Oコントローラ720は、プロセッサ714、システムメモリ716、通信インタフェース722、ディスプレイアダプタ726、入力インタフェース730、及び記憶装置インタフェース734等の計算システム710のうちの1つ又は複数の要素間でのデータ転送を制御又は促進し得る。I/Oコントローラ720は、例えば、単独で、又は他の要素と組み合わせて、本明細書に記載の識別するステップ、収集するステップ、解析するステップ、作成するステップ、適用するステップ、及び/又は特定するステップのうちの1つ又は複数を実行するために使用し得、且つ/又はそのような手段であり得る。I/Oコントローラ720は、本開示に記載の他のステップ及び特徴を実行するためにも使用し得、且つ/又はそのような手段でもあり得る。
【0057】
通信インタフェース722は、例示的な計算システム710と1つ又は複数の追加の装置との通信を促進可能な任意の種類又は形態の通信装置又はアダプタを広く表す。例えば、特定の実施形態では、通信インタフェース722は、計算システム710と、追加の計算システムを含む私設又は公衆ネットワークとの通信を促進し得る。通信インタフェース722の例としては、限定ではなく、有線ネットワークインタフェース(ネットワークインタフェースカード等)、無線ネットワークインタフェース(無線ネットワークインタフェースカード等)、モデム、及び他の任意の適したインタフェースが挙げられる。少なくとも1つの実施形態では、通信インタフェース722は、インターネット等のネットワークへの直接リンクを介して遠隔サーバへの直接接続を提供し得る。通信インタフェース722は、例えば、ローカルエリアネットワーク(Ethernetネットワーク等)、パーソナルエリアネットワーク、電話又はケーブル網、セルラ電話接続、衛星データ接続、又は他の任意の適した接続を通してそのような接続を間接的に提供することもできる。
【0058】
特定の実施形態では、通信インタフェース722は、外部バス又は通信チャネルを介して計算システム710と1つ又は複数の追加のネットワーク若しくは記憶装置との通信を促進するように構成されたホストアダプタを表すこともできる。ホストアダプタの例としては、限定ではなく、SCSIホストアダプタ、USBホストアダプタ、IEEE1394ホストアダプタ、SATA及びeSATAホストアダプタ、ATA及びPATAホストアダプタアダプタ、ファイバチャネルインタフェースアダプタ、Ethernetアダプタ等が挙げられる。通信インタフェース722は、計算システム710が分散計算又は遠隔計算に従事できるようにもし得る。例えば、通信インタフェース722は、実行に関して遠隔装置から命令を受信しても命令を遠隔装置に送信してもよい。特定の実施形態では、通信インタフェース722は、単独で、又は他の要素と組み合わせて、本明細書に開示される識別するステップ、収集するステップ、解析するステップ、作成するステップ、適用するステップ、及び/又は特定するステップのうちの1つ又は複数を実行し得、且つ/又は実行する手段であり得る。通信インタフェース722は、本開示に記載される他のステップ及び特徴を実行するため、且つ/又は実行する手段としても使用し得る。
【0059】
図7に示されるように、計算システム710は、ディスプレイアダプタ726を介して通信基盤712に結合された少なくとも1つの表示装置724を含むこともできる。表示装置724は一般に、ディスプレイアダプタ726により転送される情報を視覚的に表示可能な任意の種類又は形態の装置を表す。同様に、ディスプレイアダプタ726は一般に、表示装置724に表示するために、グラフィックス、テキスト、及び他のデータを通信基盤712から(又は当分野で既知のように、フレームバッファから)転送するように構成された任意の種類又は形態の装置を表す。
【0060】
図7に示されるように、例示的な計算システム710は、入力インタフェース730を介して通信基盤712に結合された少なくとも1つの入力装置728を含むこともできる。入力装置728は一般に、コンピュータ又は人間のいずれかにより生成された入力を例示的な計算システム710に提供可能な任意の種類又は形態の入力装置を表す。入力装置728の例としては、限定ではなく、キーボード、ポインティングデバイス、音声認識装置、又は他の任意の入力装置が挙げられる。少なくとも1つの実施形態では、入力装置728は、単独で、又は他の要素と組み合わせて、本明細書に開示される識別するステップ、収集するステップ、解析するステップ、作成するステップ、適用するステップ、及び/又は特定するステップのうちの1つ又は複数を実行し得、且つ/又は実行する手段であり得る。入力装置728は、本開示に記載の他のステップ及び特徴を実行するため、且つ/又は実行する手段としても使用し得る。
【0061】
図7に示されるように、例示的な計算システム710は、記憶装置インタフェース734を介して通信基盤712に結合された一次記憶装置732及びバックアップ記憶装置733を含むこともできる。記憶装置732及び733は一般に、データ及び/又は他のコンピュータ可読命令を記憶可能な任意の種類又は形態の記憶装置又は媒体を表す。例えば、記憶装置732及び733は、磁気ディスクドライブ(例えば、いわゆるハードドライブ)、フロッピーディスクドライブ、磁気テープドライブ、光ディスクドライブ、フラッシュドライブ等であり得る。記憶装置インタフェース734は一般に、記憶装置732及び733と、計算システム710の他の構成要素との間でデータを転送する任意の種類又は形態のインタフェース又は装置を表す。
【0062】
特定の実施形態では、記憶装置732及び733は、コンピュータソフトウェア、データ、又は他のコンピュータ可読情報を記憶するように構成されたリムーバブル記憶ユニットに対して読み取り及び/又は書き込みを行うように構成し得る。適するリムーバブル記憶ユニットの例としては、限定ではなく、フロッピーディスク、磁気テープ、光ディスク、フラッシュメモリ装置等が挙げられる。記憶装置732及び733は、コンピュータソフトウェア、データ、又は他のコンピュータ可読命令を計算システム710にロードできるようにする他の同様の構造又は装置を含んでもよい。例えば、記憶装置732及び733は、ソフトウェア、データ、又は他のコンピュータ可読情報を読み書きするように構成し得る。記憶装置732及び733は、計算システム710の部分であってもよく、又は他のインタフェースシステムを通してアクセスされる別個の装置であってもよい。
【0063】
特定の実施形態では、記憶装置732及び733は、例えば、単独で、又は他の要素と組み合わせて、本明細書に開示される識別するステップ、収集するステップ、解析するステップ、作成するステップ、適用するステップ、及び/又は特定するステップのうちの1つ又は複数を実行するため、且つ/又は実行する手段として使用し得る。記憶装置732及び733は、本開示に記載される他のステップ及び特徴を実行するため、且つ/又は実行する手段として使用することもできる。
【0064】
多くの他の装置又はサブシステムを計算システム710に接続し得る。逆に、図7に示されるすべての構成要素及び装置が、本明細書に記載され、且つ/又は示される実施形態の実施に必要なわけではない。上で参照された装置及びサブシステムは、図7に示される方法と異なる方法で相互接続してもよい。計算システム710は、任意の数のソフトウェア、ファームウェア、及び/又はハードウェア構成を使用することができる。例えば、本明細書に開示される例示的な実施形態のうちの1つ又は複数は、コンピュータ可読媒体上のコンピュータプログラム(コンピュータソフトウェア、ソフトウェアアプリケーション、コンピュータ可読命令、又はコンピュータ制御論理とも呼ばれる)として符号化し得る。「コンピュータ可読媒体」という語句は一般に、コンピュータ可読命令を記憶又は搬送可能な装置、キャリア、又は媒体を指す。コンピュータ可読媒体の例としては、限定ではなく、搬送波等の伝送型媒体、磁気記憶媒体(例えば、ハードディスクドライブ及びフロッピーディスク)、光記憶媒体(例えば、CD−ROM又はDVD−ROM)、電子記憶媒体(例えば、固体状態ドライブ及びフラッシュメディア)等の物理的媒体、及び他の分散システムが挙げられる。
【0065】
コンピュータプログラムを含むコンピュータ可読媒体は、計算システム710にロードし得る。次に、コンピュータ可読媒体に記憶されたコンピュータプログラムのすべて又は部分は、システムメモリ716並びに/或いは記憶装置732及び733の様々な部分に記憶し得る。プロセッサ714により実行されると、計算システム710にロードされたコンピュータプログラムは、プロセッサ714に、本明細書に記載され、且つ/又は示される例示的な実施形態のうちの1つ又は複数の機能を実行させ、且つ/又は実行する手段にさせ得る。追加又は代替として、本明細書に記載され、且つ/又は示される例示的な実施形態のうちの1つ又は複数は、ファームウェア及び/又はハードウェアで実施し得る。例えば、計算システム710は、本明細書に開示された例示的な実施形態のうちの1つ又は複数を実施するように構成された特定用途向け集積回路(ASIC)として構成し得る。
【0066】
図8は、クライアントシステム810、820、及び830と、サーバ840及び845とをネットワーク850に結合し得る、例示的なネットワークアーキテクチャ800のブロック図である。クライアントシステム810、820、及び830は一般に、例えば、図7の例示的な計算システム710等の任意の種類又は形態の計算装置又はシステムを表す。一例では、クライアントシステム810は図1からのシステム100を含み得る。
【0067】
同様に、サーバ840及び845は一般に、様々なデータベースサービスを提供し、且つ/又は特定のソフトウェアアプリケーションを実行するように構成されたアプリケーションサーバ又はデータベースサーバ等の計算装置又はシステムを表す。ネットワーク850は一般に、例えば、イントラネット、広域ネットワーク(WAN)、ローカルエリアネットワーク(LAN)、パーソナルエリアネットワーク(PAN)、又はインターネットを含む任意の通信ネットワーク又はコンピュータネットワークを表す。
【0068】
図8に示すように、1つ又は複数の記憶装置860(1)〜(N)は、サーバ840に直接取り付け得る。同様に、1つ又は複数の記憶装置870(1)〜(N)もサーバ845に直接取り付け得る。記憶装置860(1)〜(N)及び記憶装置870(1)〜(N)は一般に、データ及び/又は他のコンピュータ可読命令を記憶可能な任意の種類又は形態の記憶装置又は媒体を表す。特定の実施形態では、記憶装置860(1)〜(N)及び記憶装置870(1)〜(N)は、NFS、SMB、又はCIFS等の様々なプロトコルを使用してサーバ840及び845と通信するように構成されたネットワークに取り付けられる記憶(NAS)装置を表し得る。
【0069】
サーバ840及び845は、ストレージエリアネットワーク(SAN)ファブリック880にも接続し得る。SANファブリック880は一般に、複数の記憶装置間での通信を促進可能な任意の種類又は形態のコンピュータネットワーク又はアーキテクチャを表す。SANファブリック880は、サーバ840及び845と、複数の記憶装置890(1)〜(N)、並びに/或いはインテリジェントストレージアレイ895との間での通信を促進し得る。SANファブリック880は、装置890(1)〜(N)及びアレイ895がクライアントシステム810、820、及び830にローカルに取り付けられた装置として見られるように、ネットワーク850並びにサーバ840及び845を介してクライアントシステム810、820、及び830と、記憶装置890(1)〜(N)と、及び/又はインテリジェントストレージアレイ895の間での通信を促進することもできる。記憶装置860(1)〜(N)及び記憶装置870(1)〜(N)と同様に、記憶装置890(1)〜(N)及びインテリジェントストレージアレイ895は一般に、データ及び/又は他のコンピュータ可読命令を記憶可能な任意の種類又は形態の記憶装置又は媒体を表す。
【0070】
特定の実施形態では、図7の例示的な計算システム710を参照して、図7の通信インタフェース722等の通信インタフェースを使用して、各クライアントシステム810、820、及び830とネットワーク850との接続性を提供し得る。クライアントシステム810、820、及び830は、例えば、ウェブブラウザ又は他のクライアントソフトウェアを使用してサーバ840又は845についての情報にアクセス可能であり得る。そのようなソフトウェアは、クライアントシステム810、820、及び830が、サーバ840、845、記憶装置860(1)〜(N)、記憶装置870(1)〜(N)、記憶装置890(1)〜(N)、又はインテリジェントストレージアレイ895によりホストされるデータにアクセスできるようにし得る。図8は、データを交換するためのネットワーク(インターネット等)の使用を示すが、本明細書に記載され、且つ/又は示される実施形態は、インターネット又はいかなる特定のネットワークに基づく環境にも限定されない。
【0071】
少なくとも1つの実施形態では、本明細書に開示される例示的な実施形態のうちの1つ又は複数のすべて又は部分は、コンピュータプログラムとして符号化し、サーバ840、サーバ845、記憶装置860(1)〜(N)、記憶装置870(1)〜(N)、記憶装置890(1)〜(N)、インテリジェントストレージアレイ895、又はこれらの任意の組み合わせにロードされて実行され得る。本明細書に開示される例示的な実施形態のうちの1つ又は複数のすべて又は部分は、コンピュータプログラムとして符号化し、サーバ840に記憶し、サーバ845により実行され、ネットワーク850を介してクライアントシステム810、820、及び830に配信し得る。したがって、ネットワークアーキテクチャ800は、単独で、又は他の要素と組み合わせて、本明細書に開示される識別するステップ、収集するステップ、解析するステップ、作成するステップ、適用するステップ、及び/又は特定するステップのうちの1つ又は複数を実行し得、且つ/又は実行する手段であり得る。ネットワークアーキテクチャ800は、本開示に記載される他のステップ及び特徴を実行するため、且つ/又は実行する手段としても使用し得る。
【0072】
詳細に上述したように、計算システム710及び/又はネットワークアーキテクチャ800の1つ若しくは複数の構成要素は、単独で、又は他の要素と組み合わせて、マルウェア検出に使用するカスタマイズされた信頼帯を作成する例示的な方法の1つ又は複数のステップを実行し得、且つ/又は実行する手段であり得る。
【0073】
上記開示は、特定のブロック図、フローチャート、及び例を使用して様々な実施形態を記載するが、本明細書に記載され、且つ/又は示される各ブロック図構成要素、フローチャートステップ、動作、及び/又は構成要素は、個々に、且つ/又は集合的に、広範囲のハードウェア、ソフトウェア、又はファームウェア(又はこれらの任意の組み合わせ)構成を使用して実施し得る。さらに、同じ機能を達成するために、多くの他のアーキテクチャを実施することができるため、他の構成要素内に含まれる構成要素の任意の開示も、例示的な性質のものであるとみなすべきである。
【0074】
いくつかの例では、本明細書に記載のシステムは、クラウド計算又はネットワークに基づく環境内で展開し得る。クラウド計算環境は、インターネットを介して様々なサービス及びアプリケーションを提供し得る。これらはクラウドに基づくサービス(例えば、サービスとしてのソフトウェア、サービスとしてのプラットフォーム、サービスとしての基盤等)に、ウェブブラウザ又は他の遠隔インタフェースを介してアクセス可能であり得る。本明細書に記載の様々な機能は、遠隔デスクトップ環境又は他の任意のクラウドに基づく計算環境を通して提供し得る。
【0075】
本明細書に記載され、且つ/又は示されるプロセスパラメータ及び一連のステップは、単なる例として与えられ、所望のように可変である。例えば、本明細書に示され、且つ/又は記載されるステップは、特定の順序で示され、又は考察され得るが、これらのステップは、必ずしも図示又は考察される順序で実行される必要はない。本明細書に記載され、且つ/又は示される様々な例示的な方法は、本明細書に記載若しくは示されるステップのうちの1つ又は複数を省いてもよく、又は開示されるステップの他に追加のステップを含んでもよい。
【0076】
完全に機能する計算システムの文脈の中で様々な実施形態を本明細書において記載し、且つ/又は示したが、これらの例示的な実施形態のうちの1つ又は複数は、実際に配布を実行するために使用されるコンピュータ可読媒体の特定の種類に関係なく、様々な形態のプログラム製品として配布し得る。本明細書に開示される実施形態は、特定のタスクを実行するソフトウェアモジュールを使用して実施することもできる。これらのソフトウェアモジュールは、コンピュータ可読記憶媒体又は計算システムに記憶し得るスクリプト、バッチ、又は他の実行可能ファイルを含み得る。いくつかの実施形態では、これらのソフトウェアモジュールは、本明細書に開示される例示的な実施形態のうちの1つ又は複数を計算システムに実行させるように構成し得る。
【0077】
さらに、本明細書に記載のモジュールのうちの1つ又は複数は、データ、物理的装置、及び/又は物理的装置の表現をある形態から別の形態に変換し得る。例えば、本明細書に記載のモジュールのうちの1つ又は複数は、計算システムを、起源となるポータルに基づいてセキュリティヒューリスティックを実行可能コンテンツに正確に適用するシステムに変換し得る。
【0078】
これまでの説明は、当業者が本明細書に開示される例示的な実施形態の様々な態様を最良に利用することができるように提供された。この例示的な説明は、網羅的であることを意図せず、すなわち、開示される任意の厳密な形態への限定を意図しない。本開示の趣旨及び範囲から逸脱せずに、多くの変更及び変形が可能である。本明細書に開示される実施形態は、すべての点において例示とみなされるべきであり、限定とみなされるべきではない。本開示の範囲を決定する際には、添付の特許請求の範囲及び均等物を参照すべきである。
【0079】
別記される場合を除き、「a」又は「an」という用語は、本明細書及び特許請求の範囲で使用される場合、「〜のうちの少なくとも1つ」を意味するものと解釈されたい。さらに、使用しやすくするために、「含む」及び「有する」という言葉は、本明細書及び特許請求の範囲で使用される場合、「備える」という言葉と同義であり、同じ意味を有する。
図1
図2
図3
図4
図5
図6
図7
図8