JP6304833B2 - マルウェア定義パッケージサイズを縮小するためのテレメトリの使用 - Google Patents

マルウェア定義パッケージサイズを縮小するためのテレメトリの使用 Download PDF

Info

Publication number
JP6304833B2
JP6304833B2 JP2015542786A JP2015542786A JP6304833B2 JP 6304833 B2 JP6304833 B2 JP 6304833B2 JP 2015542786 A JP2015542786 A JP 2015542786A JP 2015542786 A JP2015542786 A JP 2015542786A JP 6304833 B2 JP6304833 B2 JP 6304833B2
Authority
JP
Japan
Prior art keywords
malware
client
definitions
definition
clients
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2015542786A
Other languages
English (en)
Other versions
JP2015535115A5 (ja
JP2015535115A (ja
Inventor
ペレイラ・シェーン
ナッケンバーグ・ケアリー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NortonLifeLock Inc
Original Assignee
Symantec Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Symantec Corp filed Critical Symantec Corp
Publication of JP2015535115A publication Critical patent/JP2015535115A/ja
Publication of JP2015535115A5 publication Critical patent/JP2015535115A5/ja
Application granted granted Critical
Publication of JP6304833B2 publication Critical patent/JP6304833B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • G06F21/564Static detection by virus signature recognition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Virology (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Description

本発明は、概して、コンピュータセキュリティに関し、特に、悪意のあるソフトウェアを検出するために使用される定義パッケージのサイズを縮小することに関する。
現代の電子機器のユーザは、多種多様の脅威に直面している。例えば、一見無害に見えるウェブサイトが、コンピュータウイルス、ワーム、トロイの木馬プログラム、スパイウェア、アドウェア、及びクライムウェア等の悪意のあるソフトウェア(マルウェア)を、ウェブサイトからダウンロードしたファイルに内密に隠匿する場合がある。マルウェアは、ログイン、パスワード、銀行口座識別子、及びクレジットカード番号等の重要情報を取り込んで保存できる。同様に、マルウェアは、攻撃者が感染している機器にアクセスしそれを制御することを可能にするか、又は感染している機器の誤動作を生じさせる、非表示のインターフェースを提供できる。
セキュリティソフトウェアは、マルウェアを検出し修復することによって電子機器を保護する。マルウェアを検出する1つの方法は、マルウェア定義の使用によるものである。マルウェア定義は、特定の種類の既知のマルウェアの特性を説明する。典型的に、マルウェア定義は、セキュリティソフトウェアのプロバイダによって生成され、電子機器に配置される。電子機器上のセキュリティソフトウェアは、配置されたマルウェア定義を使用してマルウェアに関して機器をスキャンする。
セキュリティソフトウェアプロバイダは、多くの異なるマルウェア脅威に対抗する保護を提供するために、多くのマルウェア定義を電子機器に配置しなければならない。多数の電子機器にマルウェア定義を配置することは、多量のコンピューティングリソースを消費する。例えば、マルウェア定義を配置することは、多量のネットワーク帯域幅を消費する。加えて、マルウェア定義は、電子機器上の多量のメモリを消費する。
上記及び他のニーズは、クライアントのコンピュータセキュリティを維持しつつ、クライアント側に記憶された数多くのウイルス対策定義を効果的に縮小させるための方法、コンピュータ可読記憶媒体、及びシステムによって満たされる。
一態様は、悪意のあるソフトウェア(マルウェア)定義をクライアントに提供するためのコンピュータ実装方法を提供する。本方法は、複数のクライアントからテレメトリデータを受信し、このテレメトリデータが、クライアント上で作成されたファイルを説明する。本方法は、クライアントの間で現在拡散しているマルウェアを識別するために、テレメトリデータを解析する。テレメトリデータの解析に応答して、本方法は、クラウドデータベースのマルウェア定義の集合をローカルマルウェア定義の集合及びクラウドマルウェア定義の集合にセグメント化する。ローカルマルウェア定義の集合は、クライアントの間で現在拡散しているとして識別されるマルウェアに関するマルウェア定義を含む。本方法は、ローカルマルウェア定義の集合をクライアントに提供し、そこでクライアントは、ローカルマルウェア定義を記憶し、ローカルマルウェア定義の集合を使用して、クライアント側でマルウェアを検出するように適合される。
別の態様は、マルウェア定義をクライアントに提供するための実行可能なコンピュータプログラム命令を記憶する非一時的コンピュータ可読記憶媒体を提供する。コンピュータ可読記憶媒体は、複数のクライアントからテレメトリデータを受信し、クライアントの間で現在拡散しているマルウェアを識別するためにテレメトリデータを解析するためのコンピュータプログラム命令を記憶する。テレメトリデータは、クライアント上で作成されたファイルを説明する。テレメトリデータの解析に応答して、クラウドデータベースのマルウェア定義の集合は、ローカルマルウェア定義の集合及びクラウドマルウェア定義の集合にセグメント化される。ローカルマルウェア定義の集合は、クライアントの間で現在拡散しているとして識別されるマルウェアに関するマルウェア定義を含む。コンピュータ可読記憶媒体は、ローカルマルウェア定義の集合をクライアントに提供するためのコンピュータプログラム命令を更に記憶し、そこでクライアントは、ローカルマルウェア定義を記憶し、ローカルマルウェア定義の集合を使用して、クライアント側でマルウェアを検出するように適合される。
更に別の態様は、マルウェア定義をクライアントに提供するためのコンピュータシステムを提供する。システムは、複数のクライアントからテレメトリデータを受信するためのサーバ通信モジュールを含み、そこでテレメトリデータは、クライアント上で作成されたファイルを説明する。システムは、クライアントの間で現在拡散しているマルウェアを識別するためにテレメトリデータを解析するための解析モジュールも含む。テレメトリデータの解析に応答して、システムのセグメント化モジュールは、クラウドデータベースのマルウェア定義の集合をローカルマルウェア定義の集合及びクラウドマルウェア定義の集合にセグメント化するように構成される。ローカルマルウェア定義の集合は、クライアントの間で現在拡散しているとして識別されるマルウェアに関するマルウェア定義を含む。サーバ通信モジュールは、ローカルマルウェア定義の集合をクライアントに提供するように構成され、そこでクライアントは、ローカルマルウェア定義を記憶し、ローカルマルウェア定義の集合を使用して、クライアント側でマルウェアを検出するように適合される。
本発明の概要及び以下の詳細な説明に説明される特徴及び利点は、包括的なものではない。その図面、明細書、及び特許請求の範囲を考慮すると、多くの更なる特徴及び利点が当業者に明らかとなる。
一実施形態に従う、悪意のあるソフトウェア(マルウェア)定義パッケージのサイズを縮小するためのコンピュータ環境のハイレベルブロック図である。 一実施形態においてクライアント及び/又はクラウドサーバとして機能するためのコンピュータのハイレベルブロック図である。 一実施形態に従う、クライアントのセキュリティモジュールの詳細図を示すハイレベルブロック図である。 一実施形態に従う、クラウドサーバの定義縮小モジュールの詳細図を示すハイレベルブロック図である。 一実施形態に従う、クラウドサーバによって実施される工程を示すフロー図である。 一実施形態に従う、クライアントによって実施される工程を示すフロー図である。
図は、例示の目的のためのみに本発明の実施形態を描写する。当業者であれば、本明細書に記載の原理から逸脱することなく、本明細書に図示される構造及び方法の代替の実施形態を用いることができることを以下の説明から容易に理解するであろう。
図1は、一実施形態に従う、悪意のあるソフトウェア(マルウェア)定義パッケージのサイズを縮小するためのコンピュータ環境100のハイレベルブロック図である。図1は、ネットワーク120によって接続される1つのクラウドサーバ130及び3つのクライアント110を示す。示される環境100は、クラウドサーバ130がコンピュータセキュリティをクライアント110の集合に提供する典型的なコンピュータ環境を表す。説明を簡素化し明確化するために、図1には3つのクライアント110及び1つのクラウドサーバ130のみが示される。コンピュータ環境100の実施形態は、ネットワーク120に接続される多くのクライアント110及びクラウドサーバ130を有し得る。複数のクラウドサーバ130は、クライアント110から来るテレメトリの包括的な表示を獲得するために、互いに通信し、クライアント110から受信されたデータ(例えば、テレメトリデータ報告)を関連付けてもよい。
クライアント110は、ソフトウェアアプリケーションを実行すること、ネットワーク120上のウェブサーバによってホストされるウェブサイトをブラウズすること、ファイルをダウンロードすること、並びにクラウドサーバ130及び/又はネットワーク上の他のエンティティと対話すること等の機能を実施するようにユーザによって使用される電子機器である。一実施形態では、クライアント110は、デスクトップ、ノート型、又はタブレットコンピュータ等のパーソナルコンピュータ(PC)である。他の実施形態では、クライアント110は、モバイル電話、個人用携帯情報端末、テレビセットトップボックス、又は他の電子機器である。
クライアント110は、マルウェア及び他の脅威からクライアントを保護するためにセキュリティモジュール112を実行する。実施形態に応じて、セキュリティモジュール112は、スタンドアローンアプリケーションであり得るか、又はクライアント110上で実行されるオペレーティングシステム若しくは他のソフトウェアに統合され得る。加えて、セキュリティモジュール112は、クライアントを含むネットワーク通信を監視するプロキシサーバ内のように、クライアント110から離れて位置し得る。
一実施形態では、セキュリティモジュール112は、クライアント110上に存在する任意のマルウェアを検出し修復する。この目的を達成するために、セキュリティモジュール112は、ローカルマルウェア定義の集合を維持する。ローカルマルウェア定義の集合は、クライアント110に又はそれに近接して記憶され、クラウドサーバ130から受信された新しい定義で更新される。例えば、ローカルマルウェア定義は、周期的に及び/又は非同期スケジュールでアップロードされてもよい。
セキュリティモジュール112は、クライアント110上で実行されるソフトウェアによって実施されるアクションも監視する。例えば、監視されるアクションとは、ファイルの実行、新規ファイルの作成、及びファイルのダウンロード等のファイルアクセスを含み得る。ファイルがアクセスされた場合、セキュリティモジュール112は、ローカルマルウェア定義の集合を用いてファイルを解析してファイルがマルウェアを含有するかどうかを判定する。ファイルが悪意のあるものであった場合、セキュリティモジュール112は、ファイルの実行を阻止しそれをクライアント110から削除する等によってファイルを修復する。
アクセスされたファイルがローカルマルウェア定義の集合の中に見出されなかった場合、実施形態のセキュリティモジュール112は、ファイルのためのクラウド定義ルックアップ要求をクラウドサーバ130に送信する。この要求は、ファイルが悪意のあるものかどうかを判定するためにクラウドサーバ130が使用することができる、ハッシュ等のファイルの説明を含む。セキュリティモジュール112は、クラウドサーバ130から要求への返信を受信し、返信がファイルが悪意のあるものであると示した場合ファイルを修復する。セキュリティモジュール112はまた、他の時に、クラウドサーバ130にクラウド定義ルックアップ要求を送信し得る。例えば、セキュリティモジュール112は、それが複数のクライアントファイルのためのクラウド定義ルックアップ要求をクラウドサーバ130に送信する間に、クライアント110上のファイルの周期的スキャンを実施し得る。
加えて、セキュリティモジュール112は、テレメトリデータ報告をクラウドサーバ130に送信する。テレメトリデータ報告は、セキュリティモジュール112によって観察及び/又は実施されるセキュリティ関連アクティビティを説明するテレメトリデータを含む。例えば、テレメトリ報告は、クライアント上で検出される新規に作成されたファイル等のファイルアクセスアクティビティを説明し得る。加えて、テレメトリ報告は、クライアント110上で検出されたマルウェアを説明し得る。
クラウドサーバ130は、ネットワーク120を介してクライアント110のセキュリティモジュール112と対話してクライアントにセキュリティを提供する。一実施形態では、クラウドサーバ130は、セキュリティモジュール112をクライアントに提供する同じセキュリティプロバイダによって動作される。クラウドサーバ130は、本明細書に説明される機能性を提供するためのモジュールを実行する1つ以上のコンピュータを含む。一実施形態では、クラウドサーバ130の機能は、クラウドコンピュータ環境によって提供される。本明細書で使用されるとき、「クラウドコンピューティング」は、動的にスケーラブルでしばしば仮想化されたリソースが、ネットワーク120上のサービスとして提供される、コンピューティングのスタイルを指す。本明細書のクラウドサーバ130に基づく異なる機能は、異なる物理的なサーバによって実施され得る。クライアント110に起因する機能は、クラウドコンピュータ環境によってもまた提供され得る。
クラウドサーバ130は、クラウド定義データベース140を含む。このデータベース140は、既知のマルウェアに関する定義を記憶する。一実施形態では、クラウド定義データベース140は、実質的に完全であり、セキュリティプロバイダに既知の全てのマルウェアに関する定義を記憶する。定義は、自動及び/又は手動技術を用いてセキュリティアナリストによって作成される。
クラウドサーバ130は、クライアント110のセキュリティモジュール112からクラウド定義ルックアップ要求を受信する。そのような要求を受信すると、クラウドサーバ130は、クラウド定義データベース140のマルウェア定義を使用して要求に説明されるファイルが悪意のあるものであるかどうかを判定する。クラウドサーバ130は、要求するセキュリティモジュール112に判定の結果を送信する。
更には、実施形態のクラウドサーバは、定義縮小モジュール150を含む。このモジュール150は、クラウド定義ルックアップ要求のテレメトリデータ及びクライアントセキュリティモジュール112から受信されたテレメトリデータ報告を使用して、クラウド定義データベース140に記憶されたマルウェア定義の部分集合を識別してクライアント110側にローカルに記憶する。よって、定義縮小モジュール150は、クラウドサーバ130のクラウド定義データベース140にのみ維持されるクラウド定義の集合及びクライアント110側にもまたローカルに記憶されるローカル定義の集合に、マルウェア定義をセグメント化する。定義縮小モジュール150は、クライアント110のセキュリティモジュール112に、ローカル集合におけるマルウェア定義を提供する。
一実施形態では、定義縮小モジュール150は、テレメトリデータ報告を使用して、クライアント集団の中で現在活動的に拡散しているマルウェアの種類を識別する。これらの種類のマルウェアに関するマルウェア定義は、クライアント110に送信されるローカル定義の集合にセグメント化される。定義のセグメント化は、新しいマルウェアが出現し古いマルウェアが消え失せるにつれて経時的に変化し得る。実施形態の定義縮小モジュール150は、古い定義が削除され新しい定義がローカル集合に追加されると、クライアント110にローカルマルウェア定義更新を送信する。
この方法で、クライアントセキュリティモジュール112は、ネットワーク120の接続が存在しないか又は不確実な場合であっても、ローカル定義を使用してクライアント110側で検出される可能性が最も高いマルウェアを迅速に検出しブロックできる。更には、ローカル定義集合のサイズは、クラウド定義集合よりもはるかに小さい傾向があり、したがって、セキュリティを提供するためにクライアント110によって送信及び維持される必要があるデータの量を縮小させる。
ネットワーク120は、クライアント110とクラウドサーバ130との間の通信を可能にし、インターネット並びにモバイル電話ネットワークを含むことができる。一実施形態では、ネットワーク120は、標準的な通信技術及び/又はプロトコルを使用する。よって、ネットワーク120は、イーサネット(登録商標)、802.11、ワールドワイド・インターオペラビリティ・フォー・マイクロウェーブ・アクセス(WiMAX)、3G、デジタル加入者線(DSL)、非同期転送モード(ATM)、InfiniBand、PCIエキスプレス・アドバンスド・スイッチング等の技術を用いてリンクを含むことができる。同様に、ネットワーク120上で使用されるネットワーキングプロトコルは、マルチプロトコル・ラベル・スイッチング(MPLS)、伝送制御プロトコル/インターネットプロトコル(TCP/IP)、ユーザ・データグラム・プロトコル(UDP)、ハイパーテキスト転送プロトコル(HTTP)、簡易メール転送プロトコル(SMTP)、ファイル転送プロトコル(FTP)等を含むことができる。ネットワーク120上で交換されるデータは、ハイパーテキストマークアップ言語(HTML)、拡張マークアップ言語(XML)等を含む技術及び/又はフォーマットを用いて表され得る。加えて、リンクの全て又はリンクのうちのいくつかは、セキュアソケットレイヤ(SSL)、トランスポート層セキュリティ(TLS)、仮想プライベートネットワーク(VPN)、インターネットプロトコルセキュリティ(IPsec)等の従来の暗号化技術を用いて暗号化され得る。別の実施形態では、エンティティは、上に説明されたものの代わりに又はそれらのものに加えて、カスタム及び/又は専用のデータ通信技術を使用できる。
図2は、一実施形態においてクライアント110及び/又はクラウドサーバ130として機能するためのコンピュータ200のハイレベルブロック図である。チップセット204に結合される少なくとも1つのプロセッサ202を示す。チップセット204には、メモリ206、記憶装置208、キーボード210、グラフィックスアダプタ212、ポインティングデバイス214、及びネットワークアダプタ216も結合される。グラフィックスアダプタ212には、ディスプレイ218が結合される。一実施形態では、チップセット204の機能が、メモリコントローラハブ220及び入出力コントローラハブ222によって与えられる。別の実施形態では、メモリ206が、チップセット204の代わりにプロセッサ202に直接結合される。
記憶装置208は、ハードドライブ、コンパクトディスク読出し専用メモリ(CD−ROM)、DVD、固体メモリデバイス等、任意の非一時的コンピュータ可読記憶媒体である。メモリ206は、プロセッサ202が使用する命令及びデータを保持する。ポインティングデバイス214は、マウス、トラックボール、又は他の種類のポインティングデバイスとすることができ、コンピュータシステム200内にデータを入力するためにキーボード210と一緒に使用する。グラフィックスアダプタ212は、ディスプレイ218上に画像及び他の情報を表示させる。ネットワークアダプタ216は、コンピュータシステム200をネットワーク120に結合させる。
当技術分野で知られているように、コンピュータ200は、図2に示すコンポーネントと異なるコンポーネント及び/又は他のコンポーネントを有することができる。加えて、コンピュータ200は、図示の特定のコンポーネントを欠いてもよい。一実施形態では、クラウドサーバ130として機能するコンピュータ200は、キーボード210、ポインティングデバイス214、グラフィックスアダプタ212、及び/又はディスプレイ218を欠く場合がある。更に、記憶装置208は、(ストレージエリアネットワーク(SAN)の中に組み入れられる等)ローカルとし、かつ/又はコンピュータ200から離れていてもよい。
当技術分野で知られているように、コンピュータ200は、本明細書に記載の機能を提供するためのコンピュータプログラムモジュールを実行するように適合される。本明細書で使用されるとき、「モジュール」という用語は、指定の機能性を提供するために利用されるコンピュータプログラムロジックを指す。したがって、モジュールは、ハードウェア、ファームウェア、及び/又はソフトウェアによって実装することができる。一実施形態では、プログラムモジュールを記憶装置208上に記憶し、メモリ206内にロードし、プロセッサ202によって実行する。
図3は、一実施形態に従う、クライアント110のセキュリティモジュール112の詳細図を示すハイレベルブロック図である。図3に示されるように、セキュリティモジュール112は、通信モジュール310、監視モジュール320、ローカルルックアップモジュール330、クラウドルックアップモジュール340、及び修復モジュール350を含む。セキュリティモジュール112はまた、ローカルマルウェア定義の集合を記憶するローカル定義データベース302を含む。当業者であれば、他の実施形態のセキュリティモジュール112が、本明細書に説明されるものとは異なる及び/又はそのもの以外のモジュールを有してもよく、機能性が異なる方法でモジュールの中で分散されてもよいことを理解するであろう。
通信モジュール310は、クラウド定義ルックアップ要求をクラウドサーバに送信すること、及びクラウドサーバから要求への返信を受信することによってクラウドサーバ130と通信する。一実施形態では、通信モジュール310は、クラウドルックアップモジュール330及び/又はセキュリティモジュール112内の他のモジュールからの命令に応答して要求を送信する。同様に、通信モジュール310は、クラウドルックアップモジュール340及び/又はセキュリティモジュール112内の他のモジュールへの要求への返信を提供する。通信モジュール310はまた、監視モジュール320及び/又はセキュリティモジュール112内の他のモジュールからの命令に応答して、テレメトリデータ報告をクラウドサーバ130に送信する。更には、実施形態の通信モジュール310は、クラウドサーバ130からローカルマルウェア定義更新を受信し、ローカル定義データベース302を適宜更新する。
監視モジュール320は、クライアント上で実施されるアクティビティのセキュリティ関連態様を監視する。一実施形態では、監視モジュール320は、リアルタイムにファイルシステム事象を監視する。この監視は、作成されているファイルのようなファイルアクセスを検出する。監視モジュール320は、マルウェア検出のために解析され得るように、ファイルの実行を一時的に中断してもよい。例えば、監視モジュール320は、新規ファイルの作成を検出すると、それがマルウェアの存在に関して検査され得るように、ファイルが実行されるのを一時的に阻止してもよい。監視モジュール320は、実行プロセスの挙動も監視して任意の不審な挙動を識別し得る。プロセスが不審に機能した場合、監視モジュール320は、対応するファイルがマルウェアに関して検査され得るように、プロセスの実行を中断してもよい。監視モジュール320は、ファイルがマルウェアを包含しないとその後分かった場合、ファイルの実行を再開してもよい。
加えて、実施形態の監視モジュール320は、監視されたアクティビティを説明するテレメトリデータを回収する。上述のように、テレメトリデータは、クライアント110上で検出されたマルウェア及び新規に作成されたファイルを説明し得る。検出されたマルウェアについては、テレメトリデータは、指定の種類の検出されたマルウェア及び/又はマルウェア検出の誘因となったマルウェア定義への言及を含み得る。新規に作成されたファイルについては、テレメトリデータは、クライアント110の記憶装置内のファイルの場所、ファイルがダウンロードされたユニバーサルリソースロケータ(URL)、ファイル内のインストーラ又は他の構成要素の識別、ファイル内の実行可能な構成要素内のストリング、ファイルによってクライアント上にインストールされた構成要素、ファイルによって行われたシステム設定及び構成変更、ファイルのハッシュ又は他の識別子、及びファイルと関連付けられるバージョン番号及びアプリケーション言語設定等の新規ファイルと関連付けられる更なる詳細もまた含み得る。加えて、テレメトリデータは、ファイルがいつアクセスされマルウェアがいつ検索されたかを示すタイムスタンプ及び他のタイミング情報を含み得る。テレメトリデータは、クライアント110を独自に識別するクライアント識別子も含み得る。
監視モジュール320は、通信モジュール310がクラウドサーバ130に送信するテレメトリデータ報告のテレメトリデータを含む。監視モジュール320は、異なる実施形態において何度もテレメトリデータ報告を提出できる。例えば、監視モジュール320は、周期的に(例えば、1時間毎)、指定の事象が起こるたびにか(例えば、新規ファイル又はマルウェアを検出すると)、又は閾値に達すること(例えば、100個の新規ファイルの作成が検出された後)に応答して、テレメトリデータ報告を提出できる。
ローカルルックアップモジュール330は、ローカル定義データベース302に記憶されたローカルマルウェア定義を使用して監視モジュール320によって検出されたファイルが悪意のあるものである(即ち、マルウェアを包含する)かどうかを判定する。一実施形態では、ローカルルックアップモジュール330は、マルウェアスキャナを使用してローカルマルウェア定義によって説明される任意のマルウェアに関して検出されたファイルをスキャンする。スキャンが、ファイルがマルウェアを包含すると示した場合、ローカルルックアップモジュール330は、検出がテレメトリデータ報告に含まれ得るように、マルウェア検出を監視モジュール320に通知する。加えて、実施形態のローカルルックアップモジュール330は、修復モジュール350と通信し、その後者のモジュールは、マルウェアを修復できる。
クラウドルックアップモジュール340は、クラウド定義ルックアップ要求をクラウドサーバ130に送信し、それに応答して返信を受信する。一実施形態では、クラウドルックアップモジュール340は、ローカルルックアップモジュール330によって悪意があると判定されない、監視モジュール320によって検出されたファイルを識別するクラウド定義ルックアップ要求をクラウドサーバ130に送信する。よって、監視モジュール320が新規ファイルを検出し、ローカルルックアップモジュール330がローカルマルウェア定義の集合を用いて新規ファイルをスキャンするがいずれのマルウェアも検出しなかった場合、次いで、クラウドルックアップモジュール340は、ファイルのためのクラウド定義ルックアップ要求をクラウドサーバ130に送信する。
クラウド定義ルックアップ要求は、様々な技術を用いてクラウドサーバ130に対してファイルを識別する。一実施形態では、クラウド定義ルックアップ要求は、ルックアップされているファイルのコピーを含む。別の実施形態では、クラウド定義ルックアップ要求は、ファイルのハッシュ、ファイルから抽出されるデータの一部等ファイルの簡潔な説明、及び/又はファイル内に包含されるデータの一部の説明を含む。クラウド定義ルックアップ要求はまた、ファイルに関するテレメトリデータ報告内に含まれる同じデータのうちのいくつか又は全部を含み得る。
クラウドサーバ130からの返信は、クラウドサーバ130によって維持されるクラウド定義を用いて判定されると、識別されたファイルがマルウェアを包含するかどうかを示す。返信が、ファイルがマルウェアを包含すると示した場合、クラウドルックアップモジュール340は、検出がテレメトリデータ報告に含まれ得るように、マルウェア検出を監視モジュール320に通知する。あるいは、クラウドサーバ130は、別個の報告が必要ないように、テレメトリデータ報告の一種としてクラウド定義ルックアップ要求を処理し得る。更には、ファイルがマルウェアを包含すると示すクラウドサーバ130からの返信は、検出されたマルウェアに関するマルウェア定義を含み得る。クラウドルックアップモジュール340は、ローカル定義データベース302にこの定義を記憶する。実施形態のローカルルックアップモジュール330はまた、修復モジュール350と通信し、したがってその後者のモジュールは、マルウェア定義を用いてマルウェアを修復できる。
クラウドサーバ130からの返信が、識別されたファイルがマルウェアを包含しないことを示した場合、クラウドルックアップモジュール340は、ファイルが悪意のあるものとして識別されなかったことを監視モジュール320に通知する。要求への返事が閾値時間量内にクラウドサーバ130から受信されなかった場合、クラウドルックアップモジュール340は、要求を直ちに再送信し得るか又は後で要求をスケジュールし得る。返事がなかった場合、クラウドルックアップモジュール340は、実施形態に応じて、要求内の識別されたファイルを悪意のあるもの又は悪意のないものとして処理し得る。
クラウドルックアップモジュール340はまた、監視モジュール320によって検出された任意のアクティビティから独立してクラウド定義ルックアップ要求を送信し得る。一実施形態では、クラウドルックアップモジュール340は、クライアント110上に記憶されるファイルのうちの全て、又は部分集合のためのクラウドルック要求を周期的に送信する。例えば、クラウドルックアップモジュール340は、クライアント110側に記憶されるファイルのためのクラウド定義ルックアップ要求を毎日、毎週、又は毎月提出できる。これらのクラウドルックアップ要求は、要求がクライアント110の通常動作を妨害しないように、バックグラウンドで管理され得る。これらの要求のうちの1つを通じてマルウェアが検出された場合、クラウドルックアップモジュール340は、修復モジュール350と通信してマルウェアを修復する。
修復モジュール350は、クライアント110上で検出されたマルウェアを修復する(例えば、削除する)。一実施形態では、修復モジュール350は、マルウェアがクライアント110上で検出されると、セキュリティモジュール112内の別のモジュールによって通知される。この通知は、マルウェアの種類も示す。修復モジュール350は、マルウェアに関するマルウェア定義又は別の場所に記憶された修復情報を使用してマルウェアを修復する。例えば、修復モジュール350は、ファイル内から悪意のあるコンテンツを削除、マルウェアを包含するファイルを消去、マルウェアを包含するファイルを検疫することによってそれが実行できないようにして、マルウェアによって影響されたクライアント110上のファイル及び構成設定を復元し得る、及び/又は他のアクションを実施し得る。修復モジュール350は、クライアント110のユーザに、マルウェア検出及びそれを修復する能力を知らせる警告も生成し得る。
図4は、一実施形態に従う、クラウドサーバ130の定義縮小モジュール150の詳細図を示すハイレベルブロック図である。図4に示されるように、定義縮小モジュール150は、サーバ通信モジュール410、応答モジュール420、解析モジュール430、及びセグメント化モジュール440を含む。当業者は、他の実施形態の定義縮小モジュール150が、本明細書に説明されるものとは異なる及び/又はそのもの以外のモジュールを有してもよく、機能性が異なる方法でモジュールの中で分散されてもよいことを理解する。
前に考察されたように、定義縮小モジュール150は、クラウド定義データベース140に記憶されるマルウェア定義を使用する。マルウェア定義は、既知のマルウェアの特性を説明する。一実施形態では、各マルウェア定義は、既知のマルウェアの指定の種類と関連付けられ、使用されて特定のファイルがその種類のマルウェアを含むかどうかを判定する、情報を含む。例えば、マルウェア定義は、特定のハッシュ機能をマルウェアを包含するファイルに適用することによって生成されるハッシュ値を含み得る。よって、ファイルは、ハッシュ機能をファイルに適用し、得られるハッシュ値がマルウェア定義の指定されるハッシュと一致するかどうかを判定することによってマルウェアに関して検査され得る。マルウェア定義はまた、マルウェア特有であるデータストリング(例えば、バイトストリング)及び/又は使用されて他のデータからマルウェアを区別できる他のデータを含み得る。
クラウド定義データベース140は、マルウェア定義と関連付けられる更なるデータを記憶し得る。例えば、クラウド定義データベース140は、クラウドサーバ130によって受信されるテレメトリデータ報告からのデータのうちのいくつか又は全てを記憶し得る。一実施形態では、クラウド定義データベース140は、テーブルフォーマットでマルウェア定義を記憶し、マルウェアの各種類のための行を有し、例えば、マルウェアを検出するためのハッシュ値又は他の情報、マルウェアがクライアント110上に最後に検出されたときを示すタイムスタンプ、マルウェアが検出されたクライアントの数、及びマルウェアに関する修復情報のための列を含む。
サーバ通信モジュール410は、クライアントからクラウド定義ルックアップ要求を受信すること、及びクライアント110への要求に応答して返信を送信することによって、クライアント110と通信する。サーバ通信モジュール410は、定義縮小モジュール150内の他のモジュールにルックアップ要求を送信する。同様に、サーバ通信モジュール410は、定義縮小モジュール150内の他のモジュールからルックアップ要求への返信を受信し、要求するクライアント110への返信を送信する。サーバ通信モジュール410は、クライアント110からテレメトリデータ報告も受信する。一実施形態では、サーバ通信モジュール410は、報告内の受信されたテレメトリデータ、及びクラウド定義ルックアップ要求内の受信されたテレメトリデータをクラウド定義データベース140に記憶する。サーバ通信モジュール410はまた、定義縮小モジュール150内の他のモジュールにテレメトリデータを送信し得る。加えて、サーバ通信モジュール410は、ローカルマルウェア定義更新をクライアント110に送信し得る。
応答モジュール420は、クラウド定義ルックアップ要求への返信を生成する。一実施形態では、応答モジュール420は、要求に言及されるファイルを識別することによってクラウド定義ルックアップ要求をプロセスし、識別されたファイルがクラウド定義データベース140の定義と一致するかどうかを判定する。よって、応答モジュール420は、クラウド定義ルックアップ要求の識別されたファイルの特性が、クラウド定義データベース140の定義によって説明される任意の既知のマルウェアの特性と一致するかどうかを判定する。一致が存在した場合、応答モジュール420は、返信を受信するクライアント110がマルウェアを修復できるように、ファイルをマルウェアとして識別し関連付けられるマルウェア定義を含む、クラウド定義ルックアップ要求への返信を生成する。応答モジュール420はまた、クラウド定義データベース140のテレメトリデータを更新してマルウェアがいつ検出されたかを示すタイムスタンプを含むことができる。一致が存在しなかった場合、応答モジュール420は、ファイルが任意の既知のマルウェアと一致しないことを示すクラウド定義ルックアップ要求への返信を生成する。
解析モジュール430は、現在無法に拡散している(即ち、クライアント110の中で拡散している)マルウェアの集合を識別するために、クラウド定義ルックアップ要求及びテレメトリデータ報告のクライアント110から受信されたテレメトリデータを解析する。クライアント110の中で現在拡散しているマルウェアは、マルウェアがそれが拡散するクライアント110に障害を与え得るため、最も脅威であることを表す。同時に、現在拡散しているマルウェアを検出することは、マルウェアの早期検出がその拡散を中止でき、いかなる障害も最小限に抑えられるため、最も優先度が高いことを表す。
活動的に拡散しているマルウェアを識別するために、解析モジュール430は、クライアント110から受信されたテレメトリデータを解析し得る。この目的を達成するために、一実施形態の解析モジュール430は、クラウド定義データベース140のテレメトリデータを毎日等周期的に調査する。解析モジュール430は、テレメトリデータを使用してどのマルウェアが所定の前の期間内にクライアント上に検出されたかを判定する。例えば、解析モジュール430は、テレメトリデータを使用してクライアント110上に先週、先月、過去6か月、昨年内にどんな種類のマルウェアが検出されたかを判定できる。解析モジュール430は、どのくらいの頻度で特定の種類のマルウェアが検出されたかも判定できる。解析モジュール430は、期間内に活動的に拡散するとクライアント110の閾値数よりも多く検出されるマルウェアを識別できる。
加えて、解析モジュール430は、他の様々な基準を使用して所与のマルウェアが活動的に拡散すると判断できるかどうかを判定できる。例えば、解析モジュール430は、マルウェアによって生じた障害の量に基づいてそのマルウェアが「活動的に拡散する」と判断される期間を調整できる。よって、比較的少ない障害を生じさせるマルウェアが、過去3か月以内に比較的多数のクライアント上で検出された場合、「活動的に」拡散すると判断され得る一方で、多大なる障害を生じさせるマルウェアは、過去12か月以内にわずか少数のクライアント110上で検出された場合、「活動的に」拡散すると判断され得る。
加えて、解析モジュール430は、関連付けられるマルウェアが活動的に拡散しているかどうかを判定するとき、マルウェア定義のサイズ(即ち、定義によって使われる記憶スペースの量)を判断することができる。概して、マルウェア定義が大きければ大きいほど、マルウェアが活動的であると判断するために解析モジュール430による、より多くの及び/又はより最近の関連付けられるマルウェアの検出が必要とされる。所与のマルウェアに関するマルウェア定義が比較的小さかった場合、解析モジュール430は、比較的少数の検出が存在した及び/又は比較的長時間前に検出が行われた場合であっても、マルウェアが活動的に拡散していると判断し得る。小さい定義のこの処理は、クライアント側のマルウェア定義のローカル集合内に定義を含むコストが比較的少額であるため、可能である。
セグメント化モジュール440は、解析モジュール430によって実施された解析に基づいて、クラウド定義データベース140のマルウェア定義をローカルマルウェア定義の集合及びクラウドマルウェア定義の集合にセグメント化する。セグメント化モジュール440は、ローカルマルウェア定義更新としてクライアントに送信するために、ローカルマルウェア定義の集合をサーバ通信モジュール410に提供する。ローカルマルウェア定義はまた、クラウド定義データベース140に記憶される。クラウドマルウェア定義の集合は、クラウド定義データベース140のみに記憶される。
一実施形態では、セグメント化モジュール440は、クライアント110の中で現在活動的に拡散しているマルウェアに関するマルウェア定義をローカルマルウェア定義の集合にセグメント化する。この目的を達成するために、セグメント化モジュール440は、解析モジュール430から、活動的に拡散しているマルウェアの集合のマルウェアの識別を獲得する。セグメント化モジュール440は、クラウド定義データベース140から、活動的に拡散しているマルウェアに関するマルウェア定義を獲得し、これらのマルウェア定義をローカルマルウェア定義更新のクライアント110に提供する。
セグメント化モジュール440は、毎日、毎週、又は毎月等の周期的に、ローカルマルウェア定義の集合を更新し得る。セグメント化モジュール440はまた、新しいマルウェア定義がクラウド定義データベース140に追加されるとき等、他の時にローカルマルウェア定義の集合を更新し得る。そのような更新中、セグメント化モジュール440は、対応するマルウェアがこれ以上活動的に拡散しないと解析モジュール430によって判断された場合、ローカルマルウェア定義の集合からマルウェア定義を削除してもよい。同様に、セグメント化モジュール440は、対応するマルウェアが更新の時点で活動的に拡散していると判断された場合、ローカルマルウェア定義の集合にマルウェア定義を追加してもよい。
図5は、一実施形態に従う、クラウドサーバ130によって実施される工程を示すフロー図である。他の実施形態は、異なる順序で示された工程を実施する、及び/又は異なる又は更なる工程を実施する。更に、工程のうちのいくつかは、クラウドサーバ130以外のエンティティによって実施されてもよい。
クラウドサーバ130は、クライアント110からテレメトリデータを受信する510。テレメトリデータは、クラウド定義ルックアップ要求及びテレメトリデータ報告に受信されたデータを含む。テレメトリデータは、クライアント110側で作成された新規ファイル、及びクライアント側で検出されたマルウェア等のファイルアクセスを説明し得る。テレメトリデータは、新規ファイルが検出されたときのタイムスタンプ、クライアント110側のファイルが記憶されたところ、及びファイルがどこからダウンロードされたか等の他のセキュリティ関連情報もまた含み得る。クラウドサーバ130は、多くの異なるクライアント110からテレメトリデータを受信することができる。
クラウドサーバ130は、クライアント110の中で現在拡散しているマルウェアを識別するために、テレメトリデータを解析する512。この解析に基づいて、クラウドサーバ130は、クラウド定義データベース140のマルウェアをローカルマルウェア定義の集合及びクラウドマルウェア定義の集合にセグメント化する514。一実施形態では、クラウドサーバ130は、現在拡散しているマルウェアに関するマルウェア定義をローカルマルウェア定義の集合にセグメント化する。ローカルマルウェア定義の集合は、クラウドマルウェア定義の集合の部分集合である。セグメント化の一部として514、クラウドサーバ130は、これ以上活動的に拡散しないマルウェアに関する定義を、ローカルマルウェア定義の集合から削除してもよい。クラウドサーバ130は、ローカルマルウェア定義更新としてローカルマルウェア定義の集合をクライアント110を提供する516。加えて、クラウドサーバ130は、要求における識別されたファイルがマルウェアを包含するかどうかの指標と共にクラウド定義ルックアップ要求に返信する518。
図6は、一実施形態に従う、クライアント110によって実施される工程を示すフロー図である。他の実施形態は、異なる順序で示された工程を実施する、及び/又は異なる又は更なる工程を実施する。更に、工程のうちのいくつかは、クライアント110以外のエンティティによって実施されてもよい。
クライアント110は、クライアント側で実施されるファイルアクセス等のアクティビティのセキュリティ関連態様を監視する610。クライアント110は、監視されたアクティビティを説明するテレメトリデータ報告をクラウドサーバ130に送信する610。クライアント110が作成されたファイルを検出したか又は別途アクセスされた場合、クライアントは、ローカル定義データベース302に記憶されたローカルマルウェア定義を使用してファイルが悪意のあるものであるかどうかを判定する。ローカルマルウェア定義が、ファイルが悪意のあるものであると示さなかった場合、クライアント110は、クラウド定義ルックアップ要求をクラウドサーバ130に送信し614、クラウド定義データベース140の検査がファイルを悪意があるとして識別したかどうかを示す返信をクラウドサーバから受信する。ファイルが悪意のあるものであった場合、クライアント110は、マルウェアを修復する。加えて、クライアント110は、クラウドサーバ130からローカルマルウェア定義更新を受信する618。クライアント110はまた、他の時にクラウド定義ルックアップ要求を実施してもよい。
上記の説明は、好適な実施形態の動作を示すために含まれ、本発明の範囲を限定することを意味しない。本発明の範囲は、以下の特許請求の範囲によってのみ限定される。上記の考察から、多くの変形形態が、本発明の趣旨及び範囲によってなおも包含されるであろうことが、当業者にとっては明らかである。

Claims (17)

  1. ローカルマルウェア定義をクライアントに提供するコンピュータ実装方法であって、
    コンピュータプロセッサで、複数のクライアントからデータを受信するステップであって、前記受信されたデータ、前記クライアント上で作成されたファイルを示す、受信するステップと、
    どのマルウェアが所定の前の期間内に前記クライアント上に検出されたかを判定するため、及び、前記複数のクライアントの間で現在拡散しているマルウェアを識別するために、前記コンピュータプロセッサによって、前記クライアント上で作成されたファイルを示す前記受信されたデータを解析するステップと
    前記コンピュータプロセッサによって、前記受信されたデータの前記解析に応答して、マルウェア定義の集合をローカルマルウェア定義の集合にセグメント化するステップであって、前記ローカルマルウェア定義の集合が、前記複数のクライアントの間で現在拡散しているとして識別されたマルウェアに関するマルウェア定義を含む、セグメント化するステップと、
    前記コンピュータプロセッサによって、前記ローカルマルウェア定義の集合を前記複数のクライアントに提供するステップと
    を含む、方法。
  2. 前記クライアント上で作成されたファイルを示すデータを受信するステップが、
    前記マルウェア定義の集合を使用して、前記受信されたデータによって示されるクライアント上で作成されたファイルがマルウェアかどうかを判定するステップと、
    記クライアントからのクラウド定義ルックアップ要求への返信であって、前記作成されたファイルが前記マルウェア定義の集合を使用して判定されたようにマルウェアかどうかを示す返信を送信するステップと、
    更に含む、請求項1に記載の方法。
  3. 前記作成されたファイルがマルウェアであると判定されることに応答して、対応するマルウェア定義を前記クライアントに提供するステップを更に含み、前記クライアントにより、前記マルウェア定義が使用されて、前記作成されたファイルからマルウェアが削除される、請求項2に記載の方法。
  4. 前記クライアント上で作成されたファイルを示す前記受信されたデータを解析するステップが、
    所定の期間内に前記複数のクライアントのうちの閾値数のクライアント上で検出されたマルウェアが、前記複数のクライアントの間で現在拡散していることを判定するステップ
    更に含む、請求項1に記載の方法。
  5. 前記クライアント上で作成されたファイルを示す前記受信されたデータの前記解析に応答して、前記マルウェア定義の集合を前記ローカルマルウェア定義の集合にセグメント化するステップが、
    クラウドマルウェア定義の集合を記憶するクラウド定義データベースを維持するステップと、
    前記受信されたデータの前記解析に応答して、前記クラウドマルウェア定義の部分集合を識別するステップと、
    前記複数のクライアントに、前記ローカルマルウェア定義の集合として前記識別された前記クラウドマルウェア定義の部分集合を提供するステップと、
    更に含む、請求項1に記載の方法。
  6. 前記マルウェア定義の集合をセグメント化するステップが、
    マルウェア定義に対応するマルウェアが前記複数のクライアントの間で現在拡散していないという判定に応答して、前記ローカルマルウェア定義の集合から当該マルウェア定義を削除するステップ
    を更に含む、請求項5に記載の方法。
  7. ローカルマルウェア定義をクライアントに提供するための実行可能なコンピュータプログラム命令を記憶するコンピュータ可読記憶媒体であって、前記コンピュータプログラム命令が、
    複数のクライアントからデータを受信するステップであって、前記受信されたデータ、前記クライアント上で作成されたファイルを示す、受信するステップと、
    どのマルウェアが所定の前の期間内に前記クライアント上に検出されたかを判定するため、及び、前記複数のクライアントの間で現在拡散しているマルウェアを識別するために、前記クライアント上で作成されたファイルを示す前記受信されたデータを解析するステップと
    前記受信されたデータの前記解析に応答して、マルウェア定義の集合をローカルマルウェア定義の集合にセグメント化するステップであって、前記ローカルマルウェア定義の集合が、前記複数のクライアントの間で現在拡散しているとして識別されたマルウェアに関するマルウェア定義を含む、セグメント化するステップと、
    前記ローカルマルウェア定義の集合を前記複数のクライアントに提供するステップと
    をコンピュータに実行させる命令を含む、コンピュータ可読記憶媒体。
  8. 前記クライアント上で作成されたファイルを示すデータを受信するステップが、
    前記マルウェア定義の集合を使用して、前記受信されたデータによって示されるクライアント上で作成されたファイルがマルウェアかどうかを判定するステップと、
    記クライアントからのクラウド定義ルックアップ要求への返信であって、前記作成されたファイルが前記マルウェア定義の集合を使用して判定されたようにマルウェアかどうかを示す返信を送信するステップと、
    更に含む、請求項7に記載のコンピュータ可読記憶媒体。
  9. 前記コンピュータプログラム命令が、前記作成されたファイルがマルウェアであると判定されることに応答して、対応するマルウェア定義を前記クライアントに提供するステップを更に含み、前記クライアントにより、前記マルウェア定義が使用されて、前記作成されたファイルからマルウェアが削除される、請求項8に記載のコンピュータ可読記憶媒体。
  10. 前記クライアント上で作成されたファイルを示す前記受信されたデータを解析するステップが、
    所定の期間内に前記複数のクライアントのうちの閾値数のクライアント上で検出されたマルウェアが、前記複数のクライアントの間で現在拡散していることを判定するステップ
    更に含む、請求項7に記載のコンピュータ可読記憶媒体。
  11. 前記クライアント上で作成されたファイルを示す前記受信されたデータの前記解析に応答して、前記マルウェア定義の集合を前記ローカルマルウェア定義の集合にセグメント化するステップが、
    クラウドマルウェア定義の集合を記憶するクラウド定義データベースを維持するステップと、
    前記受信されたデータの前記解析に応答して、前記クラウドマルウェア定義の部分集合を識別するステップと、
    前記複数のクライアントに、前記ローカルマルウェア定義の集合として前記識別された前記クラウドマルウェア定義の部分集合を提供するステップと、
    更に含む、請求項7に記載のコンピュータ可読記憶媒体。
  12. 前記マルウェア定義の集合をセグメント化するステップが、
    マルウェア定義に対応するマルウェアが前記複数のクライアントの間で現在拡散していないという判定に応答して、前記ローカルマルウェア定義の集合から当該マルウェア定義を削除するステップ
    を更に含む、請求項11に記載のコンピュータ可読記憶媒体。
  13. ローカルマルウェア定義をクライアントに提供するためのシステムであって、
    コンピュータプログラムコードを実行するためのプロセッサと、
    実行可能なコンピュータプログラムコードを記憶するコンピュータ可読記憶媒体と、
    を備え、前記実行可能なコンピュータプログラムコードが、
    複数のクライアントからデータを受信するステップであって、前記受信されたデータ、前記クライアント上で作成されたファイルを示す、受信するステップと、
    どのマルウェアが所定の前の期間内に前記クライアント上に検出されたかを判定するため、及び、前記複数のクライアントの間で現在拡散しているマルウェアを識別するために、前記クライアント上で作成されたファイルを示す前記受信されたデータを解析するステップと
    前記受信されたデータの前記解析に応答して、マルウェア定義の集合をローカルマルウェア定義の集合にセグメント化するステップであって、前記ローカルマルウェア定義の集合が、前記複数のクライアントの間で現在拡散しているとして識別されたマルウェアに関するマルウェア定義を含む、セグメント化するステップと、
    前記ローカルマルウェア定義の集合を前記複数のクライアントに提供するステップと
    を前記プロセッサに実行させるコードを含む、システム。
  14. 前記クライアント上で作成されたファイルを示すデータを受信するステップが、
    前記マルウェア定義の集合を使用して、前記受信されたデータによって示されるクライアント上で作成されたファイルがマルウェアかどうかを判定するステップと、
    記クライアントからのクラウド定義ルックアップ要求への返信であって、前記作成されたファイルが前記マルウェア定義の集合を使用して判定されたようにマルウェアかどうかを示す返信を送信するステップと、
    更に含む、請求項13に記載のシステム。
  15. 前記クライアント上で作成されたファイルを示す前記受信されたデータを解析するステップが、
    所定の期間内に前記複数のクライアントのうちの閾値数のクライアント上で検出されたマルウェアが、前記複数のクライアントの間で現在拡散していることを判定するステップ
    更に含む、請求項13に記載のシステム。
  16. 前記クライアント上で作成されたファイルを示す前記受信されたデータの前記解析に応答して、前記マルウェア定義の集合を前記ローカルマルウェア定義の集合にセグメント化するステップが、
    クラウドマルウェア定義の集合を記憶するクラウド定義データベースを維持するステップと、
    前記受信されたデータの前記解析に応答して、前記クラウドマルウェア定義の部分集合を識別するステップと、
    前記複数のクライアントに、前記ローカルマルウェア定義の集合として前記識別された前記クラウドマルウェア定義の部分集合を提供するステップと、
    更に含む、請求項13に記載のシステム。
  17. 前記マルウェア定義の集合をセグメント化するステップが、
    マルウェア定義に対応するマルウェアが前記複数のクライアントの間で現在拡散していないという判定に応答して、前記ローカルマルウェア定義の集合から当該マルウェア定義を削除するステップ
    を更に含む、請求項16に記載のシステム。
JP2015542786A 2012-11-20 2013-11-14 マルウェア定義パッケージサイズを縮小するためのテレメトリの使用 Active JP6304833B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/682,288 US8826431B2 (en) 2012-11-20 2012-11-20 Using telemetry to reduce malware definition package size
US13/682,288 2012-11-20
PCT/US2013/070137 WO2014081613A1 (en) 2012-11-20 2013-11-14 Using telemetry to reduce malware definition package size

Publications (3)

Publication Number Publication Date
JP2015535115A JP2015535115A (ja) 2015-12-07
JP2015535115A5 JP2015535115A5 (ja) 2017-01-05
JP6304833B2 true JP6304833B2 (ja) 2018-04-04

Family

ID=49679660

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015542786A Active JP6304833B2 (ja) 2012-11-20 2013-11-14 マルウェア定義パッケージサイズを縮小するためのテレメトリの使用

Country Status (5)

Country Link
US (2) US8826431B2 (ja)
EP (1) EP2923295B1 (ja)
JP (1) JP6304833B2 (ja)
CA (1) CA2891665C (ja)
WO (1) WO2014081613A1 (ja)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9292688B2 (en) * 2012-09-26 2016-03-22 Northrop Grumman Systems Corporation System and method for automated machine-learning, zero-day malware detection
US11126720B2 (en) 2012-09-26 2021-09-21 Bluvector, Inc. System and method for automated machine-learning, zero-day malware detection
US9202050B1 (en) * 2012-12-14 2015-12-01 Symantec Corporation Systems and methods for detecting malicious files
US20130254889A1 (en) * 2013-03-29 2013-09-26 Sky Socket, Llc Server-Side Restricted Software Compliance
US9723014B2 (en) * 2014-03-31 2017-08-01 International Business Machines Corporation Detecting malware-related activity on a computer
US9832216B2 (en) 2014-11-21 2017-11-28 Bluvector, Inc. System and method for network data characterization
US9332029B1 (en) * 2014-12-24 2016-05-03 AO Kaspersky Lab System and method for malware detection in a distributed network of computer nodes
US9639715B2 (en) 2015-04-27 2017-05-02 Microsoft Technology Licensing, Llc Protecting user identifiable information in the transfer of telemetry data
CN104850783B (zh) * 2015-04-30 2018-07-13 中国人民解放军国防科学技术大学 一种基于哈希特征矩阵的恶意软件云检测方法及系统
CN104850784B (zh) * 2015-04-30 2018-03-20 中国人民解放军国防科学技术大学 一种基于哈希特征向量的恶意软件云检测方法及系统
US10373050B2 (en) * 2015-05-08 2019-08-06 Qualcomm Incorporated Fixed point neural network based on floating point neural network quantization
RU2617654C2 (ru) * 2015-09-30 2017-04-25 Акционерное общество "Лаборатория Касперского" Система и способ формирования набора антивирусных записей, используемых для обнаружения вредоносных файлов на компьютере пользователя
RU2614929C1 (ru) * 2015-09-30 2017-03-30 Акционерное общество "Лаборатория Касперского" Способ передачи антивирусных записей, используемых для обнаружения вредоносных файлов
EP3151148B1 (en) * 2015-09-30 2019-02-20 AO Kaspersky Lab System and method for generating sets of antivirus records for detection of malware on user devices
US10354066B2 (en) 2016-02-26 2019-07-16 Cylance Inc. Retention and accessibility of data characterizing events on an endpoint computer
US9917862B2 (en) 2016-04-14 2018-03-13 Airwatch Llc Integrated application scanning and mobile enterprise computing management system
US9916446B2 (en) 2016-04-14 2018-03-13 Airwatch Llc Anonymized application scanning for mobile devices
KR101695278B1 (ko) * 2016-04-26 2017-01-23 (주)시큐레이어 실시간성 이벤트를 탐지하는 방법 및 이를 이용한 서버
US10515213B2 (en) 2016-08-27 2019-12-24 Microsoft Technology Licensing, Llc Detecting malware by monitoring execution of a configured process
US10313366B1 (en) * 2016-09-23 2019-06-04 EMC IP Holding Company LLC Retroactive identification of previously unknown malware based on network traffic analysis from a sandbox environment
US10699012B2 (en) 2017-01-11 2020-06-30 Cylance Inc. Endpoint detection and response utilizing machine learning
JP6834688B2 (ja) * 2017-03-30 2021-02-24 日本電気株式会社 マルウェア解析方法、マルウェア解析装置およびマルウェア解析システム
WO2018200458A1 (en) * 2017-04-26 2018-11-01 Cylance Inc. Endpoint detection and response system event characterization data transfer
US10635806B2 (en) * 2017-05-04 2020-04-28 Crowdstrike, Inc. Least recently used (LRU)-based event suppression
US10635813B2 (en) 2017-10-06 2020-04-28 Sophos Limited Methods and apparatus for using machine learning on multiple file fragments to identify malware
US11003774B2 (en) 2018-01-26 2021-05-11 Sophos Limited Methods and apparatus for detection of malicious documents using machine learning
US11941491B2 (en) 2018-01-31 2024-03-26 Sophos Limited Methods and apparatus for identifying an impact of a portion of a file on machine learning classification of malicious content
US11270205B2 (en) 2018-02-28 2022-03-08 Sophos Limited Methods and apparatus for identifying the shared importance of multiple nodes within a machine learning model for multiple tasks
US10752207B2 (en) * 2018-09-07 2020-08-25 Ford Global Technologies, Llc Multi-factor authentication of a hardware assembly
US11947668B2 (en) 2018-10-12 2024-04-02 Sophos Limited Methods and apparatus for preserving information between layers within a neural network
US11574052B2 (en) 2019-01-31 2023-02-07 Sophos Limited Methods and apparatus for using machine learning to detect potentially malicious obfuscated scripts
KR102211846B1 (ko) * 2020-07-21 2021-02-03 국방과학연구소 랜섬웨어 탐지 시스템 및 그의 동작 방법
CN114064262A (zh) * 2020-08-07 2022-02-18 伊姆西Ip控股有限责任公司 管理存储系统中的计算资源的方法、设备和程序产品
JPWO2022195732A1 (ja) * 2021-03-16 2022-09-22
US12010129B2 (en) 2021-04-23 2024-06-11 Sophos Limited Methods and apparatus for using machine learning to classify malicious infrastructure
US12072976B1 (en) * 2021-10-26 2024-08-27 Gen Digital Inc. Systems and methods for utilizing telemetry data to customize threat protection actions against potential malware threats
CN116842906A (zh) * 2022-03-25 2023-10-03 戴尔产品有限公司 用于文档传输的方法、设备和计算机程序产品

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5960170A (en) * 1997-03-18 1999-09-28 Trend Micro, Inc. Event triggered iterative virus detection
US7401359B2 (en) * 2001-12-21 2008-07-15 Mcafee, Inc. Generating malware definition data for mobile computing devices
US7237008B1 (en) * 2002-05-10 2007-06-26 Mcafee, Inc. Detecting malware carried by an e-mail message
WO2008043109A2 (en) * 2006-10-06 2008-04-10 Smobile Systems, Inc. System and method of reporting and visualizing malware on mobile networks
WO2008043110A2 (en) * 2006-10-06 2008-04-10 Smobile Systems, Inc. System and method of malware sample collection on mobile networks
US8214977B2 (en) * 2008-05-21 2012-07-10 Symantec Corporation Centralized scanner database with optimal definition distribution using network queries
US9367680B2 (en) 2008-10-21 2016-06-14 Lookout, Inc. System and method for mobile communication device application advisement
US9208315B2 (en) * 2009-03-17 2015-12-08 Microsoft Corporation Identification of telemetry data
GB2469308B (en) * 2009-04-08 2014-02-19 F Secure Oyj Disinfecting a file system
JP2011186823A (ja) * 2010-03-09 2011-09-22 Nec Corp ウイルスチェックシステム、ウイルスチェック装置、及び、プログラム
US20120124007A1 (en) * 2010-11-16 2012-05-17 F-Secure Corporation Disinfection of a file system
RU2449360C1 (ru) 2011-03-28 2012-04-27 Закрытое акционерное общество "Лаборатория Касперского" Система и способ формирования антивирусных баз в соответствии с параметрами персонального компьютера
US8782793B2 (en) * 2012-05-22 2014-07-15 Kaspersky Lab Zao System and method for detection and treatment of malware on data storage devices

Also Published As

Publication number Publication date
US9613213B2 (en) 2017-04-04
US20140143869A1 (en) 2014-05-22
US20140337979A1 (en) 2014-11-13
WO2014081613A1 (en) 2014-05-30
CA2891665C (en) 2017-10-24
EP2923295A1 (en) 2015-09-30
JP2015535115A (ja) 2015-12-07
CA2891665A1 (en) 2014-05-30
US8826431B2 (en) 2014-09-02
EP2923295B1 (en) 2018-07-18

Similar Documents

Publication Publication Date Title
JP6304833B2 (ja) マルウェア定義パッケージサイズを縮小するためのテレメトリの使用
JP7460696B2 (ja) カーネルモードにおけるマルウェアおよびステガノグラフィのリアルタイム検出ならびにマルウェアおよびステガノグラフィからの保護
US10872151B1 (en) System and method for triggering analysis of an object for malware in response to modification of that object
US10523609B1 (en) Multi-vector malware detection and analysis
US8239944B1 (en) Reducing malware signature set size through server-side processing
US8756691B2 (en) IP-based blocking of malware
US8782790B1 (en) Signature creation for malicious network traffic
US8572740B2 (en) Method and system for detection of previously unknown malware
US8800030B2 (en) Individualized time-to-live for reputation scores of computer files
US8627476B1 (en) Altering application behavior based on content provider reputation
US8413235B1 (en) Malware detection using file heritage data
US8726391B1 (en) Scheduling malware signature updates in relation to threat awareness and environmental safety
JP2015511338A (ja) サービスプロバイダによって提供されたipデータの信頼性を保証するための方法およびシステム
US8099784B1 (en) Behavioral detection based on uninstaller modification or removal
US20220217164A1 (en) Inline malware detection
US11636208B2 (en) Generating models for performing inline malware detection
JP2016525750A (ja) 合法的オブジェクトの誤用の識別
US9037608B1 (en) Monitoring application behavior by detecting file access category changes
US20210377216A1 (en) System and method for analytics based waf service configuration
WO2021015941A1 (en) Inline malware detection
US20220245249A1 (en) Specific file detection baked into machine learning pipelines
JP2016081348A (ja) 情報処理システム、情報処理装置、制御サーバ、生成サーバ、動作制御方法及び動作制御プログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161114

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161114

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170928

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171003

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171220

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180206

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180302

R150 Certificate of patent or registration of utility model

Ref document number: 6304833

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250