JP2018538633A - 複数のネットワークエンドポイントをセキュアにするためのデュアルメモリイントロスペクション - Google Patents

複数のネットワークエンドポイントをセキュアにするためのデュアルメモリイントロスペクション Download PDF

Info

Publication number
JP2018538633A
JP2018538633A JP2018532300A JP2018532300A JP2018538633A JP 2018538633 A JP2018538633 A JP 2018538633A JP 2018532300 A JP2018532300 A JP 2018532300A JP 2018532300 A JP2018532300 A JP 2018532300A JP 2018538633 A JP2018538633 A JP 2018538633A
Authority
JP
Japan
Prior art keywords
security
tool
computer system
client
event
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.)
Granted
Application number
JP2018532300A
Other languages
English (en)
Other versions
JP2018538633A5 (ja
JP6772270B2 (ja
Inventor
ルツァス,ダン−ホレア
ルカクス,サンドル
ツィクレ,ダニエル−ヨアン
チオカス,ラドゥ−ヨアン
アニキテイ,ヨネル−クリスティネル
Original Assignee
ビットディフェンダー アイピーアール マネジメント リミテッド
ビットディフェンダー アイピーアール マネジメント リミテッド
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 ビットディフェンダー アイピーアール マネジメント リミテッド, ビットディフェンダー アイピーアール マネジメント リミテッド filed Critical ビットディフェンダー アイピーアール マネジメント リミテッド
Publication of JP2018538633A publication Critical patent/JP2018538633A/ja
Publication of JP2018538633A5 publication Critical patent/JP2018538633A5/ja
Application granted granted Critical
Publication of JP6772270B2 publication Critical patent/JP6772270B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0254Stateful filtering
    • 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/567Computer malware detection or handling, e.g. anti-virus arrangements using dedicated hardware
    • 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/568Computer malware detection or handling, e.g. anti-virus arrangements eliminating virus, restoring damaged files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0245Filtering by information in the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0272Virtual private networks
    • 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
    • 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
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45587Isolation or security of virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Computer And Data Communications (AREA)
  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

説明されるシステムおよび方法は、悪意のあるソフトウェアおよび侵入などのコンピュータセキュリティ脅威から複数のクライアントシステム(たとえば、企業ネットワーク)を保護することを可能にする。いくつかの実施形態では、各保護されたクライアントは、ライブイントロスペクションエンジンとオンデマンドイントロスペクションエンジンとを動作させる。ライブイントロスペクションエンジンは、それぞれのクライアントシステム上に公開された保護された仮想マシン内でのいくつかのイベントの発生を検出し、発生をリモートセキュリティサーバに通信する。次には、サーバは、クライアントによって実行されるべきフォレンジックツールを示すことによって、イベントのフォレンジック分析をクライアントシステムに要求し得る。フォレンジックツールは、クライアントにとってアクセス可能な中央リポジトリに格納され得る。分析要求を受信したことに応答して、オンデマンドイントロスペクションエンジンは、フォレンジックツールを取り出し、実行し、フォレンジック分析の結果をセキュリティサーバに通信し得る。サーバは、それぞれのクライアントが悪意のあるソフトウェアまたは侵入者による攻撃下にあるかどうかを判断するために、情報を使用し得る。

Description

関連出願
[0001]本出願は、その内容全体が参照により本明細書に組み込まれる、2015年12月19日に出願された「Dual Memory Introspection for Securing Multiple Network Endpoints(複数のネットワークエンドポイントをセキュアにするためのデュアルメモリイントロスペクション)」という名称の米国仮特許出願第62/269,952号の出願日の利益を主張する。
[0002]本発明は、コンピュータセキュリティシステムおよび方法に関し、詳細には、コンピュータセキュリティ脅威からハードウェア仮想化環境を保護するためのシステムおよび方法に関する。
[0003]マルウェアとしても知られる、悪意のあるソフトウェアは、世界中の多くのコンピュータシステムに影響を及ぼす。コンピュータウイルス、ワーム、ルートキット、およびスパイウェアなど、それの多くの形式で、マルウェアは、何百万人ものコンピュータユーザに深刻なリスクをもたらし、特に、データおよび機密情報の損失、個人情報の盗難、生産性の損失の影響を受けやすくしている。
[0004]悪意のあるソフトウェアからコンピュータシステムを保護するためにコンピュータセキュリティソフトウェアが使用されることがある。しかしながら、企業ネットワークおよびクラウドコンピューティングシステムなど、分散コンピューティングシステムでは、従来のセキュリティソフトウェアは、一般に、攻撃に対して良好に応答しない。セキュリティソフトウェアが攻撃を検出することが可能であるときでも、分析および修正は、依然として、たとえば、パッチを適用する、紛失データを復元するなどのために、人間のオペレータが、影響を受けるクライアントシステムに派遣されることを必要とし得る。さらに、新しい脅威が検出され、分析されると、セキュリティソフトウェアの更新バージョンが、すべての保護されたコンピュータシステムに即座に配信されなければならない。
[0005]代替コンピュータセキュリティシステムが、中央サーバコンピュータ上で実行し、通信ネットワークを介してセキュリティクライアントから、関連するデータを受信し得る。サーバは、受信されたデータに従って、それぞれのクライアントがマルウェアに感染しているかどうかを判断し得、それぞれのクライアントに判定を通信し得る。そのような構成は、新生の脅威に対処する態勢が十分に整っているが、そのような構成は、かなりのサーバ側計算能力を必要とする。
[0006]コンピュータセキュリティ動作は、ハードウェア仮想化の到来によってさらに複雑になった。ますます多くの商品およびサービスがオンラインで取引されるにつれて、ならびに仕事が漸進的に非局在化されるにつれて、サービスとしてのインフラストラクチャ(IAAS:infrastructure as a service)が、コンピュータハードウェアを所有することの実行可能な代替形態になった。計算アクティビティのかなりの部分が、現在、仮想マシンを使用して行われる。サーバファームおよびクラウドコンピューティングなど、一般的な適用例では、数百個の仮想マシンが、単一のハードウェアプラットフォーム上で同時に実行し得る。すべてのそのような仮想マシンが、マルウェア保護を必要とし得る。
[0007]悪意のあるソフトウェアの絶え間なく変化する性質、およびモバイル労働力の課題に適応することは、革新的コンピュータセキュリティシステムおよびプロトコルの開発、ならびに、特に、複数の分散クライアントにわたるコンピュータセキュリティ動作の効率的な管理を可能にするシステムおよび方法の開発を必要とする。
[0008]一態様によれば、クライアントコンピュータシステムが、ハイパーバイザと、ライブイントロスペクションエンジン(live introspection engine)と、オンデマンドイントロスペクションエンジン(on−demand introspection engine)とを実行するように構成されたハードウェアプロセッサを含む。ハイパーバイザは、ゲスト仮想マシン(VM:virtual machine)と、ゲストVMとは別個のセキュリティVMとを公開するように構成され、オンデマンドイントロスペクションエンジンはセキュリティVM内で実行し、ライブイントロスペクションエンジンはゲストVMとセキュリティVMとの外部で実行する。ライブイントロスペクションエンジンは、ゲストVM内でのイベントの発生を検出したことに応答して、通信ネットワークを介してイベントのインジケータをリモートサーバコンピュータシステムに送信するように構成される。オンデマンドイントロスペクションエンジンは、ライブイントロスペクションエンジンがイベントのインジケータをリモートサーバコンピュータシステムに送信したことに応答して、リモートサーバコンピュータシステムから分析要求を受信することであって、分析要求は、クライアントコンピュータシステムを含む複数のクライアントにセキュリティツールを配信するように構成されたリモートツールリポジトリ中に常駐するセキュリティツールを示し、セキュリティツールは、イベントの発生を分析するように構成されたソフトウェアを含み、セキュリティツールは、イベントのイベントタイプに従ってリモートサーバコンピュータシステムによって選択される、受信することを行うように構成される。オンデマンドイントロスペクションエンジンは、分析要求を受信したことに応答して、分析要求に従ってセキュリティツールを識別することと、応答して、ツールリポジトリからセキュリティツールを選択的に取り出すことであって、セキュリティツールを取り出すことは、通信ネットワークを介して中央ツールリポジトリに接続することを含む、取り出すこととを行うようにさらに構成される。オンデマンドイントロスペクションエンジンは、セキュリティツールを選択的に取り出したことに応答して、セキュリティツールを実行し、セキュリティツールを実行した結果をリモートサーバコンピュータシステムに送信するようにさらに構成される。
[0009]別の態様によれば、サーバコンピュータが、複数のクライアントシステムとのコンピュータセキュリティトランザクションを実施するように構成される。サーバコンピュータシステムは、複数のクライアントシステムのうちのクライアントシステムから、クライアントシステム上で実行するゲストVM内でのイベントの発生を示すイベントインジケータを受信したことに応答して、複数のクライアントシステムにセキュリティツールを配信するように構成されたリモートツールリポジトリ中に常駐するセキュリティツールを選択するように構成されたハードウェアプロセッサであって、セキュリティツールは、イベントの発生を分析するように構成されたソフトウェアを含み、セキュリティツールを選択することは、イベントのイベントタイプに従って実施される、ハードウェアプロセッサを含む。ハードウェアプロセッサは、セキュリティツールを選択したことに応答して、通信ネットワークを介して分析要求をクライアントシステムに送信することであって、分析要求はセキュリティツールの識別子を含む、送信することと、応答して、セキュリティツールをクライアントシステム上で実行した結果をクライアントシステムから受信することとを行うようにさらに構成される。クライアントシステムは、ハイパーバイザと、ライブイントロスペクションエンジンと、オンデマンドイントロスペクションエンジンとを実行するように構成される。ハイパーバイザは、ゲストVMと、ゲストVMとは別個のセキュリティVMとを公開するように構成され、オンデマンドイントロスペクションエンジンはセキュリティVM内で実行し、ライブイントロスペクションエンジンはゲストVMとセキュリティVMとの外部で実行する。ライブイントロスペクションエンジンは、イベントの発生を検出したことに応答して、イベントインジケータをサーバコンピュータシステムに送信するように構成される。オンデマンドイントロスペクションエンジンは、分析要求を受信したことに応答して、分析要求に従ってセキュリティツールを識別するように構成される。オンデマンドイントロスペクションエンジンは、セキュリティツールを識別したことに応答して、ツールリポジトリからセキュリティツールを選択的に取り出すことであって、セキュリティツールを取り出すことは、クライアントシステムが通信ネットワークを介してリモートツールリポジトリに接続することを含む、取り出すことを行うようにさらに構成される。オンデマンドイントロスペクションエンジンは、セキュリティツールを取り出したことに応答して、結果を生成するためにセキュリティツールを実行するようにさらに構成される。
[0010]別の態様によれば、非一時的コンピュータ可読媒体が命令のセットを含み、命令のセットは、クライアントコンピュータシステムのハードウェアプロセッサ上で実行されたとき、クライアントコンピュータシステムに、ハイパーバイザと、ライブイントロスペクションエンジンと、オンデマンドイントロスペクションエンジンとを形成させる。ハイパーバイザは、ゲスト仮想マシン(VM)と、ゲストVMとは別個のセキュリティVMとを公開するように構成され、オンデマンドイントロスペクションエンジンはセキュリティVM内で実行し、ライブイントロスペクションエンジンはゲストVMとセキュリティVMとの外部で実行する。ライブイントロスペクションエンジンは、ゲストVM内でのイベントの発生を検出したことに応答して、通信ネットワークを介してイベントのインジケータをリモートサーバコンピュータシステムに送信するように構成される。オンデマンドイントロスペクションエンジンは、ライブイントロスペクションエンジンがイベントのインジケータをリモートサーバコンピュータシステムに送信したことに応答して、リモートサーバコンピュータシステムから分析要求を受信することであって、分析要求は、クライアントコンピュータシステムを含む複数のクライアントにセキュリティツールを配信するように構成されたリモートツールリポジトリ中に常駐するセキュリティツールを示し、セキュリティツールは、イベントの発生を分析するように構成されたソフトウェアを含み、セキュリティツールは、イベントのイベントタイプに従ってリモートサーバコンピュータシステムによって選択される、受信することを行うように構成される。オンデマンドイントロスペクションエンジンは、分析要求を受信したことに応答して、分析要求に従ってセキュリティツールを識別することと、応答して、ツールリポジトリからセキュリティツールを選択的に取り出すことであって、セキュリティツールを取り出すことは、通信ネットワークを介して中央ツールリポジトリに接続することを含む、取り出すこととを行うようにさらに構成される。オンデマンドイントロスペクションエンジンは、セキュリティツールを選択的に取り出したことに応答して、セキュリティツールを実行し、セキュリティツールを実行した結果をリモートサーバコンピュータシステムに送信するようにさらに構成される。
[0011]本発明の前述の態様および利点は、以下の詳細な説明を読み、図面を参照すると、より良く理解されるようになるであろう。
[0012]本発明のいくつかの実施形態による、複数のクライアントシステムがコンピュータセキュリティ脅威から保護される例示的な構成を示す図である。 [0013]本発明のいくつかの実施形態による、クライアントシステムの例示的なハードウェア構成を示す図である。 [0014]本発明のいくつかの実施形態による、セキュリティサーバコンピュータシステムの例示的なハードウェア構成を示す図である。 [0015]本発明のいくつかの実施形態による、保護されたクライアントシステム上で実行するハイパーバイザによって公開される仮想マシンの例示的なセットと、イントロスペクションエンジンの例示的なペアとを示す図である。 [0016]本発明のいくつかの実施形態による、セキュリティ構成要素の代替構成を示す図である。 [0017]本発明のいくつかの実施形態による、クライアントシステム上にコンピュータセキュリティを設定するためにインストーラアプリケーションによって実行されるステップの例示的なシーケンスを示す図である。 [0018]本発明のいくつかの実施形態による、クライアントシステムとセキュリティサーバとの間に仮想プライベートネットワーク(VPN:virtual private network)セキュア接続を構成することを示す図である。 [0019]本発明のいくつかの実施形態による、マルウェア検出中に発生する、クライアントシステムとセキュリティサーバとの間の例示的なデータ交換を示す図である。 [0020]本発明のいくつかの実施形態による、ライブイントロスペクションエンジンによって実施されるステップの例示的なシーケンスを示す図である。 [0021]本発明のいくつかの実施形態による、オンデマンドイントロスペクションエンジンによって実施されるステップの例示的なシーケンスを示す図である。 [0022]本発明のいくつかの実施形態による、セキュリティサーバによって実施されるステップの例示的なシーケンスを示す図である。
[0023]以下の説明では、構造間のすべての列挙された接続が、直接の動作的な接続、または中間構造を通しての間接の動作的な接続であり得ることを理解されたい。要素のセットは、1つまたは複数の要素を含む。要素の任意の列挙は、少なくとも1つの要素を指すと理解される。複数の要素は、少なくとも2つの要素を含む。別段の必要がない限り、いかなる説明される方法ステップも、必ずしも特定の示される順序で実施されるとは限らない。第2の要素から導出された第1の要素(たとえばデータ)は、第2の要素に等しい第1の要素、ならびに第2の要素および随意に他のデータを処理することによって生成された第1の要素を包含する。パラメータに従って判断または決定を行うことは、パラメータに従っておよび随意に他のデータに従って、判断または決定を行うことを包含する。別段に規定されていない限り、何らかの量/データのインジケータは、量/データ自体であるか、または量/データ自体とは異なるインジケータであり得る。コンピュータセキュリティは、データおよび/またはハードウェアへの意図しないまたは無許可のアクセスと、データおよび/またはハードウェアの意図しないまたは無認可の変更と、データおよび/またはハードウェアの破壊とからユーザおよび機器を保護することを包含する。コンピュータプログラムは、タスクを実行するプロセッサ命令のシーケンスである。本発明のいくつかの実施形態で説明されるコンピュータプログラムは、他のコンピュータプログラムのスタンドアロンソフトウェアエンティティまたはサブエンティティ(たとえば、サブルーチン、ライブラリ)であり得る。別段に規定されていない限り、ゲストソフトウェアが仮想マシン内で実行する。プログラムは、プログラムがそれぞれの仮想マシンの仮想プロセッサ上で実行するとき、仮想マシン内で実行すると言われる。別段に規定されていない限り、ページは、ホストシステムの物理メモリに個々にマッピングされ得る仮想メモリの最小単位を表す。別段に規定されていない限り、クライアントシステムのスナップショットは、それぞれのクライアントシステムによって使用されるメモリのセクションのコンテンツのコピーを含む。コンピュータ可読媒体は、磁気、光、および半導体記憶媒体などの非一時的媒体(たとえばハードドライブ、光ディスク、フラッシュメモリ、DRAM)、ならびに導電性ケーブルおよび光ファイバーリンクなどの通信リンクを包含する。いくつかの実施形態によれば、本発明は、とりわけ、本明細書で説明される方法を実施するようにプログラムされたハードウェア(たとえば1つまたは複数のマイクロプロセッサ)を含むコンピュータシステム、ならびに本明細書で説明される方法を実施するための命令を符号化するコンピュータ可読媒体を提供する。
[0024]以下の説明は、本発明の実施形態を例として示し、必ずしも限定として示すとは限らない。
[0025]図1は、本発明のいくつかの実施形態による、コンピュータセキュリティ脅威から複数のクライアントシステム12a〜dを保護するための例示的な構成を示す。例示的なクライアントシステム12a〜dは、パーソナルコンピュータシステム、モバイルコンピューティングプラットフォーム(ラップトップコンピュータ、タブレット、携帯電話)、エンターテインメントデバイス(TV、ゲーム機)、ウェアラブルデバイス(スマートウォッチ、フィットネスバンド)、家庭用器具、ならびにプロセッサとメモリとを含み、ハードウェア仮想化プラットフォームを動作させることが可能な任意の他の電子デバイスを含む。クライアントシステムの別の例示的なカテゴリーは、ウェブサーバおよび/または仮想デスクトップインフラストラクチャなどのクラウドベースアプリケーションを実行する、データセンターサーバおよびハードウェア仮想化プラットフォームを含む。
[0026]クライアントシステム12a〜dは、ホームネットワーク、企業ネットワーク、インターネットなど、通信ネットワーク11を介して相互接続される。ネットワーク11は、少なくとも1つのスイッチおよび/またはルータを含む。ネットワーク11の部分は、ローカルエリアネットワーク(LAN)および/または電気通信ネットワーク(たとえば、4Gモバイルテレフォニーネットワーク、ワイヤレスLAN)を含み得る。
[0027]いくつかの実施形態では、セキュリティサーバ14が、ネットワーク11を介してクライアントシステム12a〜dに通信可能に結合され、以下で詳細に説明されるように、コンピュータセキュリティ脅威を防ぐためにクライアントシステム12a〜dと協働する。サーバ14は、互いに物理的に近接することもしないこともある、相互接続されたコンピューティングシステムのセットを総称的に記述する。いくつかの実施形態では、サーバ14は、クライアントシステム12a〜dからイベント通知を受信し、応答して、イベントのタイプに従って、それぞれのクライアントシステムによって使用されるべきフォレンジック分析(forensic analysis)のタイプ、脅威緩和(threat mitigation)プロトコル、および/またはクリーンアップツールを選択するように構成される。例示的なフォレンジック分析は、たとえば、それぞれのイベントの原因および/またはコンテキストに関する特定のデータを取得することを含む。脅威緩和プロトコルは、それぞれのイベントによって示される悪意のあるソフトウェアのタイプに従って選択され得、それぞれのクライアント上で特定のクリーンアップおよび/または損傷制御コードをダウンロードすることおよび/または実行することを含み得る。
[0028]いくつかの実施形態では、セキュリティサーバ14は、クライアントデータベース17とインターフェースするようにさらに構成される。例示的なクライアントデータベース17では、各エントリは、保護されたクライアントシステム12a〜dに、および/またはそれぞれの保護されたクライアントシステム上で実行する仮想マシンに関連し、それぞれのクライアントシステム/仮想マシンによって報告されたトリガイベントのログおよび/またはフォレンジック報告(下記参照)を含み得る。データベース17の例示的なエントリは、それぞれのクライアントシステム/仮想マシンについての(たとえば、OSバージョン、インストールされたアプリケーション、様々な設定、所有者、連絡先情報などを含む)システムプロファイルデータをさらに含み得る。クライアントデータベース17の別の例示的なエントリは、それぞれのクライアントシステムに関連するクライアント固有のセキュリティポリシーを表すパラメータ値のセットを含み得る。そのような設定は、人間のオペレータによって規定され得るか、またはルールのセットに従って自動的に設定され得る。本発明のいくつかの実施形態では、クライアント固有のポリシーおよび/またはセキュリティ設定は、それぞれのクライアント上、または他の保護されたクライアント上で発生するイベントに応答して、動的に変動する。
[0029]いくつかの実施形態では、クライアントシステム12a〜dは、ネットワーク11を介して中央ツールリポジトリ15にさらに接続される。ツールリポジトリ15は、コード(コンピュータプログラム)および/またはデータの形態でセキュリティツールおよびリソースを格納するコンピュータ可読媒体または物理マシンを含み得る。クライアントシステム12a〜dは、以下で詳細に示されるように、セキュリティサーバ14から受信された命令に従ってツールおよびデータを選択的に取り出すためにリポジトリ15に接続し得る。ツールリポジトリ15は複数のクライアントにとって利用可能であり、したがって、本発明の好ましい実施態様では、リポジトリ15は任意の特定のクライアントシステム上に存在しない。したがって、リポジトリ15に接続することは、それぞれのクライアントシステムのネットワークアダプタを介して通信をリポジトリ15に/から送信および/または受信することを含む。そのような通信は、途中でネットワークスイッチまたはルータを横断し得る。
[0030]リポジトリ15に格納されたセキュリティツールは、フォレンジックツール、アンチマルウェアツール、および/または脅威緩和ツールを含み得る。リポジトリデータは、調査中のイベントのタイプに従って、またはローカルハードウェア/ソフトウェア構成に従って、それぞれのツールを構成または調整するためのパラメータ値をさらに含み得る。アンチマルウェアツールは、クライアントシステム12a〜d上で実行する悪意のあるソフトウェアの検出を可能にし、ヒューリスティックルールのセットの符号化および/またはマルウェア識別シグネチャのデータベースを含み得る。脅威緩和ツールは、クライアントシステム上で実行する悪意のあるソフトウェアエージェントを削除するかまたは場合によっては無能力にするようにプログラムされたクリーンアップツールを含み得る。他の例示的な脅威緩和ツールは、たとえば、感染したクライアントシステムがそれのネットワークアダプタを使用する様式を制御することによって、感染したクライアントシステムが悪意のあるソフトウェアを別のクライアントシステムに送信するのを妨げるようにプログラムされる。
[0031]フォレンジックツールは、クライアントシステム12a〜d上に発生するセキュリティ関連イベントの分析を可能にする。フォレンジックツールのいくつかの例は、クライアントシステムのメモリスナップショット、または、それぞれのクライアントシステム上で実行する仮想マシンのメモリスナップショットを取得するようにプログラムされた、スナップショット生成ツールを含む。スナップショットは、オペレーティングシステム(OS)に関連する、または、それぞれのクライアントシステム上で現在実行している別のアプリケーションに関連するメモリデータを含み得る。OSカーネルのスナップショットは、特に、カーネルのコードおよびデータセクションのコピー、様々なインメモリカーネルドライバ(コードおよび/またはデータセクション)、インメモリカーネルスレッドおよびそれらの対応するスタック、ロードされたモジュールのリスト、プロセスのリストなどのOSのカーネルデータ構造を含み得る。アプリケーションの例示的なスナップショットは、アプリケーションのコードおよびデータセクションを含むアプリケーションのメモリイメージ、アプリケーションのスレッドによって使用されるインメモリスタック、それぞれのアプリケーションのヒープメモリページなどのコピーを含む。
[0032]いくつかの実施形態では、メモリスナップショットをとることは、それぞれのメモリセクションのコンテンツをコピーすることを可能にするために、ゲストVM32の実行を中断することを含む。代替実施形態は、スナップショットをとることなしに「ライブ」メモリフォレンジックスを実施する。そのような実施形態では、ハイパーバイザ30は、ゲストVM32によって使用される物理的メモリページのセットを、セキュリティVM33によって使用される仮想メモリページにマッピングし得る。セキュリティVM33は、次いで、たとえば、特定のイベントに応答して、ゲストVM32の実行を中断する必要なしに、またはそれぞれのコンテンツをコピーし、転送する必要なしに、それぞれのメモリページのコンテンツを検査し得る。「ライブ」メモリフォレンジックツールの一例は、Volatility FoundationからのVolatility(登録商標)フレームワークである。
[0033]フォレンジックツールの別の例は、クライアントシステム上で現在インストールされおよび/または実行しているソフトウェアエンティティを列挙するように構成されたアプリケーションインベントリツールである。フォレンジックツールのまた別の例は、構成設定のセット(たとえば、様々なOSパラメータの現在の値、ハードウェア設定、セキュリティ設定、ファイアウォール設定など)を取得するようにプログラムされた構成グラバー(configuration grabber)である。他の例示的なフォレンジックツールは、システムおよび/またはアプリケーションイベントログ、あるいはシステムクラッシュデータ(たとえばWindows(登録商標)クラッシュミニダンプ)を収集するようにプログラムされる。
[0034]図2−Aは、図1中のシステム12a〜dなど、クライアントシステム12の例示的なハードウェア構成を示す。説明を簡単にするため、図示されたクライアントシステムは、コンピュータシステムであり、携帯電話、ウォッチなどの他のクライアントシステムのハードウェア構成は、図示された構成とはいくらか異なり得る。クライアントシステム12は、ハードウェアプロセッサ16とメモリユニット18とを含む、物理デバイスのセットを含む。いくつかの実施形態では、プロセッサ12は、信号および/またはデータのセットを用いた計算および/または論理動作を実行するように構成された物理デバイス(たとえばマイクロプロセッサ、半導体基板上に形成されたマルチコア集積回路など)を含む。いくつかの実施形態では、そのような動作は、プロセッサ命令のシーケンスの形態(たとえば機械コードまたは他のタイプの符号化)でプロセッサ12に配信される。メモリユニット18は、プロセッサ16によってアクセスまたは生成される命令および/またはデータを格納する揮発性コンピュータ可読媒体(たとえばDRAM、SRAM)を含み得る。
[0035]デバイスのタイプおよび性能に応じて、クライアントシステム12は、ユーザがクライアントシステム12にデータおよび/または命令を入力することを可能にする、キーボード、マウス、タッチスクリーンなど、入力デバイス20のセットをさらに含み得る。モニタまたは液晶ディスプレイなど、出力デバイス22のセットは、たとえば、グラフィカルユーザインターフェースを介して、ユーザに情報を伝達し得る。ストレージデバイス24は、プロセッサ命令および/またはデータの不揮発性格納、読取りおよび書込みを可能にするコンピュータ可読媒体を含む。例示的なストレージデバイス24は、磁気および光ディスクならびにフラッシュメモリデバイス、ならびにCDおよび/またはDVDディスクおよびドライブなどのリムーバブル媒体を含む。ネットワークアダプタ26のセットは、クライアントシステム12が通信ネットワーク11におよび/または他のデバイス/コンピュータシステムに接続することを可能にする。コントローラハブ28は、複数のシステム、周辺機器、および/またはチップセットバス、ならびに/あるいはプロセッサ16とデバイス18、20、22、24および26との間の通信を可能にするすべての他の回路を総称的に表す。たとえば、コントローラハブ28は、特に、メモリ管理ユニット(MMU)と、入出力(I/O)コントローラと、割込みコントローラとを含み得る。別の例では、コントローラハブ28は、プロセッサ16をメモリ18に接続するノースブリッジ、および/またはプロセッサ16をデバイス20、22、24、および26に接続するサウスブリッジを含み得る。いくつかの実施形態では、コントローラハブ28は、部分的にまたは完全にプロセッサ16と統合され得、たとえば、MMUは共通半導体基板をプロセッサ16と共有し得る。
[0036]図2−Bは、セキュリティサーバ14の例示的なハードウェア構成を示す。サーバ14は、ハードウェアプロセッサ116、サーバメモリ118、サーバストレージデバイス124のセット、およびネットワークアダプタ126のセットを含み、すべてがサーバコントローラハブ128によって接続される。デバイス116、118、124、および126の動作は、上記で説明されたデバイス16、18、24、および26の動作をミラーリングし得る。たとえば、サーバプロセッサ116は、信号および/またはデータのセットを用いた計算および/または論理動作を実行するように構成された集積回路を含み得る。サーバメモリ118は、計算を実施している間にプロセッサ116によってアクセスまたは生成されるデータ/信号を格納する非一時的コンピュータ可読媒体(たとえばRAM)を含み得る。ネットワークアダプタ126は、セキュリティサーバ14が通信ネットワーク11に接続することを可能にする。
[0037]いくつかの実施形態では、クライアントシステム12は、たとえば図3−A〜図3−Bに示されているように、仮想マシンのセットを公開するように構成される。仮想マシン(VM)は、ハードウェア仮想化の当技術分野において知られている様々な技法のいずれかを使用して、実際の物理マシン/コンピュータシステムをエミュレートする。いくつかの例示的な構成では、ハイパーバイザ30は、クライアントシステム12上で実行し、ハイパーバイザ30は、クライアントシステム12の実際の物理デバイスを模倣するために、仮想プロセッサおよび仮想メモリ管理ユニットなど、複数の仮想化されたデバイスを作成するかまたは使用可能にし、そのような仮想化されたデバイスをソフトウェアに与えるように構成される。そのような動作は、一般に、仮想マシンを公開することとして当技術分野で知られている。ハイパーバイザ30はさらに、各仮想マシンが、独立して動作し、クライアントシステム12上で同時に実行している他のVMに気づき得ないように、複数のVMがホストシステム12のハードウェアリソースを共有することを可能にし得る。普及しているハイパーバイザの例は、特に、VMware社からのVMware(登録商標)vSphere(登録商標)と、オープンソースXen(登録商標)ハイパーバイザとがある。
[0038]図3−A〜図3−Bに示されている例示的な構成では、ゲストVM32は、ゲストオペレーティングシステム34とアプリケーション36とを実行する。図3−A〜図3−Bは1つのゲストVMのみを示しているが、仮想デスクトップインフラストラクチャ(VDI)およびサーバファーム化(server farming)などの適用例では、クライアントシステム12は、複数(たとえば、数百個)のそのようなVMを同時に実行し得る。各ゲストVMは、少なくとも1つの仮想化されたプロセッサを含み、特に、他の仮想化されたデバイス、そのような仮想化された入力、出力、ストレージ、およびネットワークデバイス、ならびに、仮想化されたコントローラをさらに含み得る。各仮想化されたプロセッサは、ハードウェアプロセッサ16の機能の少なくとも一部のエミュレーションを含み、実行のためのプロセッサ命令を受信するように構成される。実行のために仮想プロセッサを使用するソフトウェアは、それぞれの仮想マシン内で実行すると言われる。たとえば、図3−A〜図3−Bの例では、ゲストOS34およびアプリケーション36は、ゲストVM32内で実行すると言われる。対照的に、ハイパーバイザ30は、ゲストVM32の外部、または下で実行すると言われる。
[0039]OS34は、アプリケーション36とゲストVM32の仮想化されたハードウェアとの間のインターフェースを与える。オペレーティングシステム34は、特に、Microsoft Windows(登録商標)、MacOS(登録商標)、Linux(登録商標)、iOS(登録商標)、またはAndroid(登録商標)などの広く利用可能なオペレーティングシステムを含み得る。アプリケーション36は、特に、ワードプロセシング、画像処理、メディアプレーヤ、データベース、カレンダー、個人連絡先管理、ブラウザ、ゲーミング、音声通信、およびデータ通信アプリケーションなどの任意のコンピュータプログラムを総称的に表す。
[0040]いくつかの実施形態では、ハイパーバイザ30は、セキュリティVM33をさらに公開し、セキュリティVM33は、ゲストVM32と同時に実行し、マルウェアおよび侵入などのコンピュータセキュリティ脅威からゲストVM32を保護し得る。単一のセキュリティVMが、それぞれのクライアントシステム上で実行する複数のゲストVMを保護し得る。ゲストVM32の仮想環境とセキュリティVM33の仮想環境とは、ゲストVM32内で実行する悪意のあるソフトウェアが、セキュリティVM33内で実行するソフトウェアに感染させないことまたは場合によってはそれを妨害しないことを保証するために、互いから分離され得る。たとえば、セキュリティVM33の仮想プロセッサは、クライアントシステム12上で実行する他の仮想マシンの仮想プロセッサとは別個であり、セキュリティVM33のためのメモリ変換とゲストVM32のためのメモリ変換とは、ページテーブルの別個のセットを使用する。セキュリティVM33は、以下で詳細に示されているように、セキュリティサーバ14と協働するように構成され得る。セキュリティVM33のいくつかの実施形態は、軽量最小オペレーティングシステム(たとえば、Linux(登録商標)OSのカスタマイズされたバージョン)と、オンデマンドイントロスペクションエンジン42と、ネットワークフィルタ44とを含む。代替実施形態では、ネットワークフィルタ44は、たとえばハイパーバイザ30のプロセッサ特権レベル(たとえば、ルートレベル、リング−1)で、セキュリティVM33の外部で実行する。
[0041]いくつかの実施形態では、ハイパーバイザ30は、仮想化されたデバイスのサブセットのみをゲストVM32に公開し得、セキュリティVM33にクライアントシステム12のいくつかのハードウェアデバイスの直接および独占的使用を与え得る。1つのそのような例では、ゲストVM32は、入力デバイス20および出力デバイス22の独占的使用を有するが、仮想化されたネットワークアダプタを欠き得る。一方、セキュリティVM33は、(1つまたは複数の)ネットワークアダプタ26の直接および独占的使用を有し得る。1つのそのような実施形態では、ゲストVM32へのおよび/またはそれからのすべての通信が、セキュリティVM33を介して送信/受信される。ハイパーバイザ30は、たとえば、メモリ共有機構を使用して、ゲストVM32とセキュリティVM33との間のネットワークパケットをアクティブにルーティングし得る。セキュリティVM33はさらに、ゲストVM32とリモートパーティとの間の通信を選択的に可能にするかまたは妨げるために、フィルタ44を使用し得る。そのような構成は、たとえば、インテル(登録商標)からのVT−d(登録商標)技術を使用して、実装され得る。
[0042]いくつかの実施形態では、クライアントシステム12上で実行するセキュリティソフトウェアは、保護されたゲストVM32の外部で実行するライブイントロスペクションエンジン40をさらに含む。「イントロスペクション」という用語は、ターゲットVM内で実行するソフトウェアに関する情報をそれぞれのVMの外部の位置から収集することを目的とするアクティビティを示すために、本明細書によって使用される。イントロスペクションの例は、特に、それぞれのVM内で実行するソフトウェアが、いくつかのアクション(たとえば、いくつかのプロセッサ命令を実行すること、いくつかのハードウェアリソースにアクセスすること、OSのいくつかのサービスを使用すること、いくつかのメモリロケーションにアクセスすることなど)を実施するかどうかを判断することを含む。イントロスペクションの他の例は、それぞれのVM内で実行する様々なソフトウェアオブジェクトによって使用されるメモリアドレスを判断すること、および/または、そのようなアドレスによって示されるメモリロケーションへのアクセスを制御することを含む。
[0043]エンジン40は、たとえばライブラリとして、ハイパーバイザ30に組み込まれ得るか、または、ハイパーバイザ30とは別個および無関係のコンピュータプログラムとして配信され得るが、ハイパーバイザ30のプロセッサ特権レベル(たとえば、ルートモード、リング−1)で実行し得る。代替実施形態では、ライブイントロスペクションエンジンは、ゲストVM32とは別個の個別の仮想マシン中で実行し得る。エンジン40は、個別のスケジュールされた実行スレッドを有するプロセスであり得、または以下で示されているように、いくつかのイベントによってトリガされたときに実行するスケジュールされていないコードオブジェクトの集合として動作し得る。
[0044]エンジン40は、複数の実行可能なエンティティ(たとえば、プロセス、スレッド、アプリケーション)の挙動を監視するように構成される。そのようなことは、それぞれのソフトウェアの実行中に様々なイベントの発生を検出し、そのようなイベントをセキュリティサーバ14に選択的に報告することを含み得る。様々なタイプのイベント、たとえば、いくつかのOS関数、システムコールに対する呼出しなどが、このようにして検出され得る。検出されるイベントの他の例は、特に、OS34の関数を変更しようとする試み(コードパッチングまたはコードフッキングとして当技術分野で一般に知られているコード改ざん)、1つのソフトウェアエンティティによる別のソフトウェアエンティティにコードを注入しようとする試み、デジタル署名されていないソフトウェア構成要素を起動しようとする試み、デジタル署名検証を回避しようとする試みを含む。他のタイプの検出されるイベントは、ファイルを開くこと、ファイルを作成すること、ファイルに書き込むこと、ファイルを削除すること、ファイルをコピーすること、プロセスを作成すること、プロセスを終了すること、実行のためのスレッドをスケジュールすること、同期化イベント(たとえば相互排除)のためにスレッドを中断すること、ヒープを作成すること、ヒープからメモリを割り振ること、実行スタックのサイズを拡張すること、メモリアクセス許可を変えること、スワップイン(たとえばデスクツーメモリ(disk−to−memory))動作を実施すること、スワップアウト(メモリツーデスク(memory−to−disk))動作を実施すること、実行可能モジュール(たとえば、共有ライブラリDLL)をロードすること、レジストリキーを開くこと、レジストリキーをリネームすること、新しいハードウェアデバイスの取付けを検出すること、新しいネットワーク接続を確立すること、ネットワークパケットを受信すること、スレッドの実行特権を引き上げること、およびファイルに関連する任意アクセス制御(DAC)許可を変えることを含み得る。
[0045]そのようなイベントを検出するためのいくつかの方法が、当技術分野で知られている。それらは、いくつかのOS関数をフックすること、ディスパッチテーブルを変更することなどを含む。ハードウェア仮想化プラットフォームでは、セキュリティ関連イベントを検出するための方法の特殊なカテゴリーは、メモリアクセス許可の違反を検出することに依拠する。たいていの現代のコンピュータシステムは、仮想メモリを用いて動作し、専用データ構造、たとえばページテーブルを使用してメモリアドレス変換を管理するように構成される。ハードウェア仮想化をサポートするように構成されたシステムは、一般に、各公開されたVMから見たゲスト物理メモリからクライアントシステム12の実際の物理メモリ18へのアドレス変換の第2のレイヤを使用する。第2のアドレス変換は、一般に、プロセッサ16によって制御されるハードウェアアクセラレートされた専用データ構造および機構を使用して達成され、第2レベルアドレス変換(SLAT:second level address translation)として知られている。普及しているSLAT実装形態は、インテル(登録商標)プラットフォーム上の拡張ページテーブル(EPT:extended page table)と、AMD(登録商標)プラットフォーム上の高速仮想化インデックス付け(RVI:rapid virtualization indexing)/ネスト化ページテーブル(NPT:nested page table)とを含む。SLATは、一般に、読取り/書込み/実行など、各メモリページについてメモリアクセス許可を設定することを可能にする。
[0046]いくつかの実施形態では、ライブイントロスペクションエンジン40は、上記で説明されたSLAT機構を使用していくつかのメモリページのアクセス許可を設定するためにハイパーバイザ30と協働する。1つのそのような例では、特定のメモリページが、特定のOS関数に属するコードをホストする。それぞれのページを非実行可能とマークすることは、それぞれのOS関数を実行しようとする試みが行われたときに、許可違反をトリガするであろう。違反は、イントロスペクションエンジン40によって、それぞれのOS関数を実行しようとする試みが発生したことのインジケータとして解釈され得る。
[0047]プロセッサ16は、ソフトウェアが、現在のアクセス許可に違反する様式でそれぞれのページにアクセスしようと試みるとき、プロセッサイベント(たとえば、例外、障害など)をトリガするように構成され得る。プロセッサイベントの1つのタイプはVM終了イベント(インテル(登録商標)プラットフォーム上のVMExit)を含み、ここで、プロセッサ16は、メモリアクセス許可の違反に応答して、それぞれのVM内でコードを実行することから、それぞれのVMの外部でハンドラルーチンを実行することに切り替わる。プロセッサイベントの別のカテゴリーは仮想化例外(インテル(登録商標)プラットフォーム上の#VE)を含み、ここで、プロセッサ16は、それぞれのVM内でハンドラルーチンを実行することに切り替わる。
[0048]図3−Aの例示的な構成では、イベントハンドラ46aは、ハイパーバイザ30のプロセッサ特権レベルで、監視されるゲストVMの外部で実行する。そのような実施形態は、ゲストVM32内でのイベントの発生に関してライブイントロスペクションエンジン40に通知するために、VM終了イベントに依拠し得る。対照的に、図3−Bでは、イベントハンドラ46bは、たとえば、ゲストOS34のプロセッサ特権レベル(たとえば、リング0、カーネルモード)で、監視されるVM内で実行する。そのような構成は、VM内イベントを検出するために仮想化例外に依拠し得る。ハンドラ46bは、イベント情報をイントロスペクションエンジン40に送るために、(たとえば、メモリの共有セクションを使用する)プロセス間通信機構を使用し得る。図3−Bに示されている構成は、ハンドラ46bが、監視されるVM内で実行し、したがって、各検出されたイベントのセマンティクスを判断するためにゲストOS34の関数および機構を使用することができるので、図3−Aに示されている構成よりも情報収集においてより効率的であり得る。しかしながら、ゲストVM32内で実行することによって、ハンドラ46bは、ハンドラ46aよりも、悪意のあるソフトウェアの影響を受けやすくなり得る。
[0049]セキュリティイベントを分析するために、ただライブイントロスペクションエンジン40に依拠するかまたは保護されたVM内で実行するソフトウェアに依拠する代わりに、本発明のいくつかの実施形態は、第2のオンデマンドイントロスペクションエンジン42をさらに展開する。ライブイントロスペクションエンジン40は、監視されるゲストVM内での様々なイベントの発生を検出し得るが、そのようなイベントの高性能フォレンジック分析は、計算量的にコストがかかりすぎ、ユーザエクスペリエンスに悪影響を及ぼすので、そのような分析を実行しないことがある。代わりに、オンデマンドイントロスペクションエンジン42が、それぞれのフォレンジック分析を実施するために呼び出され得るが、そのようなフォレンジック分析は、ライブイントロスペクションエンジン40によって検出されたイベントのサブセットのためにのみ選択的にトリガされ得る。いくつかの実施形態では、イベントのフォレンジック分析を実施するという決定は、セキュリティサーバ14によって行われ、それぞれのクライアントシステム12に通信される。
[0050]いくつかの実施形態では、ライブイントロスペクションエンジン40およびオンデマンドイントロスペクションエンジン42は、たとえばメモリの共有セクションとハイパーバイザ30を介して行われるシグナリングとを介して、互いに通信し得る。たとえば、フォレンジックアクティビティを実施している間、オンデマンドイントロスペクションエンジン42は、ライブイントロスペクションエンジン40の現在の状態を読み取り、使用し得る。次には、ライブイントロスペクションエンジンは、たとえば、フォレンジックアクティビティが現在実行されていることをシグナリングするために、オンデマンドイントロスペクションエンジンからの通知を受信し得る。
[0051]図4は、本発明のいくつかの実施形態による、クライアントシステム12上にコンピュータセキュリティを設定するために実施されるステップの例示的なシーケンスを示す。コンピュータセキュリティ脅威から企業ネットワークを保護する一般的なシナリオでは、ネットワーク管理者が、保護を必要とする各クライアントシステム12a〜dにセキュリティアプリケーションをインストールし得る。セキュリティアプリケーションは、ハイパーバイザ30、イントロスペクションエンジン40〜42、イベントハンドラ46a〜bなど、様々な構成要素を含み得る。ステップの図示されたシーケンスは、たとえば、それぞれのセキュリティアプリケーションのインストーラユーティリティによって実行され得る。ハードウェア仮想化環境の不在下でインストールされるとき、セキュリティソフトウェアが、最初に、最も強いプロセッサ特権レベル(たとえば、ルートモード、リング−1)でプロセッサ16を引き継ぎ、ハイパーバイザ30をインストールし得る。ハイパーバイザ30は、次いで、ゲストVM32を公開し、ゲストVM32内で実行するために、それぞれのクライアントシステム上で前に実行していたすべてのソフトウェアを移動し得る。ハイパーバイザ30は、さらに、セキュリティVM33を設定し、VM32とVM33との間でそれぞれのクライアントシステムのハードウェアを共有する方法を構成する。インストーラは、次いで、セキュリティVM33内で実行するソフトウェア、ならびにライブイントロスペクションエンジン40をインストールし、起動し得る。
[0052]いくつかの実施形態では、ハイパーバイザ30および/またはセキュリティVM33は、セキュリティVM33が信用できるソフトウェアを実行することを保証するために、セキュアブート機構または当技術分野で知られている別の形態の認証を使用して起動され得る。セキュリティVM33を設定すること(ステップ204)および/またはセキュリティVM33内で実行する他のソフトウェアを設定することは、セキュリティサーバ14とまたは他の認証エンティティとの認証交換(たとえば、ハッシュ検証)を含み得る。例示的な一実施形態では、セキュアブートは、インテル(登録商標)プラットフォーム上のトラステッドプラットフォームモジュール(TPM)など、クライアントシステム12のセキュアストレージハードウェア構成要素を採用し、インテル(登録商標)のトラステッドエグゼキューションテクノロジー(TXT)などの完全性証明(integrity attestation)機構をさらに採用し得る。
[0053]いくつかの実施形態では、ステップ206は、セキュリティサーバ14からセキュリティVM33へのリモート管理アクセスを設定する。そのようなアクセスは、セキュリティサーバ14が、たとえば、オンデマンドイントロスペクションエンジン42に特定の種類のフォレンジック分析を実施するように、またはクリーンアップステップの特定のシーケンスを実行するように命令するために、命令とコマンドとを、保護されたクライアントシステムに直接(自動的にまたは人間のオペレータによって支援されて)送ることを可能にし得る。リモート管理アクセスを設定することは、たとえば、セキュアシェル(SSH)または仮想プライベートネットワーク(VPN)プロトコルを介してサーバ14とセキュリティVM33との間にトンネル(すなわち、ポイントツーポイントセキュア通信チャネル)を設定することを含み得る。図5は、そのような例示的な交換を示す。トンネル要求48が、クライアントシステム12またはサーバ14のいずれかによって発行され得る。要求48は、交換プロトコルのインジケータと、暗号化鍵のセットとを含み得る。応答して、通信当事者は、それらの間のネットワークパケットを暗号化およびルーティングする特定の様式を含むセキュアトンネル49を設定する。いくつかの実施形態では、ハイパーバイザ30は、セキュリティサーバ14から受信されたネットワークパケットを、セキュリティVM33に直接ルーティングする。
[0054]図6は、本発明のいくつかの実施形態による、セキュリティサーバ14と保護されたクライアントシステムとの間の例示的なデータ交換を示す。クライアントシステム12は、イベントがゲストVM32内でソフトウェアの実行中に発生したことをサーバ14に通知するために、イベントインジケータ50を送り得る。イベントインジケータ50は、それぞれのイベントのイベントタイプのインジケータ、イベントのタイムスタンプ、ならびにそれぞれのクライアントシステム12および/またはゲストVM32の識別子(クライアントID)を含み得る。
[0055]応答して、サーバ14は分析要求52をクライアントシステム12に送り得、要求52は、いくつかのフォレンジックアクティビティをクライアントシステム12に対して実施するようにオンデマンドイントロスペクションエンジン42に命令する。分析要求52は、データ収集/イベント分析を実行するためにエンジン42によって使用されるべきフォレンジックツールのインジケータ、および/または何らかの他の種類のセキュリティリソースのインジケータを含み得る。いくつかの実施形態では、分析要求52は、別のクライアントシステムからイベントインジケータを受信したことに応答して、クライアントシステムに送出され得る。
[0056]いくつかの実施形態では、要求されたフォレンジックアクティビティを実施したことに応答して、オンデマンドイントロスペクションエンジン42はフォレンジック報告54をサーバ14に送信し、報告54はそれぞれのフォレンジックアクティビティを実行した結果を含む。報告54は、たとえば、ソフトウェアオブジェクトのリスト、メモリアドレスのリスト、セキュリティまたはハードウェア設定のリストなどを含み得る。
[0057]フォレンジック報告54を受信したことに応答して、サーバ14は、それぞれのクライアントシステム/ゲストVMが特定の種類のコンピュータセキュリティ脅威の影響を受けやすいかどうか、たとえば、それぞれのクライアントシステム/ゲストVMが悪意のあるソフトウェアに感染しているかどうかを判断し得る。はいであるとき、サーバ14は、セキュリティアラート56をそれぞれのクライアントシステム12に送信し得る。サーバ14のいくつかの実施形態は、たとえば、クリーンアップツールのインジケータを含む緩和インジケータ58、またはネットワークフィルタ44を構成するためのパラメータ値のセットをさらに送信する。
[0058]図7は、本発明のいくつかの実施形態による、ライブイントロスペクションエンジン40によって実施されるステップの例示的なシーケンスを示す。エンジン40は、少なくとも2つの種類のメッセージ/通知、すなわち、ゲストVM32内でのイベントの発生に関するイベントハンドラ46a〜bからの通知と、セキュリティVM33からの(たとえば、フォレンジックアクティビティが現在行われていることをエンジン40にシグナリングするために、オンデマンドイントロスペクションエンジン42からの)通知とをリッスンするように構成され得る。イベント通知を受信したとき、ステップ226において、エンジン40は、そのようなイベント通知の予備分析を実施し得る。いくつかの実施形態では、そのような予備分析は、ユーザエクスペリエンスへの影響をできる限り低く保つために、最小の計算コストを伴う。たとえば、ステップ226は、ルールの比較的単純なセットを使用してイベント通知をフィルタ処理し得る。いくつかの種類のイベントのみが、セキュリティサーバ14に報告され得る(ステップ228〜230)。例示的な一実施形態では、セキュリティサーバ14に通信されるイベントは、特に、OSカーネルをフックまたはパッチしようとする試みと、知られていないモジュールの注入と、特定のメモリ領域からのコードを実行しようとする試みとを含む。検出されたイベントが報告に値するイベントのカテゴリーに属さないとき、エンジン40のいくつかの実施形態は、それぞれのイベントをエミュレートし、その後、ゲストVM32の実行を再開する。
[0059]検出されたイベントがセキュリティVM33からの通知を含むとき(ステップ232)、いくつかの実施形態は、たとえば、クライアントシステム12が、進行中のフォレンジックアクティビティまたは脅威緩和アクティビティによる一時的減速を経験し得ることをユーザに通知するために、クライアントシステム12の出力デバイス上に警告メッセージを表示し得る。さらなるステップ236において、ライブイントロスペクションエンジン40のいくつかの実施形態は、フォレンジック/緩和アクティビティを実行するためにオンデマンドイントロスペクションエンジン42と協働し、それを支援し得る。そのような協働の一例は、オンデマンドイントロスペクションエンジン42がライブイントロスペクションエンジン40の現在の状態を問い合わせることを含む。
[0060]図8は、本発明のいくつかの実施形態による、オンデマンドイントロスペクションエンジン42によって実施されるステップの例示的なシーケンスを示す。ステップ250〜252のシーケンスにおいて、エンジン42は、たとえばサーバ14とセキュリティVM33との間に確立されたセキュアトンネル49を介して、サーバ14からの分析要求をリッスンし得る(図5参照)。いくつかの実施形態では、ハイパーバイザ30は、分析要求52を受信したことに応答して、ゲストVM32を実行することから、セキュリティVM33とオンデマンドイントロスペクションエンジン42とを実行することに自動的に切り替わり得る。
[0061]要求52は、フォレンジックアクティビティにおいて使用されるべきツールのセットおよび/またはセキュリティリソースを示し得る。たとえば、分析要求52は、ツールリポジトリ15からのそれぞれのツールの選択的取出しを可能にする、ロケーションインジケータ(たとえば、メモリアドレス、ネットワーク経路)を含み得る。ステップ256において、エンジン42は、通信ネットワーク11を介してそのようなツール/リソースにアクセスし得る。ツール/リソースにアクセスすることは、ツールリポジトリ15からクライアントシステム12のローカルストレージデバイス24(図2−A)上にそれぞれのツール/リソースをダウンロードすることを含み得る。好ましい実施形態では、ツール/リソースにアクセスすることは、オンデマンドエンジン42がそれぞれのツール/リソースをそれらのリモートロケーションからマウントすることを含む。本明細書では、マウントすることは、セキュリティVM33がローカルファイルシステムを介してそれぞれのリソースにアクセスすることができるように、(ツールリポジトリ15によってホストされる)リモートリソースとセキュリティVM33のローカルファイルシステムとの間に接続を作成することを指す。たとえば、Linux(登録商標)ファイルシステムでは、マウントすることは、「マウント」コマンドを介して達成され、前記接続はマウントポイントを含む。
[0062]いくつかの実施形態では、サーバ14は、それぞれのツール/リソースにアクセスするおよび/またはそれらをマウントするようにトンネル49を介してエンジン42に明示的に命令し得る。ツール/リソースにアクセスしたことに応答して、ステップ258〜260〜262のシーケンスにおいて、エンジン42は、要求されたフォレンジックアクティビティを実行し、フォレンジック報告54をサーバ14に送り、それぞれのツール/リソースをアンマウントするかまたは場合によっては廃棄し得る。フォレンジック分析の終了時にツール/リソースを廃棄することは、フォレンジック分析の別個のセッション間での悪意のあるソフトウェアの伝搬を防ぐという点と、クライアントシステム12a〜cが、ツールリポジトリ15中の利用可能なそれぞれのリソースの最新バージョンを常に使用することを保証するという点で、有益であり得る。
[0063]図9は、本発明のいくつかの実施形態による、セキュリティサーバ14によって実施されるステップの例示的なシーケンスを示す。サーバ14は、クライアントシステム12a〜dから受信された通信をリッスンするように構成され得る(ステップ280〜282)。そのような通信がイベントインジケータ(すなわち、保護されたクライアントシステム上にイベントが発生したという通知)を含むとき、いくつかの実施形態は、それぞれのイベントをロギングし(ステップ286)、フォレンジック分析を要求すべきかどうか、およびどの種類の分析を要求すべきかをイベントインジケータ50に従って判断する。1つのそのような例では、イベントインジケータ50が、コード注入が生じたことを示すとき、サーバ14は、「アプリケーションスナップショット」および/またはVolatility(登録商標)メモリフォレンジックツールを使用する分析を要求し得る。いくつかの実施形態では、いくつかのタイプのイベントは、複数のツールおよびリソースを使用する、複雑な分析についての要求を生成する。
[0064]決定は、現在の通知によって示されたイベントタイプに従って、および/またはそれぞれのクライアントシステム/ゲストVMのために現在施行されているセキュリティポリシーに従って行われる。したがって、決定プロセスは、イベント履歴および/またはクライアント固有のポリシーについてクライアントデータベース17を照会することを含み得る(ステップ290)。他の決定基準は、それぞれのクライアントシステムのハードウェア構成(たとえば、クライアントシステム12が、特定の種類のプロセッサ、ネットワークアダプタなどのような、特定のハードウェア構成要素を有するかどうか)を含み得る。他の基準は、ゲストVM32内で実行するオペレーティングシステムのタイプ、およびアプリケーション36のタイプ(ウェブサーバ、データベース処理など)など、ソフトウェア態様を含み得る。そのような決定ストラテジーは、あるソフトウェアが特定のコンピュータセキュリティ脅威の影響を受けやすいという知識に依拠する。決定プロセスは、ヒューリスティックルールのセット、決定ツリー、または当技術分野において知られている任意の他の手段を採用し得る。例示的な一実施形態は、入力としてイベントタイプおよび様々なポリシー特徴値などのデータを受信し、フォレンジック分析を要求すべきか否かを示す決定インジケータ(たとえば、はい/いいえ)を出力する、人工ニューラルネットワークを使用し得る。
[0065]いくつかの実施形態では、フォレンジック分析を要求すべきかどうか、および/またはどの種類の分析を要求すべきかの決定は、同じクライアントシステム上に発生するイベントの履歴をさらに考慮し得る。そのような実施形態は、別個の瞬間に発生するイベントを相関させることを可能にし、したがって、多数のソフトウェアエンティティを介して悪意のあるペイロードを配信する(たとえば、いくつかのアクションが、第1のエンティティによって実施され、他のアクションが、第1のエンティティの子エンティティによって、または第1のエンティティによって注入されたコードを含んでいる第2のエンティティによって実施される)高性能マルウェアの検出を可能にし得る。
[0066]いくつかの実施形態では、決定プロセスは、イベント通知50の送信側とは別個のクライアントシステム上に発生するイベントの履歴を考慮し得る。1つのそのような例では、サーバ14は、特定のタイプのイベントが他のクライアントシステム上で最近発生したかどうかに関する情報について、イベントログを照会し得る。そのようなアクティビティのバーストは、クライアントシステムの間に拡散するマルウェアの波(ゼロデイ(zero−day)脅威)、または複数のクライアントシステムによって実行される協調型攻撃をシグナリングし得る。
[0067]通知されたイベントがフォレンジック分析を正当化するとき(ステップ292)、ステップ294は、必要とされるフォレンジック分析を実行するためにそれぞれのクライアントシステムによって使用されるべきリソースおよび/またはフォレンジックツールを選択する。選択は、ルールのセット、決定ツリーなどに従って行われ得る。一例では、コード注入が発生したという通知を受信したことに応答して、サーバ14は、「アプリケーションスナップショット」ツールを使用する分析を要求し得る。いくつかの実施形態では、いくつかのタイプのイベントは、複数のツールおよびリソースを使用する、複雑な分析についての要求を生成する。
[0068]クライアントシステム12から受信された通信がフォレンジック報告54を含むとき(ステップ298)、サーバ14は、それぞれの報告を分析し(ステップ300)、場合によっては、報告54を同じクライアントシステムまたは他のクライアントシステムからの他の報告を用いて補強し、クライアントシステム12a〜cのいずれかがコンピュータセキュリティ脅威の影響を受けやすい(たとえば、悪意のあるエンティティによる攻撃下にある可能性がある)かどうかを判断し得る。はいであるとき、サーバ14は、警告を管理者に送り、および/またはセキュリティアラート56を影響を受けるクライアントシステムに送り得る。さらなるステップ306において、サーバ14は、たとえばセキュアトンネル49を介して、緩和インジケータ58をそれぞれのクライアントシステムに送り得る。緩和インジケータ58は、コマンド、命令、および/または、クリーンアップツールのセットのインジケータを含み得る。
[0069]上記で説明された例示的な実施形態(図7〜図8〜図9)では、フォレンジック分析を要求すべきかどうかおよび/またはどのタイプの分析を要求すべきかに関係する決定が、セキュリティサーバ14によって行われる。代替実施形態では、オンデマンドイントロスペクションエンジン42は、たとえばハイパーバイザ30によって管理されるプロセス間通信機構を介して、分析要求52とイベントインジケータ50とをライブイントロスペクションエンジン40から直接受信する。オンデマンドイントロスペクションエンジン42は、次いで、上記で説明されたようにイベントインジケータ50および/または他の基準に従って使用すべきフォレンジックツール/リソースのセットを選択し得る。したがって、そのような実施形態では、それぞれのリソースにアクセスする(たとえば、それらをマウントする)という決定は、保護されたクライアントシステムにおいて行われる。
[0070]本発明のいくつかの実施形態は、クライアントシステム12とセキュリティサーバ14との間またはクライアントシステム12と通信ネットワーク11に接続された他のエンティティとの間の通信を調節するためにネットワークフィルタ44を採用することによって、コンピュータセキュリティをさらに強化する。一例では、セキュリティVM33は、クライアントシステム12の(1つまたは複数の)ネットワークアダプタ26の独占的使用を有するように構成され得る。ハイパーバイザ30は、次いで、セキュリティVM33のネットワークフィルタ44を介してゲストVM32との間のすべての通信をルーティングし得る。いくつかの実施形態では、サーバ14が、クライアントシステム12が、影響を受けやすいか、または悪意のあるエンティティによる攻撃下にある可能性があると判断したとき、サーバ14は、ネットワークフィルタ44に、ゲストVM32との間のすべての通信を阻止するように、ゲストVM32がローカルネットワークを介して他のクライアントシステムに接続するのを妨げるように、またはゲストVM32がインターネットにアクセスするのを妨げるように命令し得る。代替実施形態では、ネットワークフィルタ44は、オンデマンドイントロスペクションエンジン42がフォレンジックアクティビティを実施する間、ゲストVM32と別のエンティティとの間の通信を阻止するかまたは場合によっては規制し得る。
[0071]本発明のいくつかの実施形態は、マルウェア、スパイウェア、アドウェア、および無認可の侵入などのコンピュータセキュリティ脅威から比較的多数のクライアントシステム(たとえば、企業ネットワーク)を保護することを可能にし得る。いくつかの実施形態は、中央ポイントからの、たとえば保護されたクライアントシステムに通信可能に結合されたセキュリティサーバからのセキュリティの容易なおよび信用できる管理をさらに可能にし得る。そのような集中化は、数百個の仮想マシンが単一のハードウェアプラットフォーム上で同時に動作し得る、ウェブサーバファーム化および仮想デスクトップインフラストラクチャ管理などのクラウドコンピューティング適用例の場合、特に有利であり得る。
[0072]いくつかの実施形態では、各保護されたクライアントは、ライブイントロスペクションエンジンとオンデマンドイントロスペクションエンジンとを動作させる。ライブイントロスペクションエンジンは、それぞれのクライアントシステム上に公開された保護された仮想マシン内でのいくつかのイベントの発生を検出し、発生をリモートセキュリティサーバに通信する。次には、サーバは、報告されたイベントのイベントタイプに従って、および/またはそれぞれのクライアントのハードウェアおよび/またはソフトウェア委細に従って、ツールリポジトリからフォレンジックツールを選択し得る。オンデマンドイントロスペクションエンジンは、イベントのフォレンジック分析を実施する(たとえば、それぞれのイベントのコンテキストを発見する)ために、フォレンジックツールを取り出し、それを実行し得る。次いで、フォレンジック分析の結果がセキュリティサーバに通信され得、セキュリティサーバは、それぞれのクライアントが悪意のあるソフトウェアまたは侵入者による攻撃下にあるかどうかを判断するために、その情報を使用し得る。
[0073]本発明のいくつかの実施形態は、多数のクライアントを保護するための一般的なコンピュータセキュリティソリューションが攻撃に対して良好に応答しないという洞察に依拠する。既存のソリューションが攻撃を検出することが可能であるときでも、分析および修正は、特にランサムウェアおよび悪意のある侵入などの高性能脅威の場合、人間のオペレータが、影響を受けるクライアントシステムに派遣されることを必要とし得る。対照的に、本発明のいくつかの実施形態では、カスタマイズされたデータ収集/事実発見(フォレンジック分析)および脅威緩和(たとえば、マルウェアクリーンアップ)が、セキュリティサーバの直接的命令下で、クライアントマシン上で自動的に実施される。本発明の例示的な一実施形態は、保護されたクライアントとセキュリティサーバとの間のセキュアポイントツーポイント通信チャネルを確立し、それは、人間のオペレータがそれぞれのクライアントをリモートで構成すること、およびそれぞれのクライアント上でのフォレンジックス/クリーンアップ動作をリモート端末から行うことさえ可能にする。
[0074]複数のクライアントからのイベント検出およびフォレンジック分析結果をアグリゲートすることによって、いくつかの実施形態は、(ゼロデイ攻撃としても当技術分野で知られている)前に未知であったマルウェアの高速検出を可能にし得る。従来のサーバ側脅威検出は、一般に、かなりのサーバ側計算能力を必要とする。一般的なクライアントサーバ検出シナリオとは対照的に、本発明のいくつかの実施形態では、イベントフィルタ処理およびフォレンジック分析などのいくつかのコストがかかるセキュリティ関連動作が、クライアントシステム自体によって実行される。したがって、いくつかの実施形態は、計算負担の大部分をセキュリティサーバに転送する代わりに、いくつかのコストがかかる脅威検出および分析動作を実施するために複数のクライアントマシンの分散された計算能力を使用する。
[0075]本発明のいくつかの実施形態は、コンピュータシステム中に発生するすべてのイベントが、コンピュータセキュリティ脅威の本質的報知または表示であるとは限らないという観測にさらに依拠する。同じタイプのイベント(たとえば、URLにアクセスすること、ディスクファイルを開くことなど)は、いくつかのシナリオでは悪意を示すが、他のシナリオでは完全に無害であり得る。1つのそのような例では、イベントが、独立して行われるときは、悪意を示さないことがあるが、それがイベントの特定のシーケンスの一部として発生するときは、マルウェアを示し得る。たとえば、ディスクファイルへの書込みは、独立して行われるときは、無害の動作であり得る(すなわち、多くのプロセスおよびアプリケーションが、合法的にディスクにアクセスする)。しかしながら、書込みイベントは、書込みを実施するエンティティが別のエンティティから注入されたコードの受信側であるときは、疑わしいものになり得る。本発明のいくつかの実施形態では、ライブイントロスペクションエンジンは、様々な基準に従って検出されたイベントを事前フィルタ処理し、そのようなイベントの選択されたサブセットのみをセキュリティサーバに報告する。このストラテジーは、サーバにかかる計算負担をさらに低減する。
[0076]従来のコンピュータセキュリティ適用例では、クライアント側セキュリティツール(たとえば、アンチマルウェアルーチン、署名データベースなど)が、クライアントコンピュータシステム上に存在し、周期的ソフトウェアアップデートによって最新に保たれる。対照的に、本発明のいくつかの実施形態では、セキュリティツールが集中型リポジトリ(たとえば、企業ネットワーク上の専用サーバ)中に保たれる。クライアントシステムは、セキュリティサーバによって命令されたとき、要求に応じて、必要とされるツールのみを取り出し、したがって、大量のソフトウェア更新および時間がかかるネットワーク管理の必要をなくし得る。好ましい実施形態では、クライアントシステムは、リモート集中型ツールリポジトリをクライアントのファイルシステム上にマウントすることによって、セキュリティツールにリモートでアクセスする。
[0077]保護されたクライアントまたはセキュリティサーバとは対照的に、中央リポジトリ中に大部分のセキュリティツールを保つことは、クライアントがそれぞれのセキュリティツールの直近のバージョンへのアクセスを有することを保証する。そのような構成の別の大きな利点は、それらが、クライアント側およびサーバ側ソフトウェアが従来のセキュリティシステムにおけるものよりもかなり小さくなることを可能にすることである。そのような軽量構成要素(たとえば、ハイパーバイザ30、ライブおよびオンデマンドイントロスペクションエンジン40〜42)は、開発し、維持し、クライアントに展開するのがより容易である。それらはまた、フォレンジックツールおよび/または脅威緩和ツールを含む一体型セキュリティソリューションよりも少ない更新を必要とする。さらに、軽量構成要素は、悪意のあるソフトウェアおよびハッカーに比較的小さい攻撃面を公開する。
[0078]上記実施形態が本発明の範囲から逸脱することなく多くのやり方で変更され得ることは、当業者にとって明らかであろう。したがって、本発明の範囲は、以下の特許請求の範囲およびそれらの法的均等物によって判断されるべきである。

Claims (25)

  1. ハイパーバイザと、ライブイントロスペクションエンジンと、オンデマンドイントロスペクションエンジンとを実行するように構成されたハードウェアプロセッサを含むクライアントコンピュータシステムであって、
    前記ハイパーバイザは、ゲスト仮想マシン(VM)と、前記ゲストVMとは別個のセキュリティVMとを公開するように構成され、前記オンデマンドイントロスペクションエンジンは前記セキュリティVM内で実行され、前記ライブイントロスペクションエンジンは前記ゲストVMと前記セキュリティVMとの外部で実行され、
    前記ライブイントロスペクションエンジンは、前記ゲストVM内でのイベントの発生を検出するのに応答して、前記イベントのインジケータをリモートサーバコンピュータシステムに通信ネットワークを介して送信するように構成され、
    前記オンデマンドイントロスペクションエンジンは、
    前記ライブイントロスペクションエンジンが前記イベントの前記インジケータを前記リモートサーバコンピュータシステムに送信するのに応答して、分析要求を前記リモートサーバコンピュータシステムから受信することであって、前記分析要求は、前記クライアントコンピュータシステムを含む複数のクライアントにセキュリティツールを配信するように構成されたリモートツールリポジトリにあるセキュリティツールを示し、前記セキュリティツールは、前記イベントの前記発生を分析するように構成されたソフトウェアを含み、前記セキュリティツールは、前記リモートサーバコンピュータシステムによって前記イベントのイベントタイプに従って選択される、受信することと、
    前記分析要求を受信するのに応答して、前記セキュリティツールを前記分析要求に従って識別することと、
    前記セキュリティツールを識別するのに応答して、前記セキュリティツールを前記ツールリポジトリから選択的に取り出すことであって、前記セキュリティツールを取り出すことは、前記中央ツールリポジトリに前記通信ネットワークを介して接続することを含む、取り出すことと、
    前記セキュリティツールを選択的に取り出すのに応答して、前記セキュリティツールを実行することと、
    前記セキュリティツールを実行するのに応答して、前記セキュリティツールの実行の結果を前記リモートサーバコンピュータシステムに送信することと
    を行うように構成された、
    クライアントコンピュータシステム。
  2. 請求項1に記載のクライアントコンピュータシステムであって、前記リモートサーバコンピュータシステムは、前記クライアントコンピュータシステムが悪意のあるソフトウェアを含むかどうかを前記結果に従って判断するようにさらに構成された、クライアントコンピュータシステム。
  3. 請求項1に記載のクライアントコンピュータシステムであって、前記リモートサーバコンピュータシステムは、前記クライアントコンピュータシステムの悪意のある侵入を前記結果に従って検出するようにさらに構成された、クライアントコンピュータシステム。
  4. 請求項1に記載のクライアントコンピュータシステムであって、前記オンデマンドイントロスペクションエンジンは、
    前記結果を前記リモートサーバコンピュータシステムに送信するのに応答して、前記リモートサーバコンピュータシステムから前記リモートツールリポジトリにある緩和ツールのインジケータを受信することであって、前記緩和ツールは、前記クライアントコンピュータシステム上で実行される悪意のあるソフトウェアを無能力化するように構成されたソフトウェア含む、受信することと、
    前記緩和ツールの前記インジケータを受信するのに応答して、前記緩和ツールを取り出し、実行することと
    を行うようにさらに構成された、クライアントコンピュータシステム。
  5. 請求項1に記載のクライアントコンピュータシステムであって、前記ライブイントロスペクションエンジンは、
    前記イベントの前記発生を検出するのに応答して、前記イベントのイベントタイプに従って、イベント適格性条件が満たされるかどうかを判断することと、
    応答して、前記イベントの前記インジケータを前記リモートサーバコンピュータシステムに、前記イベント適格性条件が満たされたときのみ送信することと
    を行うようにさらに構成された、クライアントコンピュータシステム。
  6. 請求項1に記載のクライアントコンピュータシステムであって、前記セキュリティツールを前記リモートツールリポジトリから取り出すことは、前記リモートツールリポジトリを前記セキュリティVMのファイルシステムにマウントすることを含む、クライアントコンピュータシステム。
  7. 請求項1に記載のクライアントコンピュータシステムであって、前記セキュリティVMはネットワークフィルタをさらに含み、前記ハイパーバイザは、前記ゲストVMとリモートパーティとの間のネットワークトラフィックを、前記ネットワークフィルタを介してルーティングするようにさらに構成された、クライアントコンピュータシステム。
  8. 請求項7に記載のクライアントコンピュータシステムであって、
    前記リモートサーバコンピュータシステムは、前記クライアントコンピュータシステムが悪意のあるソフトウェアを含むかどうかを判断するのに応答して、前記クライアントコンピュータシステムが悪意のあるソフトウェアを含むときに、セキュリティアラートを前記クライアントコンピュータシステムに送るようにさらに構成され、
    前記ネットワークフィルタは、前記クライアントコンピュータシステムが前記セキュリティアラートを受信するのに応答して、前記ゲストVMと前記リモートパーティとの間のネットワークトラフィックを制限するように構成された、
    クライアントコンピュータシステム。
  9. 請求項1に記載のクライアントコンピュータシステムであって、前記セキュリティツールの実行の前記結果は、前記ゲストVMによって使用されたメモリのセクションのコンテンツのコピーを含む、クライアントコンピュータシステム。
  10. 請求項1に記載のクライアントコンピュータシステムであって、前記セキュリティツールの実行の前記結果は、前記ゲストVM内で実行されるソフトウェアエンティティのリストを含む、クライアントコンピュータシステム。
  11. 請求項1に記載のクライアントコンピュータシステムであって、前記セキュリティツールの実行の前記結果は、前記クライアントコンピュータシステムのハードウェア構成のインジケータを含む、クライアントコンピュータシステム。
  12. 請求項1に記載のクライアントコンピュータシステムであって、
    前記ハイパーバイザは、前記リモートサーバコンピュータシステムと前記セキュリティVMとの間にセキュアなポイントツーポイント通信チャネルを確立するように構成され、
    前記オンデマンドイントロスペクションエンジンは、前記セキュアなポイントツーポイント通信チャネルを介して、前記分析要求を受信し、前記結果を送信するように構成された、
    クライアントコンピュータシステム。
  13. 複数のクライアントシステムとのコンピュータセキュリティトランザクションを実施するように構成されたサーバコンピュータであって、前記サーバコンピュータシステムは、ハードウェアプロセッサを含み、該ハードウェアプロセッサは、
    前記複数のクライアントシステムのうちのクライアントシステムから、前記クライアントシステム上で実行されるゲスト仮想マシン(VM)内でのイベントの発生を示すイベントインジケータを受信するのに応答して、前記複数のクライアントシステムにセキュリティツールを配信するように構成されたリモートツールリポジトリにあるセキュリティツールを選択することであって、前記セキュリティツールは、前記イベントの前記発生を分析するように構成されたソフトウェアを含み、前記セキュリティツールを選択することは、前記イベントのイベントタイプに従って実施される、選択することと、
    前記セキュリティツールを選択するのに応答して、分析要求を前記クライアントシステムに通信ネットワークを介して送信することであって、前記分析要求は前記セキュリティツールの識別子を含む、送信することと、
    前記セキュリティツールの前記インジケータを送信するのに応答して、前記クライアントシステムから、前記セキュリティツールを前記クライアントシステム上で実行した結果を受信することと
    を行うように構成され、
    前記クライアントシステムは、ハイパーバイザと、ライブイントロスペクションエンジンと、オンデマンドイントロスペクションエンジンとを実行するように構成され、
    前記ハイパーバイザは、前記ゲストVMと、前記ゲストVMとは別個のセキュリティVMとを公開するように構成され、前記オンデマンドイントロスペクションエンジンは前記セキュリティVM内で実行され、前記ライブイントロスペクションエンジンは前記ゲストVMと前記セキュリティVMとの外部で実行され、
    前記ライブイントロスペクションエンジンは、前記イベントの前記発生を検出するのに応答して、前記イベントインジケータを前記サーバコンピュータシステムに送信するように構成され、
    前記オンデマンドイントロスペクションエンジンは、
    前記分析要求を受信するのに応答して、前記セキュリティツールを前記分析要求に従って識別することと、
    前記セキュリティツールを識別するのに応答して、前記セキュリティツールを前記ツールリポジトリから選択的に取り出すことであって、前記セキュリティツールを取り出すことは、前記クライアントシステムが前記リモートツールリポジトリに前記通信ネットワークを介して接続することを含む、取り出すことと、
    前記セキュリティツールを取り出すのに応答して、前記結果を生成するために前記セキュリティツールを実行することと
    を行うように構成された、
    サーバコンピュータ。
  14. 請求項13に記載のサーバコンピュータであって、前記ハードウェアプロセッサは、前記クライアントシステムが悪意のあるソフトウェアを含むかどうかを前記結果に従って判断するようにさらに構成された、サーバコンピュータ。
  15. 請求項13に記載のサーバコンピュータであって、前記ハードウェアプロセッサは、前記クライアントシステムの悪意のある侵入を前記結果に従って検出するようにさらに構成された、サーバコンピュータ。
  16. 請求項13に記載のサーバコンピュータであって、前記ハードウェアプロセッサは、
    前記クライアントシステムが悪意のあるソフトウェアを含むかどうかを判断するのに応答して、前記クライアントシステムが悪意のあるソフトウェアを含むときに、緩和ツールを前記リモートツールリポジトリから選択することであって、前記緩和ツールは、前記悪意のあるソフトウェアを無能力化するように構成されたソフトウェアを含む、選択することと、
    前記緩和ツールを選択するのに応答して、前記緩和ツールのインジケータを前記クライアントシステムに送信することと
    を行うようにさらに構成された、サーバコンピュータ。
  17. 請求項13に記載のサーバコンピュータであって、前記ライブイントロスペクションエンジンは、
    前記イベントの前記発生を検出するのに応答して、前記イベントのイベントタイプに従って、イベント適格性条件が満たされるかどうかを判断することと、
    応答して、前記イベントの前記インジケータを前記サーバコンピュータシステムに前記イベント適格性条件が満たされたときのみ送信することと
    を行うようにさらに構成された、サーバコンピュータ。
  18. 請求項13に記載のサーバコンピュータであって、前記セキュリティツールを前記リモートツールリポジトリから取り出すことは、前記リモートツールリポジトリを前記セキュリティVMのファイルシステムにマウントすることを含む、サーバコンピュータ。
  19. 請求項13に記載のサーバコンピュータであって、前記セキュリティVMはネットワークフィルタをさらに含み、前記ハイパーバイザは、前記ゲストVMとリモートパーティとの間のネットワークトラフィックを、前記ネットワークフィルタを介してルーティングするようにさらに構成された、サーバコンピュータ。
  20. 請求項19に記載のサーバコンピュータであって、前記ハードウェアプロセッサは、前記クライアントシステムが悪意のあるソフトウェアを含むかどうかを判断するのに応答して、前記クライアントシステムが悪意のあるソフトウェアを含むときに、セキュリティアラートを前記クライアントシステムに送るようにさらに構成され、前記クライアントシステムによる前記セキュリティアラートの受信が、前記ネットワークフィルタに前記ゲストVMと前記リモートパーティとの間のネットワークトラフィックを制限させる、サーバコンピュータ。
  21. 請求項13に記載のサーバコンピュータであって、前記セキュリティツールの実行の前記結果は、前記ゲストVMによって使用されたメモリのセクションのコンテンツのコピーを含む、サーバコンピュータ。
  22. 請求項13に記載のサーバコンピュータであって、前記セキュリティツールの実行の前記結果は、前記ゲストVM内で実行されるソフトウェアエンティティのリストを含む、サーバコンピュータ。
  23. 請求項13に記載のサーバコンピュータであって、前記セキュリティツールの実行の前記結果は、前記クライアントコンピュータシステムのハードウェア構成のインジケータを含む、サーバコンピュータ。
  24. 請求項13に記載のサーバコンピュータであって、
    前記ハイパーバイザは、前記サーバコンピュータと前記セキュリティVMとの間にセキュアなポイントツーポイント通信チャネルを確立するように構成され、
    前記ハードウェアプロセッサは、前記セキュアなポイントツーポイント通信チャネルを介して、前記セキュリティツールの前記インジケータを送り、前記セキュリティツールの実行の前記結果を受信するようにさらに構成された、
    サーバコンピュータ。
  25. 命令のセットを含む非一時的コンピュータ可読媒体であって、命令の前記セットは、クライアントコンピュータシステムのハードウェアプロセッサ上で実行されたときに、前記クライアントコンピュータシステムに、ハイパーバイザと、ライブイントロスペクションエンジンと、オンデマンドイントロスペクションエンジンとを形成させ、
    前記ハイパーバイザは、ゲスト仮想マシン(VM)と、前記ゲストVMとは別個のセキュリティVMとを公開するように構成され、前記オンデマンドイントロスペクションエンジンは前記セキュリティVM内で実行され、前記ライブイントロスペクションエンジンは前記ゲストVMと前記セキュリティVMとの外部で実行され、
    前記ライブイントロスペクションエンジンは、前記ゲストVM内でのイベントの発生を検出するのに応答して、前記イベントのインジケータをリモートサーバコンピュータシステムに通信ネットワークを介して送信するように構成され、
    前記オンデマンドイントロスペクションエンジンは、
    前記ライブイントロスペクションエンジンが前記イベントの前記インジケータを前記リモートサーバコンピュータシステムに送信するのに応答して、分析要求を前記リモートサーバコンピュータシステムから受信することであって、前記分析要求は、前記クライアントコンピュータシステムを含む複数のクライアントにセキュリティツールを配信するように構成されたリモートツールリポジトリにあるセキュリティツールを示し、前記セキュリティツールは、前記イベントの前記発生を分析するように構成されたソフトウェアを含み、前記セキュリティツールは、前記リモートサーバコンピュータシステムによって前記イベントのイベントタイプに従って選択される、受信することと、
    前記分析要求を受信するのに応答して、前記セキュリティツールを前記分析要求に従って識別することと、
    前記セキュリティツールを識別するのに応答して、前記セキュリティツールを前記ツールリポジトリから選択的に取り出すことであって、前記セキュリティツールを取り出すことは、前記中央ツールリポジトリに前記通信ネットワークを介して接続することを含む、取り出すことと、
    前記セキュリティツールを選択的に取り出すのに応答して、前記セキュリティツールを実行することと、
    前記セキュリティツールを実行するのに応答して、前記セキュリティツールの実行の結果を前記リモートサーバコンピュータシステムに送信することと
    を行うように構成された、
    非一時的コンピュータ可読媒体。
JP2018532300A 2015-12-19 2016-12-19 複数のネットワークエンドポイントをセキュアにするためのデュアルメモリイントロスペクション Active JP6772270B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201562269952P 2015-12-19 2015-12-19
US62/269,952 2015-12-19
PCT/EP2016/081697 WO2017103254A1 (en) 2015-12-19 2016-12-19 Dual memory introspection for securing multiple network endpoints

Publications (3)

Publication Number Publication Date
JP2018538633A true JP2018538633A (ja) 2018-12-27
JP2018538633A5 JP2018538633A5 (ja) 2019-08-15
JP6772270B2 JP6772270B2 (ja) 2020-10-21

Family

ID=57777593

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018532300A Active JP6772270B2 (ja) 2015-12-19 2016-12-19 複数のネットワークエンドポイントをセキュアにするためのデュアルメモリイントロスペクション

Country Status (13)

Country Link
US (1) US10630643B2 (ja)
EP (1) EP3391274B1 (ja)
JP (1) JP6772270B2 (ja)
KR (1) KR102301721B1 (ja)
CN (1) CN108369625B (ja)
AU (1) AU2016369460B2 (ja)
CA (1) CA3006003C (ja)
ES (1) ES2762988T3 (ja)
HK (1) HK1254985A1 (ja)
IL (1) IL259344B (ja)
RU (1) RU2714607C2 (ja)
SG (1) SG11201804327TA (ja)
WO (1) WO2017103254A1 (ja)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3616115B1 (en) * 2017-04-26 2023-12-06 Cylance Inc. Endpoint detection and response system event characterization data transfer
US10505966B2 (en) * 2017-06-06 2019-12-10 Sap Se Cross-site request forgery (CSRF) vulnerability detection
US10503910B2 (en) * 2017-06-06 2019-12-10 Sap Se Security testing framework including virtualized server-side platform
US10764169B2 (en) 2017-10-09 2020-09-01 Keysight Technologies, Inc. Methods, systems, and computer readable media for testing virtual network components deployed in virtual private clouds (VPCs)
US10693909B2 (en) 2018-01-19 2020-06-23 International Business Machines Corporation Securing an endpoint in a computer network
US11038770B2 (en) * 2018-02-01 2021-06-15 Keysight Technologies, Inc. Methods, systems, and computer readable media for managing deployment and maintenance of network tools
US10812349B2 (en) 2018-02-17 2020-10-20 Keysight Technologies, Inc. Methods, systems and computer readable media for triggering on-demand dynamic activation of cloud-based network visibility tools
US11347861B2 (en) 2018-04-10 2022-05-31 Raytheon Company Controlling security state of commercial off the shelf (COTS) system
JP7069399B2 (ja) * 2018-07-18 2022-05-17 ビットディフェンダー アイピーアール マネジメント リミテッド コンピュータセキュリティインシデントを報告するためのシステムおよび方法
US11423150B2 (en) 2018-09-07 2022-08-23 Raytheon Company System and method for booting processors with encrypted boot image
US11178159B2 (en) 2018-09-07 2021-11-16 Raytheon Company Cross-domain solution using network-connected hardware root-of-trust device
US10878101B2 (en) 2018-09-07 2020-12-29 Raytheon Company Trusted booting by hardware root of trust (HRoT) device
BR112021019741A2 (pt) 2019-04-01 2021-12-21 Raytheon Co Sistemas e método para proteção de dados
WO2020205497A1 (en) 2019-04-01 2020-10-08 Raytheon Company Root of trust assisted access control of secure encrypted drives
US10951509B1 (en) 2019-06-07 2021-03-16 Keysight Technologies, Inc. Methods, systems, and computer readable media for providing intent-driven microapps for execution on communications network testing devices
US11249787B2 (en) * 2019-10-01 2022-02-15 Bank Of America Corporation Method and system for data collection using hypervisor
US11489745B2 (en) 2019-10-15 2022-11-01 Keysight Technologies, Inc. Methods, systems and computer readable media for providing a declarative network monitoring environment
US11379588B2 (en) 2019-12-20 2022-07-05 Raytheon Company System validation by hardware root of trust (HRoT) device and system management mode (SMM)
US11615181B2 (en) 2021-03-30 2023-03-28 Netapp, Inc. Methods for managing verification and validation of third-party code and devices thereof
US11586725B2 (en) * 2021-03-30 2023-02-21 Netapp, Inc. Methods for managing verification and validation of third-party code and devices thereof
US11681520B2 (en) * 2021-04-20 2023-06-20 International Business Machines Corporation Software upgrading using dynamic link library injection
US20230061511A1 (en) * 2021-08-30 2023-03-02 International Business Machines Corporation Inaccessible prefix pages during virtual machine execution
CN115794604B (zh) * 2022-10-14 2024-04-19 寒武纪行歌(南京)科技有限公司 数据生成方法、装置、设备、介质及程序产品

Citations (12)

* 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
JP2001222414A (ja) * 2000-02-09 2001-08-17 Dainippon Printing Co Ltd Dtpツール自動更新システム
JP2006065835A (ja) * 2004-07-28 2006-03-09 Ntt Data Corp 不正アクセス対策制御装置および不正アクセス対策制御プログラム
JP2009037642A (ja) * 2008-10-14 2009-02-19 Secure Ware:Kk データ処理方法、データ処理装置、コンピュータプログラム、及び記録媒体
US20100251363A1 (en) * 2009-03-24 2010-09-30 Rade Todorovic Modified file tracking on virtual machines
JP2012027618A (ja) * 2010-07-21 2012-02-09 Nec Corp Web脆弱性補修装置、Webサーバ、Web脆弱性補修方法、及びプログラム
US20120317570A1 (en) * 2011-06-08 2012-12-13 Dalcher Gregory W System and method for virtual partition monitoring
JP2013502639A (ja) * 2009-08-17 2013-01-24 ファットスカンク・インコーポレーテッド デバイスの監査
JP2014519069A (ja) * 2011-03-16 2014-08-07 シマンテック コーポレーション 仮想デスクトップインフラストラクチャにおいてチェックアウトした仮想マシンを保護する技術
JP2014225302A (ja) * 2014-09-08 2014-12-04 富士通株式会社 ウイルス検出プログラム、ウイルス検出方法、及びコンピュータ
US9009836B1 (en) * 2014-07-17 2015-04-14 Kaspersky Lab Zao Security architecture for virtual machines
US20150356301A1 (en) * 2014-06-06 2015-12-10 Crowdstrike, Inc. Real-Time Model of States of Monitored Devices

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100551421B1 (ko) * 2002-12-28 2006-02-09 주식회사 팬택앤큐리텔 바이러스치료기능을 가진 이동통신 시스템
US7496961B2 (en) 2003-10-15 2009-02-24 Intel Corporation Methods and apparatus to provide network traffic support and physical security support
US8024568B2 (en) 2005-01-28 2011-09-20 Citrix Systems, Inc. Method and system for verification of an endpoint security scan
US20080320594A1 (en) 2007-03-19 2008-12-25 Xuxian Jiang Malware Detector
US7797748B2 (en) 2007-12-12 2010-09-14 Vmware, Inc. On-access anti-virus mechanism for virtual machine architecture
WO2009097610A1 (en) * 2008-02-01 2009-08-06 Northeastern University A vmm-based intrusion detection system
US7979260B1 (en) * 2008-03-31 2011-07-12 Symantec Corporation Simulating PXE booting for virtualized machines
US8443363B1 (en) * 2008-05-30 2013-05-14 Symantec Corporation Coordinated virtualization activities
US9098698B2 (en) 2008-09-12 2015-08-04 George Mason Research Foundation, Inc. Methods and apparatus for application isolation
US8850571B2 (en) * 2008-11-03 2014-09-30 Fireeye, Inc. Systems and methods for detecting malicious network content
RU2444056C1 (ru) * 2010-11-01 2012-02-27 Закрытое акционерное общество "Лаборатория Касперского" Система и способ ускорения решения проблем за счет накопления статистической информации
US20120144489A1 (en) * 2010-12-07 2012-06-07 Microsoft Corporation Antimalware Protection of Virtual Machines
CN102122330B (zh) * 2011-01-24 2014-12-03 中国人民解放军国防科学技术大学 基于虚拟机的“In-VM”恶意代码检测系统
US8819833B2 (en) * 2011-03-01 2014-08-26 Honeywell International Inc. Assured pipeline threat detection
US20120254993A1 (en) * 2011-03-28 2012-10-04 Mcafee, Inc. System and method for virtual machine monitor based anti-malware security
US8813227B2 (en) 2011-03-29 2014-08-19 Mcafee, Inc. System and method for below-operating system regulation and control of self-modifying code
US8601583B1 (en) * 2011-04-14 2013-12-03 Trend Micro Incorporated Certification of virtual machine images in cloud computing environments
US8099596B1 (en) * 2011-06-30 2012-01-17 Kaspersky Lab Zao System and method for malware protection using virtualization
US8584235B2 (en) * 2011-11-02 2013-11-12 Bitdefender IPR Management Ltd. Fuzzy whitelisting anti-malware systems and methods
US20130312096A1 (en) 2012-05-18 2013-11-21 Vmware, Inc. On-demand data scan in a virtual machine
US9003408B2 (en) * 2012-09-28 2015-04-07 Adventium Enterprises Providing virtual machine services by isolated virtual machines
CN103500304B (zh) * 2013-10-13 2016-06-29 西安电子科技大学 基于Xen的虚拟机个性化安全监控系统及监控方法
WO2015070376A1 (zh) * 2013-11-12 2015-05-21 华为技术有限公司 一种实现虚拟化安全的方法和系统
RU2568282C2 (ru) * 2014-04-18 2015-11-20 Закрытое акционерное общество "Лаборатория Касперского" Система и способ обеспечения отказоустойчивости антивирусной защиты, реализуемой в виртуальной среде
FR3022371A1 (fr) * 2014-06-11 2015-12-18 Orange Procede de supervision de la securite d'une machine virtuelle dans une architecture d'informatique dans le nuage
US9608909B1 (en) * 2015-06-08 2017-03-28 Cisco Technology, Inc. Technique for mitigating effects of slow or stuck virtual machines in fibre channel communications networks

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001515625A (ja) * 1997-03-18 2001-09-18 トレンド マイクロ,インコーポレーテッド クライアント・サーバシステムにおけるウイルス検出
US5960170A (en) * 1997-03-18 1999-09-28 Trend Micro, Inc. Event triggered iterative virus detection
JP2001222414A (ja) * 2000-02-09 2001-08-17 Dainippon Printing Co Ltd Dtpツール自動更新システム
JP2006065835A (ja) * 2004-07-28 2006-03-09 Ntt Data Corp 不正アクセス対策制御装置および不正アクセス対策制御プログラム
JP2009037642A (ja) * 2008-10-14 2009-02-19 Secure Ware:Kk データ処理方法、データ処理装置、コンピュータプログラム、及び記録媒体
US20100251363A1 (en) * 2009-03-24 2010-09-30 Rade Todorovic Modified file tracking on virtual machines
JP2013502639A (ja) * 2009-08-17 2013-01-24 ファットスカンク・インコーポレーテッド デバイスの監査
JP2012027618A (ja) * 2010-07-21 2012-02-09 Nec Corp Web脆弱性補修装置、Webサーバ、Web脆弱性補修方法、及びプログラム
JP2014519069A (ja) * 2011-03-16 2014-08-07 シマンテック コーポレーション 仮想デスクトップインフラストラクチャにおいてチェックアウトした仮想マシンを保護する技術
US20120317570A1 (en) * 2011-06-08 2012-12-13 Dalcher Gregory W System and method for virtual partition monitoring
JP2014516191A (ja) * 2011-06-08 2014-07-07 マカフィー, インコーポレイテッド 仮想パーティションを監視するためのシステムおよび方法
US20150356301A1 (en) * 2014-06-06 2015-12-10 Crowdstrike, Inc. Real-Time Model of States of Monitored Devices
US9009836B1 (en) * 2014-07-17 2015-04-14 Kaspersky Lab Zao Security architecture for virtual machines
JP2014225302A (ja) * 2014-09-08 2014-12-04 富士通株式会社 ウイルス検出プログラム、ウイルス検出方法、及びコンピュータ

Also Published As

Publication number Publication date
ES2762988T3 (es) 2020-05-26
CN108369625A (zh) 2018-08-03
AU2016369460A1 (en) 2018-06-07
CA3006003C (en) 2021-11-23
IL259344B (en) 2021-06-30
SG11201804327TA (en) 2018-07-30
KR102301721B1 (ko) 2021-09-15
JP6772270B2 (ja) 2020-10-21
IL259344A (en) 2018-07-31
CN108369625B (zh) 2022-03-04
US20170180318A1 (en) 2017-06-22
CA3006003A1 (en) 2017-06-22
RU2018126207A (ru) 2020-01-20
KR20180097527A (ko) 2018-08-31
RU2714607C2 (ru) 2020-02-18
EP3391274A1 (en) 2018-10-24
EP3391274B1 (en) 2019-10-02
AU2016369460B2 (en) 2021-07-01
RU2018126207A3 (ja) 2020-01-24
HK1254985A1 (zh) 2019-08-02
US10630643B2 (en) 2020-04-21
WO2017103254A1 (en) 2017-06-22

Similar Documents

Publication Publication Date Title
JP6772270B2 (ja) 複数のネットワークエンドポイントをセキュアにするためのデュアルメモリイントロスペクション
US20200366694A1 (en) Methods and systems for malware host correlation
US8910238B2 (en) Hypervisor-based enterprise endpoint protection
EP3430556B1 (en) System and method for process hollowing detection
EP3017392B1 (en) Process evaluation for malware detection in virtual machines
US10395029B1 (en) Virtual system and method with threat protection
AU2014330136B2 (en) Complex scoring for malware detection
US9594881B2 (en) System and method for passive threat detection using virtual memory inspection
EP3111364B1 (en) Systems and methods for optimizing scans of pre-installed applications
RU2667598C1 (ru) Контроль присутствия агента для самовосстановления
US10715554B2 (en) Translating existing security policies enforced in upper layers into new security policies enforced in lower layers
AU2014330136A1 (en) Complex scoring for malware detection
US11113086B1 (en) Virtual system and method for securing external network connectivity
CN111324891A (zh) 用于容器文件完整性监视的系统和方法
US10572663B1 (en) Systems and methods for identifying malicious file droppers

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190703

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190703

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200625

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200930

R150 Certificate of patent or registration of utility model

Ref document number: 6772270

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250