JP5921585B2 - ストリーミングマルウェア定義更新のための方法、記憶媒体および装置 - Google Patents

ストリーミングマルウェア定義更新のための方法、記憶媒体および装置 Download PDF

Info

Publication number
JP5921585B2
JP5921585B2 JP2014020997A JP2014020997A JP5921585B2 JP 5921585 B2 JP5921585 B2 JP 5921585B2 JP 2014020997 A JP2014020997 A JP 2014020997A JP 2014020997 A JP2014020997 A JP 2014020997A JP 5921585 B2 JP5921585 B2 JP 5921585B2
Authority
JP
Japan
Prior art keywords
definition file
signature
signature definition
malware
streaming
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
JP2014020997A
Other languages
English (en)
Other versions
JP2014130614A (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 JP2014130614A publication Critical patent/JP2014130614A/ja
Application granted granted Critical
Publication of JP5921585B2 publication Critical patent/JP5921585B2/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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Virology (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、コンピュータセキュリティの分野に関し、特に、マルウェア対策クライアントソフトウェアに対するストリーミングマルウェアシグネチャ定義更新を提供することに関する。
インターネット等の広域ネットワークは、増大し続けるユーザコミュニティに、ユーザが情報、アプリケーション、およびエンターテイメントを収集できる同様に増大し続けるアクセス可能なネットワークサイトを提供する。そのようなオープンコミュニティは、悪意のあるユーザおよびサイトが、ウィルス、トロイの木馬、ワーム等の悪意のあるソフトウェア(マルウェア)を拡散させる格好の状況も提供する。ユーザをそのような悪意のある行動から保護するために、ユーザにコンピュータ上のマルウェアの存在を警告し、影響を受けたコンピュータからマルウェアを除去するマルウェア対策保護方式が考案された。
典型的なコンピュータ保護方式は、影響を受けたコンピュータ上のマルウェアの存在に対して反応する。マルウェアを検出する一般的な方法は、マルウェア本体から抽出されるシグネチャに頼る。マルウェア本体から抽出される異なる種類のデータをシグネチャの生成に使用してもよい。そのようなデータとしては、例えば、文字列(すなわち、ワイルドカードあり、またはワイルドカードなしのパターン)、チェックサム(例えば、CRC、MD5、およびSHA1)、挙動パターン、ファイルジオメトリ、実行フロージオメトリ、およびコード命令の統計的分布が挙げられる。マルウェアシグネチャの生成に、上記列挙されたものの任意の組み合わせを使用することができ、この列挙は排他的なものではない。より高度なポリモーフィックマルウェア(例えば、変化する暗号アルゴリズムおよび鍵を組み込み、マルウェアの複製が同一ではないマルウェア)に対しては、暗号解析、専用復号化ルーチン、エミュレーション等を含むより高度なシグネチャ生成技法が必要である。
コンピュータで実行されるセキュリティソフトウェアが、マルウェアの新たに発見されたインスタンスを検出できるようにするためには、コンピュータに、マルウェアの新しいインスタンスを識別するために確立されたシグネチャのコピーを提供しなければならない。通常、マルウェアの7,000〜10,000もの多くの新しいインスタンスが毎日発見される。マルウェアのインスタンスは広域ネットワークを通して増殖するため、そのマルウェアに関連するシグネチャを広域ネットワーク上のコンピュータに提供することの遅れにより、それらコンピュータが、攻撃を受けやすい状態のままになる。したがって、新たに生成され認定されたシグネチャをコンピュータコミュニティに迅速に配布することが望ましい。
典型的なマルウェア対策ソフトウェアは、更新サーバから1〜8時間の期間で新しいシグネチャ定義をダウンロードする。典型的なシステムにより検索される完全シグネチャ定義ファイルは、現在見つかっているすべてのシグネチャのシグネチャ定義またはクライアントコンピュータに現在インストールされている完全シグネチャ定義ファイルとマルウェア対策ソフトウェアに関連付けられたサーバ上の現在発行されている完全シグネチャ定義ファイルとの差分を含む。多数のクライアントコンピュータが1つまたは複数の関連付けられた配布サーバからこれら完全定義ファイルをダウンロードする動作は、相当なネットワーク帯域幅リソースを消費し得る。マルウェア対策カバレッジを向上させるために、完全定義ファイルの発行レートを増大させると、潜在的に、ネットワーク帯域幅消費の劇的な増大に繋がる。したがって、時単位ではなくおよそ分単位でシグネチャ定義への更新を提供するのみならず、ネットワーク帯域幅リソースの節減もするシステムを実装することが望ましい。
本発明の実施形態は、マルウェアシグネチャ定義への更新をおよそ分単位で提供すると共に、より長い期間中に完全更新を提供し、ネットワークリソースを節減するようにそのような更新を提供するメカニズムを提供する。本発明の実施形態は、マルウェアシグネチャを含む完全シグネチャ定義ファイルを組み立て発行すると共に、マルウェアシグネチャを含むストリーミング定義ファイルを組み立て発行するように構成された方法、装置、およびシステムを提供する。完全シグネチャ定義ファイルは、マルウェアシグネチャ、および指定された時間までに受信した第1の複数のマルウェアシグネチャの両方を含み、完全シグネチャ定義ファイルの発行は、指定された時間後に行われる。ストリーミングシグネチャ定義ファイルは、マルウェアシグネチャ、および指定された時間の前に開始され終了する第1の期間中に受信された第2の複数のマルウェアシグネチャの両方を含み、ストリーミングシグネチャ定義ファイルの発行は、第1の期間の完了時に行われる。
本発明の上記実施形態の態様は、第1のノードからの要求が、第1の終了時間後に受信された場合、その要求に応答して、ストリーミングシグネチャ定義ファイルを送信することを含む、ストリーミングシグネチャ定義ファイルを発行することを提供する。本発明の上記実施形態の別の態様は、第3の複数のマルウェアシグネチャを含む第2のストリーミングシグネチャ定義ファイルを組み立て発行することを提供し、第2のストリーミングシグネチャ定義ファイルの組み立ては、第1の期間の終了後であり、かつ指定された時間前の第2の期間中に行われる。上記実施形態のさらなる態様は、第2の期間の完了時に、第1のストリーミングシグネチャ定義ファイルを第2のストリーミングシグネチャ定義ファイルで置き換えることを提供する。本発明の上記実施形態の別の態様は、マルウェアシグネチャを、第2の複数のマルウェアシグネチャのうちの1つまたは複数のマルウェアシグネチャを含むリストに添付することにより、ストリーミングシグネチャ定義ファイルを組み立てることを提供する。本発明のさらなる態様は、第2の複数のマルウェアシグネチャのうちの対応するマルウェアシグネチャへの1つまたは複数のポインタを含むリストに、マルウェアシグネチャのロケーションへのポインタを添付することにより、ストリーミングシグネチャ定義ファイルを組み立てることを提供する。
本発明は、添付図面を参照することにより当業者によりよく理解することができ、その多くの目的、特徴、および利点が明らかになるであろう。
アンチマルチウェアシグネチャをマルウェア対策クライアントに配布するネットワーク構成を示す簡略ブロック図である。 発行されたシグネチャ定義の送信に繋がるプロセスの簡略流れ図である。 本発明の実施形態によるシグネチャ更新サーバ110により実行されるマルウェアシグネチャ発行プロセスの簡略流れ図である。 本発明の実施形態を組み込んだシグネチャ更新サーバ110を示す簡略ブロック図である。 本発明の実施形態によりクライアントコンピュータにより実行されるシグネチャ定義更新プロセスを示す簡略流れ図である。 本発明の実施形態の実施に適したコンピュータシステムのブロック図を示す。 本発明の実施形態の実施に適したネットワークアーキテクチャを示すブロック図である。
本発明は、追加の、すなわち「ストリーミング」定義パッケージの使用を通して頻繁なシグネチャ定義更新を提供するメカニズムを提供する。本発明の実施形態は、完全シグネチャ定義更新を長期間(例えば、約数時間)単位で発行するのみならず、新たに認証された定義を含むストリーミング定義更新を短期間(例えば、約数分)単位で発行することによっても、そのような機能を提供する。本発明の実施形態を組み込んだシグネチャ更新サーバが、新たに認証されたマルウェアシグネチャ定義を受信すると、それら新たに認証されたシグネチャ定義は、完全シグネチャ定義ファイルのみならず、ストリーミング更新期間中に受信した新たに認証されたシグネチャ定義のみを含むストリーミングシグネチャ定義更新にも組み込まれる。ストリーミング更新期間の終了時、シグネチャ更新サーバは、マルウェア対策クライアントに発行することにより、ストリーミングシグネチャ定義ファイルを提供する。ストリーミングシグネチャ定義ファイルは、そのストリーミング定義ファイルの組み立て期間中に受信したシグネチャ定義のみを含む。本発明の実施形態は、新しいストリーミングシグネチャ定義ファイルの発行時に、前のストリーミングシグネチャ定義ファイルを新しいストリーミングシグネチャ定義ファイルで置き換える。
本発明の実施形態を使用するマルウェア対策クライアントは、ストリーミングシグネチャ定義ファイル内で受信されたシグネチャ定義を、前に受信したストリーミングシグネチャ定義および最新の完全定義ファイル内で受信したシグネチャ定義に追加するように組み込む。ストリーミングシグネチャ定義ファイル内で前に受信したシグネチャを組み込んだ新たに発行された完全シグネチャ定義ファイルを受信すると、本発明の実施形態を使用するマルウェア対策クライアントは、前に受信したシグネチャのストリーミング定義の使用を停止し、完全シグネチャ定義ファイル内に見られる定義のみを使用する。
このようにして、本発明の実施形態を組み込んだマルウェア対策クライアントは、新しいマルウェアシグネチャの認証後、約数分でシグネチャ定義更新を受信することができる。さらに、ストリーミングシグネチャ定義ファイルは、ストリーミング定義組み立て期間中に受信したシグネチャのみを含むため、本発明の実施形態は、ネットワーク帯域幅リソースを節減する。
図1は、マルウェア対策シグネチャをマルウェア対策クライアントに配布するネットワーク構成を示す簡略ブロック図である。シグネチャ更新サーバ110は、マルウェア対策ソフトウェアプロバイダにより維持される。シグネチャ更新サーバ110には、マルウェア対策ソフトウェアプロバイダのクライアントへの発行が認証されたマルウェアシグネチャを記憶するシグネチャデータベース115が関連付けられる。シグネチャ更新サーバは、外部ネットワーク130(例えば、インターネット等の広域ネットワーク)を通してクライアントコンピュータ120(1)〜(M)に結合される。このネットワーク接続を通して、シグネチャ更新サーバ110は、様々なデータ伝送プロトコルを使用して、シグネチャ定義ファイル更新をクライアントコンピュータ120(1)〜(M)を提供することができる。あるいは、シグネチャ更新サーバ110は、シグネチャ更新サーバ110がクライアントコンピュータコミュニティに発行したシグネチャ更新ファイルの配布を担当する1つまたは複数のシグネチャ配布サーバ(図示せず)に結合することができる。このようにして、配布サーバのそれぞれを介して配布の責務を地理的に分散させることができる。
シグネチャ更新サーバ110により配布されるマルウェアシグネチャは、1つまたは複数の処理ノード上で実行中の1つまたは複数の解析エンジン140(1)〜(N)により生成することができる。マルウェアの新しいインスタンスがマルウェア対策ソフトウェアプロバイダにより発見された場合、マルウェアのそれらインスタンスは解析エンジン140(1)〜(N)に提供されて、そのマルウェアインスタンスの識別に適切なシグネチャを決定する。そのような解析により、例えば、文字列パターン、チェックサム、挙動パターン、ファイルジオメトリ、実行フロージオメトリ、およびコード命令の統計的分布、またはこれらの組み合わせを含むマルウェア本体から抽出されたデータに基づいてシグネチャを生成することができる。より高度なマルウェア(例えば、ポリモーフィックまたはメタモーフィックマルウェア)の場合、潜在的なマルウェアが制御されたシミュレーション環境内で実行されて、マルウェアの挙動が特定されるエミュレーション技法等のより処理集約的なシグネチャ生成を使用し得る。
解析エンジン140(1)〜(N)が、マルウェアインスタンスに対応する適切なシグネチャを決定すると、認証サーバ150(1)〜(P)は、生成されたシグネチャの使用により、誤検出結果が生じるか否かを判断することができる。例えば、認証サーバは、典型的なクライアントのコンピュータで見つかり得る周知のファイル(例えば、オペレーティングシステムファイル、典型的なアプリケーション等)のクリーンファイルコレクションを保持することができる。ハッシュまたはチェックサム(例えば、CRC)により生成されるシグネチャの場合、マルウェアチェックサムシグネチャを、クリーンファイルコレクション内の各ファイルに対して同様に生成されたチェックサムと突き合わせてチェックすることができる。データベースは、クリーンファイルコレクション内の各ファイルについてのメタ情報(例えば、様々に生成されたハッシュまたはチェックサムのうちの1つまたは複数の集まり)を含むことができ、このデータベースに対する参照を実行することができる。提案されたマルウェアシグネチャが、クリーンファイルコレクション内のファイルに対して生成されたシグネチャに一致する場合、そのマルウェアシグネチャは、代替の解析エンジンにより生成されたハッシュに基づくシグネチャまたはマルウェアファイルのより大きなサンプリングから生成されるハッシュもしくはチェックサムを優先して、破棄される。シグネチャが認証段階にパスすると、そのシグネチャは、内部ネットワーク160を介してシグネチャ更新サーバ110に提供される。
マルウェア解析の種類により、実行にかかる時間量が異なり得る。例えば、ハッシュまたはチェックサムの生成および誤検出テストは、ポリモーフィックマルウェアのインスタンスの挙動エミュレーションよりもかかる時間が大幅に短い。この理由は、エミュレーションシグネチャは、クリーンファイルコレクション内の各ファイルのエミュレーションと突き合わせてテストする必要があるためである。さらに、異なる種類の解析により生成されるシグネチャは、長さが異なり得、クライアントソフトウェアにより異なるように使用されることになる。本発明の実施形態は、マルウェア認証の特定の解析方法に限定されない。
図2は、発行されたシグネチャ定義の送信に繋がるプロセスの簡略流れ図である。潜在的なマルウェアが識別されると(210)、マルウェアは解析のために提出される(220)(例えば、解析エンジン140により)。上述したように、解析プロセスは、最終的にマルウェアシグネチャを生成するように設計された様々な解析メカニズムを含み得る(230)。次に、生成されたマルウェアシグネチャは、誤検出に対する認証のために提出される(240)。上述したように、誤検出解析は、マルウェアのシグネチャを、クリーンファイルコレクション内に見つけられるファイルに対して同じ方法により生成されるシグネチャと比較することにより実行される。そのような認証比較は、オペレーティングシステムファイルおよびアプリケーションファイル等のクライアントコンピュータ上に実際にあるべきファイルをマルウェア対策ソフトウェアが削除するのを回避するために実行される。誤検出が検出された場合(245)、マルウェアは、さらなる解析に提出され、代替のシグネチャが生成される。
マルウェアシグネチャが認証プロセスをパスすると、そのシグネチャをシグネチャ更新サーバ110に提供し、最終的にシグネチャ更新サーバにより発行される準備ができる(250)。本発明の実施形態は、完全シグネチャ定義更新およびストリーミングシグネチャ定義更新の両方を通して、マルウェアシグネチャの発行を実行する。発行プロセスについては、より十分に後述する。マルウェアシグネチャを発行すると、マルウェアシグネチャはマルウェア対策ソフトウェアプロバイダのクライアントに送信される(260)。
図3は、本発明の実施形態によるシグネチャ更新サーバ110により実行されるマルウェアシグネチャ生成プロセスの簡略流れ図である。認証されたマルウェアシグネチャを受信すると(310)、シグネチャ更新サーバは、認証されたマルウェアシグネチャの並列発行パスを辿る。一発行パス(320〜340)では、認証されたマルウェアシグネチャは、完全シグネチャ定義ファイルの次のバージョン内に組み込まれる。上述したように、完全シグネチャ定義ファイルの組み立ておよび発行の時間フレームは、約数時間単位である。第2の発行パス(350〜370)は、認証されたマルウェアシグネチャを次のストリーミングシグネチャ定義ファイル内に統合する。これも上述したように、ストリーミングシグネチャ定義ファイルは、約数分の期間で発行される。
完全シグネチャ定義発行パスでは、受信された認証マルウェアシグネチャは、次の完全シグネチャ定義ファイル内に統合される(320)。そのような統合プロセスは、新たに到着した認証マルウェアシグネチャを完全定義ファイルに追加することのみならず、シグネチャが追加された後に完全シグネチャ定義ファイルの完全性を検証することも含む。完全シグネチャ定義ファイルは、組み込まれるシグネチャに関連付けられた様々なデータ構造を含む最適化木にシグネチャを組み込む。本発明の一実施形態では、最適化木の目標は、高性能を有する小さなデータファイルである。新たに到着した認証マルウェアシグネチャを完全シグネチャ定義ファイル内に含めることは、新しいシグネチャを最適化木内に組み込むことを含む。
シグネチャ更新サーバにより、完全シグネチャ定義ファイルの発行閾値時間が満たされるか否かが判断される(325)。発行閾値時間が満たされない場合、シグネチャ更新サーバは、完全シグネチャ定義ファイルに統合する次の認証マルウェアシグネチャの受信を待つ。完全シグネチャ定義ファイルの発行閾値時間が満たされる場合、シグネチャ更新サーバは、完全シグネチャ定義ファイルの発行プロセスを開始する。あるいは、完全シグネチャ定義ファイルの次のバージョン内に含める新しい認証マルウェアシグネチャの数に対する閾値を設定することができ、そのシグネチャ数が到着すると、新しい完全シグネチャ定義ファイルを発行することができる。
完全シグネチャ定義ファイルを発行するために、シグネチャ更新サーバは、あり得るクライアントデータバージョンに配布するためのデルタ定義パッケージを構築して記憶する(330)。ネットワーク帯域幅リソースを節減するために、完全シグネチャ定義ファイルが発行される都度、全て揃った完全シグネチャ定義ファイルを各クライアントコンピュータに送信する必要はない。それに代えて、クライアントは、そのクライアントが完全シグネチャ定義ファイルを最後にダウンロードしてから変更または追加された完全シグネチャ定義木の部分をダウンロードする必要があるだけである。クライアントコンピュータは、完全シグネチャ定義ファイルの最新の発行時にアクティブではなかった可能性があるため、クライアントコンピュータは、最後にダウンロードされ、クライアントコンピュータに記憶された完全シグネチャ定義ファイルのバージョン以来、変更または追加された定義を要求することができる。このプロセスを容易にするために、シグネチャ更新サーバ110は、クライアントコンピュータにより保持されている様々な予想される完全シグネチャ定義ファイルバージョンの完全シグネチャ定義ファイルに対する変更のみを含むデルタ定義ファイルを用意する。本発明の一実施形態では、上記最適化木のさらなる目標は、デルタ定義ファイルのサイズを最小化するように木を構築することである。
次に、本発明の実施形態は、各デルタ定義ファイルへのポインタを含むファイルを生成し、それらポインタを、クライアントコンピュータにインストールされた完全シグネチャ定義ファイルの対応するバージョンに関連付けることができる(335)。このファイルは、ミニドライブファイルと呼ばれ、クライアントコンピュータに提供され、クライアントコンピュータが、完全シグネチャ定義ファイルの適切なデルタ定義セットにアクセスして、クライアントコンピュータ上の完全シグネチャ定義ファイルを更新できるようにする。
完全シグネチャ定義ミニドライブファイルが構築されると、シグネチャ更新サーバ110は、完全シグネチャ定義ミニドライブファイルをクライアントコンピュータ120(1)〜(M)に送信することができる。本発明の実施形態は、完全シグネチャ定義ミニドライブファイルの送信を様々な様式で提供することができる。例えば、「プル送信モデル」では、クライアントコンピュータは、クライアントコンピュータにより保持される完全シグネチャ定義ファイルに対する最後の更新の時間を追跡し、その更新から期間閾値が経過している場合、クライアントコンピュータは、シグネチャ更新サーバ110または指定の配布サーバから完全シグネチャ定義ミニドライブファイルの最新バージョンを要求することができる。あるいは、「プッシュ送信モード」では、シグネチャ更新サーバ110(または指定の配布サーバ)は、発行期間閾値が満たされた後、完全シグネチャ定義ミニドライブファイルを随時送信することができる。そのようなプッシュモデルでは、送信をリッスンしている任意のクライアントコンピュータは、完全シグネチャ定義ミニドライブファイルを受信し、クライアントに存在する完全シグネチャ定義ファイルの更新プロセスを開始する。
並列発行プロセスでのストリーミングシグネチャ定義ファイル内での認証マルウェアシグネチャの発行は、完全シグネチャ定義ファイルの発行からの特定の差分を有する。認証マルウェアシグネチャが受信されると、シグネチャは次のストリーミングシグネチャ定義ファイルに統合される(350)。ストリーミングシグネチャ定義ファイルは、完全シグネチャ定義ファイルの最適化木構造を必要としない。それに代えて、シグネチャ自体またはシグネチャへのポインタが、ストリーミングシグネチャ定義ファイル内に含まれる。これは、部分的に、ストリーミングシグネチャ定義ファイルが構築中の期間中に到着するシグネチャのみが次に発行されるシグネチャ定義ファイル内に存在するため、行うことができる。したがって、ストリーミングシグネチャ定義ファイルのデータ量は、完全シグネチャ定義ファイル内のデータ量よりもはるかに少ない。次のストリーミング定義ファイルを発行するストリーミング時間閾値が経過したか否かが判断される(355)。経過していない場合、シグネチャ更新サーバは、次の認証マルウェアシグネチャの受信を待つ(310)。上述したように、ストリーミングシグネチャ定義ファイルを発行する閾値期間は、完全シグネチャ定義ファイルを発行する閾値期間よりもはるかに短く、本発明の実施形態では、約数分(例えば、5分)であると意図される。
ストリーミングシグネチャ定義発行閾値時間が経過した場合、シグネチャ更新サーバ110は、ストリーミングシグネチャ定義ファイルを構築することができる(360)。完全シグネチャ定義ミニドライブファイルと異なり、ストリーミングシグネチャ定義ファイルは、このストリーミングシグネチャ定義内で発行されているシグネチャ自体を含むことが意図される。万が一、シグネチャが、ストリーミングシグネチャ定義ファイル内で直接発行するには長すぎる場合、そのシグネチャへのポインタを提供することができる。次に、本発明の実施形態は、ストリーミングシグネチャ定義ファイルの前のバージョンを、構築されたばかりのストリーミングシグネチャ定義ファイルのバージョンで置き換えることができる(365)。したがって、クライアントに発行されているストリーミングシグネチャ定義ファイルは、現在のストリーミングシグネチャ定義ファイルが構築された期間(例えば、現在のストリーミングシグネチャ定義ファイルの発行前の5分間)中にシグネチャ更新サーバが受信した認証マルウェアシグネチャ(またはシグネチャへのポインタ)のみを含む。次に、本発明の実施形態は、ストリーミングシグネチャ定義ファイルの現在のバージョンをクライアントコンピュータに送信することができる(370)。上述したように、そのような送信は、プッシュ送信モデルまたはプル送信モデルのいずれかを使用して実行し、クライアントに対してシグネチャ更新サーバにより直接、または配布サーバを介して間接的に実行することができる。
上述した認証マルウェアシグネチャを配布する並列発行方法では、新たに到着した認証マルウェアシグネチャをマルウェア対策ソフトウェアプロバイダのクライアントに素早く発行することが可能である。並列発行方法は、任意のストリーミングシグネチャ定義ファイルが利用可能になった際、あらゆるクライアントコンピュータが、ストリーミングシグネチャ定義ファイルのダウンロードに利用可能な状態である訳ではないことも認識する。ストリーミングシグネチャ定義ファイルの発行時に利用可能ではなかったため、クライアントが逃したシグネチャ定義ファイルの場合、クライアントは、完全シグネチャ定義ファイルを次回ダウンロードするときに追いつくことができる。したがって、新たに認証されたシグネチャを有することで、マルウェアからクライアントコンピュータを素早く保護することができるが、保護されない状態が、そのクライアントによる完全シグネチャ定義ファイルへの次の更新よりも長く続くことは決してない。
図4は、本発明の実施形態を組み込んだシグネチャ更新サーバ110を示す簡略ブロック図である。上述したように、シグネチャ更新サーバ110は、認証サーバ150(1)〜150(P)から認証マルウェアシグネチャを受信する。シグネチャ更新サーバ110の実施形態は、認証マルウェアシグネチャを処理し、完全シグネチャ定義およびストリーミングシグネチャ定義を用意し、これら定義ファイルをマルウェア対策ソフトウェアプロバイダのクライアントに提供するプロセッサ410を提供する。図4は、プロセッサ410内のシグネチャ処理モジュール420が受信中の認証マルウェアシグネチャを示す。シグネチャ処理モジュール420は、認証マルウェアシグネチャをシグネチャデータベース115内に記憶するように構成される。あるいは、認証サーバは、認証マルウェアシグネチャをシグネチャデータベース115内に直接記憶し、次に、新しい認証マルウェアシグネチャがシグネチャデータベース115内に記憶されたことの指示をシグネチャプロセッサモジュール420に提供することができる。
シグネチャ処理モジュール420は、受信した認証マルウェアシグネチャを完全シグネチャ定義組み立てモジュール430およびストリーミングシグネチャ定義組み立てモジュール440に提供するようにさらに構成される。完全シグネチャ定義組み立てモジュール430は、新たに到着したマルウェアシグネチャを完全シグネチャ定義木435に統合し、さらに、完全シグネチャ定義ファイルの発行を適切な発行時間に提供するように構成される。したがって、完全シグネチャ定義組み立てモジュールは、完全シグネチャ定義ファイル発行の閾値時間に達した場合、上述したデルタ定義パッケージおよび完全シグネチャ定義ミニドライブファイルを構築するようにさらに構成することが可能である。同様に、ストリーミングシグネチャ定義組み立てモジュール440は、新たに到着したシグネチャを、次のストリーミングシグネチャ定義ファイル内に組み込まれるシグネチャのリストに統合するように構成される(445)。ストリーミングシグネチャ定義組み立てモジュール440は、発行時にストリーミングシグネチャ定義ファイルを構築し、前に発行されたストリーミングシグネチャ定義ファイルを上述したように置き換えるように構成することもできる。したがって、ストリーミングシグネチャ定義組み立てモジュール440は、ストリーミングシグネチャ定義ファイル発行の閾値時間に達した場合、ストリーミングシグネチャ定義ファイルの発行に関連するタスクを実行することができる。
図示のように、シグネチャ更新サーバ110は、クライアントコンピュータとの情報の送受信を行う通信モジュール450を含む。通信モジュール450は、例えば、クライアントコンピュータにインストールされたマルウェア対策ソフトウェアと通信するアプリケーションプログラミングインタフェースを含む様々なプロトコルを使用してこれらタスクを実行することができる。通信モジュール450は、クライアントから受信した要求をプロセッサ410内の要求パーサ460に提供するように構成される。要求パーサ460は、クライアントから受信した要求の性質を特定し、その要求を適切な要求処理モジュールに提供するように構成される。例えば、プル送信動作モードでは、クライアントが完全シグネチャ定義ファイルのダウンロードを要求する場合、要求パーサ460は、その要求を完全シグネチャ定義要求モジュール470に提供する。同様に、要求パーサ460がストリーミングシグネチャ定義ファイルに対する要求を受信する場合、要求パーサ460は、その要求をストリーミングシグネチャ定義要求モジュール480に提供する。
完全シグネチャ定義ファイルに対する要求に応答して、完全シグネチャ定義要求モジュール470は、最新の完全シグネチャ定義ミニドライブファイルを完全シグネチャ定義記憶領域435から検索し、その完全シグネチャ定義ミニドライブファイルを通信モジュール450に提供して、要求側クライアントに送信することができる。完全シグネチャ定義ミニドライブファイルの受信を受けて、要求側クライアントは、適切なデルタ定義ファイルをシグネチャ更新サーバ110から要求することができる。次に、要求パーサ460は、デルタ定義ファイルに対する要求を完全シグネチャ定義要求モジュール470に転送することができ、次に、完全シグネチャ定義要求モジュール470は、デルタ定義ファイルを完全シグネチャ定義記憶領域435から検索し、そのデルタ定義ファイルを通信モジュール450に提供して、要求側クライアントに送信することができる。あるいは、完全シグネチャ定義ミニドライブファイルは、デルタ定義ファイルを要求側クライアントに提供するように特に構成された別個の配布サーバ内の記憶領域へのポインタを含むことができる。
要求パーサ460は、ストリーミングシグネチャ定義ファイルに対する要求を受信した場合、その要求をストリーミングシグネチャ定義要求モジュール480に提供する。次に、ストリーミングシグネチャ定義要求モジュール480は、最新のストリーミングシグネチャ定義ファイルをストリーミングシグネチャ定義記憶領域445から検索し、通信モジュール450を通してそのストリーミングシグネチャ定義ファイルを要求側クライアントに提供することができる。上述したように、ストリーミングシグネチャ定義ファイルは、現在の発行機関中に認証サーバから受信した認証マルウェアシグネチャの完全バージョンまたは要求側クライアントがシグネチャをダウンロードできるそのシグネチャのロケーションへのポインタを含むことができる。
ストリーミングシグネチャ定義ミニドライブファイル内でマルウェアシグネチャへのポインタを受信したことに応答して、クライアントは、シグネチャに対する要求をシグネチャ更新サーバ110に提出することができる。シグネチャ要求を受信すると、要求パーサ460は、そのシグネチャ要求をシグネチャ要求モジュール490に提供することができ、シグネチャ要求モジュール490は、要求されたシグネチャをシグネチャデータベース115から検索し、通信モジュール450を介して要求されたシグネチャを要求側クライアントに提供することができる。あるいは、上述のように、ストリーミングシグネチャ定義ミニドライブファイル内に含まれないシグネチャへのポインタは、シグネチャを要求側クライアントに提供するように構成された別個の配布サーバを指すことができる。
図4は、特定のタスクを実行するものとして説明した異なるモジュールを示すが、本発明の実施形態がそのような構成に限定されないことを留意されたい。例えば、2つ以上の別個のモジュールにより実行されるものとして説明されたタスクを単一のモジュールで実行してもよい。さらに、データベースにより提供されるものとして説明された記憶を、代替として、他のアクセス可能なデータ構造により提供してもよい。
図5は、本発明の実施形態によるクライアントコンピュータにより実行されるシグネチャ定義更新プロセスを示す簡略流れ図である。最初のステップとして、クライアントコンピュータは、マルウェア対策ソフトウェアを開始する(505)。開始プロセスは、クライアントにインストールされた完全シグネチャ定義ファイルおよびあらゆるストリーミングシグネチャ定義ファイルの最後の更新時間を特定することを含むことができる。クライアントは、完全ストリーミング定義セットの最後の更新時間が、完全ストリーミング定義ファイルを更新する閾値を超えるか否かを判断する(510)。上述したように、完全ストリーミング定義閾値時間は通常、約数時間(例えば、8時間)単位である。完全ストリーミング定義セットの最後の更新が所定の閾値時間を超える場合、クライアントは、最新の完全シグネチャ定義ミニドライブファイルを要求し受信することができる(515)。次に、クライアントは、完全ストリーミング定義セットの現在の更新に関連付けられたバージョン番号を、完全ストリーミング定義ミニドライブファイル内で識別されるバージョンと比較し、適切なデルタ定義ファイルに関連付けられた情報を識別することができる(520)。適切なデルタ定義ファイルについての情報が識別されると、クライアントは、適切なデルタ定義ファイルを要求し受信することができる(525)。上述したように、クライアントは、デルタ定義ファイルをシグネチャ更新サーバまたは識別された配布サーバから要求することができる。
要求されたデルタ定義ファイルを受信すると、クライアントは、デルタ定義ファイル内の情報を使用して、クライアントにインストールされた完全シグネチャ定義セットを更新することができる(530)。上述したように、デルタ定義ファイルは、クライアントコンピュータ上の完全シグネチャ定義セットの前にインストールされたバージョンから変更された完全シグネチャ定義木の部分に関連する情報を含む。クライアントコンピュータにインストールされたマルウェア対策ソフトウェアは、デルタ定義ファイルにより表される変更を、クライアントコンピュータにインストールされている完全シグネチャ定義セットのアクティブバージョン内に組み込むように構成することができる。
更新された完全シグネチャ定義セットがクライアントコンピュータでアクティブになると、クライアントコンピュータは、更新された完全シグネチャ定義セット内に含まれるいかなる定義のストリーミングシグネチャ定義データセットもクリアすることができる(535)。本発明の実施形態は、各ストリーミングシグネチャ定義と共に完全シグネチャ定義セットバージョン識別情報を含めることにより、この機能を提供することができる。したがって、クライアントコンピュータにインストールされた完全シグネチャ定義セットが、ストリーミングシグネチャ定義に関連付けられた関連の完全ストリーミング定義セットバージョン識別子に一致する場合、ストリーミングシグネチャ定義を、クライアントコンピュータにより保持されるストリーミングシグネチャ定義データセットから除去することができる。
次に、クライアントコンピュータは、最後のストリーミングシグネチャ定義更新時間が、ストリーミングシグネチャ定義に設定された閾値を超えるか否かを判断するように構成することができる(540)。完全シグネチャ定義更新時間が完全シグネチャ定義更新閾値を超えないと判断された後でも、このステップを実行できることに留意する。ストリーミングシグネチャ定義更新時間がストリーミングシグネチャ定義閾値を超えない場合、マルウェア対策ソフトウェアは、ストリーミングシグネチャ定義閾値時間が満たされるまで、現在インストールされている完全シグネチャ定義セットおよびストリーミングシグネチャ定義セットを使用して機能を実行することができる。
ストリーミングシグネチャ定義閾値時間が満たされると、クライアントは、最新のストリーミングシグネチャ定義ミニドライブファイルをシグネチャ更新サーバ110から要求して受信することができる(545)。ストリーミングシグネチャ定義ミニドライブファイルを受信すると、クライアントは、ミニドライブファイル内に存在するストリーミングシグネチャ定義を、クライアントコンピュータに保持されているストリーミングシグネチャデータセットに追加することができる(550)。このステップは、ストリーミングシグネチャ定義ミニドライブファイル内に含まれていないが、シグネチャへのポインタを有する任意のシグネチャを要求して受信することを含むこともできる。ストリーミングシグネチャ定義データセット内に組み込んだ後、クライアントコンピュータは、マルウェアの検出および修復を実行する際に、完全シグネチャ定義データセットおよびストリーミングシグネチャ定義データセットの両方内のシグネチャ情報を利用することができる(555)。
図5は、クライアントコンピュータが完全シグネチャ定義情報およびストリーミングシグネチャ定義情報の両方の送信を開始するプル送信モードで機能するクライアントコンピュータの図である。あるいは、クライアントは、クライアントがリッスンする姿勢を採用し、完全シグネチャ定義ファイルおよびストリーミングシグネチャ定義ファイルの送信の受信を待つプッシュ送信モードで機能することもできる。さらなる代替は、完全シグネチャ定義情報の場合にはプル送信モードで機能し、ストリーミングシグネチャ定義の場合にはプッシュ送信モードで機能するクライアントを含むことができる。
図5に示されるプロセスを使用して動作するクライアントコンピュータが、ネットワークから切断される場合、または他の様式で任意の期間にわたって非アクティブである場合、1つまたは複数のストリーミングシグネチャ定義ミニドライブファイルをダウンロードする機会を逃し得ることを理解されたい。ストリーミングシグネチャ定義ファイルは、完全シグネチャ定義ファイルに見られる情報に追加されるものであり、後続する各ストリーミングシグネチャ定義ファイルは、新たに到着した認証マルウェアシグネチャのみを含むため、クライアントコンピュータのストリーミングシグネチャ定義データセットに見られるシグネチャにギャップがあり得る。しかし、完全シグネチャ定義データセットの次の更新により、クライアントコンピュータを最新の状態にすることになり、すべてのギャップがその時点で埋められることをさらに理解されたい。したがって、本発明の実施形態を実施するクライアントコンピュータは、本発明の実施形態を実施しないクライアントコンピュータ(例えば、完全シグネチャ定義のみを受信するクライアント)よりも悪くなることはあり得ず、本発明の実施形態を実施するクライアントコンピュータは、本発明の実施形態を実施しないクライアントコンピュータよりもはるかに素早く、マルウェアの新しいインスタンスに対して潜在的に保護することができる。完全シグネチャ定義およびストリーミングシグネチャ定義の両方のクライアントコンピュータへの更新閾値期間を、シグネチャ更新サーバに構成される発行期間と同じ期間に設定すべきであることも理解されたい。
本発明の実施形態は、クライアント上のシグネチャデータセットのより頻繁な(例えば、約数分単位)更新を提供するのみならず、完全シグネチャ定義データセットをより頻繁に発行するよりもネットワーク帯域幅利用に対する影響が最小な状態でそのような機能を提供もする。そのような帯域幅消費の低減は、ストリーミングシグネチャ定義ファイルが、発行期間中に新しいシグネチャのみを含むため、実現される。そのようなシグネチャは平均で50バイトであり、5分毎に50〜150個の新しいシグネチャがあると予想されるため、ストリーミングシグネチャ定義ミニドライブファイルは2500〜7500バイトであると予想される。その場合、ネットワーク帯域幅への影響を複数の配布サーバに分散させることができ、ネットワーク帯域幅への影響は、ストリーミングシグネチャ定義を要求するクライアントコンピュータの台数またはプッシュ送信配布サーバがストリーミングシグネチャ定義を提供するメカニズム(例えば、ブロードキャストまたはマルチキャスト)に依存する。
計算・ネットワーク環境の例
上に示したように、本発明は、様々なコンピュータシステムおよびネットワークを使用して実施することができる。そのような1つの計算・ネットワーク環境の例について、図6および図7を参照して以下に説明する。
図6は、本発明の実施形態の実施に適したコンピュータシステム610(例えば、シグネチャ更新サーバ110およびクライアントコンピュータ120(1)〜(M))のブロック図を示す。コンピュータシステム610は、中央プロセッサ614、システムメモリ617(通常、RAMであるが、ROM、フラッシュRAM等を含むこともできる)、入/出力コントローラ618、オーディオ出力インタフェース622を介するスピーカシステム620等の外部オーディオ装置、ディスプレイアダプタ626を介する表示画面624等の外部装置、シリアルポート628および630、キーボード632(キーボードコントローラ633とインタフェースする)、ストレージインタフェース634、フロッピーディスク638を受けるように動作可能なフロッピーディスクドライブ637、ファイバチャネルネットワーク690に接続するように動作可能なホストバスアダプタ(HBA)インタフェースカード635A、SCSIバス639に接続するように動作可能なホストバスアダプタ(HBA)インタフェースカード635B、ならびに光ディスク642を受けるように動作可能な光ディスクドライブ640等のコンピュータシステム610の主要サブシステムを相互接続するバス612を含む。マウス646(または他のポイント・クリック装置であり、シリアルポート628を介してバス612に結合される)、モデム647(シリアルポート630を介してバス612に結合される)、およびネットワークインタフェース648(バス612に直接結合される)も含まれる。
バス612は、中央プロセッサ614とシステムメモリ617との間のデータ通信を可能にし、システムメモリ617は、上述したように、読み取り専用メモリ(ROM)またはフラッシュメモリ(いずれも図示せず)およびランダムアクセスメモリ(RAM)(図示せず)を含み得る。RAMは一般に、オペレーティングシステムおよびアプリケーションプログラムがロードされるメインメモリである。ROMまたはフラッシュメモリは、コードの中でも特に、周辺機器との対話等の基本ハードウェア動作を制御する基本入出力システム(BIOS)を含み得る。コンピュータシステム610に存在するアプリケーションは一般には、ハードディスクドライブ(例えば、固定ディスク644)、光ドライブ(例えば、光ドライブ640)、フロッピーディスクユニット637、または他の記憶媒体等のコンピュータ可読媒体に記憶され、コンピュータ可読媒体を介してアクセスされる。さらに、アプリケーションは、ネットワークモデム647またはインタフェース648を介してアクセスされた場合にアプリケーションおよびデータ通信技術に従って変調される電子信号の形態であってもよい。
ストレージインタフェース634は、コンピュータシステム610の他のストレージインタフェースと同様に、固定ディスクドライブ644等の、情報を記憶し、かつ/または検索するための標準コンピュータ可読媒体に接続することができる。固定ディスクドライブ644は、コンピュータシステム610の部分であってもよく、または別個であり、他のインタフェースシステムを通してアクセスしてもよい。モデム647は、電話回線リンクを介してリモートサーバへの直接接続またはインターネットサービスプロバイダ(ISP)を介してインターネットへの直接接続を提供し得る。ネットワークインタフェース648は、POP(point of presence)を介するインターネットへの直接ネットワークリンクを介してリモートサーバに直接接続を提供し得る。ネットワークインタフェース648は、デジタルセルラ電話接続、セルラデジタルパケットデータ(CDPD)接続、デジタル衛星データ接続等を含む無線技法を使用してそのような接続を提供し得る。
多くの他の装置またはサブシステム(図示せず)も同様に接続し得る(例えば、ドキュメントスキャナ、デジタルカメラ等)。逆に、本発明を実施するために、図6に示されているすべての装置が存在する必要はない。装置およびサブシステムは、図6に示される方法とは異なる方法で相互接続されてもよい。図6に示されるようなコンピュータシステムの動作は、当分野において容易に知られており、本願において詳細に考察しない。本発明を実施するためのコードは、システムメモリ617、固定ディスク644、光ディスク642、またはフロッピーディスク638のうちの1つまたは複数等のコンピュータ可読記憶媒体に記憶することができる。コンピュータシステム610に提供されるオペレーティングシステムは、MS−DOS(登録商標)、MS−WINDOWS(登録商標)、OS//2(登録商標)、UNIX(登録商標)、Linux(登録商標)、または別の既知のオペレーティングシステムであり得る。
さらに、本明細書において説明される信号に関して、信号を第1のブロックから第2のブロックに直接送信してもよく、又は信号をブロック間で変更してもよい(例えば、増幅、減衰、遅延、ラッチ、バッファリング、反転、フィルタリング、または他の様式での変更)ことを当業者なら理解するであろう。上述した実施形態の信号は、あるブロックから次のブロックに送信されることを特徴とするが、本発明の他の実施形態は、信号の情報および/または機能側面がブロック間で送信される限り、そのような直接送信される信号に代えて、変更された信号を含み得る。ある程度、第2のブロックでの信号入力は、関わる回路の物理的制限により(例えば、いくらかの減衰および遅延が必然的に存在することになる)、第1のブロックからの第1の信号出力から導出される第2の信号として概念化することができる。したがって、本明細書において使用される、第1の信号から導出される第2の信号は、回路制限によるものであるか、それとも第1の信号の情報的側面および/または機能的側面を変更しない他の回路要素を通過することによるものであるかに関わらず、第1の信号または第1の信号への任意の変更を含む。
図7は、クライアントシステム710、720、および730、ならびに記憶サーバ740Aおよび740B(これらのうちの任意のものはコンピュータシステム610を使用して実施することができる)がネットワーク750に結合されるネットワークアーキテクチャ700を示すブロック図である。記憶サーバ740Aは、直接取り付けられた記憶装置760A(1)〜(N)としてさらに示され、記憶サーバ740Bは、直接取り付けられた記憶装置760B(1)〜(N)を有して示される。記憶サーバ740Aおよび740Bは、SANファブリック770にも接続されるが、ストレージエリアネットワークへの接続は、本発明の動作に必要なものではない。SANファブリック770は、ネットワーク750を介しての記憶サーバ740Aおよび740B、ひいてはクライアントシステム710、720、および730による記憶装置780(1)〜(N)へのアクセスをサポートする。インテリジェント記憶装置アレイ790も、SANファブリック770を介してアクセス可能な特定の記憶装置の例として示される。
コンピュータシステム610を参照すると、モデム647、ネットワークインタフェース648、または他の何等かの方法を使用して、クライアントコンピュータシステム710、720、および730のそれぞれからネットワーク750への接続を提供することができる。クライアントシステム710、720、および730は、例えば、ウェブブラウザまたは他のクライアントソフトウェア(図示せず)を使用して記憶サーバ740Aまたは740B上の情報にアクセスすることが可能である。そのようなクライアントは、クライアントシステム710、720、および730が、記憶サーバ740Aもしくは740B、記憶装置760A(1)〜(N)、760B(1)〜(N)、780(1)〜(N)のうちの1つ、またはインテリジェント記憶装置アレイ790によりホストされるデータにアクセスできるようにする。図7は、データを交換するために、インターネット等のネットワークを使用することを示すが、本発明はインターネットまたはいかなる特定のネットワークに基づく環境にも限定されない。
他の実施形態
本発明は、上述した利点ならびに固有の他の利点を得るように上手く適応する。本発明は、本発明の特定の実施形態を参照することにより図示され、説明され、定義されたが、そのような参照は本発明の対する限定を暗示せず、そのような限定は暗示されない。本発明は、形態および機能に関して、関連分野の当業者が思いつくであろうかなりの変更、代替、および均等物が可能である。図示され説明される実施形態は単なる例であり、本発明の範囲を網羅するものではない。
上記では、他の構成要素内に含まれる構成要素(例えば、コンピュータシステム610の構成要素として示される様々な要素)を含む実施形態について説明した。そのようなアーキテクチャは単なる例であり、実際には、同じ機能を達成する他の多くのアーキテクチャを実施し得る。抽象的ではなるが、それでもやはり明確な意味で、同じ機能を達成する構成要素の任意の構成は、所望の機能が達成されるように効率的に「関連付けられる」。したがって、本明細書において組み合わせられて特定の機能を達成する任意の2つの構成要素は、アーキテクチャまたは介在構成要素に関係なく、所望の機能が達成されるように互いに「関連付けられる」ものとして見ることができる。同様に、そうして関連付けられた任意の2つの構成要素は、互いに「動作可能に接続」または「動作可能に結合」されて、所望の機能を達成するものとして見ることもできる。
上記の詳細な説明は、ブロック図、フローチャート、および例の使用を介して本発明の様々な実施形態を説明した。例の使用により示される各ブロック図構成要素、フローチャートステップ、動作、および/または構成要素を、広範囲のハードウェア、ソフトウェア、ファームウェア、またはこれらの任意の組み合わせにより個々に、かつ/または集合的に実施可能なことを当業者なら理解するであろう。
本発明について完全に機能的なコンピュータシステムの文脈の中で説明したが、本発明を様々な形態でプログラム製品として配布可能なこと、および本発明が、実際に配布の実行に使用される特定の種類の信号搬送媒体に関係なく等しく適用されることを当業者なら理解するであろう。信号搬送媒体の例としては、コンピュータ可読記憶媒体、デジタル通信リンクおよびアナログ通信リンク等の伝送型媒体、ならびに将来開発される媒体記憶・配布システムが挙げられる。
上記実施形態は、特定のタスクを実行するソフトウェアモジュールにより実施することができる。本明細書において考察されるソフトウェアモジュールは、スクリプト、バッチ、または他の実行可能ファイルを含み得る。ソフトウェアモジュールは、磁気フロッピーディスク、ハードディスク、半導体メモリ(例えば、RAM、ROM、およびフラッシュ型媒体)、光ディスク(例えば、CD−ROM、CD−R、およびDVD)、または他の種類のメモリモジュール等の機械可読またはコンピュータ可読の記憶媒体に記憶し得る。本発明の実施形態による、ファームウェアまたはハードウェアモジュールの記憶に使用される記憶装置は、マイクロプロセッサ/メモリシステムに永久的に、取り外し可能に、または遠隔的に結合し得る半導体に基づくメモリも含み得る。したがって、モジュールをコンピュータシステムメモリに記憶して、モジュールの機能を実行するようにコンピュータシステムを構成することができる。本明細書において考察したモジュールを記憶するために、他の新しい様々な種類のコンピュータ可読記憶媒体を使用し得る。
上記説明は、本発明の例示を意図されるものであり、限定として解釈されるべきではない。本発明の範囲内の他の実施形態も可能である。当業者なら、本明細書において開示された構造および方法を提供するために必要なステップを容易に実施し、プロセスパラメータおよびステップの順序が単なる例として与えられ、所望の構造ならびに本発明の範囲内の変更を達成するために変更可能なことを理解するであろう。本明細書に開示される実施形態の変形および変更は、本発明の範囲から逸脱せずに、本明細書に記載される説明に基づいて行うことができる。
したがって、本発明は、すべての観点での均等物を完全に認識して、添付の特許請求の範囲によってのみ限定されることが意図される。
本発明についていくつかの実施形態に関連して説明したが、本発明は本明細書に記載される特定の形態に限定されることを意図されない。逆に、添付の特許請求の範囲により定義される本発明の範囲内に合理的に包含可能なそのような代替、変更、および均等物を包含することが意図される。
本発明の実施形態は、コンピュータセキュリティの分野に使用することができる。

Claims (15)

  1. 発行閾値時間が経過すると更新された完全シグネチャ定義ファイルが発行され、前記発行閾値時間の後、それぞれが更新前の前記完全シグネチャ定義ファイルに対する変更を含む複数のデルタ定義ファイルへのポインタと記憶領域へのポインタとを含むミニドライブファイルを受信するステップと、
    クライアントコンピュータにインストールされた完全シグネチャ定義ファイルに関連付けられたバージョン識別子を、前記ミニドライブファイルで識別される、更新前のバージョンと比較して所定のデルタ定義ファイルに関連付けられた情報を識別するステップと、
    前記デルタ定義ファイルを前記記憶領域から要求するステップと
    を含む、方法。
  2. 前記クライアントコンピュータにインストールされた前記完全シグネチャ定義ファイルを前記デルタ定義ファイルを用いて更新するステップをさらに含み、
    前記クライアントコンピュータにインストールされたストリーミングシグネチャ定義ファイルのバージョン識別子を当該クライアントコンピュータにインストールされた完全シグネチャ定義ファイルと比較するステップと、
    前記クライアントコンピュータにインストールされた前記完全シグネチャ定義ファイルのバージョン識別子を含む前記ストリーミングシグネチャ定義ファイルを除去するステップとをさらに含む、請求項1に記載の方法。
  3. 前記ミニドライブファイルを受信する前に第1のマルウェアシグネチャを含む第1のストリーミングシグネチャ定義ファイルを受信するステップをさらに含み、
    前記クライアントコンピュータに格納された前記完全シグネチャ定義ファイルは、第1の複数のマルウェアシグネチャを含む、請求項1または2に記載の方法。
  4. 前記クライアントコンピュータに格納される完全シグネチャ定義ファイルと前記第1のストリーミングシグネチャ定義ファイルを用いて、前記第1のマルウェアシグネチャと前記第1の複数のマルウェアシグネチャに対応するマルウェアのインスタンスを検索するステップをさらに含む、請求項3に記載の方法。
  5. 前記第1のストリーングシグネチャ定義ファイルを受信した後第2のストリーミングシグネチャ定義ファイルを受信するステップをさらに含み、前記第2のストリーミングシグネチャ定義ファイルは、前記第1の複数のマルウェアシグネチャを含まず第2の複数のマルウェアシグネチャを含み、前記第2の複数のマルウェアシグネチャに対応するマルウェアのインスタンスを検索するために用いられる、請求項3または4に記載の方法。
  6. プロセッサにて実行されることで当該プロセッサに方法を実行させるためのプログラム命令を格納するコンピュータ読取り可能な記憶媒体であって、前記方法は、
    発行閾値時間が経過すると更新された完全シグネチャ定義ファイルが発行され、前記発行閾値時間の後、それぞれが更新前の前記完全シグネチャ定義ファイルに対する変更を含む複数のデルタ定義ファイルへのポインタと記憶領域へのポインタとを含むミニドライブファイルを受信するステップと、
    クライアントコンピュータにインストールされた完全シグネチャ定義ファイルに関連付けられたバージョン識別子を、前記ミニドライブファイルで識別される、更新前のバージョンと比較して所定のデルタ定義ファイルに関連付けられた情報を識別するステップと、
    前記デルタ定義ファイルを前記記憶領域から要求するステップとを含む、コンピュータ読取り可能な記憶媒体。
  7. 前記方法が、
    前記クライアントコンピュータにインストールされた前記完全シグネチャ定義ファイルを前記デルタ定義ファイルを用いて更新するステップをさらに含み、
    前記クライアントコンピュータにインストールされたストリーミングシグネチャ定義ファイルのバージョン識別子を当該クライアントコンピュータにインストールされた完全シグネチャ定義ファイルと比較するステップと、
    前記クライアントコンピュータにインストールされた前記完全シグネチャ定義ファイルのバージョン識別子を含む前記ストリーミングシグネチャ定義ファイルを除去するステップとをさらに含む、請求項6に記載のコンピュータ読取り可能な記憶媒体。
  8. 前記方法は、前記ミニドライブファイルを受信する前に第1のマルウェアシグネチャを含む第1のストリーミングシグネチャ定義ファイルを受信するステップをさらに含み、
    前記クライアントコンピュータに格納された前記完全シグネチャ定義ファイルは、第1の複数のマルウェアシグネチャを含む、請求項6または7に記載のコンピュータ読取り可能な記憶媒体。
  9. 前記方法は、前記クライアントコンピュータに格納される完全シグネチャ定義ファイルと前記第1のストリーミングシグネチャ定義ファイルを用いて、前記第1のマルウェアシグネチャと前記第1の複数のマルウェアシグネチャに対応するマルウェアのインスタンスを検索するステップをさらに含む、請求項8に記載のコンピュータ読取り可能な記憶媒体。
  10. 前記方法は、前記第1のストリーングシグネチャ定義ファイルを受信した後第2のストリーミングシグネチャ定義ファイルを受信するステップをさらに含み、
    前記第2のストリーミングシグネチャ定義ファイルは、前記第1の複数のマルウェアシグネチャを含まず第2の複数のマルウェアシグネチャを含み、前記第2の複数のマルウェアシグネチャに対応するマルウェアのインスタンスを検索するために用いられる、請求項8または9に記載のコンピュータ読取り可能な記憶媒体。
  11. プロセッサと、当該プロセッサに接続されるとともに当該プロセッサにて実行可能な命令を格納するメモリとを備える装置であって、
    前記命令は、
    発行閾値時間が経過すると更新された完全シグネチャ定義ファイルが発行され、前記発行閾値時間の後、それぞれが更新前の前記完全シグネチャ定義ファイルの変更を含む複数のデルタ定義ファイルへのポインタと記憶領域へのポインタとを含むミニドライブファイルを受信するステップと、
    クライアントコンピュータにインストールされた完全シグネチャ定義ファイルに関連付けられたバージョン識別子を、前記ミニドライブファイルで識別される、更新前のバージョンと比較して所定のデルタ定義ファイルに関連付けられた情報を識別するステップと、
    前記デルタ定義ファイルを前記記憶領域から要求するステップと
    を含む、装置。
  12. 前記命令は、
    前記クライアントコンピュータにインストールされた前記完全シグネチャ定義ファイルを前記デルタ定義ファイルを用いて更新するステップをさらに含み、
    前記クライアントコンピュータにインストールされたストリーミングシグネチャ定義ファイルのバージョン識別子を当該クライアントコンピュータにインストールされた完全シグネチャ定義ファイルと比較するステップと、
    前記クライアントコンピュータにインストールされた前記完全シグネチャ定義ファイルのバージョン識別子を含む前記ストリーミングシグネチャ定義ファイルを除去するステップとをさらに含む、請求項11に記載の装置。
  13. 前記命令は、
    前記ミニドライブファイルを受信する前に第1のマルウェアシグネチャを含む第1のストリーミングシグネチャ定義ファイルを受信するステップをさらに含み、
    前記完全シグネチャ定義ファイルのローカルコピーは、第1の複数のマルウェアシグネチャを含む、請求項11または12に記載の装置。
  14. 前記命令は、
    前記クライアントコンピュータに格納される完全シグネチャ定義ファイルと前記第1のストリーミングシグネチャ定義ファイルを用いて、前記第1のマルウェアシグネチャと前記第1の複数のマルウェアシグネチャに対応するマルウェアのインスタンスを検索するステップをさらに含む、請求項13に記載の装置。
  15. 前記命令は、
    前記第1のストリーングシグネチャ定義ファイルを受信した後第2のストリーミングシグネチャ定義ファイルを受信するステップをさらに含み、前記第2のストリーミングシグネチャ定義ファイルは、前記第1の複数のマルウェアシグネチャを含まず第2の複数のマルウェアシグネチャを含み、前記第2の複数のマルウェアシグネチャに対応するマルウェアのインスタンスを検索するために用いられる、請求項13または14に記載の装置。
JP2014020997A 2008-06-20 2014-02-06 ストリーミングマルウェア定義更新のための方法、記憶媒体および装置 Active JP5921585B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/142,905 2008-06-20
US12/142,905 US8234709B2 (en) 2008-06-20 2008-06-20 Streaming malware definition updates

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2011514860A Division JP5475762B2 (ja) 2008-06-20 2009-06-19 ストリーミングマルウェア定義更新

Publications (2)

Publication Number Publication Date
JP2014130614A JP2014130614A (ja) 2014-07-10
JP5921585B2 true JP5921585B2 (ja) 2016-05-24

Family

ID=41311554

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2011514860A Active JP5475762B2 (ja) 2008-06-20 2009-06-19 ストリーミングマルウェア定義更新
JP2014020997A Active JP5921585B2 (ja) 2008-06-20 2014-02-06 ストリーミングマルウェア定義更新のための方法、記憶媒体および装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2011514860A Active JP5475762B2 (ja) 2008-06-20 2009-06-19 ストリーミングマルウェア定義更新

Country Status (5)

Country Link
US (3) US8234709B2 (ja)
EP (2) EP2650817B1 (ja)
JP (2) JP5475762B2 (ja)
CN (1) CN102105884B (ja)
WO (1) WO2009155555A2 (ja)

Families Citing this family (199)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8528086B1 (en) 2004-04-01 2013-09-03 Fireeye, Inc. System and method of detecting computer worms
US8898788B1 (en) 2004-04-01 2014-11-25 Fireeye, Inc. Systems and methods for malware attack prevention
US7587537B1 (en) 2007-11-30 2009-09-08 Altera Corporation Serializer-deserializer circuits formed from input-output circuit registers
US8171553B2 (en) 2004-04-01 2012-05-01 Fireeye, Inc. Heuristic based capture with replay to virtual machine
US9106694B2 (en) 2004-04-01 2015-08-11 Fireeye, Inc. Electronic message analysis for malware detection
US8793787B2 (en) 2004-04-01 2014-07-29 Fireeye, Inc. Detecting malicious network content using virtual environment components
US8584239B2 (en) 2004-04-01 2013-11-12 Fireeye, Inc. Virtual machine with dynamic data flow analysis
US8566946B1 (en) 2006-04-20 2013-10-22 Fireeye, Inc. Malware containment on connection
US8881282B1 (en) 2004-04-01 2014-11-04 Fireeye, Inc. Systems and methods for malware attack detection and identification
GB0513375D0 (en) 2005-06-30 2005-08-03 Retento Ltd Computer security
US7757269B1 (en) 2006-02-02 2010-07-13 Mcafee, Inc. Enforcing alignment of approved changes and deployed changes in the software change life-cycle
US7895573B1 (en) 2006-03-27 2011-02-22 Mcafee, Inc. Execution environment file inventory
US9424154B2 (en) 2007-01-10 2016-08-23 Mcafee, Inc. Method of and system for computer system state checks
US8332929B1 (en) 2007-01-10 2012-12-11 Mcafee, Inc. Method and apparatus for process enforced configuration management
US8176477B2 (en) 2007-09-14 2012-05-08 International Business Machines Corporation Method, system and program product for optimizing emulation of a suspected malware
US8910197B2 (en) * 2008-08-25 2014-12-09 Alcatel Lucent Update process for interface device based targeted information insertion
US8997219B2 (en) 2008-11-03 2015-03-31 Fireeye, Inc. Systems and methods for detecting malicious PDF network content
US8850571B2 (en) * 2008-11-03 2014-09-30 Fireeye, Inc. Systems and methods for detecting malicious network content
US8239948B1 (en) * 2008-12-19 2012-08-07 Symantec Corporation Selecting malware signatures to reduce false-positive detections
US9208315B2 (en) * 2009-03-17 2015-12-08 Microsoft Corporation Identification of telemetry data
US8769683B1 (en) * 2009-07-07 2014-07-01 Trend Micro Incorporated Apparatus and methods for remote classification of unknown malware
US8832829B2 (en) 2009-09-30 2014-09-09 Fireeye, Inc. Network-based binary file extraction and analysis for malware detection
US8539583B2 (en) * 2009-11-03 2013-09-17 Mcafee, Inc. Rollback feature
DE102010008538A1 (de) * 2010-02-18 2011-08-18 zynamics GmbH, 44787 Verfahren und System zum Erkennen einer Schadsoftware
US9213838B2 (en) * 2011-05-13 2015-12-15 Mcafee Ireland Holdings Limited Systems and methods of processing data associated with detection and/or handling of malware
US8578345B1 (en) * 2010-04-15 2013-11-05 Symantec Corporation Malware detection efficacy by identifying installation and uninstallation scenarios
US9356991B2 (en) * 2010-05-10 2016-05-31 Litera Technology Llc Systems and methods for a bidirectional multi-function communication module
EP2410453A1 (en) 2010-06-21 2012-01-25 Samsung SDS Co. Ltd. Anti-malware device, server, and method of matching malware patterns
KR101279213B1 (ko) 2010-07-21 2013-06-26 삼성에스디에스 주식회사 시스템 온 칩 기반의 안티-멀웨어 서비스를 제공할 수 있는 디바이스 및 그 방법과 인터페이스 방법
US8938800B2 (en) 2010-07-28 2015-01-20 Mcafee, Inc. System and method for network level protection against malicious software
US8925101B2 (en) 2010-07-28 2014-12-30 Mcafee, Inc. System and method for local protection against malicious software
US20120260304A1 (en) * 2011-02-15 2012-10-11 Webroot Inc. Methods and apparatus for agent-based malware management
US9112830B2 (en) 2011-02-23 2015-08-18 Mcafee, Inc. System and method for interlocking a host and a gateway
US9858415B2 (en) * 2011-06-16 2018-01-02 Microsoft Technology Licensing, Llc Cloud malware false positive recovery
US9594881B2 (en) 2011-09-09 2017-03-14 Mcafee, Inc. System and method for passive threat detection using virtual memory inspection
US8800024B2 (en) 2011-10-17 2014-08-05 Mcafee, Inc. System and method for host-initiated firewall discovery in a network environment
US8713668B2 (en) 2011-10-17 2014-04-29 Mcafee, Inc. System and method for redirected firewall discovery in a network environment
US9519782B2 (en) 2012-02-24 2016-12-13 Fireeye, Inc. Detecting malicious network content
US8739272B1 (en) 2012-04-02 2014-05-27 Mcafee, Inc. System and method for interlocking a host and a gateway
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
US8973146B2 (en) * 2012-12-27 2015-03-03 Mcafee, Inc. Herd based scan avoidance system in a network environment
US10572665B2 (en) 2012-12-28 2020-02-25 Fireeye, Inc. System and method to create a number of breakpoints in a virtual machine via virtual machine trapping events
US8918877B1 (en) * 2013-01-29 2014-12-23 Palo Alto Networks, Inc. Signature compilation on a security device
US9009822B1 (en) 2013-02-23 2015-04-14 Fireeye, Inc. Framework for multi-phase analysis of mobile applications
US9195829B1 (en) 2013-02-23 2015-11-24 Fireeye, Inc. User interface with real-time visual playback along with synchronous textual analysis log display and event/time index for anomalous behavior detection in applications
US9009823B1 (en) 2013-02-23 2015-04-14 Fireeye, Inc. Framework for efficient security coverage of mobile software applications installed on mobile devices
US9159035B1 (en) 2013-02-23 2015-10-13 Fireeye, Inc. Framework for computer application analysis of sensitive information tracking
US9367681B1 (en) 2013-02-23 2016-06-14 Fireeye, Inc. Framework for efficient security coverage of mobile software applications using symbolic execution to reach regions of interest within an application
US9824209B1 (en) 2013-02-23 2017-11-21 Fireeye, Inc. Framework for efficient security coverage of mobile software applications that is usable to harden in the field code
US9176843B1 (en) 2013-02-23 2015-11-03 Fireeye, Inc. Framework for efficient security coverage of mobile software applications
US8990944B1 (en) 2013-02-23 2015-03-24 Fireeye, Inc. Systems and methods for automatically detecting backdoors
US9355247B1 (en) 2013-03-13 2016-05-31 Fireeye, Inc. File extraction from memory dump for malicious content analysis
US9104867B1 (en) 2013-03-13 2015-08-11 Fireeye, Inc. Malicious content analysis using simulated user interaction without user involvement
US9565202B1 (en) 2013-03-13 2017-02-07 Fireeye, Inc. System and method for detecting exfiltration content
US9626509B1 (en) 2013-03-13 2017-04-18 Fireeye, Inc. Malicious content analysis with multi-version application support within single operating environment
US9430646B1 (en) 2013-03-14 2016-08-30 Fireeye, Inc. Distributed systems and methods for automatically detecting unknown bots and botnets
US9311479B1 (en) 2013-03-14 2016-04-12 Fireeye, Inc. Correlation and consolidation of analytic data for holistic view of a malware attack
US10713358B2 (en) 2013-03-15 2020-07-14 Fireeye, Inc. System and method to extract and utilize disassembly features to classify software intent
WO2014145805A1 (en) 2013-03-15 2014-09-18 Mandiant, Llc System and method employing structured intelligence to verify and contain threats at endpoints
US9251343B1 (en) 2013-03-15 2016-02-02 Fireeye, Inc. Detecting bootkits resident on compromised computers
US9495180B2 (en) 2013-05-10 2016-11-15 Fireeye, Inc. Optimized resource allocation for virtual machines within a malware content detection system
US9635039B1 (en) 2013-05-13 2017-04-25 Fireeye, Inc. Classifying sets of malicious indicators for detecting command and control communications associated with malware
US9058504B1 (en) * 2013-05-21 2015-06-16 Malwarebytes Corporation Anti-malware digital-signature verification
US9536091B2 (en) 2013-06-24 2017-01-03 Fireeye, Inc. System and method for detecting time-bomb malware
US10133863B2 (en) 2013-06-24 2018-11-20 Fireeye, Inc. Zero-day discovery system
US9219707B1 (en) * 2013-06-25 2015-12-22 Symantec Corporation Systems and methods for sharing the results of malware scans within networks
US9300686B2 (en) 2013-06-28 2016-03-29 Fireeye, Inc. System and method for detecting malicious links in electronic messages
US9888016B1 (en) 2013-06-28 2018-02-06 Fireeye, Inc. System and method for detecting phishing using password prediction
CN105431859A (zh) * 2013-07-31 2016-03-23 惠普发展公司,有限责任合伙企业 指示恶意软件的信号标记
US9798981B2 (en) 2013-07-31 2017-10-24 Entit Software Llc Determining malware based on signal tokens
US9628507B2 (en) 2013-09-30 2017-04-18 Fireeye, Inc. Advanced persistent threat (APT) detection center
US9171160B2 (en) 2013-09-30 2015-10-27 Fireeye, Inc. Dynamically adaptive framework and method for classifying malware using intelligent static, emulation, and dynamic analyses
US9294501B2 (en) 2013-09-30 2016-03-22 Fireeye, Inc. Fuzzy hash of behavioral results
US10192052B1 (en) 2013-09-30 2019-01-29 Fireeye, Inc. System, apparatus and method for classifying a file as malicious using static scanning
US10515214B1 (en) 2013-09-30 2019-12-24 Fireeye, Inc. System and method for classifying malware within content created during analysis of a specimen
US9736179B2 (en) 2013-09-30 2017-08-15 Fireeye, Inc. System, apparatus and method for using malware analysis results to drive adaptive instrumentation of virtual machines to improve exploit detection
US9690936B1 (en) 2013-09-30 2017-06-27 Fireeye, Inc. Multistage system and method for analyzing obfuscated content for malware
US10089461B1 (en) 2013-09-30 2018-10-02 Fireeye, Inc. Page replacement code injection
CN105580023B (zh) 2013-10-24 2019-08-16 迈克菲股份有限公司 网络环境中的代理辅助的恶意应用阻止
US9921978B1 (en) 2013-11-08 2018-03-20 Fireeye, Inc. System and method for enhanced security of storage devices
US9189627B1 (en) 2013-11-21 2015-11-17 Fireeye, Inc. System, apparatus and method for conducting on-the-fly decryption of encrypted objects for malware detection
US9747446B1 (en) 2013-12-26 2017-08-29 Fireeye, Inc. System and method for run-time object classification
US9756074B2 (en) 2013-12-26 2017-09-05 Fireeye, Inc. System and method for IPS and VM-based detection of suspicious objects
US9292686B2 (en) 2014-01-16 2016-03-22 Fireeye, Inc. Micro-virtualization architecture for threat-aware microvisor deployment in a node of a network environment
US9262635B2 (en) 2014-02-05 2016-02-16 Fireeye, Inc. Detection efficacy of virtual machine-based analysis with application specific events
EP3099024B1 (en) 2014-03-19 2019-01-02 Nippon Telegraph and Telephone Corporation Analysis rule adjustment device, analysis rule adjustment system, analysis rule adjustment method, and analysis rule adjustment program
US9241010B1 (en) 2014-03-20 2016-01-19 Fireeye, Inc. System and method for network behavior detection
US10242185B1 (en) 2014-03-21 2019-03-26 Fireeye, Inc. Dynamic guest image creation and rollback
US9591015B1 (en) 2014-03-28 2017-03-07 Fireeye, Inc. System and method for offloading packet processing and static analysis operations
US9432389B1 (en) 2014-03-31 2016-08-30 Fireeye, Inc. System, apparatus and method for detecting a malicious attack based on static analysis of a multi-flow object
US9223972B1 (en) 2014-03-31 2015-12-29 Fireeye, Inc. Dynamically remote tuning of a malware content detection system
US9438623B1 (en) 2014-06-06 2016-09-06 Fireeye, Inc. Computer exploit detection using heap spray pattern matching
US9594912B1 (en) 2014-06-06 2017-03-14 Fireeye, Inc. Return-oriented programming detection
US9973531B1 (en) 2014-06-06 2018-05-15 Fireeye, Inc. Shellcode detection
US10084813B2 (en) 2014-06-24 2018-09-25 Fireeye, Inc. Intrusion prevention and remedy system
US9398028B1 (en) 2014-06-26 2016-07-19 Fireeye, Inc. System, device and method for detecting a malicious attack based on communcations between remotely hosted virtual machines and malicious web servers
US10805340B1 (en) 2014-06-26 2020-10-13 Fireeye, Inc. Infection vector and malware tracking with an interactive user display
US10002252B2 (en) 2014-07-01 2018-06-19 Fireeye, Inc. Verification of trusted threat-aware microvisor
US9363280B1 (en) 2014-08-22 2016-06-07 Fireeye, Inc. System and method of detecting delivery of malware using cross-customer data
US10671726B1 (en) 2014-09-22 2020-06-02 Fireeye Inc. System and method for malware analysis using thread-level event monitoring
US10027689B1 (en) 2014-09-29 2018-07-17 Fireeye, Inc. Interactive infection visualization for improved exploit detection and signature generation for malware and malware families
US9773112B1 (en) 2014-09-29 2017-09-26 Fireeye, Inc. Exploit detection of malware and malware families
EP3213207A4 (en) * 2014-10-31 2018-04-25 Cyber Crucible Inc. A system and method for network intrusion detection of covert channels based on off-line network traffic
US9832216B2 (en) 2014-11-21 2017-11-28 Bluvector, Inc. System and method for network data characterization
US9690933B1 (en) 2014-12-22 2017-06-27 Fireeye, Inc. Framework for classifying an object as malicious with machine learning for deploying updated predictive models
US10075455B2 (en) 2014-12-26 2018-09-11 Fireeye, Inc. Zero-day rotating guest image profile
US9934376B1 (en) 2014-12-29 2018-04-03 Fireeye, Inc. Malware detection appliance architecture
US9838417B1 (en) 2014-12-30 2017-12-05 Fireeye, Inc. Intelligent context aware user interaction for malware detection
US9672357B2 (en) * 2015-02-26 2017-06-06 Mcafee, Inc. System and method to mitigate malware
US9438612B1 (en) 2015-03-23 2016-09-06 Fortinet, Inc. Calculating consecutive matches using parallel computing
US9690606B1 (en) 2015-03-25 2017-06-27 Fireeye, Inc. Selective system call monitoring
US10148693B2 (en) 2015-03-25 2018-12-04 Fireeye, Inc. Exploit detection system
US9438613B1 (en) 2015-03-30 2016-09-06 Fireeye, Inc. Dynamic content activation for automated analysis of embedded objects
US10474813B1 (en) 2015-03-31 2019-11-12 Fireeye, Inc. Code injection technique for remediation at an endpoint of a network
US10417031B2 (en) 2015-03-31 2019-09-17 Fireeye, Inc. Selective virtualization for security threat detection
US9483644B1 (en) 2015-03-31 2016-11-01 Fireeye, Inc. Methods for detecting file altering malware in VM based analysis
US9654485B1 (en) 2015-04-13 2017-05-16 Fireeye, Inc. Analytics-based security monitoring system and method
US9594904B1 (en) 2015-04-23 2017-03-14 Fireeye, Inc. Detecting malware based on reflection
US9935972B2 (en) * 2015-06-29 2018-04-03 Fortinet, Inc. Emulator-based malware learning and detection
US11113086B1 (en) 2015-06-30 2021-09-07 Fireeye, Inc. Virtual system and method for securing external network connectivity
US10642753B1 (en) 2015-06-30 2020-05-05 Fireeye, Inc. System and method for protecting a software component running in virtual machine using a virtualization layer
US10726127B1 (en) 2015-06-30 2020-07-28 Fireeye, Inc. System and method for protecting a software component running in a virtual machine through virtual interrupts by the virtualization layer
US10454950B1 (en) 2015-06-30 2019-10-22 Fireeye, Inc. Centralized aggregation technique for detecting lateral movement of stealthy cyber-attacks
US10715542B1 (en) 2015-08-14 2020-07-14 Fireeye, Inc. Mobile application risk analysis
US10176321B2 (en) 2015-09-22 2019-01-08 Fireeye, Inc. Leveraging behavior-based rules for malware family classification
US10033747B1 (en) 2015-09-29 2018-07-24 Fireeye, Inc. System and method for detecting interpreter-based exploit attacks
US10817606B1 (en) 2015-09-30 2020-10-27 Fireeye, Inc. Detecting delayed activation malware using a run-time monitoring agent and time-dilation logic
US9825976B1 (en) 2015-09-30 2017-11-21 Fireeye, Inc. Detection and classification of exploit kits
US10210329B1 (en) 2015-09-30 2019-02-19 Fireeye, Inc. Method to detect application execution hijacking using memory protection
US10601865B1 (en) 2015-09-30 2020-03-24 Fireeye, Inc. Detection of credential spearphishing attacks using email analysis
US10706149B1 (en) 2015-09-30 2020-07-07 Fireeye, Inc. Detecting delayed activation malware using a primary controller and plural time controllers
US9825989B1 (en) 2015-09-30 2017-11-21 Fireeye, Inc. Cyber attack early warning system
US10284575B2 (en) 2015-11-10 2019-05-07 Fireeye, Inc. Launcher for setting analysis environment variations for malware detection
US10447728B1 (en) 2015-12-10 2019-10-15 Fireeye, Inc. Technique for protecting guest processes using a layered virtualization architecture
US10846117B1 (en) 2015-12-10 2020-11-24 Fireeye, Inc. Technique for establishing secure communication between host and guest processes of a virtualization architecture
US10108446B1 (en) 2015-12-11 2018-10-23 Fireeye, Inc. Late load technique for deploying a virtualization layer underneath a running operating system
WO2017111915A1 (en) * 2015-12-21 2017-06-29 Hewlett Packard Enterprise Development Lp Identifying signatures for data sets
US10621338B1 (en) 2015-12-30 2020-04-14 Fireeye, Inc. Method to detect forgery and exploits using last branch recording registers
US10565378B1 (en) 2015-12-30 2020-02-18 Fireeye, Inc. Exploit of privilege detection framework
US10050998B1 (en) 2015-12-30 2018-08-14 Fireeye, Inc. Malicious message analysis system
US10133866B1 (en) 2015-12-30 2018-11-20 Fireeye, Inc. System and method for triggering analysis of an object for malware in response to modification of that object
US9824216B1 (en) 2015-12-31 2017-11-21 Fireeye, Inc. Susceptible environment detection system
US11552986B1 (en) 2015-12-31 2023-01-10 Fireeye Security Holdings Us Llc Cyber-security framework for application of virtual features
US10581874B1 (en) 2015-12-31 2020-03-03 Fireeye, Inc. Malware detection system with contextual analysis
JP6762368B2 (ja) * 2016-03-04 2020-09-30 コンヴィーダ ワイヤレス, エルエルシー サービス層における要求処理
US10476906B1 (en) 2016-03-25 2019-11-12 Fireeye, Inc. System and method for managing formation and modification of a cluster within a malware detection system
US10785255B1 (en) 2016-03-25 2020-09-22 Fireeye, Inc. Cluster configuration within a scalable malware detection system
US10671721B1 (en) 2016-03-25 2020-06-02 Fireeye, Inc. Timeout management services
US10601863B1 (en) 2016-03-25 2020-03-24 Fireeye, Inc. System and method for managing sensor enrollment
US10893059B1 (en) 2016-03-31 2021-01-12 Fireeye, Inc. Verification and enhancement using detection systems located at the network periphery and endpoint devices
US10826933B1 (en) 2016-03-31 2020-11-03 Fireeye, Inc. Technique for verifying exploit/malware at malware detection appliance through correlation with endpoints
CN105933301A (zh) * 2016-04-13 2016-09-07 重庆邮电大学 一种基于sdn实现网络蠕虫集中防控的方法和装置
JP6499380B2 (ja) * 2016-06-13 2019-04-10 日本電信電話株式会社 ログ分析装置、ログ分析方法およびログ分析プログラム
US10169585B1 (en) 2016-06-22 2019-01-01 Fireeye, Inc. System and methods for advanced malware detection through placement of transition events
US10462173B1 (en) 2016-06-30 2019-10-29 Fireeye, Inc. Malware detection verification and enhancement by coordinating endpoint and malware detection systems
US10592678B1 (en) 2016-09-09 2020-03-17 Fireeye, Inc. Secure communications between peers using a verified virtual trusted platform module
US10491627B1 (en) 2016-09-29 2019-11-26 Fireeye, Inc. Advanced malware detection using similarity analysis
US10795991B1 (en) 2016-11-08 2020-10-06 Fireeye, Inc. Enterprise search
US10587647B1 (en) 2016-11-22 2020-03-10 Fireeye, Inc. Technique for malware detection capability comparison of network security devices
US10581879B1 (en) 2016-12-22 2020-03-03 Fireeye, Inc. Enhanced malware detection for generated objects
US10552610B1 (en) 2016-12-22 2020-02-04 Fireeye, Inc. Adaptive virtual machine snapshot update framework for malware behavioral analysis
US10523609B1 (en) 2016-12-27 2019-12-31 Fireeye, Inc. Multi-vector malware detection and analysis
US10904286B1 (en) 2017-03-24 2021-01-26 Fireeye, Inc. Detection of phishing attacks using similarity analysis
US10791138B1 (en) 2017-03-30 2020-09-29 Fireeye, Inc. Subscription-based malware detection
US10848397B1 (en) 2017-03-30 2020-11-24 Fireeye, Inc. System and method for enforcing compliance with subscription requirements for cyber-attack detection service
US10902119B1 (en) 2017-03-30 2021-01-26 Fireeye, Inc. Data extraction system for malware analysis
US10798112B2 (en) 2017-03-30 2020-10-06 Fireeye, Inc. Attribute-controlled malware detection
DE102017208192A1 (de) * 2017-05-16 2018-11-22 Robert Bosch Gmbh Recheneinheit und Betriebsverfahren für eine Recheneinheit
US10601848B1 (en) 2017-06-29 2020-03-24 Fireeye, Inc. Cyber-security system and method for weak indicator detection and correlation to generate strong indicators
US10855700B1 (en) 2017-06-29 2020-12-01 Fireeye, Inc. Post-intrusion detection of cyber-attacks during lateral movement within networks
US10503904B1 (en) 2017-06-29 2019-12-10 Fireeye, Inc. Ransomware detection and mitigation
US10893068B1 (en) 2017-06-30 2021-01-12 Fireeye, Inc. Ransomware file modification prevention technique
US10747872B1 (en) 2017-09-27 2020-08-18 Fireeye, Inc. System and method for preventing malware evasion
US10805346B2 (en) 2017-10-01 2020-10-13 Fireeye, Inc. Phishing attack detection
US11108809B2 (en) 2017-10-27 2021-08-31 Fireeye, Inc. System and method for analyzing binary code for malware classification using artificial neural network techniques
US11240275B1 (en) 2017-12-28 2022-02-01 Fireeye Security Holdings Us Llc Platform and method for performing cybersecurity analyses employing an intelligence hub with a modular architecture
US11271955B2 (en) 2017-12-28 2022-03-08 Fireeye Security Holdings Us Llc Platform and method for retroactive reclassification employing a cybersecurity-based global data store
US11005860B1 (en) 2017-12-28 2021-05-11 Fireeye, Inc. Method and system for efficient cybersecurity analysis of endpoint events
US10826931B1 (en) 2018-03-29 2020-11-03 Fireeye, Inc. System and method for predicting and mitigating cybersecurity system misconfigurations
US11558401B1 (en) 2018-03-30 2023-01-17 Fireeye Security Holdings Us Llc Multi-vector malware detection data sharing system for improved detection
US11003773B1 (en) 2018-03-30 2021-05-11 Fireeye, Inc. System and method for automatically generating malware detection rule recommendations
US10956477B1 (en) 2018-03-30 2021-03-23 Fireeye, Inc. System and method for detecting malicious scripts through natural language processing modeling
US11314859B1 (en) 2018-06-27 2022-04-26 FireEye Security Holdings, Inc. Cyber-security system and method for detecting escalation of privileges within an access token
US11075930B1 (en) 2018-06-27 2021-07-27 Fireeye, Inc. System and method for detecting repetitive cybersecurity attacks constituting an email campaign
US11228491B1 (en) 2018-06-28 2022-01-18 Fireeye Security Holdings Us Llc System and method for distributed cluster configuration monitoring and management
US11316900B1 (en) 2018-06-29 2022-04-26 FireEye Security Holdings Inc. System and method for automatically prioritizing rules for cyber-threat detection and mitigation
US11182473B1 (en) 2018-09-13 2021-11-23 Fireeye Security Holdings Us Llc System and method for mitigating cyberattacks against processor operability by a guest process
US11763004B1 (en) 2018-09-27 2023-09-19 Fireeye Security Holdings Us Llc System and method for bootkit detection
US11409884B2 (en) * 2018-10-31 2022-08-09 Dell Products L.P. Security profiling of system firmware and applications from an OOB appliance at a differentiated trust boundary
US11368475B1 (en) 2018-12-21 2022-06-21 Fireeye Security Holdings Us Llc System and method for scanning remote services to locate stored objects with malware
US12074887B1 (en) 2018-12-21 2024-08-27 Musarubra Us Llc System and method for selectively processing content after identification and removal of malicious content
US11258806B1 (en) 2019-06-24 2022-02-22 Mandiant, Inc. System and method for automatically associating cybersecurity intelligence to cyberthreat actors
US11556640B1 (en) 2019-06-27 2023-01-17 Mandiant, Inc. Systems and methods for automated cybersecurity analysis of extracted binary string sets
US11392700B1 (en) 2019-06-28 2022-07-19 Fireeye Security Holdings Us Llc System and method for supporting cross-platform data verification
US11288401B2 (en) * 2019-09-11 2022-03-29 AO Kaspersky Lab System and method of reducing a number of false positives in classification of files
US11216558B2 (en) 2019-09-24 2022-01-04 Quick Heal Technologies Limited Detecting malwares in data streams
US11886585B1 (en) 2019-09-27 2024-01-30 Musarubra Us Llc System and method for identifying and mitigating cyberattacks through malicious position-independent code execution
US11637862B1 (en) 2019-09-30 2023-04-25 Mandiant, Inc. System and method for surfacing cyber-security threats with a self-learning recommendation engine

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5948104A (en) * 1997-05-23 1999-09-07 Neuromedical Systems, Inc. System and method for automated anti-viral file update
US6052531A (en) * 1998-03-25 2000-04-18 Symantec Corporation Multi-tiered incremental software updating
GB2368233B (en) 2000-08-31 2002-10-16 F Secure Oyj Maintaining virus detection software
US6980992B1 (en) * 2001-07-26 2005-12-27 Mcafee, Inc. Tree pattern system and method for multiple virus signature recognition
US6785820B1 (en) 2002-04-02 2004-08-31 Networks Associates Technology, Inc. System, method and computer program product for conditionally updating a security program
US20050257205A1 (en) * 2004-05-13 2005-11-17 Microsoft Corporation Method and system for dynamic software updates
US7441273B2 (en) * 2004-09-27 2008-10-21 Mcafee, Inc. Virus scanner system and method with integrated spyware detection capabilities
US7665081B1 (en) * 2006-05-06 2010-02-16 Kaspersky Lab, Zao System and method for difference-based software updating

Also Published As

Publication number Publication date
US9047467B1 (en) 2015-06-02
EP2650817A3 (en) 2013-11-27
JP2011525285A (ja) 2011-09-15
US8561196B1 (en) 2013-10-15
EP2650817B1 (en) 2016-05-04
JP2014130614A (ja) 2014-07-10
US8234709B2 (en) 2012-07-31
WO2009155555A3 (en) 2010-10-07
EP2316090A2 (en) 2011-05-04
US20090320133A1 (en) 2009-12-24
EP2316090B1 (en) 2014-05-07
CN102105884A (zh) 2011-06-22
JP5475762B2 (ja) 2014-04-16
WO2009155555A2 (en) 2009-12-23
CN102105884B (zh) 2015-06-17
EP2650817A2 (en) 2013-10-16

Similar Documents

Publication Publication Date Title
JP5921585B2 (ja) ストリーミングマルウェア定義更新のための方法、記憶媒体および装置
US11277423B2 (en) Anomaly-based malicious-behavior detection
US8667583B2 (en) Collecting and analyzing malware data
US9639697B2 (en) Method and apparatus for retroactively detecting malicious or otherwise undesirable software
US7203959B2 (en) Stream scanning through network proxy servers
JP6644001B2 (ja) ウイルス処理方法、装置、システム、機器及びコンピュータ記憶媒体
JP5963008B2 (ja) コンピュータシステムの分析方法および装置
EP2939173B1 (en) Real-time representation of security-relevant system state
US20080301796A1 (en) Adjusting the Levels of Anti-Malware Protection
US20020083183A1 (en) Conventionally coded application conversion system for streamed delivery and execution
US20150089655A1 (en) System and method for detecting malware based on virtual host
WO2012107255A1 (en) Detecting a trojan horse
WO2012092251A1 (en) Systems and methods for malware detection and scanning
WO2012022225A1 (zh) 一种基于云安全的主动防御方法
US8800040B1 (en) Methods and systems for prioritizing the monitoring of malicious uniform resource locators for new malware variants
EP2245572A2 (en) Detecting rootkits over a storage area network
US8978139B1 (en) Method and apparatus for detecting malicious software activity based on an internet resource information database
US9239907B1 (en) Techniques for identifying misleading applications
US20130263269A1 (en) Controlling Anti-Virus Software Updates
US7523501B2 (en) Adaptive computer worm filter and methods of use thereof
CN115906075A (zh) Iis应用服务器的防护方法、装置、服务器及存储介质
AU2007203543A1 (en) Threat identification
Farrokhi Network Administration with FreeBSD 7
AU2007216765A1 (en) Threat detecting proxy server

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150630

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150929

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: 20160315

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160412

R150 Certificate of patent or registration of utility model

Ref document number: 5921585

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250