(57)【特許請求の範囲】
【請求項１】
コンピュータ記憶媒体に記憶されたコンピュータプログラムを実行するデータ処理装置によって行われる、危殆化のインジケータを収集および検出するための方法であって、前記方法は、
前記データ処理装置によって、複数のセキュリティデータプロバイダから危殆化のインジケータを受信することであって、危殆化の各インジケータが、１つまたは複数のコンピュータセキュリティ脅威の１つまたは複数の特性を指定するデータを含み、危殆化の各インジケータが、コンピュータによって処理されたとき、前記コンピュータに、前記１つまたは複数のコンピュータセキュリティ脅威の前記指定された１つまたは複数の特性の存在を検出させるように構成された、受信することと、
前記データ処理装置によって、複数のユーザの各ユーザから、前記ユーザのコンピューティングシステムについてのテレメトリデータを受信することであって、前記テレメトリデータが、前記コンピューティングシステムにおいて検出された少なくとも１つのイベントを記述するデータを含む、受信することと、
前記データ処理装置によって、所与のユーザについて、前記所与のユーザについての前記テレメトリデータが、危殆化の所与のインジケータによって指定された前記１つまたは複数の特性を含むと決定することと、
前記データ処理装置によって、危殆化の各インジケータについての性能スコアを決定することであって、危殆化のインジケータについての前記性能スコアは、危殆化の前記インジケータによって指定された前記１つまたは複数の特性が前記ユーザの前記テレメトリデータ中で検出された回数に少なくとも部分的に基づくことと、
前記データ処理装置によって、所与のセキュリティデータプロバイダから提供された危殆化の各インジケータについての前記性能スコアに基づく報酬量を前記所与のセキュリティデータプロバイダに提供することと
を備える、方法。
【請求項２】
前記データ処理装置によって、危殆化の前記所与のインジケータによって示されたセキュリティ脅威のタイプを識別することと、
前記データ処理装置によって、危殆化の前記所与のインジケータによって示されたセキュリティ脅威の前記タイプに基づいて、実施すべき行為を行為のセットから選択することと
をさらに備える、請求項１に記載の方法。
【請求項３】
行為の前記セットが、（ｉ）前記所与のユーザのコンピューティングシステムから危殆化の前記所与のインジケータによって示された前記セキュリティ脅威を取り除くこと、（ｉｉ）前記ユーザのコンピューティングシステムのフォレンジック調査を開始すること、および（ｉｉｉ）危殆化の前記所与のインジケータによって示された前記セキュリティ脅威を前記ユーザに通知する警報を生成することのうちの１つまたは複数を含む、請求項２に記載の方法。
【請求項４】
前記データ処理装置によって、危殆化の前記少なくとも１つのインジケータについての前記性能スコアに基づいて、前記ユーザの前記テレメトリデータがそれについて監視される危殆化のインジケータのセットから、危殆化の少なくとも１つのインジケータを削除することをさらに備える、請求項１に記載の方法。
【請求項５】
所与のセキュリティデータプロバイダによって提供された危殆化の各インジケータについての前記性能スコアに基づく報酬量を前記所与のセキュリティデータプロバイダに提供することは、前記報酬量を前記所与のセキュリティデータプロバイダに補償することを含む、請求項４に記載の方法。
【請求項６】
危殆化の各インジケータについての前記性能スコアが、（ｉ）前記ユーザの前記テレメトリデータ中の危殆化の前記インジケータによって指定された前記１つまたは複数の特性の真検出の回数と、（ｉｉ）前記ユーザの前記テレメトリデータ中の危殆化の前記インジケータによって指定された前記１つまたは複数の特性の偽検出の回数との間の差に基づく、請求項１に記載の方法。
【請求項７】
前記報酬量が、危殆化の前記インジケータの関連性、またはユーザのテレメトリデータ中の危殆化の前記インジケータによって指定された前記１つまたは複数の特性を識別するためのデータ処理探索コストのうちの少なくとも１つに基づく、請求項５に記載の方法。
【請求項８】
前記データ処理装置によって、所与のユーザについて、危殆化の各インジケータのコストと、前記ユーザによって指定された予算とに基づいて、危殆化のインジケータの前記セットの適切なサブセットを識別することと、
前記データ処理装置によって、危殆化のインジケータの前記適切なサブセットによって指定された前記１つまたは複数の特性ついてのみ、前記所与のユーザについての前記テレメトリデータを監視することと
をさらに備える、請求項４に記載の方法。
【請求項９】
前記データ処理装置によって、所与のユーザについて、前記所与のユーザがそれに申し込んだ危殆化のインジケータの前記セットの適切なサブセットを識別することと、
前記データ処理装置によって、危殆化のインジケータの前記適切なサブセットによって指定された前記１つまたは複数の特性ついてのみ、前記所与のユーザについての前記テレメトリデータを監視することと
をさらに備える、請求項４に記載の方法。
【請求項１０】
前記データ処理装置によって、危殆化の受信されたインジケータによって指定された所与の特性に関係するデータを提供するように、少なくとも１人のユーザの前記コンピューティングシステムを更新することをさらに備える、請求項１に記載の方法。
【請求項１１】
危殆化の少なくとも１つのインジケータが、前記ユーザの前記テレメトリデータを評価するためのルールのセットを含む、請求項１に記載の方法。
【請求項１２】
危殆化の特定のインジケータによって指定された前記１つまたは複数のセキュリティ脅威は、セキュリティ脅威の同じカテゴリーにすべてが属する複数のセキュリティ脅威を含む、請求項１に記載の方法。
【請求項１３】
危殆化の特定のインジケータによって指定された前記１つまたは複数のセキュリティ脅威は、互いの変形態である複数のセキュリティ脅威を含む、請求項１に記載の方法。
【請求項１４】
システムであって、
データ処理装置と、
コンピュータプログラムで符号化されたコンピュータ記憶媒体であって、前記プログラムが、前記データ処理装置によって実行されたとき、前記データ処理装置に、
複数のセキュリティデータプロバイダから危殆化のインジケータを受信することであって、危殆化の各インジケータが、１つまたは複数のコンピュータセキュリティ脅威の１つまたは複数の特性を指定するデータを含み、危殆化の各インジケータが、コンピュータによって処理されたとき、前記コンピュータに、前記１つまたは複数のコンピュータセキュリティ脅威の前記指定された１つまたは複数の特性の存在を検出させるように構成された、受信することと、
複数のユーザの各ユーザから、前記ユーザのコンピューティングシステムについてのテレメトリデータを受信することであって、前記テレメトリデータが、前記コンピューティングシステムにおいて検出された少なくとも１つのイベントを記述するデータを含む、受信することと、
所与のユーザについて、前記所与のユーザについての前記テレメトリデータが、危殆化の所与のインジケータによって指定された前記１つまたは複数の特性を含むと決定することと、
危殆化の各インジケータについての性能スコアを決定することであって、危殆化のインジケータについての前記性能スコアは、危殆化の前記インジケータによって指定された前記１つまたは複数の特性が前記ユーザの前記テレメトリデータ中で検出された回数に少なくとも部分的に基づくことと、
所与のセキュリティデータプロバイダから提供された危殆化の各インジケータについての前記性能スコアに基づく報酬量を前記所与のセキュリティデータプロバイダに提供することと
を備える動作を実施させるデータ処理装置命令を備える、コンピュータ記憶媒体と
を備えるシステム。
【請求項１５】
前記動作が、
危殆化の前記所与のインジケータによって示されたセキュリティ脅威のタイプを識別することと、
危殆化の前記所与のインジケータによって示されたセキュリティ脅威の前記タイプに基づいて、実施すべき行為を行為のセットから選択することと
をさらに備える、請求項１４に記載のシステム。
【請求項１６】
行為の前記セットが、（ｉ）前記所与のユーザのコンピューティングシステムから危殆化の前記所与のインジケータによって示された前記セキュリティ脅威を取り除くこと、（ｉｉ）前記ユーザのコンピューティングシステムのフォレンジック調査を開始すること、および（ｉｉｉ）危殆化の前記所与のインジケータによって示された前記セキュリティ脅威を前記ユーザに通知する警報を生成することのうちの１つまたは複数を含む、請求項１５に記載のシステム。
【請求項１７】
前記動作が、
危殆化の前記少なくとも１つのインジケータについての前記性能スコアに基づいて、前記ユーザの前記テレメトリデータがそれについて監視される危殆化のインジケータのセットから、危殆化の少なくとも１つのインジケータを削除することをさらに備える、請求項１４に記載のシステム。
【請求項１８】
所与のセキュリティデータプロバイダによって提供された危殆化の各インジケータについての前記性能スコアに基づく報酬量を前記所与のセキュリティデータプロバイダに提供することは、前記報酬量を前記所与のセキュリティデータプロバイダに補償することを含む、請求項１７に記載のシステム。
【請求項１９】
危殆化の各インジケータについての前記性能スコアが、（ｉ）前記ユーザの前記テレメトリデータ中の危殆化の前記インジケータによって指定された前記１つまたは複数の特性の真検出の回数と、（ｉｉ）前記ユーザの前記テレメトリデータ中の危殆化の前記インジケータによって指定された前記１つまたは複数の特性の偽検出の回数との間の差に基づく、請求項１４に記載のシステム。
【請求項２０】
コンピュータプログラムで符号化された非一時的コンピュータ記憶媒体であって、前記プログラムは、１つまたは複数のデータ処理装置によって実行されたとき、前記データ処理装置に、
複数のセキュリティデータプロバイダから危殆化のインジケータを受信することであって、危殆化の各インジケータが、１つまたは複数のコンピュータセキュリティ脅威の１つまたは複数の特性を指定するデータを含み、危殆化の各インジケータが、コンピュータによって処理されたとき、前記コンピュータに、前記１つまたは複数のコンピュータセキュリティ脅威の前記指定された１つまたは複数の特性の存在を検出させるように構成された、受信することと、
複数のユーザの各ユーザから、前記ユーザのコンピューティングシステムについてのテレメトリデータを受信することであって、前記テレメトリデータが、前記コンピューティングシステムにおいて検出された少なくとも１つのイベントを記述するデータを含む、受信することと、
所与のユーザについて、前記所与のユーザについての前記テレメトリデータが、危殆化の所与のインジケータによって指定された前記１つまたは複数の特性を含むと決定することと、
前記データ処理装置によって、危殆化の各インジケータについての性能スコアを決定することであって、危殆化のインジケータについての前記性能スコアは、危殆化の前記インジケータによって指定された前記１つまたは複数の特性が前記ユーザの前記テレメトリデータ中で検出された回数に少なくとも部分的に基づくことと、
前記データ処理装置によって、所与のセキュリティデータプロバイダから提供された危殆化の各インジケータについての前記性能スコアに基づく報酬量を前記所与のセキュリティデータプロバイダに提供することと
を備える動作を実施させる命令を備える、非一時的コンピュータ記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
［0001］  本開示は、一般に、コンピュータおよびネットワークセキュリティに関する。
【背景技術】
【０００２】
［0002］  コンピュータおよびデータ通信ネットワークは、しばしば、侵入攻撃を受ける。侵入攻撃は、ワーム、ウイルス、フィッシング、スパイウェアなど、多くの形態を取り得る。概して、すべてのそのような攻撃は、何らかの形態の悪意のあるソフトウェアによって可能にされる。このソフトウェアは、しばしば、マルウェアと呼ばれる。マルウェア攻撃は、コンピュータの動作を混乱させ、および／または機密データを盗むことができる。そのような攻撃からコンピュータを保護するために、ネットワーク管理者は、マルウェアを検出し、マルウェア攻撃の影響を防止または緩和する、アンチウイルスソフトウェアおよび／またはファイアウォールなど、セキュリティシステムをインストールし得る。
【発明の概要】
【０００３】
［0003］  本明細書は、危殆化のインジケータを収集し、危殆化のインジケータを使用してコンピュータシステムについてのテレメトリデータ中のセキュリティ脅威の存在を検出するためのシステム、方法、デバイス、および他の技法について説明する。
【０００４】
［0004］  概して、本明細書で説明される主題の１つの発明的態様は、複数のセキュリティデータプロバイダから危殆化のインジケータを受信することを含む方法で実装され得る。危殆化の各インジケータは、１つまたは複数のコンピュータセキュリティ脅威の１つまたは複数の特性を指定するデータを含むことができる。危殆化の各インジケータは、コンピュータによって処理されたとき、コンピュータに、１つまたは複数のコンピュータセキュリティ脅威の指定された１つまたは複数の特性の存在を検出させるように構成され得る。本方法は、複数のユーザの各ユーザから、ユーザのコンピューティングシステムについてのテレメトリデータを受信することを含むことができる。テレメトリデータは、コンピューティングシステムにおいて検出された少なくとも１つのイベントを記述するデータを含むことができる。所与のユーザについて、所与のユーザについてのテレメトリデータが、危殆化の所与のインジケータによって指定された１つまたは複数の特性を含むという決定がなされる。この態様の他の実施形態は、コンピュータストレージデバイス上に符号化された方法の行為を実施するように構成された、対応するシステム、装置、およびコンピュータプログラムを含む。
【０００５】
［0005］  これらおよび他の実装形態は、以下の特徴のうちの１つまたは複数を随意に含むことができる。いくつかの態様は、危殆化の所与のインジケータによって示されたセキュリティ脅威のタイプを識別することと、危殆化の所与のインジケータによって示されたセキュリティ脅威のタイプに基づいて、実施すべき行為を行為のセットから選択することとを含むことができる。行為のセットは、（ｉ）所与のユーザのコンピューティングシステムから危殆化の所与のインジケータによって示されたセキュリティ脅威を取り除くこと、（ｉｉ）ユーザのコンピューティングシステムのフォレンジック調査を開始すること、および（ｉｉｉ）危殆化の所与のインジケータによって示されたセキュリティ脅威をユーザに通知する警報を生成することのうちの１つまたは複数を含むことができる。
【０００６】
［0006］  いくつかの態様は、危殆化の各インジケータについての性能スコアを決定することを含むことができる。危殆化のインジケータについての性能スコアは、危殆化のインジケータによって指定された１つまたは複数の特性がユーザのテレメトリデータ中で検出された回数に少なくとも部分的に基づき得る。危殆化の少なくとも１つのインジケータが、危殆化の少なくとも１つのインジケータについての性能スコアに基づいて、ユーザのテレメトリデータがそれについて監視される危殆化のインジケータのセットから削除され得る。
【０００７】
［0007］  いくつかの態様は、所与のセキュリティデータプロバイダによって提供された危殆化の各インジケータについての性能スコアに基づいて、ある量を所与のセキュリティデータプロバイダに補償することを含むことができる。危殆化の各インジケータについての性能スコアは、（ｉ）ユーザのテレメトリデータ中の危殆化のインジケータによって指定された１つまたは複数の特性の真検出の回数と、（ｉｉ）ユーザのテレメトリデータ中の危殆化のインジケータによって指定された１つまたは複数の特性の偽検出の回数との間の差に基づき得る。量は、危殆化のインジケータの関連性、またはユーザのテレメトリデータ中の危殆化のインジケータによって指定された１つまたは複数の特性を識別するためのデータ処理探索コストのうちの少なくとも１つに基づき得る。
【０００８】
［0008］  いくつかの態様は、所与のユーザについて、危殆化の各インジケータのコストと、ユーザによって指定された予算とに基づいて、危殆化のインジケータのセットの適切なサブセットを識別することを含むことができる。所与のユーザについてのテレメトリデータは、危殆化のインジケータの適切なサブセットによって指定された１つまたは複数の特性についてのみ監視され得る。
【０００９】
［0009］  いくつかの態様は、所与のユーザについて、所与のユーザがそれに申し込んだ危殆化のインジケータのセットの適切なサブセットを識別することを含むことができる。所与のユーザについてのテレメトリデータは、危殆化のインジケータの適切なサブセットによって指定された１つまたは複数の特性についてのみ監視され得る。
【００１０】
［0010］  いくつかの態様は、危殆化の受信されたインジケータによって指定された所与の特性に関係するデータを提供するように、少なくとも１人のユーザのコンピューティングシステムを更新することを含むことができる。危殆化の少なくとも１つのインジケータは、ユーザのテレメトリデータを評価するためのルールのセットを含むことができる。
【００１１】
［0011］  いくつかの態様では、危殆化の特定のインジケータによって指定された１つまたは複数のセキュリティ脅威は、セキュリティ脅威の同じカテゴリーにすべてが属する複数のセキュリティ脅威を含むことができる。危殆化の特定のインジケータによって指定された１つまたは複数のセキュリティ脅威は、互いの変形態である複数のセキュリティ脅威を含むことができる。
【００１２】
［0012］  本明細書で説明される主題の特定の実施形態は、以下の利点のうちの１つまたは複数を実現するように実装され得る。危殆化のインジケータの性能を査定することによって、システムは、（たとえば、しきい値性能スコア未満の）低い性能を有するものをフィルタで除去することができる。このフィルタ処理は、システムがテレメトリデータ中のセキュリティ脅威を識別するために使用する危殆化のインジケータの数の低減をもたらし、これは、今度は、セキュリティ脅威を検出する際にシステムよって消費されるコンピューティングリソースの量の低減をもたらす。セキュリティ脅威を検出する際に消費されるコンピューティングリソースの量を低減することよって、システムは、より迅速におよびより効率的にセキュリティ脅威を識別し、それらに応答することができ、これは、セキュリティ脅威によって引き起こされる損害を低減することができる。さらに、より多くのコンピューティングリソースが、危殆化のインジケータの性能を査定すること、危殆化の新しいインジケータを受信することなど、他のタスクを実施するために利用可能になる。
【００１３】
［0013］  品質および／または性能に基づいて危殆化のインジケータのプロバイダに補償することによって、プロバイダは、危殆化のより高品質でより関連するインジケータをより速やかに提供するように促される。さらに、テレメトリデータ中で危殆化のインジケータを検出することに関連するデータ処理コストに危殆化のインジケータの性能を基づかせると、プロバイダは、危殆化のより効率的なインジケータを提供するように促される。
【００１４】
［0014］  研究者、インシデント応答者、および情報技術専門家などのユーザが、ユーザが検出したかまたはそれらをリバースエンジニアリングしたセキュリティ脅威の特性を含む危殆化のインジケータをアップロードすることを可能にすることは、以前は利用不可能であったセキュリティ脅威データを他者が利用可能なようにする。たとえば、セキュリティ脅威を識別したユーザは、脅威を防止または補正するソフトウェアを生成および販売するのではなく、セキュリティ脅威の特性を指定する危殆化のインジケータをアップロードすることができる。まだ活用されていないセキュリティ脅威データのこの識別および収集は、脅威検出が、よりロバストになり、より多くのセキュリティ脅威および新しいセキュリティ脅威をより高速に検出することが可能になることを可能にする。
【００１５】
［0015］  上記の主題の様々な特徴および利点が、図に関して以下で説明される。追加の特徴および利点が、本明細書で説明される主題および特許請求の範囲から明らかになる。
【図面の簡単な説明】
【００１６】
【図１】［0016］セキュリティインテリジェンスシステムが、危殆化のインジケータを受信し、セキュリティ脅威を検出するために危殆化のインジケータを使用する例示的な環境を示す図である。
【図２】［0017］危殆化のインジケータの性能を査定し、ユーザのテレメトリデータがそれについて監視される危殆化のインジケータのセットから危殆化の低い性能のインジケータを削除するための例示的なプロセスのフローチャートを示す図である。
【図３】［0018］コンピューティングシステムが危殆化されたと決定したことに応答して、実施すべき行為を識別し、行為を実施するための例示的なプロセスのフローチャートである。
【図４】［0019］危殆化のインジケータプロバイダに補償するための例示的なプロセスのフローチャートである。
【発明を実施するための形態】
【００１７】
［0020］  概して、本開示は、危殆化のインジケータ（「ＩＯＣ」）を収集し、たとえば、マルウェアまたはハッキング攻撃によって危殆化されたコンピューティングシステムを識別するためにＩＯＣを使用するためのシステム、方法、デバイス、および他の技法について説明する。システムは、研究者、インシデント応答者、情報技術専門家、および他のユーザなどのユーザが、危殆化されたコンピューティングシステムを識別するために使用され得るＩＯＣをアップロードおよび共有することを可能にすることができる。ＩＯＣは、コンピュータセキュリティ脅威の１つまたは複数の特性を指定することができる。たとえば、ユーザは、新しいボットネットをリバースエンジニアリングし、新しいボットネットの特性を指定するＩＯＣを生成し得る。
【００１８】
［0021］  システムは、ＩＯＣの性能を査定し、低い性能のＩＯＣをフィルタで除去するか、または低い性能のＩＯＣのプロバイダをブロックすることができる。したがって、システムは、複数の異なるＩＯＣの迅速な評価を可能にする。さらに、他のＩＯＣと比較して最も効果的であるＩＯＣが、それらの性能に基づいて判明する。これは、システムが、様々な競合するＩＯＣの迅速で信頼できる評価を可能にし、最も良い性能のＩＯＣを識別するので、セキュリティ検出および緩和の技術分野に寄与する。
【００１９】
［0022］  ＩＯＣをアップロードするユーザは、実際のセキュリティ脅威に関連する高い性能のＩＯＣを構成することを奨励され得る。たとえば、「リーダーボード」が、高い性能のＩＯＣを設計し、リーダーボードに含まれることに同意したユーザをリストし得る。ユーザは、さらには、高い性能のＩＯＣについて、たとえば、コンピューティングシステム中の少なくともしきい値個のセキュリティ脅威を検出するために使用されたＩＯＣについて補償され得る。そのような高い性能のＩＯＣは、さらに、ＩＯＣ設計のための「最良の実施」を明らかにするために評価され、したがって、セキュリティ検出および緩和の技術分野に寄与し得る。
【００２０】
［0023］  申込者は、いくつかのＩＯＣのみに、またはＩＯＣのすべてに申し込むことができる。システムは、次いで、申込者がそれに申し込んだＩＯＣを使用して、申込者のコンピューティングシステムにおいて発生したイベントを記述するデータ、たとえば、コンピューティングシステムから受信されたテレメトリデータを監視することができる。これらのＩＯＣを提供したユーザは、ＩＯＣの性能に基づいて、申し込み料の一部分を受け取ることができる。いくつかの実装形態では、システムは、ＩＯＣのコストと、申込者によって指定された予算とに基づいて、申込者についてＩＯＣを選択し得る。
【００２１】
［0024］  図１は、セキュリティ脅威インテリジェンスシステム１１０が、ＩＯＣ１４２を受信し、危殆化されたコンピューティングシステムを検出するためにＩＯＣ１４２を使用する例示的な環境１００を示す。概して、ＩＯＣ１４２は、１つまたは複数のセキュリティ脅威の１つまたは複数の特性を指定する。特性は、セキュリティ脅威の源（たとえば、セキュリティ脅威についてのドメイン、ＵＲＬ、またはＩＰアドレス）、セキュリティ脅威に関連するファイル、ファイル特性、スクリプト記述、正規表現、および／またはセキュリティ脅威の他の適切な静的特性など、静的データを含むことができる。特性は、インメモリシグネチャ、（たとえば、挙動プロファイルに基づく）動的特性、および／またはネットワークインジケータをも含むことができる。特性は、１つまたは複数の脅威を検出するニューラルネットワーク、サポートベクターマシン、または決定ツリーなど、機械学習モデルをも含むことができる。
【００２２】
［0025］  ＩＯＣ１４２は、あるカテゴリーのセキュリティ脅威の１つまたは複数の特性を指定し得る。たとえば、あるカテゴリーのセキュリティ脅威は、同じまたは重複する特性を有し得る。ＩＯＣ１４２は、特定のセキュリティ脅威の変形態の１つまたは複数の特性を指定し得る。たとえば、変形態は、同じまたは重複する特性を有し得る。ＩＯＣ１４２は、単一の脅威としてだけではなく、脅威の変形態を検出するアルゴリズムまたはルールのセットを指定することができる。
【００２３】
［0026］  ＩＯＣ１４２は、コンピュータによって処理されたとき、コンピュータに、ＩＯＣ１４２によって指定された１つまたは複数の特性の存在を検出させる命令を含むデータを含むことができる。たとえば、コンピュータが、ＩＰアドレスを指定するＩＯＣ１４２にアクセスしたとき、コンピュータは、イベントデータが、ＩＰアドレスに関係するイベント（たとえば、データが、ＩＰアドレスに送られたか、またはそれから受信されたことを示すログエントリ）を含むかどうかを決定するために、１つまたは複数のコンピューティングシステムについてのイベントデータを自動的に評価し得る。以下でより詳細に説明されるように、コンピューティングシステムについてのイベントデータは、コンピューティングシステムから受信されたテレメトリデータに含まれ得る。
【００２４】
［0027］  いくつかの実装形態では、ＩＯＣ１４２は、コンピューティングシステムにおいて発生したイベントを記述するイベントデータを、セキュリティ脅威の特性にマッピングするためのハッシュ関数を含むことができる。この例では、コンピュータがハッシュ関数を処理するとき、ハッシュ関数は、コンピュータに、イベントデータをセキュリティ脅威の特性にマッピングさせ得る。
【００２５】
［0028］  ＩＯＣ１４２は、コンピューティングシステムにおいて発生したイベントを記述するイベントデータ中のセキュリティ脅威の特性を識別するための１つまたは複数のルールをも含むことができる。たとえば、ルールは、イベントデータ中で識別された場合、セキュリティ脅威を表す１つまたは複数の特性のセットを指定し得る。ルールはまた、イベントデータのどんな部分にそのような特性が見つけられ得るかを指定し得る。たとえば、ルールは、特定のファイル特性が特定のファイル中で見つけられた場合、特定のセキュリティ脅威または攻撃が、コンピューティングシステム中に存在することを指定し得る。ルールは、コンピュータによって実行されたとき、コンピュータに、コンピューティングシステムについてのイベントデータ中のルールによって指定された１つまたは複数の特性の存在を検出させる命令を含むことができる。
【００２６】
［0029］  ルールベースＩＯＣ１４２は、イベントデータ中の特性の組合せを識別するためのルールのセットを含むことができる。たとえば、ルールのセットは、コンピューティングシステムの静的特性（たとえば、ＩＰアドレス）、インメモリシグネチャ、および／または挙動プロファイルを評価し得る。特定の例では、ルールは、ファイル特性が特定のファイル中で見つけられ、インメモリシグネチャが特定のメモリ領域中で見つけられた場合、特定のセキュリティ脅威または攻撃がコンピューティングシステム中に存在し、したがって、コンピューティングシステムが危殆化されたことを指定し得る。コンピューティングシステムがインメモリシグネチャを含むかどうかを決定するために、セキュリティ脅威インテリジェンスシステム１１０は、たとえば、動作しているまたはロードされたバイナリを求めてコンピューティングシステムのメモリを走査し、セキュリティ脅威インテリジェンスシステム１１０にインメモリシグネチャを提供するコードをコンピューティングシステムに送ることができる。
【００２７】
［0030］  いくつかの実装形態では、セキュリティ脅威インテリジェンスシステム１１０は、ＩＯＣプロバイダ１４０が、ルールベースＩＯＣ１４２を定義することを可能にするルール定義言語を提供し得る。たとえば、言語は、ＹＡＲＡなど、正規表現ベースツールセットであり得る。ＩＯＣプロバイダ１４０は、ＩＯＣ１４２を構成するために言語を使用し、ＩＯＣ１４２をセキュリティ脅威インテリジェンスシステム１１０に提供することができる。たとえば、セキュリティ脅威インテリジェンスシステム１１０は、ＩＯＣプロバイダ１４０が、ルールベースＩＯＣを含むＩＯＣ１４２を構成することを可能にするユーザインターフェースを提供し得る。
【００２８】
［0031］  セキュリティ脅威インテリジェンスシステム１１０は、データ通信ネットワーク１３０、たとえば、ローカルエリアネットワーク（ＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ）、インターネット、モバイルネットワーク、またはそれらの組合せ上でＩＯＣプロバイダ１４０からＩＯＣ１４２を受信するＩＯＣ収集サーバ１１２を含む。ＩＯＣプロバイダ１４０は、研究者、インシデント応答者、情報技術専門家、アマチュア、あるいはセキュリティ脅威または脅威のクラスの知識を有する他のユーザを含むことができる。たとえば、ＩＯＣプロバイダ１４０は、ボットネット、悪意のあるソフトウェア、または他のセキュリティ脅威をリバースエンジニアリングし、セキュリティ脅威の特性を識別し得る。別の例では、ＩＯＣプロバイダ１４０は、悪意のあるコードがコンピューティングシステムにそこから送られているＩＰアドレスを識別し得る。ＩＯＣプロバイダ１４０は、セキュリティ脅威の特性を指定するＩＯＣ１４２を生成し、ＩＯＣ１４２をＩＯＣ収集サーバ１１２に送ることができる。たとえば、上述のように、ＩＯＣプロバイダ１４０は、セキュリティ脅威インテリジェンスシステム１１０によって提供されたユーザインターフェースを使用してＩＯＣ１４０を構成し得る。
【００２９】
［0032］  ＩＯＣ収集サーバ１１２は、ＩＯＣストレージデバイス１２０、たとえば、ハードドライブ、フラッシュメモリなどに受信されたＩＯＣ１４０を記憶することができる。いくつかの実装形態では、ＩＯＣ収集サーバ１１２は、ユーザが寄与したテレメトリデータにＩＯＣ１４０を適用するより前に、受信されたＩＯＣ１４０を評価し得る。たとえば、ＩＯＣ収集サーバ１１２は、受信されたＩＯＣ１４２および／またはそれのプロバイダを、合法ソフトウェアおよび／または信用できるＩＯＣプロバイダを指定するホワイトリストと比較し得る。受信されたＩＯＣが合法ソフトウェアのホワイトリスト中のファイルに一致するか、またはＩＯＣプロバイダが、ホワイトリストによって指定されたＩＯＣプロバイダに一致しない場合、ＩＯＣ収集サーバ１１２は、受信されたＩＯＣを廃棄し得る。
【００３０】
［0033］  セキュリティ脅威インテリジェンスシステム１１０は、コンピューティングシステム１５２が危殆化されたかどうかを検出するために、ＩＯＣ１４２を使用してユーザ１５０のコンピューティングシステム１５２を監視し得る。脅威検出サーバ１１４によって監視されるコンピューティングシステム１５２は、セキュリティ脅威インテリジェンスシステム１１０によって提供される脅威検出サービスに申し込んだユーザ１５０のコンピューティングシステム１５２であり得る。
【００３１】
［0034］  セキュリティ脅威インテリジェンスシステム１１０は、危殆化されたコンピューティングシステム１５２を識別するためにＩＯＣ１４０を使用する脅威検出サーバ１１４を含む。本明細書では、危殆化されたコンピューティングシステムは、セキュリティ脅威または攻撃を受けた、コンピュータ、ネットワーク、または他の適切なコンピューティングシステムである。危殆化されたコンピューティングシステムは、セキュリティ脅威または攻撃の証拠が検出され得るコンピューティングシステムであり得る。たとえば、攻撃され、したがって、危殆化されたコンピューティングシステムは、悪意のある行為者によってその上にインストールされた、マルウェア、アドウェア、スパイウェア、または他の悪意のあるコードを有し得る。セキュリティ脅威を受けたコンピューティングシステムは、知られている悪意のある行為者に関連するドメインまたはＵＲＬに接続したことはあるが、悪意のある行為者によって攻撃されたことはまだないことがある。ＩＯＣ１４２は、セキュリティ脅威の特性として、悪意のある行為者のドメインまたはＵＲＬを指定し得、脅威検出サーバ１４０は、コンピューティングシステムについてのイベントデータ中のドメインまたはＵＲＬへの接続を検出し得る。
【００３２】
［0035］  脅威検出サーバ１１４は、コンピューティングシステム１５２から受信されたテレメトリデータ１５４に基づいて、危殆化されたコンピューティングシステムを識別することができる。コンピューティングシステム１５２によって提供されたテレメトリデータ１５４は、コンピューティングシステム１５２において検出されたイベントを記述するイベントデータを含むことができる。たとえば、テレメトリデータ１５４は、他のデバイスへのネットワーク接続のログを含むことができる。ログは、コンピューティングシステム１５２によって接続されたＩＰアドレス、ＵＲＬ、および／またはドメインを指定するデータを含むことができる。別の例では、コンピューティングシステム１５２によって提供されたテレメトリデータ１５４は、コンピューティングシステム１５２において記憶または修正されたファイル、ファイルの特性、インメモリシグネチャ、コンピューティングシステム１５２の挙動特性、および／またはコンピューティングシステム１５２において発生したイベントを記述する他の適切なデータをも含むことができる。
【００３３】
［0036］  いくつかの実装形態では、セキュリティ脅威インテリジェンスシステム１１０のテレメトリデータサーバ１１８は、ソフトウェア、ソフトウェアモジュール、スクリプト、または他のコードをコンピューティングシステム１５２に提供し得る。このコードは、コンピューティングシステム１５２によって実行されたとき、テレメトリデータ１５４に含めるべき適切なデータを識別し、テレメトリデータサーバ１１８にテレメトリデータ１５４を提供することができる。次に、テレメトリデータサーバ１１８は、各コンピューティングシステム１５２についてのテレメトリデータ１５４をテレメトリデータベース１２４に記憶し得る。
【００３４】
［0037］  テレメトリデータサーバ１１８は、ＩＯＣ収集サーバ１１２によって受信された新しいＩＯＣ１４２に基づいて、テレメトリデータ１５４を識別および提供するためのコードを更新し得る。たとえば、データがコンピューティングシステム１５２によってそれについて提供されていない特性のタイプを新しいＩＯＣ１４２が指定した場合、テレメトリデータサーバ１１８は、コンピューティングシステム１５２に、特性に関係するデータを識別および提供させる新しいコードを更新または生成し得る。特定の例では、新しいＩＯＣ１４２は、機密データを盗むためにコンピューティングシステムに記憶されている特定のファイルを指定し得る。この例では、テレメトリデータサーバ１１８は、特定のファイルを求めてコンピューティングシステムを走査し、見つけた場合、テレメトリデータサーバ１１８にファイルを提供するようにコードを更新し得る。別の例では、新しいＩＯＣ１４２は、マルウェアまたはハッキング攻撃によって調整されている特定のコンピュータ設定を指定し得る。この例では、テレメトリデータサーバ１１８は、コンピューティングシステム１５２に新しい監視ルールを送り得る。
【００３５】
［0038］  例示的な監視ルールは、コンピューティングシステムに、特定の設定（たとえば、「設定Ｘ」）を監視することと、特定の設定の値、または特定の設定に対する変更を指定するテレメトリデータ１５４をセキュリティ脅威インテリジェンスシステム１１０に送ることとを行わせ得る。コンピューティングシステムのすべての設定ではなく、ＩＯＣ１４２中で識別された特定の設定を監視することによって、コンピューティングシステム１５２の性能は、すべての設定を監視することは計算コストが高いので、改善される。ＩＯＣ１４２、新しいＩＯＣ、および／または更新ＩＯＣに基づいて、監視ルールに対して粒度の細かい変更を行う能力は、コンピューティングシステム１５２が、他のタスクを実施するコンピューティングシステムの能力を劣化させることなしに、変更された設定に基づいて最新のセキュリティ脅威を監視することを可能にする。
【００３６】
［0039］  脅威検出サーバ１１４は、危殆化されたコンピューティングシステムを識別するために、ＩＯＣストレージデバイス１２０に記憶されたＩＯＣ１４２と、テレメトリデータベース１２４に記憶されたテレメトリデータ１５４とを使用することができる。以下でより詳細に説明されるように、脅威検出サーバ１１４は、特定のユーザのコンピューティングシステムについて（たとえば、ＩＯＣのすべてよりも少ない）ＩＯＣの一部分のみを使用し得る。脅威検出サーバ１１４は、特定のコンピューティングシステムについてのテレメトリデータ１５４にアクセスし、特定のコンピューティングシステムが危殆化されたかどうかを検出する際に使用するためのＩＯＣを識別し得る。各識別されたＩＯＣについて、脅威検出サーバ１１４は、テレメトリデータ１５４にＩＯＣを適用し得る。たとえば、脅威検出サーバ１１４は、ＩＯＣによって指定された１つまたは複数の特性を識別するために、ＩＯＣ１４２のデータを処理し得る。脅威検出サーバ１１４は、次いで、ＩＯＣ１４２によって指定されたセキュリティ脅威の１つまたは複数の特性の各々が、テレメトリデータ１５４中に存在するかどうかを決定するために、テレメトリデータ１５４を評価し得る。１つまたは複数の特性の各々がテレメトリデータ１５４中に存在する場合、脅威検出サーバ１１４は、コンピューティングシステム１５２がセキュリティ脅威によって危殆化されたと結論付け得る。
【００３７】
［0040］  コンピューティングシステム１５２が危殆化されたと脅威検出サーバ１１４が決定した場合、脅威検出サーバ１１４は、セキュリティ脅威に応答して取るべき行為１５６を決定することができる。いくつかの実装形態では、脅威検出サーバ１１４は、危殆化を検出するために使用されるＩＯＣ１４２によって指定されたセキュリティ脅威のタイプに基づいて、可能な行為のセットから行為１５６を選択する。たとえば、行為のセットは、自動的にコンピューティングシステム１５２からセキュリティ脅威を取り除くこと、コンピューティングシステム１５２のフォレンジック調査を開始すること、またはコンピューティングシステム１５２のユーザ１５０に通知する警報を生成することを含み得る。特定の例では、セキュリティ脅威が、アドウェア、マルウェア、またはスパイウェアである場合、脅威検出サーバ１１４は、セキュリティ脅威１５２を取り除くか、コンピューティングシステム１５２がセキュリティ脅威を取り除くようにコンピューティングシステム１５２と対話するか、またはコンピューティングシステム１５２からセキュリティ脅威を取り除くサードパーティと対話し得る。別の例では、セキュリティ脅威が、複雑であり、および／または複数のコンピュータに感染した場合、脅威検出サーバ１１４は、コンピューティングシステム１５２のフォレンジック調査を開始し得る。
【００３８】
［0041］  セキュリティ脅威インテリジェンスシステム１１０は、ＩＯＣ１４２の性能を測定するＩＯＣ性能サーバ１１６を含む。たとえば、ＩＯＣ性能サーバ１１６は、各ＩＯＣ１４２について、ＩＯＣ１４２が、危殆化されたコンピューティングシステムを検出する際にどのくらいうまく機能したかを示すＩＯＣ１４２についての性能スコアを決定し得る。ＩＯＣ１４２についての性能スコアは、ＩＯＣ１４２によって指定された１つまたは複数の特性が、コンピューティングシステム１５２から受信されたテレメトリデータ１５４（または他のイベントデータ）中で検出された回数に基づき得る。たとえば、ＩＯＣについての性能スコアは、ＩＯＣ１４２によって指定された１つまたは複数の特性が、コンピューティングシステム１５２から受信されたテレメトリデータ１５４（または他のイベントデータ）中で検出された回数の増加とともに増加し得る。（１つまたは複数の）特性がテレメトリデータ１５４中で検出された回数は、ＩＯＣの関連性と、ＩＯＣ１４２のセキュリティ脅威の蔓延度とを示す。
【００３９】
［0042］  いくつかの実装形態では、ＩＯＣ１４２の性能スコアは、ＩＯＣ１４２によって指定された（１つまたは複数の）特性の真陽性検出の回数、および／またはＩＯＣによって指定された（１つまたは複数の）特性の偽陽性検出の回数に基づく。たとえば、ＩＯＣ１４２についての性能スコアは、偽陽性検出の回数と偽陽性検出の回数との間の差に等しいか、またはそれに比例し得る。ＩＯＣ性能サーバ１１６は、ファイル、ＩＰアドレス、ドメイン、および／または他の検出された特性を、知られているクリーンなファイル、ＩＰアドレス、ドメイン、および／または他の特性のホワイトリストと比較することによって、ＩＯＣの検出が真陽性であるのか偽陽性であるのかを決定することができる。検出された特性がホワイトリスト上にある場合、ＩＯＣ性能サーバ１１６は、検出が偽陽性であると決定し得る。別の例では、人間の評価者が、疑わしい脅威の手作業による調査を実施し、検出された特性が悪意のあるものであるかどうかを決定することによって、検出が真陽性であるのか偽陽性であるのかを決定することができる。特性が悪意のあるものであると人間の評価者が決定した場合、人間の評価者は、検出が真陽性検出であると決定し得る。
【００４０】
［0043］  ＩＯＣ１４２についての性能スコアは、ＩＯＣによって指定された（１つまたは複数の）特性が、コンピューティングシステム１５２についてのテレメトリデータ１５４中に存在するかどうかを決定するためのデータ処理探索コストに基づき得る。たとえば、より多くのデータ処理能力またはより多くのコンピューティングリソースを消費するＩＯＣ１４２は、より少ないデータ処理能力またはより少数のコンピューティングリソースを消費するＩＯＣよりも低いスコアを有し得る。
【００４１】
［0044］  いくつかの実装形態では、ＩＯＣ１４２についての性能スコアは、ＩＯＣ１４２についてのユーザフィードバックに基づく。たとえば、ユーザは、ＩＯＣ１４２に基づいて、それらのコンピューティングシステム中のセキュリティ脅威の検出（および／または非検出）を指定するデータを受信し得る。ユーザは、セキュリティ脅威が実際に存在するかどうかを決定し、次いで、ＩＯＣがそれらのコンピューティングシステム中のセキュリティ脅威を検出する際にどのくらいうまく機能したかに関するフィードバックを提供するために、それらのコンピューティングシステムを調査することができる。ＩＯＣ性能サーバ１１６は、ユーザフィードバックに基づいて、ＩＯＣについての性能スコアを更新することができる。
【００４２】
［0045］  いくつかの実装形態では、ＩＯＣ１４２についての性能スコアは、単一の顧客環境内でのそのインジケータの存在または不在にさえ基づき得る。それらは顧客ベースにわたって大量には見られないが、それらの検出は極めて有益であることを意味するいくつかの攻撃がターゲットにされる。したがって、国が支援している攻撃者に関係すると標示されたＩＯＣ１４２は、顧客ベース内でほんの数回見られるだけでも、高い性能スコアに値する。
【００４３】
［0046］  いくつかの実装形態では、ＩＯＣ１４２についての性能スコアは、インジケータのフレッシュネスに基づき得る。たとえば、ＩＯＣ１４２のフレッシュネスは、脅威が最初に放たれた後にどのくらい速やかに、ＩＯＣ１４２がその存在を検出することが可能であったかを示し得る。よりフレッシュなＩＯＣは、脅威を、それらが損害を与えることができる前に、早くから阻止する可能性を有し、したがって、より古い脅威をカバーするＩＯＣよりも有用である。
【００４４】
［0047］  ＩＯＣ１４２についての性能スコアは、上記で説明されたスコアリング技法のうちの２つまたはそれ以上の組合せに基づき得る。さらに、ＩＯＣ１４２または他のセキュリティインテリジェンスデータの性能または品質を査定するための他の適切な技法が、ＩＯＣ１４２をスコアリングするために使用され得る。ＩＯＣ性能サーバ１１６は、各ＩＯＣ１４２についての性能スコアをＩＯＣ性能データベース１２２に記憶することができる。
【００４５】
［0048］  いくつかの実装形態では、ＩＯＣ性能サーバ１１６は、ＩＯＣ１４２についての性能スコアに基づいて、危殆化されたコンピューティングシステムを検出するためにＩＯＣ１４２を使用すべきかどうかを決定する。たとえば、ＩＯＣ性能サーバ１１６は、危殆化されたコンピューティングシステムを検出する際に脅威検出サーバ１１４によって使用されるのに適格であるＩＯＣ１４２のセットを識別し得る。ＩＯＣ性能サーバ１１６は、適格なＩＯＣのセット中に含めるために、性能スコアしきい値を満たす（たとえば、超える）性能スコアを有するＩＯＣ１４２を識別し得る。別の例では、ＩＯＣ性能サーバ１１６は、適格なＩＯＣのセット中に含めるために、最も高い性能スコアを有する指定された数のＩＯＣ１４２を識別し得る。
【００４６】
［0049］  ＩＯＣ性能サーバ１１６は、ＩＯＣストレージデバイス１２０から、性能スコアしきい値を満たさない性能スコアを有するＩＯＣ１４２を削除し得る。別の例では、ＩＯＣ性能サーバ１１６は、性能スコアしきい値を満たさない性能スコアを有するＩＯＣを非アクティブにし得る。
【００４７】
［0050］  いくつかの実装形態では、ユーザ１５０は、ＩＯＣ１４２を使用してそれのテレメトリデータを評価してもらうために、セキュリティ脅威インテリジェンスシステム１１０を所有および／または運営するセキュリティインテリジェンスエンティティに料金を支払い得る。セキュリティインテリジェンスエンティティは、セキュリティ脅威インテリジェンスシステム１１０を使用して提供される脅威検出サービスへの異なるタイプの申し込みを提供し得る。１つのタイプの申し込みは、制約なしに、セキュリティ脅威インテリジェンスシステム１１０によって使用されているすべてのＩＯＣ１４２へのアクセスを可能にし得る。このタイプの申し込みでは、ユーザ１５０は、サービスについて一律の量を提供するか、またはＩＯＣ１４２を使用してユーザのテレメトリデータ中で検出されたセキュリティ脅威の数に基づく量を提供し得る。ＩＯＣプロバイダは、たとえば、それらのＩＯＣの総数の何割が申込者のコンピューティングシステム中で見つけられたかに基づいて、ユーザの申し込み量のある割合を受け取り得る。
【００４８】
［0051］  別のタイプの申し込みは、ユーザ１５０が、いくつかのＩＯＣ１４２に、またはいくつかのＩＯＣプロバイダのＩＯＣ１４２に申し込むことを可能にし得る。たとえば、ユーザは、それのテレメトリデータ１５４が、特定のタイプのＩＯＣ１４２によって示されたセキュリティ脅威について評価されることを希望するのみであり得る。この例では、ユーザ１５０は、ユーザ１５０がそれに申し込んだ各ＩＯＣ１４２またはＩＯＣプロバイダ１４０に関連するコストに基づいて、料金を支払い得る。
【００４９】
［0052］  別のタイプの申し込みは、ユーザ１５０が予算を指定することを可能にし、ユーザのテレメトリデータを評価する際に使用するためのＩＯＣ１４２を脅威検出サーバ１１４に選択させ得る。この例では、脅威検出サーバ１１４は、ユーザの予算、各ＩＯＣ１４２に関連するコスト、各ＩＯＣ１４２についての性能スコア、および／またはユーザ１５０に最も関連するセキュリティ脅威のタイプに基づいて、ユーザ１５０について１つまたは複数のＩＯＣを選択し得る。
【００５０】
［0053］  別のタイプの申し込みは、ユーザ１５０が、検出されたセキュリティ脅威に基づいて支払うことを可能にし得る。たとえば、脅威検出サーバ１１４が、ＩＯＣ１４２を使用してユーザのテレメトリデータ１５４中のセキュリティ脅威を識別したとき、脅威検出サーバ１１４は、セキュリティ脅威が識別されたことをユーザ１５０に通知し、識別されたセキュリティ脅威をユーザ１５０に明らかにするためのコストを提供し得る。コストは、セキュリティ脅威を検出するために使用されたＩＯＣ１４２に関連するコストに基づき得る。ユーザ１５０がコストを支払うことに同意した場合、脅威インテリジェンスサーバ１１４は、セキュリティ脅威をユーザ１５０に明らかにすることができる。さらに、脅威インテリジェンスサーバ１１４は、たとえば、ユーザ１５０によって同意された場合、セキュリティ脅威を緩和するかまたは取り除くための行為を取り得る。別の例では、ユーザ１５０は、ユーザのコンピューティングシステム１５２上で識別されたセキュリティ脅威の各事例ごとに量を値付けし得る。脅威検出サーバ１１４は、ユーザのテレメトリデータ１５４を評価するためにいずれのＩＯＣを使用すべきかを決定するために、量を使用し得る。
【００５１】
［0054］  いくつかの実装形態では、ＩＯＣプロバイダ１４０は、高い性能の、信頼できる、関連するＩＯＣ１４２をセキュリティ脅威インテリジェンスシステム１１０に提供することを奨励される。たとえば、セキュリティ脅威インテリジェンスシステム１１０は、最も高い性能スコアを有するＩＯＣ１４２の「リーダーボード」を公開し得る。もちろん、匿名のままであることを希望するＩＯＣプロバイダ１４０は、それらの識別情報の公開をやめることができる。
【００５２】
［0055］  別の例では、セキュリティインテリジェンスエンティティは、たとえば、金銭、報酬、脅威監視サービスに対するディスカウント、または他のタイプの補償をもってＩＯＣプロバイダ１４０に補償し得る。各ＩＯＣ１４２についての補償の量は、ＩＯＣ１４２の性能に基づき得る。たとえば、ＩＯＣ１４２についての補償の量は、ＩＯＣ１４２についての性能スコアに比例し得る。特定の例では、ＩＯＣ１４２についての性能スコアが、ＩＯＣ１４２によって指定された１つまたは複数の特性がコンピューティングシステム１５２のテレメトリデータ中で検出された回数に基づく場合、補償の量は、ＩＯＣ１４２によって指定された１つまたは複数の特性がコンピューティングシステム１５２のテレメトリデータ中で検出された回数に比例し得る。
【００５３】
［0056］  ユーザ１５０が、いくつかのＩＯＣ１４２またはＩＯＣプロバイダ１４０に申し込むことができる実装形態では、ＩＯＣプロバイダ１４０は、ＩＯＣプロバイダ１４０およびそれのＩＯＣ１４２に申し込んだユーザの数に基づいて、ある量を補償され得る。セキュリティインテリジェンスエンティティは、たとえば、周期的に、ＩＯＣプロバイダ１４０に補償のＩＯＣ量１４４を提供することができる。
【００５４】
［0057］  ＩＯＣ１４２は、実際のセキュリティ脅威および攻撃の特性を指定することができるので、２つ以上のＩＯＣプロバイダ１４０が、同じまたは同様のＩＯＣ１４２を提供し得る。そのような状況では、脅威検出サーバ１１４は、いずれのＩＯＣ１４２を使用すべきかを選択することができる。たとえば、脅威検出サーバ１１４は、各ＩＯＣ１４２に関連するコストに基づいて、いずれかのＩＯＣ１４２を選択し得る。この例では、ＩＯＣプロバイダ１４０は、それらのＩＯＣについて、ユーザのテレメトリデータ１５４中のセキュリティ脅威の存在を検出するためにＩＯＣを使用するためのコストを提供し得る。別の例では、所与のＩＯＣ１４２を提供するための最も早いプロバイダが優先する。脅威検出サーバ１１４は、コスト、性能、および／または他の適切なデータに基づいて、ＩＯＣを選択し得る。
【００５５】
［0058］  図２は、ＩＯＣの性能を査定し、ユーザのテレメトリデータがそれについて監視されるＩＯＣのセットから低い性能のＩＯＣを削除するための例示的なプロセス２００のフローチャートを示す。プロセス２００の動作は、たとえば、図１のセキュリティ脅威インテリジェンスシステム１１０など、１つまたは複数のデータ処理装置を含むシステムによって実装され得る。プロセス２００はまた、コンピュータ記憶媒体に記憶された命令によって実装され得、ここで、データ処理装置を含むシステムによる命令の実行は、データ処理装置に、プロセス２００の動作を実施させる。
【００５６】
［0059］  脅威インテリジェンスシステム１１０は、複数のセキュリティデータプロバイダからＩＯＣを受信する（２０２）。セキュリティデータプロバイダは、研究者、インシデント応答者、情報技術専門家、アマチュア、またはセキュリティ脅威の知識を有する他のユーザであり得る。上記で説明されたように、ＩＯＣは、セキュリティ脅威の１つまたは複数の特性を指定することができる。たとえば、ＩＯＣは、コンピュータによって処理されたとき、コンピュータに、ＩＯＣによって指定された１つまたは複数の特性の存在を検出させるデータを含むことができる。
【００５７】
［0060］  セキュリティデータプロバイダは、脅威インテリジェンスシステム１１０によって提供されたポータルまたはユーザインターフェースを通してＩＯＣを定義および／またはアップロードすることができる。セキュリティデータプロバイダはまた、ＩＯＣによって示されたセキュリティ脅威のタイプおよび／またはＩＯＣの重大度を識別または選択することができる。いくつかの実装形態では、脅威インテリジェンスシステム１１０は、セキュリティデータプロバイダが、脅威インテリジェンスシステム１１０のユーザのコンピューティングシステム上でのセキュリティ脅威の真陽性検出について受け取り得る量を提供し得る。この量は、たとえば、偽陽性検出の回数および／またはＩＯＣについての性能スコアに基づいて調整され得る。たとえば、量は、真陽性検出の回数と偽陽性検出との間の差に基づき得る。または、たとえば、ＩＯＣについてのすべての補償が、しきい値数を超えるユーザに影響を及ぼす偽陽性を理由に取り消され得る。
【００５８】
［0061］  脅威インテリジェンスシステム１１０は、ユーザのコンピューティングシステムについてのテレメトリデータを受信する（２０４）。たとえば、脅威インテリジェンスシステム１１０に、それらのコンピューティングシステムを危殆化について監視して欲しいユーザは、それらのコンピューティングシステムが、脅威インテリジェンスシステム１１０にテレメトリデータを提供することを可能にし得る。ユーザのコンピューティングシステムについてのテレメトリデータは、コンピューティングシステムにおいて発生したイベントを記述するイベントデータを含むことができる。いくつかの実装形態では、テレメトリデータは、ストリームまたはフィードとして受信され得る。
【００５９】
［0062］  脅威インテリジェンスシステム１１０は、ユーザのテレメトリデータがそれについて監視されているＩＯＣのセットを識別する（２０６）。たとえば、脅威インテリジェンスシステム１１０は、危殆化されたコンピューティングシステムを識別するのに効果的であると決定されたＩＯＣのセットを使用してユーザのコンピューティングシステムのテレメトリデータを監視するのみであり得る。ＩＯＣのセットは、危殆化されたコンピューティングシステムを検出する際に使用されるのに適格であるＩＯＣを含むことができる。たとえば、ＩＯＣのセットは、少なくともしきい値性能スコアを有するＩＯＣのみを含み得る。少なくともしきい値性能スコアを有するもののみにＩＯＣを限定することによって、偽陽性の回数は低減され得る。さらに、ＩＯＣを使用してコンピューティングシステムのテレメトリデータを監視するために使用される脅威インテリジェンスシステム１１０のコンピューティングリソースの性能は、少なくともしきい値性能スコアを有するもののみに監視されるＩＯＣを限定することによって改善され得る。別の例では、ＩＯＣのセットは、ホワイトリストによって指定されたセキュリティデータプロバイダによって提供されたＩＯＣのみを含み得る。
【００６０】
［0063］  脅威インテリジェンスシステム１１０は、ＩＯＣのセット中の各ＩＯＣについての性能スコアを決定する（２０８）。ＩＯＣについての性能スコアは、ＩＯＣが、危殆化されたコンピューティングシステムを検出する際にどのくらいうまく機能したかを示すことができる。上記で説明されたように、ＩＯＣについての性能スコアは、ＩＯＣによって指定された１つまたは複数の特性が、コンピューティングシステムから受信されたテレメトリデータ（または他のイベントデータ）中で検出された回数、ＩＯＣによって指定された（１つまたは複数の）特性の真陽性検出の回数、ＩＯＣによって指定された（１つまたは複数の）特性の偽陽性検出の回数、ＩＯＣによって指定された（１つまたは複数の）特性が、コンピューティングシステムについてのテレメトリデータ中に存在するかどうかを決定するためのデータ処理探索コスト、ＩＯＣについてのユーザフィードバック、ＩＯＣが重要なコンピューティングシステム内で見つけられたかどうか、ＩＯＣが組織的な犯罪者または国が支援している攻撃者に関係する（また、少なくとも１つのシステム中で検出された）かどうか、および／または他の適切な基準に基づき得る。
【００６１】
［0064］  脅威インテリジェンスシステム１１０は、少なくとも１つのＩＯＣについての性能スコアに基づいて、少なくとも１つのＩＯＣをＩＯＣのセットから随意に削除する（２１０）。たとえば、脅威インテリジェンスシステム１１０は、性能スコアしきい値を満たさない性能スコアを有する各ＩＯＣをＩＯＣのセットから削除し得る。別の例では、脅威インテリジェンスシステム１１０は、最も低い性能スコアを有するＩＯＣをＩＯＣのセットから削除し得る。この例では、脅威インテリジェンスシステム１１０は、最も低い性能スコアを有するＩＯＣのうちの指定された割合を削除し得る。低い性能のＩＯＣを削除することによって、脅威インテリジェンスシステム１１０は、コンピューティングシステム中にあまり存在しないか、または偽陽性の大部分を生成するＩＯＣについて走査して時間を浪費することなしに、コンピューティングシステムを危殆化したセキュリティ脅威をより迅速に識別することができる。
【００６２】
［0065］  脅威インテリジェンスシステム１１０は、ユーザのコンピューティングシステムからテレメトリデータを受信する（２１２）。テレメトリデータは、コンピューティングシステムにおいて検出されたイベントを記述するイベントデータを含むことができる。たとえば、テレメトリデータは、他のデバイスへのネットワーク接続のログ、コンピューティングシステムにおいて記憶または修正されたファイル、ファイルの特性、インメモリシグネチャ、コンピューティングシステムの挙動特性、および／またはコンピューティングシステムにおいて発生したイベントを記述する他の適切なデータを含むことができる。
【００６３】
［0066］  脅威インテリジェンスシステム１１０は、所与のユーザについてのテレメトリデータが、所与のＩＯＣによって指定された１つまたは複数の特性を含むと決定する（２１４）。たとえば、脅威インテリジェンスシステム１１０は、ＩＯＣのセット中のＩＯＣを使用して各ユーザについてのテレメトリデータを監視し得る。監視することの一部として、脅威インテリジェンスシステム１１０は、ＩＯＣ中の各ＩＯＣによって指定された（１つまたは複数の）特性を、テレメトリデータ中に含まれるコンピューティングシステムの特性と比較し得る。脅威インテリジェンスシステム１１０はまた、各ユーザについてのテレメトリデータが、ユーザのコンピューティングシステムが危殆化されたことを示すかどうかを決定するために、テレメトリデータにＩＯＣのルールのセットを適用し得る。所与のユーザのコンピューティングシステムが、所与のＩＯＣによって指定された各特性を含む場合、脅威インテリジェンスシステム１１０は、所与のユーザのコンピューティングシステムが危殆化されたと決定し得る。
【００６４】
［0067］  図３は、コンピューティングシステムが危殆化されたと決定したことに応答して、実施すべき行為を識別し、行為を実施するための例示的なプロセス３００のフローチャートである。プロセス３００の動作は、たとえば、図１のセキュリティ脅威インテリジェンスシステム１１０など、１つまたは複数のデータ処理装置を含むシステムによって実装され得る。プロセス３００はまた、コンピュータ記憶媒体に記憶された命令によって実装され得、ここで、データ処理装置を含むシステムによる命令の実行は、データ処理装置に、プロセス３００の動作を実施させる。
【００６５】
［0068］  脅威インテリジェンスシステム１１０は、所与のユーザについてのＩＯＣを識別する（３０２）。たとえば、所与のユーザは、利用可能なＩＯＣのセットの適切なサブセット、またはＩＯＣプロバイダの一部のみによって提供されたＩＯＣに申し込むのみであり得る。適切なサブセットは、ＩＯＣのセット中のＩＯＣの一部を含むサブセットである。別の例では、脅威インテリジェンスシステム１１０は、所与のユーザによって指定された予算、各ＩＯＣについてのコスト、および／または各ＩＯＣについての性能スコアに基づいて、所与のユーザについて利用可能なＩＯＣのセットの適切なサブセットを識別し得る。
【００６６】
［0069］  ＩＯＣプロバイダがＩＯＣを提供するとき、ＩＯＣプロバイダはまた、ユーザが、ＩＯＣを使用してそれらのテレメトリデータを評価してもらうためのコスト、またはＩＯＣプロバイダがＩＯＣの各使用またはＩＯＣを使用したセキュリティ脅威の検出について脅威インテリジェンスシステム１１０から受け取りたい量を指定し得る。たとえば、ＩＯＣプロバイダは、ＩＯＣを使用するセキュリティ脅威の各検出について、ＩＯＣプロバイダがある金銭的量を受け取りたいことを指定し得る。ＩＯＣについての量がユーザの予算を超えるか、またはユーザの予算の大部分（たとえば、少なくともしきい値割合）を使用する場合、システムは、ユーザについてそのＩＯＣを選択しないことがある。
【００６７】
［0070］  脅威インテリジェンスシステム１１０は、識別されたＩＯＣを使用して、所与のユーザのコンピューティングシステムが危殆化されたと決定する（３０４）。たとえば、脅威インテリジェンスシステム１１０は、各識別されたＩＯＣによって指定された（１つまたは複数の）セキュリティ脅威特性を識別しようとする試みにおいて、コンピューティングシステムから受信されたテレメトリデータを走査し得る。所与のＩＯＣによって指定された各特性がテレメトリデータ中で検出された場合、脅威インテリジェンスシステム１１０は、コンピューティングシステムが、所与のＩＯＣによって指定された（１つまたは複数の）特性によって示されたセキュリティ脅威によって危殆化されたと決定し得る。
【００６８】
［0071］  脅威インテリジェンスシステム１１０は、周期的に、たとえば、１日に１回または１時間に１回テレメトリデータを走査し得る。脅威インテリジェンスシステム１１０はまた、新しいテレメトリデータが受信されたとき、テレメトリデータを走査し得る。たとえば、テレメトリデータは、コンピューティングシステムからのストリームまたはフィード中で送られ得る。脅威インテリジェンスシステム１１０は、ストリームまたはフィードを、それが受信されたとき、識別されたＩＯＣを使用して走査し得る。
【００６９】
［0072］  脅威インテリジェンスシステム１１０は、コンピューティングシステムが危殆化されたと決定したことに応答して、実施すべき行為を選択する（３０６）。たとえば、脅威インテリジェンスシステム１１０は、危殆化および／またはセキュリティ脅威の重大度を検出するために使用されるＩＯＣによって指定されたセキュリティ脅威のタイプに基づいて、可能な行為のセットから行為を選択し得る。たとえば、行為のセットは、自動的にコンピューティングシステムからセキュリティ脅威を取り除くこと、コンピューティングシステムのフォレンジック調査を開始すること、または所与のユーザに通知する警報を生成することを含み得る。
【００７０】
［0073］  脅威インテリジェンスシステム１１０は、選択された行為を実施するか、または選択された行為が実施されることを引き起こす（３０８）。たとえば、ユーザがコンピューティングシステムへのシステムアクセスを与えた場合、脅威インテリジェンスシステム１１０は、それが選択された行為である場合、自動的にセキュリティ脅威を取り除き得る。脅威インテリジェンスシステム１１０はまた、行為が、たとえば、危殆化されたコンピューティングシステムまたはサードパーティによって実施されることを引き起こし得る。
【００７１】
［0074］  図４は、危殆化のインジケータプロバイダに補償するための例示的なプロセス４００のフローチャートである。プロセス４００の動作は、たとえば、図１のセキュリティ脅威インテリジェンスシステム１１０など、１つまたは複数のデータ処理装置を含むシステムによって実装され得る。プロセス４００はまた、コンピュータ記憶媒体に記憶された命令によって実装され得、ここで、データ処理装置を含むシステムによる命令の実行は、データ処理装置に、プロセス４００の動作を実施させる。
【００７２】
［0075］  脅威インテリジェンスシステム１１０は、セキュリティデータプロバイダの１つまたは複数のＩＯＣについての性能スコアを決定する（４０２）。上記で説明されたように、ＩＯＣについての性能スコアは、ＩＯＣによって指定された１つまたは複数の特性が、コンピューティングシステムから受信されたテレメトリデータ（または他のイベントデータ）中で検出された回数、ＩＯＣによって指定された（１つまたは複数の）特性の真陽性検出の回数、ＩＯＣによって指定された（１つまたは複数の）特性の偽陽性検出の回数、ＩＯＣによって指定された（１つまたは複数の）特性が、コンピューティングシステムについてのテレメトリデータ中に存在するかどうかを決定するためのデータ処理探索コスト、ＩＯＣについてのユーザフィードバック、および／または他の適切な基準に基づき得る。
【００７３】
［0076］  脅威インテリジェンスシステム１１０は、（１つまたは複数の）性能スコアに基づいて、セキュリティデータプロバイダに補償すべき量を決定する（４０４）。たとえば、各ＩＯＣについての量は、ＩＯＣについての性能スコアに正比例し得る。セキュリティデータプロバイダが複数のＩＯＣを提供した場合、量は各ＩＯＣについての量の和であり得る。
【００７４】
［0077］  ＩＯＣについての量はまた、ＩＯＣが、コンピューティングシステム上のセキュリティ脅威を成功裡に識別するために使用されたたびに、ある量に基づき得る。たとえば、脅威インテリジェンスシステム１１０がこの量を指定し得るか、またはセキュリティデータプロバイダがこの量を指定し得る。ＩＯＣについての量は、セキュリティ脅威の成功裡の識別の回数と、ＩＯＣについての性能スコアの組合せであり得る。
【００７５】
［0078］  脅威インテリジェンスシステム１１０は、セキュリティデータプロバイダに補償を提供する（４０６）。たとえば、脅威インテリジェンスシステム１１０は、決定された量をセキュリティデータプロバイダの口座に振り込み得る。
【００７６】
［0079］  説明された特徴は、デジタル電子回路で、またはコンピュータハードウェア、ファームウェア、ソフトウェアで、またはそれらの組合せで実装され得る。装置は、情報キャリアに、たとえば、プログラマブルプロセッサによる実行のための機械可読ストレージデバイスに有形に組み込まれたコンピュータプログラム製品で実装され得、方法ステップは、入力データに対して演算し、出力を生成することによって、説明された実装形態の機能を実施するための命令のプログラムを実行するプログラマブルプロセッサによって実施され得る。説明された特徴は、データストレージシステム、少なくとも１つの入力デバイス、および少なくとも１つの出力デバイスからデータおよび命令を受信し、それらにデータおよび命令を送信するように結合された少なくとも１つのプログラマブルプロセッサを含むプログラマブルシステム上で実行可能である１つまたは複数のコンピュータプログラムで有利に実装され得る。コンピュータプログラムは、あるアクティビティを実施するかまたはある結果をもたらすためにコンピュータにおいて直接または間接的に使用され得る命令のセットである。コンピュータプログラムは、コンパイルまたは解釈された言語を含む、任意の形態のプログラミング言語で書かれ得、それは、スタンドアロンプログラムとして、あるいはモジュール、構成要素、サブルーチン、またはコンピューティング環境において使用するのに好適な他のユニットとして含む、任意の形態で展開され得る。
【００７７】
［0080］  命令のプログラムの実行のための好適なプロセッサは、例として、汎用マイクロプロセッサと専用マイクロプロセッサの両方、および任意の種類のコンピュータの唯一のプロセッサまたは複数のプロセッサのうちの１つを含む。概して、プロセッサは、読取り専用メモリまたはランダムアクセスメモリあるいはその両方から命令およびデータを受信する。コンピュータの必須の要素は、命令を実行するためのプロセッサ、ならびに命令およびデータを記憶するための１つまたは複数のメモリである。概して、コンピュータはまた、データファイルを記憶するための１つまたは複数の大容量ストレージデバイスを含むか、またはそれらと通信するために動作可能に結合され、そのようなデバイスは、内蔵ハードディスクおよびリムーバブルディスクなどの磁気ディスク、光磁気ディスク、ならびに光ディスクを含む。コンピュータプログラム命令およびデータを有形に実施するのに好適なストレージデバイスは、例として、ＥＰＲＯＭ、ＥＥＰＲＯＭ、およびフラッシュメモリデバイスなどの半導体メモリデバイス、内蔵ハードディスクおよびリムーバブルディスクなどの磁気ディスク、光磁気ディスク、ならびにＣＤ−ＲＯＭおよびＤＶＤ−ＲＯＭディスクを含む、すべての形態の不揮発性メモリを含む。プロセッサおよびメモリは、ＡＳＩＣ（特定用途向け集積回路）によって補われるか、またはそれに組み込まれ得る。
【００７８】
［0081］  ユーザとの対話を提供するために、特徴は、ユーザに情報を表示するためのＣＲＴ（陰極線管）またはＬＣＤ（液晶ディスプレイ）モニタなどのディスプレイデバイスと、ユーザがそれによってコンピュータに入力を与えることができるキーボードおよびマウスまたはトラックボールなどのポインティングデバイスとを有するコンピュータ上で実装され得る。さらに、そのようなアクティビティは、タッチスクリーンフラットパネルディスプレイおよび他の適切な機構を介して実装され得る。
【００７９】
［0082］  特徴は、データサーバなどのバックエンド構成要素を含む、あるいはアプリケーションサーバまたはインターネットサーバなどのミドルウェア構成要素を含む、あるいはグラフィカルユーザインターフェースまたはインターネットブラウザを有するクライアントコンピュータなどのフロントエンド構成要素を含むコンピュータシステム、またはそれらの任意の組合せで実装され得る。システムの構成要素は、通信ネットワークなど、デジタルデータ通信の任意の形態または媒体によって接続され得る。通信ネットワークの例は、ローカルエリアネットワーク（「ＬＡＮ」）、ワイドエリアネットワーク（「ＷＡＮ」）、（アドホックまたは静的要素を有する）ピアツーピアネットワーク、グリッド算出インフラストラクチャ、およびインターネットを含む。
【００８０】
［0083］  コンピュータシステムは、クライアントおよびサーバを含むことができる。クライアントおよびサーバは、概して、互いにリモートであり、一般に、説明されたものなど、ネットワークを通して対話する。クライアントおよびサーバの関係は、それぞれのコンピュータ上で動作し、互いにクライアントサーバ関係を有するコンピュータプログラムによって生じる。
【００８１】
［0084］  本明細書は多くの特定の実装形態詳細を含んでいるが、これらは、発明のまたは請求され得るものの範囲に対する限定と解釈されるべきではなく、むしろ、特定の発明の特定の実装形態に固有の特徴の説明と解釈されるべきである。別個の実装形態に関して本明細書で説明されたいくつかの特徴はまた、単一の実装形態において組み合わせて実装され得る。逆に、単一の実装形態に関して説明された様々な特徴はまた、別々にまたは任意の好適な部分組合せで複数の実装形態において実装され得る。その上、特徴は、いくつかの組合せで作用するものとして上記で説明され、そのようなものとして最初は請求さえされ得るが、請求される組合せからの１つまたは複数の特徴は、いくつかの場合には、組合せから削除され得、請求される組合せは、部分組合せまたは部分組合せの変形形態を対象とし得る。
【００８２】
［0085］  同様に、動作は特定の順序で図面に示されているが、これは、望ましい結果を達成するために、そのような動作が、示されている特定の順序でまたは連続した順序で実施されること、またはすべての図示されている動作が実施されることを要求すると理解されるべきではない。いくつかの状況では、マルチタスキングおよび並列処理が有利であり得る。その上、上記で説明された実装形態における様々なシステム構成要素の分離は、すべての実装形態においてそのような分離を必要とすると理解されるべきではなく、説明されたプログラム構成要素およびシステムは、概して、単一のソフトウェア製品に一緒に組み込まれるか、または複数のソフトウェア製品にパッケージングされ得ることを理解されたい。したがって、主題の特定の実装形態が説明された。他の実装形態は、以下の特許請求の範囲内に入る。いくつかの場合には、特許請求の範囲で具陳される行為は、異なる順序で実施され、望ましい結果を依然として達成することができる。さらに、添付図に示されているプロセスは、望ましい結果を達成するために、示されている特定の順序または連続した順序を必ずしも必要とするとは限らない。いくつかの実装形態では、マルチタスキングおよび並列処理が有利であり得る。
【図１】
0006916300.tif 000002
【図２】
0006916300.tif 000003
【図３】
0006916300.tif 000004
【図４】
0006916300.tif 000005