JP5853327B2 - 仮想コンピューティング環境を保護するためのシステムおよび方法 - Google Patents

仮想コンピューティング環境を保護するためのシステムおよび方法 Download PDF

Info

Publication number
JP5853327B2
JP5853327B2 JP2013536889A JP2013536889A JP5853327B2 JP 5853327 B2 JP5853327 B2 JP 5853327B2 JP 2013536889 A JP2013536889 A JP 2013536889A JP 2013536889 A JP2013536889 A JP 2013536889A JP 5853327 B2 JP5853327 B2 JP 5853327B2
Authority
JP
Japan
Prior art keywords
virtual machine
authorized
computing device
computer
unauthorized
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.)
Expired - Fee Related
Application number
JP2013536889A
Other languages
English (en)
Other versions
JP2013541120A (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 JP2013541120A publication Critical patent/JP2013541120A/ja
Application granted granted Critical
Publication of JP5853327B2 publication Critical patent/JP5853327B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • 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
    • 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/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • 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
    • 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)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Bioethics (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)
  • Storage Device Security (AREA)
  • Hardware Redundancy (AREA)
  • Multi Processors (AREA)

Description

〔関連出願の相互参照〕
本願は、2010年10月31日に出願された「Temporal Computing System and Method for Securing Virtual Computing Environments」という名称の米国仮特許出願第61/408,607号に対する優先権を主張し、その内容が参照により本明細書に組み込まれる。
本発明はコンピュータセキュリティに関する。より詳細には、本発明は、コンピュータ装置およびネットワークを権限のないアクセスおよび使用に対して保護することに関する。
今日のコンピュータ装置およびネットワークは、コンピューティング技術革新が非常に競争の激しい業界内でマーケットの要求を満足するために大急ぎで完成されていることに伴い、システムの複雑性が急速に高まっているのにつれて、信じられないほど安全でない。ほとんどの市販の装置およびネットワークにおいては、技術的焦点および資源が伝統的に機能性および革新が解決する問題にあったので、セキュリティは、補足として追加されてきた。結果は素晴らしく、コンピュータ装置およびネットワークアクセスを地球規模でユビキタス(ubiquitous)にする。しかし、この遍在性(ubiquity)が発展する過程で、コンピュータ装置およびそれらをともに接続するネットワークのセキュリティが全く不十分で、ほとんどのシステムがサイバー攻撃およびコンピュータウイルスを受けやすいままにされた。
コンピューティング装置およびネットワークセキュリティに関する問題は、現在のところ、マシンに対する権限のないアクセスを停止し、認可されていないコードがシステム上で実行されるのを防ぐために実施されている手段は、コードベースの広さおよび複雑性が、現在の最良実施コンピューティング環境によって保護できないので、不十分である。パスワードおよび安全なアクセス認証などのセキュリティ手段に加えて、セキュリティポリシーおよび手順を追加しても、システムはまだ十分に安全ではない。実際、システムが、最先端のVPN、IDS、ファイアウォール、およびウイルス除去ソフトなどの専用セキュリティ製品を含んでいる場合でさえ、システムは、大した努力なしに破壊できる。単に最新のオープンソースハッカーソフトウェアをダウンロードし、それをターゲットに向けることにより、多くの場合、プログラマでない人でさえアクセスすることができ、コンピューティング装置が基幹システムにおいてセキュリティ侵害され得る。結果として、海のように広大なシステムセキュリティパッチが存在し、毎日、多くが岸に打ち上げられている。
コンピュータ実装された方法は、認可されたプロセスおよび認可されていないプロセスの動作状態に予測不能な一時的混乱を取り込むことを含む。認可されたプロセスは、予測不能な一時的混乱を回避するために仮想マシンに移行されるが、他方、認可されていないプロセスは、予測不能な一時的混乱にさらされ、それ により、動作障害を誘発する不安定な環境を経験する。
本明細書は、例えば、以下の項目も提供する。
(項目1)
予測不能な一時的混乱を認可されたプロセスおよび認可されていないプロセスの動作状態に取り込むことと、
前記認可されたプロセスが、前記予測不能な一時的混乱を回避するために仮想マシンに移行されるが、他方、前記認可されていないプロセスは、前記予測不能な一時的混乱にさらされ、それにより、動作障害を誘発する不安定な環境を経験することと
を含む、コンピュータ実装された方法。
(項目2)
予測不能な一時的混乱を取り込むことが、1つまたは複数のプロセスを予測不能な方法で開始および停止することと、虚偽のパラメータをプロセスに渡すこととを含む、項目1に記載のコンピュータ実装された方法。
(項目3)
デジタル資源の表現を作成することと、
前記デジタル資源に対して整合性値を確立するために、前記表現に対する一意の値を形成することと、
前記デジタル資源の現在のインスタンス生成を受信することと、
前記現在のインスタンス生成をアクティブな整合性状態に変換することと、
前記デジタル資源の前記現在のインスタンス生成に関連する前記認可されていないプロセスを識別するために、前記整合性値と前記アクティブな整合性状態との間の不一致を識別することと
をさらに含む、項目1に記載のコンピュータ実装された方法。
(項目4)
認可されたプロセスのレジストリを作成することをさらに含む、項目1に記載のコンピュータ実装された方法。
(項目5)
認可されたプロセスに対して終了時間を指定することをさらに含み、前記終了時間が前記認可されたプロセスに知られていない、項目1に記載のコンピュータ実装された方法。
(項目6)
前記終了時間に、前記認可されたプロセスの新しいインスタンス生成を起動することをさらに含む、項目5に記載のコンピュータ実装された方法。
(項目7)
前記認可されたプロセスを前記デジタル資源の新しいインスタンス上に移行することをさらに含み、移行が、前記認可されたプロセスに対応する登録済みの認可されたプロセスを起動することを含む、項目6に記載のコンピュータ実装された方法。
(項目8)
前記認可されていないプロセスを隔離することをさらに含む、項目1に記載のコンピュータ実装された方法。
(項目9)
前記認可されていないプロセスが、システム設定に対して変更を行うこと、共有資源にアクセスすること、および本当のシステム仕様を見ることを妨げる、項目1に記載のコンピュータ実装された方法。
(項目10)
前記認可されていないプロセスの隔離されたインスタンス生成を形成することをさらに含み、前記認可されていないプロセスの前記隔離されたインスタンス生成が、生産環境外部の見えない合成仮想化環境シミュレーション内で動作される、項目1に記載のコンピュータ実装された方法。
(項目11)
科学捜査的分析を、前記認可されていないプロセスの前記隔離されたインスタンス上で実行することをさらに含む、項目10に記載のコンピュータ実装された方法。
(項目12)
前記認可されていないプロセスを分類することと、
脅威レベルの定量化を前記認可されていないプロセスに提供することと、
前記認可されていないプロセスに対する防護対策を決定することと
をさらに含む、項目1に記載のコンピュータ実装された方法。
(項目13)
前記デジタル資源の前記表現が、第1の仮想マシン、第2の仮想マシン、一時的防御層、仮想化オペレーティングシステム、デバイスドライバおよびコンピュータハードウェアを含む、項目3に記載のコンピュータ実装された方法。
(項目14)
前記表現に対して一意の値を形成することが、前記デジタル資源によって処理される実行可能コードのハッシュを計算することを含む、項目13に記載のコンピュータ実装された方法。
(項目15)
前記表現に対して一意の値を形成することが、前記プロセスに関連するイメージ識別、プロセス名、および選択されたヘッダー情報に基づき、認可されたプロセスに対してハッシュを計算することを含む、項目13に記載のコンピュータ実装された方法。
(項目16)
前記表現に対して一意の値を形成することが、仮想マシンアーカイブ識別番号、オペレーティングシステム名、オペレーティングシステムバージョン、オペレーティングシステムサービスのプロセス名、および前記仮想マシン上で実行するために登録された認可されたプロセスに基づき、仮想マシンに対してハッシュを計算することを含む、項目13に記載のコンピュータ実装された方法。
(項目17)
セキュリティ規則エンジン、合成環境シミュレータ、仮想化オペレーティングシステムおよび整合性チェッカーを起動することをさらに含む、項目1に記載のコンピュータ実装された方法。
(項目18)
プロセス間通信ゲートウェイ、隔離エンフォーサ、および状態マッパーを起動することをさらに含む、項目1に記載のコンピュータ実装された方法。
(項目19)
一時的スケジューラ、仮想マシンマネージャ、認可プロセスレジストリ、および基本仮想マシンイメージアーカイブを起動することをさらに含む、項目1に記載のコンピュータ実装された方法。
本発明は、添付の図と併せて、以下の詳述に関連してさらに十分に理解されるであろう。
本発明の実施形態に従って、コンピューティング装置の構成を示すスタック図である。 本発明の実施形態に従って、ネットワーク装置の構成を示すスタック図である。 本発明の実施形態に従って、コンピューティングシステムの構成を示すスタック図である。 本発明の実施形態に従って、コンピューティング装置の実施態様の分散型構成を示すスタック図である。 本発明の実施形態に従って利用された一時的防御層の機能構成を示すブロック図である。 本発明の実施形態に従って、仮想マシンのインスタンスを生成するための手順を示す流れ図である。 本発明の実施形態に従って、仮想マシンを終了するための手順を示す流れ図である。 本発明の実施形態に従って、システム仕様を上書きするための手順を示す流れ図である。 本発明の実施形態に従って、仮想マシンの整合性チェックのための手順を示す流れ図である。 本発明の実施形態に従って、仮想マシン間のシームレスなプロセスのハンドオフを示すシーケンス図である。 本発明の実施形態に従って、仮想マシンを移行するためのプロセスを示す流れ図である。 本発明の実施形態に従って、一時的な状態がどのように管理されるかの手順を示す流れ図である。 本発明の実施形態に関連する隔離手順を示す流れ図である。 本発明の実施形態に関連する隔離手順を示す流れ図である。 コンピューティング環境の合成疑似表現が、コンピューティングプロセスの予測から生産システム環境を複製できる実システム例の概念図を示す。 本発明の実施形態に従って、感染したコンピューティングシステムの科学捜査的分析がそれを通じて定義されたように動作できるように、リアルタイム防護対策のための手順がどのように調整されるかを示す流れ図である。 アーカイブに格納されている、基本仮想マシンイメージを示すデータ構成の例である。 認可プロセスレジストリ内の登録済みプロセスを示すデータ構成の例である。 問合せ認可ハッシュ(inquiry authorization hash)と呼ばれる、認可されたプロセスの識別ハッシュ値を得るための手順を示す流れ図である。 仮想マシンのデジタル識別を得るための手順を示す流れ図である。
いくつか図を通じて、同様の参照番号は対応する部分を指す。
本発明は、認可されたプロセス使用が堅牢で安定したコンピューティング環境で起こり、認可されていないプロセス使用が敵意のある、不安定で常に変化するコンピューティング環境を経験する、一時的なコンピューティング環境を作成するように設計される。さらに、本発明は、システム仕様を不鮮明にするか、マスクするか、または混乱させる機構を、認可されていないか、またはセキュリティ侵害されたコンピューティングプロセスおよびそれらの管理者(そのプロセスを開始したか、または制御する人またはリモートエージェント)に提供する。
さらに、本発明は、システムがセキュリティ侵害されているか否かを検出する仮想システムインスタンスおよび物理システムインスタンスの両方の整合性を検証するための技術を提供する。加えて、本発明は、ウイルスが拡がり、ミッションクリティカルなコマンドにアクセスするのを防ぐために、感染したシステムを隔離する方法、およびそれらが生産コンピューティング環境に影響を及ぼさないか、またはウイルス、認可されていないエージェントコードもしくは認可されていないコンピューティングセッションユーザーもしくはそれらの管理者が、生産環境ではなく、合成疑似環境で隔離されているかまたは動作しているという事実をそれらに警告しないような方法で、科学捜査(forensics)を実施するためのオートプシー(autopsy)方法を提供する。
すなわち、本発明の一態様によれば、コンピューティング装置または別個のコンピューティングシステムであるコンピューティングネットワーク装置上で仮想化されているコンピューティング環境実体があり、それらが合成コンピューティング装置として動作できるようになっている。仮想コンピューティングまたはネットワークシステムの動作インスタンスは、仮想マシンまたはVMと呼ばれ、それは、各別個の仮想マシンに対してコンピューティング環境を制御するオペレーティングシステムに従って動作する。この態様は、仮想マシンで実行中の認可された処理タスクは影響を受けないが、認可されていないプロセスはそれらのコンピューティング環境の変更に遭遇する、一時的状態を誘導するような方法で、仮想コンピューティング環境で動作している仮想マシンを制御する方法を提供する。
一実施形態では、処理は、(a)複数のインスタンスがインスタンス生成できるように、仮想マシンの基本状態を捕捉できるような方法で、仮想マシンのスナップショット、基本デジタル表現を作成すること、(b)事前定義した間隔またはランダムベースで、仮想マシンを頻繁にアップ(仮想マシンのコンピューティング環境を起動する)およびダウン(仮想マシンのコンピューティング環境をシャットダウンする)させるサポート、(c)認可されたプロセスの通常または意図した実行を中断しないような方法でプロセスを1つの仮想マシンから別のマシンへ移行するが、認可されていないプロセスに対しては、移行中にそれらの実行がセキュリティ規則に基づいて終了されるか、または変更されること、を含む。
本発明の別の態様は、検証方法を通じて仮想マシンの整合性チェックを定期的に実施することである。検証方法の一実施形態は、(d)健全でセキュリティ侵害されていない仮想マシンを表す基本デジタル表現に対する一意の値、基本デジタル表現の整合性値を作成すること、(e)アクティブ仮想マシン整合性値と呼ばれる、アクティブな仮想マシンの整合性値を計算すること、および(f)基本デジタル表現の整合性値をアクティブ仮想マシン整合性値と比較すること、を含む。
本発明のさらに別の態様は、ミスディレクション(misdirection)のための方法を提供するために、認可されていないプロセスを混乱させて、それが、仮想マシンのオペレーティングシステム、ネットワーキングプロトコルまたはアクセス可能な周辺機器(システムコアコンポーネントと総称する)などの、本当のコンピューティング環境仕様を知らないようにすることである。一実施形態では、ミスディレクションのこの方法は、(g)一意のシステム問合せ認可コードを受信する登録済みの認可されたプロセスを開始すること、(h)コンピューティング環境仕様を判断するためにオペレーティングシステムによって使用されるシステム発見(system discovery)を上書きする認可コードを使用すること、(i)プロセスがコンピューティング環境に対する問合せを行うと、そのプロセスが登録済みでその割り当てられた問合せ認可コードを使用しているか否かがチェックされて、(j)そうである場合は、本当の仕様が提供され、(k)そうでなければ、本当の仕様でない可能性のある、偽の仕様が提供されること、を含む。
本発明の別の態様は、認可されていないプロセスが引き起こし得る損害を、隔離方法を提供することによって低減することであり、その方法は、コンピューティング装置および関連するネットワークおよびシステムを、検出されている認可されていないプロセスに警告しない間に、保護するような方法で、認可されていないプロセスを分離し、封じ込める。この隔離方法は、(l)前述したステップが、(f)整合性チェックが失敗すると、仮想マシンは、潜在的にセキュリティ侵害されているとマークされて、その仮想マシンがアクティブな隔離状態に置かれ、(m)その仮想マシン上のどのプロセスも停止されないが、コンピューティング資源およびネットワークおよびシステムへのアクセス可能性が制限され、(n)隔離された仮想マシンが寿命末期になった、終了された(ステップb)場合、インスタンスは、一方でその仮想マシンのスナップショットが科学捜査的分析用に保存されながら、終了でき、(o)または、寿命末期の隔離された仮想マシンは、認可されていないプロセスがライブの科学捜査的分析、実験、感染率分析もしくは悪質なコードの標的発見のために、実行を継続可能にするような方法で、生産コンピューティング環境の外部で実行を継続でき、(p)隔離制限を解除するが、合成疑似システム上で動作すること、を含み得る。従って、システムを保護するが、認可されていないプロセスに対しては、検出されず、成功したという錯覚を提供する。
本発明の別の態様は、一時的状態システムが、それが攻撃を受けているか、または受けていたことを考慮に入れ、その結果、適用可能な防御方法を通じてその防御を調整できるようにする、動的な防護対策調整である。この適用可能な防御方法は、(q)認可されていないプロセスを識別および分類すること、(r)脅威レベルの定量化を認可されていないプロセスに提供すること、(s)一時的セキュリティ層のセキュリティ規則に基づいて、防護対策アプローチを決定すること、(t)受動的(passive)に設定されると、一時的制御プロセスに変更がなく、(u)保護(protect)に設定されると、それに応じてシステム仕様の偽装(ステップt)が調整され、(v)誘う(entice)に設定されると、それに応じてシステム仕様の偽装(ステップt)が調整されて、より多くの認可されていないプロセスを引き付けるために効果的にシステムをハニーポットにすること、を含み得る。
本発明の例によれば、前述のステップ(a)では、認可されたプロセスのレジストリが生成される。プロセス移行中、前述のステップ(c)では、認可されたプロセスの実行状態が記録され、実行がホスト仮想マシン上で中断され、新たにインスタンス生成された仮想マシンが、前述のステップ(b)で動作可能になる(新しいホスト)と、中断されたプロセスが新しいホスト上で開始され、開始時のそれらの実行状態が、現在の古いホスト上で記録されたそれぞれの実行状態に設定され、中断されたプロセスの処理が新しいホスト仮想マシン上で実行を再開する。新しい仮想マシンがインスタンス生成でき、間もなく古いホストになるホスト上でプロセスの実行が中断される前に、十分に動作可能になると、プロセス移行がほとんど瞬間的に起こり得、アクティブな仮想マシン間でのシームレスな処理のハンドオフを可能にする。
さらに、プロセス移行が前述のステップ(c)で生じると、認可されていないプロセスの自然の定義が、基本仮想マシンの認可されたレジストリ内に登録されていないプロセスであり、従って、基本仮想マシンイメージの新しいインスタンスが作成されると、認可されていないプロセスは開始されず、基本的にプロセス中断の時点で古いホスト仮想マシン上で終了するようになるので、前述のステップ(b)で説明したように、認可されていないプロセスは、新しい仮想マシンのインスタンス生成の自然経過によって終了される。
あるいは、本発明の別の例によると、セキュリティ規則に基づき、認可されていないプロセスは、プロセス移行が前述のステップ(c)で生じると、移行中に生き続けることができる。前述のステップ(b)で説明した仮想マシンの終了プロセス中にこれが生じると、古いホスト仮想マシンを終了する代わりに、仮想マシンは、隔離されているとマークされ、それがまだマークされておらず、かつ、基本仮想マシンの第3のインスタンスが作成されると、それが隔離とマークされ、前述のステップ(o)で説明したように、ライブ科学捜査状態に置かれ、隔離されたライブ科学捜査状態が生産環境に影響を及ぼさないが、認可されていないプロセスが、合成環境で現在実行中の認可されたプロセスと共に生きていて、実行されたまま保持されるように、合成コンピューティング、ネットワークおよびシステム環境を利用する。次いで、認可されていないプロセスのプロセス状態を含め、古い仮想マシン状態が、隔離されたライブ科学捜査モードで実行中の基本仮想マシンの第3のインスタンスにコピーされ、状態が複製されると、プロセス中断が第3の仮想マシン上で解除され、実行が、前述のステップ(o)で説明されているように、正常としてではあるが、合成環境でシームレスに続行される。これは、前述したシームレスなプロセスハンドオフ方法も利用できる。移行プロセスおよび隔離されたライブ科学捜査ハンドオフプロセスの両方が完了した後に、古い仮想マシンが、最終プロセス状態を含む、その状態を取得した最終スナップショットを有し、それが、前述のステップ(n)におけるようにさらなる分析用に格納され、これが完了すると、前述のステップ(b)で説明するように、それが終了される。
本発明の別の例によれば、整合性チェックが定期的に実施され、仮想マシンのコンピューティング環境の整合性を確実にする。前述のステップ(a)の基本仮想マシンの作成中に、基本仮想マシンのデジタル署名を計算することにより、一意の値が前述のステップ(d)で説明したように生成される。このデジタル署名は、基本仮想マシンのアクティブなインスタンス生成に対する比較として使用されるように、整合性チェック中に使用される。前述のステップ(e)に明記されているように、仮想マシンは、同じデジタル署名生成機能を実行でき、出力である整合性値が、前述のステップ(f)で説明したように、基本仮想マシンイメージのデジタル署名と一致すると、仮想マシンの整合性が仮定できる。
さらに、整合性比較が失敗すると、前述のステップ(l)で説明しているように、チェックされている仮想マシンが隔離とマークされ、それは、前述のステップ(c)で説明しているように次の移行プロセスまで、前述のステップ(m)で明記しているようにプロセスのアクセスを制限し、完了時に、移行ハンドオフを受信した新しくインスタンス生成された仮想マシンが整合性有効状態に設定され、隔離が解除される。セキュリティ規則に応じて、古い仮想マシンは、前述のステップ(n)で設定したように、取得され、さらなる科学捜査調査のために保存された自身のスナップショットを有し、同じくセキュリティ規則に応じて、ライブの科学捜査が設定されると、隔離された仮想マシンは前述のステップ(o)に従う。
本発明の別の例によれば、コンピューティング環境の本当の仕様を混乱させ、マスクするために、偽装混乱プロセスが使用される。前述のステップ(g)で説明したように、プロセスのレジストリ時に、ハッシュコードがプロセスの実行可能コードから生成される。前述のステップ(i)におけるように、システム仕様を変更するか、またはそれに関して問い合わせるために、実行しているプロセスからオペレーティングシステムに対して呼出しが行われると、プロセスの問合せ認可ハッシュが、上書き判定値として使用される。認可ハッシュが存在しないか、または認可ハッシュが、前述のステップ(k)で提示されているように、呼出しプロセスに対するプロセスレジストリに格納されているものに一致しない場合、偽のシステム仕様値が返され得るが、その値は、セキュリティ規則によって決まる。プロセスの問合せ認可ハッシュが実際に一致する場合は、前述のステップ(j)におけるように、本当の仕様が返される。
この処理は、システムを、認可されていないプロセス攻撃に対してより回復力をもつようにし、情報を収集し、ウイルスが拡がるのを遅くするのを助ける。実際、この改善は、外部からの攻撃の企て、および無防備な認可されたユーザーから意図的ではなく内部的に放たれた認可されていないプロセスに反する働きをし、認可されていないプロセスがまだ検出されておらず、仮想マシンが隔離されているとフラグを付けられていない場合でさえ、継続して実施されている。
本発明のさらに別の例は、前述のステップ(q)で明記したように、実行されていた認可されていないプロセスのタイプを判断するために、感染した仮想マシンのスナップショットに関する分析およびライブ科学捜査隔離を行うことにより、前述した偽装サブシステム、隔離サブシステムおよびライブ科学捜査サブシステムのその防護対策防御を動的に変更することである。前述のステップ(r)に従った脅威レベル値が、カテゴリ、ならびにライブ隔離モニタリングおよび実験に対するその履歴ログ活動ならびにその現在およびアクティブな応答に基づき、認可されていないプロセスに与えられる。セキュリティ規則に基づき、認可されていないプロセスに対する防護対策が、前述のステップ(s)におけるように変更される。セキュリティ規則が前述のステップ(r)におけるように受動的であれば偽装結果は変更されず、セキュリティ規則が前述のステップ(u)におけるように保護に設定されていれば、偽装結果は本当の値からはるかに歪曲され、また、セキュリティ規則が前述のステップ(v)におけるように誘う(entice)に設定されていれば、偽装結果は、モニタリングおよび犯人識別のために、成功に誘導し、おそらくは他を引き付けるように認可されていないプロセスに適合しようとする。
図1は、本発明に従った、コンピューティングシステムの一実施形態の構成例を示すスタック図である。図1では、参照番号1は一時的コンピューティング装置を指定し、それは、コンピューティング環境の改善されたセキュリティを達成するために、そのコンピューティング環境状態が、認可されていないプロセスに対して動的に変動および変更されるように定義された、一時的な状態に誘導されている、コンピュータラップトップ、携帯電話、デスクトップコンピュータ、またはコンピュータサーバーなど、任意のタイプのコンピューティング装置であり得る。より高いレベルのセキュリティによって意味するものは、どのプロセスが認可されているか、以前に承認されているか、またはユーザーがアクセス許可をもつ装置と一緒にコンピューティング装置によって実行するように指定されているかを判断するコンピューティング環境の能力である。
一時的コンピューティング装置1は、関連する構成を有する。この実施形態では、構成は、第1の仮想マシン1.1、第2の仮想マシン1.2、一時的防御層1.3、仮想化オペレーティングシステム1.4、デバイスドライバおよびファームウェア1.5、ならびに物理コンピュータハードウェア1.6を含む。
同様に、図2では、参照番号2は、一時的として誘導される、ルーターまたはスイッチなどのネットワーク装置である変形実施形態を指定する。図2は、図1に関連して説明されるタイプの構成コンポーネント2.1〜2.6を示す。
コンピューティング環境の複雑性を拡張すると、図3では、参照番号3は、一時的として誘導される、LAN(ローカルエリアネットワーク)などの、ある資源を一緒に接続し、共有する複数のコンピューティング装置およびネットワーク装置で構成されるコンピューティングシステムを指定する。この実施形態では、一時的防御層3.3の構成は、図3に示すように協調的な方法で、全ての装置ならびに装置3.11、3.21および3.12に渡って動作できる。
あるいは、各一時的装置は、システム内の任意の他の一時的装置またはそれらの組合せとは無関係に、その一時的防御層が動作できる。一時的コンピューティング環境と見なされるためには、誘導された一時的状態でなければならないコンピューティングシステム内の装置の最小数は1である。
図4では、参照番号4は、コンピューティング装置が一時的である、別の実施形態構成を指定する。図1および図4に示すものの間の差は、図1における一時的コンピューティング層、参照番号1.3が、基本仮想化オペレーティングシステムの一部として中心的に実行する一時的コンピューティング層を示し、また、図4では、参照番号4.3が、指定された仮想マシンとして分散して実行する一時的コンピューティング層を示すことである。この構成では、各々が、参照番号4.1で示されるような、異なる指定された仮想マシン内で一時的に制御するように設定された、単一のコンピューティング装置またはネットワーク装置上の2つ以上の別個の一時的コンピューティング層があり得る。本発明の実施形態は、仮想マシンを外見的には再仮想化または時間化(temporalize)するネスト化仮想マシンを含め、多くの形をとることができる。
図5は、本発明の実施形態に対する一時的防御層の構成のブロック図を示す。ブロック図は、一時的防御層の機能コンポーネントおよびそれらの間の相互作用、コンピューティング装置上で実行する、VMWare vSphere、Xen、KVMまたはWindows(登録商標) Hyper−Vなどの、図5に示す仮想化オペレーティングシステム(参照番号1.3.1300)、ならびに、図5に示すWindows(登録商標)またはLinux(登録商標)オペレーティングシステムなどの仮想マシンのオペレーティングシステムを示し、参照番号1.3.1200は、集団(collective)コンポーネントによって管理されるように、一時的状態に誘導されている仮想化オペレーティングシステムによってホストされている。
図5では、参照番号1.3.400は、一時的防御層で管理されていることにより一時的になる、各仮想マシン、コンピューティング実体に対する基本イメージおよびそれらのインスタンス化状態仕様を含む、基本仮想マシンイメージアーカイブを示す。各基本仮想マシンイメージ定義の一部として、図5に示す一時的仮想マシン(参照番号1.3.1200)上で実行するように認可されているプロセスが、認可プロセスレジストリ1.3.500内に登録され、それは、図5に1.3.400として示すアーカイブ内の基本仮想マシンイメージと関連付けられている。
さらにシステムを説明すると、図5に示すセキュリティ規則エンジン(参照番号1.3.600)は、図5に参照番号1.3.400で示されるアーカイブ内に格納されている特定の基本仮想マシンイメージに関する特定の規則のみならず、一般的コンピューティング環境レベルに関する一時的動作の規則を含む。セキュリティ規則は、図5に参照番号1.3.1200で示す仮想マシンの一時的環境がどのように管理されるかを制御する。一時的環境セキュリティ規則は、基本仮想マシンイメージのインスタンスのランダムリフレッシュに対する間隔制限、認可されていないプロセスをどのように隔離するか、生産環境をどのように合成するか、システム仕様マスキングのためにどの技術を使用すべきか、およびどのような状況でどのような防護対策を配備すべきかを含む。追加として、特定のセキュリティ規則が、基本仮想マシンイメージおよび認可されたプロセスレベル基準に設定できる。
番号1.3.100は、一時的スケジューラを示し、それは、本発明の実施形態の一時的なフラックス(flux)を含む状態変化のスケジューリングを処理する。一時的スケジューラは、セキュリティ規則エンジン1.3.600によってその限界が制御される一連のランダムタイマーを設定する。システム変更に対応するタイマー上の時間が満了すると、インスタンスのリフレッシュが開始される。この一例を図11に示し、それは、仮想マシンがリフレッシュされるときに起こる移行プロセスを進める。
状態マッパー1.3.900は、仮想マシン1.3.1200上で実行しているプロセスの状態または仮想マシン全体の状態をマッピングする一時的防御層のコンポーネントである。状態マッパーは、プロセス状態情報を取得するためにプロセス間通信ゲートウェイ1.3.800とインタフェースをとり、また、仮想マシンの完全な状態情報を取得するために合成環境シミュレータ1.3.700とインタフェースをとる。状態マッパー1.3.900によって収集された情報から、実行状態を捕捉する処理またはコンピューティング環境のスナップショットが作成される。スナップショットから、プロセスまたは仮想マシンが、そのスナップショットがとられた実行の状態に戻すことができ、処理がその時点から再開できる。
整合性チェッカー1.3.300は、一時的防御層内で、認可されていないプロセスまたは仮想マシン1.3.1200の整合性を検証する責任を負う。仮想マシンの整合性をチェックする手順について、整合性チェッカー1.3.300は、その現在のアクティブな状態においてインスタンスのデジタル署名値を計算する。これに対するプロセスを図9に示す。この計算された値は、図5のアーカイブ1.3.400に格納されている基本仮想マシンイメージに対するデジタル署名整合性値と比較される。値が一致する場合、仮想マシンのセキュリティ整合性状態が、仮想マシンマネージャ1.3.200にログをとる、クリーン(clean)に設定される。整合性チェッカー1.3.300が、仮想マシン1.3.1200上で実行している実行プロセスを検証する場合に、同様のプロセスが生じる。認可識別と呼ばれる、プロセスに対する整合性値が、認可プロセスレジストリ1.3.500内の関連する認可識別値と比較される。一時的スケジューラ1.3.100は、整合性チェックを開始し、それは、セキュリティ規則エンジン1.3.600内のセキュリティ規則によって制御されるように、同様にランダムベースで起こる。
システム仕様ハンドラ1.3.1000は、仮想マシン1.3.1200によって実行されるシステム仕様要求をフィルタ処理する。要求が、仮想マシンのコンピューティング環境内でシステムコンポーネント、オペレーティングシステム、または利用可能な資源仕様に関して行われると、要求は、図8のプロセス流れ図に提示されているように、フィルタリングが要求に関して実行されるシステム仕様ハンドラ1.3.1000を通ってルーティングされる。値が解決されると、それが、仮想マシン1.3.1200に提供され、問い合わせているプロセスに返される。
合成環境シミュレータ1.3.700は、仮想マシン1.3.1200とホスト仮想化オペレーティングシステム1.3.1300との間のシム(shim)、フィルタプロセス層である。これは、仮想マシンによって実行されているどの内部プロセスもその存在を知ることができないように、仮想マシンインスタンスの外部に配置される。合成環境シミュレータ1.3.700の機能は、発見が作動した場合、アクセスおよび処理コマンドがシミュレータによってインターセプトされ、全ての呼び出しプロセスにそれらが生産環境内にいると見せかけるために、肯定の応答が返送されるように、仮想マシン1.3.1200が一部であるより広いコンピューティングシステムおよびプロセスのミッションクリティカルなコンポーネントをエミュレートすることであるので、これは重要である。
隔離エンフォーサ(Quarantine Enforcer)1.3.1100は、仮想マシン1.3.1200を隔離し、そのインスタンスで実行している全てのプロセスにわたって隔離を強制する、一時的防御層のコンポーネントである。仮想マシンが隔離されている場合、あるプロセスコマンドは、認可プロセスレジストリ1.3.500のミッションクリティカルなコマンド仕様とともに、セキュリティ規則エンジン1.3.600によって定義されるように、実行されない。仮想マシンが生産の一部である場合、隔離は、仮想マシンによってどのようにプロセスが実行されるかに影響しないが、プロセスは、認可されていないプロセスでさえ、実行を継続するのを許可されるので、効果はほとんど受動的である。隔離エンフォーサは、整合性チェッカー1.3.300内の感染した仮想マシンの整合性状態をセキュリティ侵害されているとマークする。図11の一時的移行プロセスに示すようにインスタンスリフレッシュ中、セキュリティ規則に従って、隔離インスタンスは、自身を取得し、将来の科学捜査的分析のために保存されたスナップショットを有するか、またはセキュリティ規則が高いマスキングレベルに設定されている場合は、隔離されたインスタンスが生産から外部に移動されるが、終了されない。この場合、損害評価であり得る、調査および実験が実施できるように、別の仮想マシンが作成され、セキュリティ侵害されているインスタンスおよび認可されたプロセスと認可されていないプロセスの両方が、それらのコンピューティング環境に対していかなる変更も生じていないかのように、実行を継続できるような方法で、合成環境シミュレータ3.1.700によって制御される完全に合成されたコンピューティング環境として実行される、ライブ科学捜査隔離状態に設定される。このライブ科学捜査状態では、隔離エンフォーサ1.3.1100は、インスタンスがクリーンでセキュリティ侵害されていない状態環境をエミュレートできるように、隔離制約を解除する。隔離中、システム仕様ハンドラ1.3.1000が、セキュリティ規則によって制御されるように、異なる結果を返すことも指摘されるべきである。
基本仮想マシンイメージを取得する(1.3.201)仮想マシンマネージャ1.3.200から始まる、一時的仮想マシンのインスタンス生成のプロセスが図6に定義される。新しい仮想マシンインスタンス要求が仮想オペレーティングシステムに対して発行される(1.3.202)。次いで、仮想マシンが起動される(1.3.203)。認可されたプロセスが認可プロセスレジストリから取得される(1.3.204)。例えば、基本仮想マシンイメージに対する手順が仮想マシンマネージャ1.3.200によって認可プロセスレジストリ1.3.500から取得される。
登録プロセスが次いで開始される(1.3.205)。受信した各認可されたプロセスに対して、図5の仮想マシンマネージャが、状態マッパー1.3.900に格納されているプロセスの状態スナップショットに対する実行の現在の状態を取得し、これは、図6のブロック1.3.206に従って実行される。以前の処理インデックスがない場合(1.3.210)、状態は初期の処理状態のままにされ(1.3.211)、登録済みプロセス実行が始まる(1.3.212)。実行状態の場合には、プロセス実行状態が決定される(1.3.207)。中断されたプロセスの状態値が取得される(1.3.208)。プロセスの状態が格納されている値に設定される(1.3.209)。登録済みの全てのプロセスが処理されると、仮想マシンセキュリティ状態がクリーンに設定され(1.3.213)、仮想マシンが動作可能になる。
図7は、仮想マシンの終了プロセスを進める。終了プロセスは、図5に1.3.200として示されている仮想マシンマネージャによって発行された仮想マシン終了コマンドから始める。認可されたプロセスリストが認可プロセスレジストリ1.3.500から取得され、この操作は図7のステップ1.3.220として示されている。認可されたプロセスがアクティブでない場合、そのプロセスはスキップされる(1.3.222)。プロセスが現在処理中であることが分かった場合(1.3.223)、状態マッパー1.3.900はプロセスの操作を中断し(1.3.224)、ポイントプロセス実行が一時停止され(1.3.225)、そして、プロセスの状態のスナップショットが取得される(1.3.225)。スナップショットが処理され(1.3.226)、プロセス状態のスナップショットが格納される(1.3.227)。全ての認可されたプロセスのスナップショットが収集され、仮想マシンマネージャ1.3.200によって決定されたように適切に処理されると、マネージャは、終了が予定されている仮想マシン1.3.1200について、仮想化オペレーティングシステム1.3.1300に対してシャットダウンコマンドを発行する。インスタンスが中断されて(1.3.228)終了されると(1.3.229)、その時点で仮想マシンがシャットダウンする。
本発明の実施形態における一時的防御層のもう1つ別のコア機能は、仮想マシンのコンピューティングシステムまたはそのコアコンポーネントの1つの仕様に関して、マスクするか、不鮮明にするか、または認可されていないプロセスをミスリードする能力である。図8は、認可されていないプロセスがシステム仕様に関して問い合わせた場合に、図5に1.3.1000として示すシステム仕様ハンドラがとる上書き(override)プロセスを示す流れ図である。
図8では、番号1.3.1001は、仮想マシン上で実行されているプロセスが、システムまたはシステム上で実行しているコアコンポーネントの仕様に関して、インスタンスのオペレーティングシステムに問合せ要求を行うことを示す上書きプロセスを開始する。仮想マシン1.3.1200は、問合せ要求を、図8にステップ1.3.1002で示すように、プロセス間通信ゲートウェイ1.3.800を通じてシステム仕様ハンドラ1.3.1000に渡す。
システム仕様上書きプロセス、図8を継続すると、番号1.3.1003は、システム仕様ハンドラ1.3.1000が、プロセスが認可プロセスレジストリ1.3.500に登録されているか否かを調べる、プロセスレジストリ検索ステップを示す。図8のブロック1.3.1004に示すように、プロセスがレジストリで見つからなければ、ハンドラは、そのプロセスが認可されていないと見なし、セキュリティ規則エンジン1.3.600によって示されるセキュリティ規則によって定義されるように、図8のブロック1.3.1007に示すシステム仕様値を上書きする。この処理ステップは、図8のブロック1.3.1006に示される。図8では、番号1.3.1013は、システム仕様の問合せを行っているプロセスを実行している仮想マシン1.3.1200に返される値を示し、次いで、ブロック1.3.1014は、システム仕様値を最終的に呼出しプロセスに返す、仮想マシンのオペレーティングシステムを示す。
あるいは、システム問合せを行ったプロセスが認可プロセスレジストリ1.3.500で見つかると、そのプロセスに関連付けられた関連する問合せ認可ハッシュ値が返される(1.3.1009)。認可ハッシュは、一意の値を提供する呼出しプロセスの基本実行コードから計算されたハッシュであり、それは、そのプロセスが認可された基本実行コードから生じたことを示す。使用されたハッシュアルゴリズムは、SH1またはMD5など、任意のハッシュアルゴリズムであり得、また、値は、登録済みプロセスのインスタンスを作成する実行可能なマネージコードまたはスクリプトファイル仕様をハッシュすることによって、簡単に導出できる。
図18は、本発明の実施形態に対して、コードファイルが標準の.exeである、登録済みのWindows(登録商標)ベースのアプリケーションに対する問合せ認可ハッシュを導出する例を示す。図18に示す第1のステップは、図16に示すデータ方式を有する基本仮想マシンイメージアーカイブ1.3.400に格納されている、基本仮想マシンイメージIDを取得すること(1.3.501)であり、それは、その問合せ認可が導出されている認可プロセスに関連する。これは、認可されたプロセスがその上で実行することを認可された仮想マシンである。図18に示す問合せ認可プロセスのステップ2は、そのプロセスの名前、またはこの場合は、アプリケーション実行ファイル名を取得すること(1.3.502)である。次に、プログラム実行可能ファイルヘッダーに対するプロセスまたは実行可能ファイルの仕様が確保される(1.3.503)。この例に対して使用される仕様は、マシン仕様、セクション数、ファイルの日付タイムスタンプ、シンボル数、オプションのヘッダーサイズおよび特性数である。これらのCOFFヘッダー値は、代替として、実行中のプロセスから取得できる。ブロック1.3.504は、前述の定義された順序で(VM ID、アプリケーションファイル名、マシン仕様、セクション数、ファイルの日付タイムスタンプ、シンボル数、オプションのヘッダーサイズ、および特性数)、これら全ての値の連結された文字列を作成する第4のステップを示す。第5の導出ステップ1.3.505は、連結された文字列のSH1ハッシュを計算する。結果として生じるハッシュ値が、図18のブロック1.3.506に示す問合せ認可ハッシュであり、それは、図17に示すデータ構成に示すように、認可プロセスレジストリ内の認可されたプロセスのエントリに格納される。
図8に戻ると、番号1.3.1011は、呼出しプロセス(システム仕様を要求しているプロセス)の問合せ認可ハッシュ値と、前述で示したように、レジストリから取得した問合せ認可ハッシュ値が等価であるかが比較される、比較プロセスステップを示す。問合せ認可ハッシュ値が一致しない場合、システム仕様を要求している呼出しプロセスは認可されていないと仮定される(1.3.1005)。前述したように、システム仕様上書き手順が、処理ステップ1.3.1006で開始されたプロセスによって関与され、結果として、上書きされた値が呼出しプロセスに返される(1.3.1014)。
代わりに、ブロック1.3.1011によって定義されるように、呼出しプロセスの問合せ認可ハッシュと、レジストリ値によって返された問合せ認可ハッシュが等しければ、そのプロセスは認可されていると見なされ、次いで、本当のシステム仕様値が取得される(1.3.1012)。本当のシステム仕様値は、そのシステム仕様の問合せを行ったプロセスを実行している仮想マシンに返され(1.3.1013)、それは、その後、本当のシステム仕様を呼出しプロセスに返す(1.3.1014)。
プロセスが認可されていないと分かると、図5の仮想マシン1.3.1200全体が、図8のブロック1.3.1008で表されるように、セキュリティ侵害されているとマークされる。インスタンスのセキュリティ状態が、仮想マシンマネージャ1.3.200内で、セキュリティ侵害されているセキュリティを示す値に設定される。これは、システム仕様要求を行った、そのプロセスを実行している仮想マシンが、図8のブロック1.3.1013に示す、上書きされた仕様値を受信した直後に起こる。
図9は、仮想マシン1.3.1200が、インスタンスがクリーンかセキュリティ侵害されているかを判断するために使用される整合性検証プロセスを示す。この実施形態では、クリーンを表すデジタル署名、仮想マシン1.3.1200のセキュリティ侵害されていない整合性状態が、基本仮想マシンイメージアーカイブ1.3.400に格納されている基本仮想マシンイメージから事前に計算され、図16に示すように、データ構成内の対応する基本仮想マシンイメージに関連して格納される。このデジタル署名は、仮想マシンイメージから導出された任意の数の計算された値にできる。この例では、図19で説明するように、仮想マシンのデジタル署名が、基本仮想マシンIDから導出され(図19のブロック1.3.401に示す)、オペレーティングシステム名(図19のブロック1.3.402で示す)および仮想マシンによって実行されているその拡張バージョン(図19のブロック1.3.403で示す)と結合される。この情報は、図19に示すように、仮想マシン上で実行されている、オペレーティングシステム名、コアプロセス名と一緒に、アルファベット順に連結され(番号1.3.404)、認可プロセスレジストリ(図5の1.3.500)に格納されているように、この仮想マシンに関連する認可されたプロセス名と一緒に、アルファベット順に連結される(図19のブロック1.3.405に示す)。結果として生じる連結文字列は、ブロック1.3.406で表され、これは、次いで、ブロック1.3.407でSH1ハッシュを実行され、ブロック1.3.408で出力値を生じるが、それは、この実施形態では、仮想マシンのデジタル識別である。
整合性チェックが整合性チェッカー1.3.300によって生じると、図9のブロック1.3.301に示すように、仮想マシンのスナップショットが取得される。ブロック1.3.302に示すように、スナップショットのデジタル署名が次いで計算される。例えば、整合性がチェックされている仮想マシン1.3.1200のデジタル署名が、図19で説明するように、デジタル識別導出プロセスを実行することにより導出されるハッシュ値を使用して計算され得る。整合性チェッカー1.3.300が、次いで、前述したように計算された関連する事前計算されたデジタル署名が、図16のデータ構成に格納されている基本仮想マシンイメージアーカイブから取得される。図9のブロック1.3.303は、整合性チェッカーが、アーカイブから取得されたデジタル署名、および整合性チェックが実行されている仮想マシン1.3.1200のスナップショットから導出されたデジタル署名について実行する、比較プロセスを示す。デジタル署名が一致すると(図9のブロック1.3.306に示す)、仮想マシンの整合性が検証され、仮想マシンマネージャ1.3.200内にクリーンとしてマークされる(図9のブロック1.3.307に示す)。
代わりに、デジタル署名が一致しなければ(図9のブロック1.3.304に示す)、整合性チェックが一致しなかったので、チェックされている仮想マシンはセキュリティ侵害されていると見なされる。これは、認可されていないプロセスが、チェックされていたインスタンス上で実行されていたことを意味する。結果として、仮想マシンに対するセキュリティ状態設定が、仮想マシンマネージャ1.3.200内でセキュリティ侵害されていると設定されて、そのインスタンスがセキュリティ侵害されていることを示す(図9のブロック1.3.305に示す)。
図10は、2つのマシン間で一連のシームレスな認可されたプロセスのハンドオフがどのように起こるかの略図を示す。認可されたプロセスは、登録されていて、レジストリエントリレコードを有し、かつ、認可プロセスレジストリ1.3.500内にあるプロセスである。登録済みプロセスは、基本仮想マシンイメージアーカイブ1.3.400内に格納されている基本仮想マシンイメージに関連付けられている。登録済みプロセスは、それがレジストリ内の証印(indicia)に関連付けられていれば、基本仮想マシンイメージインスタンス上で稼働、実行、または処理することを認可される(1.3.1200)。
シームレスな認可されたプロセスのハンドオフ手順が図11に示され、ブロック1.3.1215が、一時的移行プロセスの一部として示され、図10に段階的に詳細に示されている。シームレスな認可されたプロセスのハンドオフは、インスタンスが生成され、図6のインスタンス生成プロセスで説明された、1つの仮想マシン1.3.1200上で現在実行されている認可されたプロセスを、基本仮想マシンイメージアーカイブ1.3.400内に格納されている基本仮想マシンイメージから、同じ基本仮想マシンイメージから派生された別の仮想マシンインスタンスへ、その認可されたプロセスの実行を妨害することなく移行したい場合に生じる。
図10では、番号1.3.1220は、プロセスのハンドオフが始まる前に、プロセスの状態を示す、シームレスな認可されたプロセスのハンドオフのステップ0を示す。番号1.3.1221は、同じ仮想マシンイメージから派生され、前述したようにインスタンス生成された別の仮想マシンに移行されるか、またはハンドオフされる必要のあるプロセスである、認可されたプロセス(A)1.3.1222を実行している仮想マシンを示す。図10のステップ1では、番号1.3.1230は、認可されたプロセス、プロセス(A)1.3.1232が実行を続行するために移行されるインスタンスであり得る、移行先の仮想マシン(1.3.1233で示す)が配置されるか、またはインスタンスが生成されることを示す。ステップ1では、プロセス(A)が、元のまたは現在の仮想マシンと呼ばれる、移行元インスタンス1.3.1231上で現在まで実行されている。
番号1.3.1240は、新しい認可されたプロセス(A)と呼ばれる、認可されたプロセス(A)1.3.1244を開始または初期化する、移行先の仮想マシン1.3.1243を示す。これは、元の仮想マシン1.3.1241が、生産認可プロセス(A)と呼ばれるプロセス(A)の実行を継続している間に生じている。
番号1.3.1250は、現在中断されている認可されたプロセスの実行をホストしている元の仮想マシン1.3.1251によって一時停止されている、生産認可プロセス(A)1.3.1252の実行を示す。番号1.3.1254は、移行先の仮想マシン(1.3.1253)上で初期化された新しい認可されたプロセス(A)を示し、このプロセスの実行も中断される。
図10のシームレスな認可されたプロセスのハンドオフの番号1.3.1260で示すステップ4は、スナップショット手順を示す。ステップ3で前述したように、生産認可プロセス(A)が中断されると、図5の状態マッパー1.3.900が図10に示した状態スナップショットを取得する。図10の新たに中断された生産認可プロセス(A)1.3.1262の番号1.3.1265は、図10の番号1.3.1262で示す生産認可プロセス(A)の代わりに、元の仮想マシン(図10の番号1.3.1261)によって実行されていた最後の命令の現在の実行ポイントまたはプロセス命令インデックスポインタを捕捉し、それは、図5に示す状態マッパーの一部として、メモリ状態、プロセススタック状態と共に、プロセスの状態スナップショットに記録される。番号1.3.1265は、全ての情報がいつ収集されたかを表す。番号1.3.1264は、移行先の仮想マシン1.3.1263上で初期化された新しい認可されたプロセス(A)を示し、そのプロセスの実行も中断される。
番号1.3.1270は、新しいプロセス上で複製されているプロセス状態を示す。中断された生産認可プロセス(A)1.3.1272の取得された状態スナップショット1.3.1275は、中断された新しい認可されたプロセス(A)1.3.1274を、一致するプロセスの実行状態に設定するために使用される。元の仮想マシン1.3.1271および移行先の仮想マシン1.3.1273の両方は、それぞれの認可されたプロセス(A)の中断された実行を有する。状態マッパー1.3.900は、図10に番号1.3.1274で示す新しい認可されたプロセス(A)の状態のメモリおよびスタックおよび実行状態を、実行が中断される前のその最終時点における中断された認可されたプロセス(A)のそれと一致させるように、変更するため、補足した状態スナップショット情報を使用して、移行先の仮想マシン1.3.1273上で生産認可プロセス(A)を有効に複製する。
図10に番号1.3.1280で示すシームレスな認可されたプロセスのハンドオフのステップ6は、中断された時点から次の処理命令を再開する生産認可プロセス(A)の実行を示す。元の仮想マシン1.3.1281上で生産認可プロセス(A)1.3.1282の実行が中断されたままの間、移行先の仮想マシン1.3.1283によって処理されている新しく複製された認可されたプロセス(A)1.3.1284が、複製のために情報が使用されたスナップショットが取得される前に元の生産認可プロセス(A)が中断された時点から、次の処理命令でプロセスの実行を再開するように設定される。最後の実行ポイントは、状態マッパー1.3.900によって記録され、複製された生産認可プロセス1.3.1284が次の命令の処理を開始するために、処理スタックが移行先の仮想マシン1.3.1283で適切に設定できるようにし、認可されたプロセスが、シームレスなプロセス移行を行っている認可されたプロセスの実行順を妨害することなく、1つの仮想マシンのインスタンスから別へうまく移行できるようにする。
シームレスな認可されたプロセスのハンドオフのステップ7を図10に示す。番号1.3.1290は、古い認可されたプロセスの終了のハウスキーピングステップを示す。番号1.3.1291は、元の生産認可プロセス(A)1.3.1292の実行が現在中断されている元の仮想マシンを示す。移行先の仮想マシン1.3.1293上の実行中の生産認可プロセス(A)1.3.1294に影響を及ぼさない、中断されたプロセス(A)が終了される。
シームレスな認可されたプロセスのステップ8は番号1.3.1295に関連付けられ、元の仮想マシンが終了されると、シームレスなハンドオフプロセスのうまく終了した状態を表す。生産認可プロセス(A)1.3.1297が、移行先の仮想マシン1.3.1296によってアクティブに実行されている。
図11は、一時的移行プロセスの流れ図を示し、基礎となる基本仮想マシンイメージのインスタンスに対する一時的状態の誘導およびプロセスの実行がどのように処理されるかを詳述する。移行プロセスは、一時的スケジューラ1.3.100によってランダムに設定されるように、仮想マシン1.3.1200に対するインスタンスの寿命タイマー(life timer)が満了すると、開始する。図11のブロック1.3.1201で示すように、一時的スケジューラ1.3.100は、そのタイマーが満了すると、タイマーがちょうど満了した仮想マシンの一時的移行プロセスを開始する。一時的スケジューラは、図11のブロック1.3.1202に示すように、インスタンスの寿命タイマーがちょうど満了した仮想マシンと関連付けられた基本仮想マシンイメージの新しいインスタンスを作成するために、仮想マシンマネージャ1.3.200に信号送信する。この新しい仮想マシンのインスタンス生成が、図6のプロセス流れ図に示されているように起こり、図6の番号1.3.210を含むプロセス経路によって示されるように初期化するために、関連する認可されたプロセス状態を設定するためのプロセスステップに従う。最後のインスタンス生成ステップが終了すると(図6、ブロック1.3.212)、仮想マシンマネージャが、新たにインスタンス生成された移行先の仮想マシンに対して設定されたクリーンなセキュリティ整合性状態を有し、認可されたプロセスが全て初期化され、中断される。
図11のブロック1.3.1203は、インスタンスの寿命タイマーがちょうど満了した仮想マシン上で実行中の各プロセスに対して、仮想マシンマネージャによって実行されている反復的なプロセスの開始を示す。ブロック1.3.1204は、プロセスが状態マッパー(図5の1.3.900)によって中断されていて、前述したシームレスな認可されたプロセスのハンドオフの説明のように、プロセス状態のスナップショットが取得される、認可されたプロセス検証ステップを示す。次いで、プロセスは、それが認可されたプロセスであるか否かを判断するために、認可プロセスレジストリ(図5の1.3.500)に対してチェックされる。それが認可されたプロセスであれば、プロセス経路は次いで、ブロック1.3.1214に進み、それはその後、シームレスな認可されたプロセスのハンドオフを示す処理ステップであるブロック1.3.1215に進む(図10に示す)。これは、実行されている認可されたプロセスを1つの仮想マシンから、同じ仮想マシンイメージからインスタンス生成されている別の仮想マシンに移行する。ブロック1.3.1215のハンドオフが完了した後、認可されたプロセスが、ブロック1.2.1202で作成された新しい移行先仮想マシンによって現在実行されている。このプロセス経路は、インスタンスの寿命タイマーがちょうど満了した仮想マシン上で中断されている、認可されていると分かった全てのプロセスに対して繰り返される。
あるいは、プロセスがブロック1.3.1204の認可ステップに失敗すると、実行経路はブロック1.3.1205に進むが、それは、認可されていないプロセスが、インスタンスの寿命タイマーがちょうど満了した仮想マシン上で実行されていることがわかったことを示す。ブロック1.3.1206は、インスタンスの寿命タイマーがちょうど満了した仮想マシンのセキュリティ整合性状態を、それがセキュリティ侵害されていることを示す値にマークする、仮想マシンマネージャを示す。ブロック1.3.1207は、セキュリティ規則エンジン(図5の1.3.600)が、ちょうど発見された認可されていないプロセスに対してどの防護対策をとるかを判断するために問合せをされる、一時的移行処理ステップを示す。規則が、一時的移行時に全ての認可されていないプロセスが終了するように設定される場合は、経路1.3.1208がとられて、認可されていないプロセスのハンドオフをスキップし、それは現在、仮想マシンが終了するときに終了する予定である。ブロック1.3.1209は、問合せによって返されたセキュリティ規則が、認可されていないプロセスが実行を継続するライブ科学捜査状態に置かれることを示すか否かをチェックするステップを示す。ブロック1.3.1210は、インスタンスの寿命タイマーがちょうど満了した仮想マシンに対してライブ科学捜査を実行していることを示すフラグを設定する仮想マシンマネージャ(図5の1.3.200)を示す。
一時的移行プロセスの認可されていないプロセス実行経路を続行すると、ライブ科学捜査オプションがオンの場合、第3の仮想マシンが仮想マシンマネージャ(図5の1.3.200)によってインスタンス生成され、それは、図11のブロック1.3.1211に示されるように、コンピューティング環境を合成する方法で新しいインスタンスを提示する、ライブ科学捜査モードに設定される。
残りのプロセスがチェックされ、認可されていれば、ブロック1.3.1202で新たに作成された新しい移行先の仮想マシンに移行される。全ての認可されたプロセスの新たにインスタンス生成された仮想マシンへのシームレスなハンドオフが完了すると、認可されていないプロセスが移行先インスタンスにハンドオフされていないため、移行先のインスタンスはいかなる認可されていないプロセスも有していないので、仮想マシンマネージャ(図5の1.3.200)は、ブロック1.3.1202で作成された新しい移行先仮想マシンのセキュリティ整合性状態をクリーンなセキュリティ整合性値を示す値に設定する。追加として、仮想マシンマネージャは、インスタンスの持続時間タイマーを、一時的サイクルを続行している一時的スケジュール内のランダム値に再設定する。認可されたプロセスが全て、ブロック1.3.1202で作成された新しい移行先仮想マシン上の生産環境で実行されている。
インスタンス持続時間タイマーが満了した仮想マシンのライブ科学捜査フラグがオンに設定され、仮想マシンマネージャ(図5の1.3.200)に反映されたセキュリティ状態がセキュリティ侵害されていると設定されると、ブロック1.3.1212の移行処理ステップが実行され、それは、インスタンス持続時間タイマーが最近満了した仮想マシン上で中断されている、認可されたプロセスと認可されていないプロセスの両方のプロセス全てを、合成コンピューティング環境をライブ科学捜査モードで実行している、ブロック1.3.1211で作成された第3の仮想マシンに移行する。認可されたプロセスは、図10に示すシームレスな認可されたハンドオフプロセスを用いて移行される。認可されていないプロセスは、プロセスコード、メモリ状態およびスタック状態の正確な状態マップを取得し、それを、ブロック1.3.1211で作成されたように、ライブ科学捜査モードである合成仮想マシンにコピーする、状態マッパーによって複製される。全てのプロセスが移行されると、プロセス中断が解除され、合成環境を実行している仮想マシンが、現在は生産環境の一部ではないプロセスの実行を、調査、分析および操作できる合成されたコンピューティング環境で継続する。
ブロック1.3.1298は、一時的移行プロセスを開始するためにインスタンス持続時間タイマーが満了した今は古い仮想マシンが、図7で定義されたプロセスに従って現在終了されている一時的移行プロセスの最後の処理ステップを示す。結果は、この一時的移行プロセスを通じてクリーンなインスタンスに移行された認証されたプロセスを実行するブロック1.3.1202で作成されたクリーンな仮想マシンであり、有効に生産処理に移行する。古い仮想マシンがセキュリティ侵害された場合、合成コンピューティング環境が基本仮想マシンイメージからインスタンス生成され、認可されていないプロセスを含めて、古い仮想マシンの処理状態に設定される。これは、認可されていないプロセスが、認可されていないプロセスまたは認可されていないプロセスのハンドラに検出されない方法で、実行を継続できるようにする。
図12は、基本仮想マシンイメージアーカイブ(図5の1.3.400)内に存在する移行元基本仮想マシンイメージによって取得されるように、仮想マシンマネージャ(図5の1.3.200)によってインスタンス生成され、登録されている、仮想マシン(図5の1.3.1200)のリフレッシュを制御する一時的スケジューラプロセスの流れ図である。図12のブロック1.3.101は、図6に詳述するインスタンス生成ステップを示す。図12のブロック1.3.102は、仮想マシンに対して一時的サイクルを開始する第1の時間に対するインスタンス寿命タイマーの設定を示すが、その仮想マシンは、現在、一時的スケジューラ(図5の1.3.100)によって決定されるように頻繁なインスタンスリフレッシュを経験し、仮想マシンマネージャ(図5の1.3.200)によって実行されるので、現在、一時的仮想マシンと呼ぶことができる。本発明の本実施形態においてインスタンス寿命タイマーの持続時間を設定するために使用された時間値は、インスタンス寿命タイマーの持続時間に対するランダムな間隔を計算するために、乱数または擬似乱数発生器を使用した。これは、より高いレベルのセキュリティを追加するために行われ、それは、リフレッシュが生じるのを判断するのをより困難にすることによりタイミング攻撃を防ぐために、リフレッシュ間隔をランダム化することを通じて獲得される。リフレッシュレートの限度を制御するために、最小および最大の期間値が、基礎となるコンピューティング装置またはネットワーク装置上に一時的コンピューティング環境が与えるシステム性能影響を制御するセキュリティ規則エンジン(図5の1.3.600)内で設定される。
図12のブロック1.3.103は、満了する所与の仮想マシンに対するインスタンス寿命タイマーを示す。満了すると、リフレッシュプロセスが一時的スケジューラ(図5の1.3.100)によってトリガーされ、仮想マシンマネージャ(図5の1.3.200)に、インスタンス寿命タイマーがちょうど満了した仮想マシン(図5の1.3.1200)のリフレッシュを行うように通知する。図12のブロック1.3.104は、このインスタンスのリフレッシュプロセスを示し、それは、図11の流れ図に詳細に示すように、一時的移行プロセスを実行する。移行プロセスが完了すると、基本仮想オペレーティングシステムイメージに関連する登録済みプロセスを処理する、新しいか、またはリフレッシュされた仮想マシンが作動される。仮想マシンマネージャは、新しいインスタンスが動作可能であることを一時的スケジューラに通知する。図12のブロック1.3.105は、新しくインスタンス生成された仮想マシンに対するタイマーを再設定する一時的スケジューラを示すが、その仮想マシンは現在動作可能であり、一時的状態リフレッシュプロセスを完了する。乱数がセキュリティ規則制限内で再度取得され、インスタンス寿命タイマーの持続時間がこの値に設定される。
図13は、本発明のこの実施形態に対する隔離手順の流れ図を示す。隔離機能は、一時的システムにおける3つの主なセキュリティ目標:認可されていないプロセスを封じ込めること、認可されていないプロセスが一時的コンピューティングシステムに対して与えることができる損害を減らすこと、および検出され、隔離されている認可されていないプロセスまたはそのハンドラに警告しないような方法で、それを行うこと、を達成するように設計されている。
ブロック1.3.1101は、隔離プロセスにおける第1のステップであり、認可されていないプロセスを検出する。検出はさまざまな方法で生じ得るが、そのうちの2つは、図11のブロック1.3.1205に示す一時的移行プロセスおよび図9のブロック1.3.304に示す整合性チェックプロセスなどにおけるように、他の定義領域で説明されている。
図13のブロック1.3.1102は、仮想マシンマネージャにおける仮想マシン(図5の1.3.1200)に対するセキュリティ状態を、インスタンスの整合性がセキュリティ侵害されていることを示す値に、まだそのように設定されていなければ、設定することを示す。インスタンスのセキュリティ整合性値がセキュリティ侵害されていると設定されていると、インスタンスは、ブロック1.3.1103に示すように隔離された仮想マシンとして実行し始め、そのインスタンスは、隔離モードでの実行と呼ぶことができる。セキュリティ規則エンジン(図5の1.3.600)によって決定されているように、仮想マシンが隔離されていると、ブロック1.3.1104で示すように、隔離セキュリティプロセス規則が有効になる。これらの隔離セキュリティ規則は、図8に詳述し、図13のブロック1.3.1105に示す、システム仕様偽装プロセスによって返される値を変更する。
この実施形態の例は、どのオペレーティングシステムバージョンを実行しているかを判断するために問合せが行われた場合に、今は隔離モードがアクティブなので、実際のバージョン数を返す代わりに、認可されていない権限昇格など、システムを悪用する認可されていないプロセスがより困難な時間をもつように、オペレーティングシステムの古いバージョンのIDを返すことであろう。隔離セキュリティ規則は、ブロック1.3.1106に示すように、システムのクリティカルな資源へのアクセスも制限する。この例は、隔離モードがオンでなく、全てのプロセスが共有されたネットワークファイルおよび印刷資源へのアクセスをもつ場合である。一旦隔離モードがオンになれば、隔離セキュリティ規則は、認可されていないプロセスを分離する効果を持つことができる、全ての共有ファイルおよび印刷資源へのアクセスを制限し、それは、例えば、共有された印刷資源をもはや悪用できないので、プリンタに感染するワームであり得る。加えて、隔離セキュリティ規則は、ブロック1.3.1107に示すように、システム設定に対する変更を防ぐ。この例は、全てのプロセスに対してWindows(登録商標)オペレーティングシステムを実行している仮想マシンのシステムレジストリに対する書込み権限を、たとえプロセスがそれを行う権限を有していても、隔離セキュリティ規則によって指定されるように、制限することである。
ブロック1.3.1108は、隔離モードで動作している仮想マシン上の認可されていないプロセスを含むプロセスを示し、それは、全てのプロセスの実行を隔離セキュリティ規則によって設定される許容範囲内で継続する。これは同様に、システム処理の影響を軽減するため、また、検出され、現在は封じ込められている認可されていないプロセスの認識を高めないために行われる。図11に詳述した一時的移行プロセス中に一時的スケジューラ(図5の1.3.100)によって制御されているように、次の一時的リフレッシュ中に、整合性チェックが、図13のブロック1.3.1110で強調されたように実行される。図11では、ブロック1.3.1209は、移行されている仮想マシンのセキュリティ整合性状態であり、仮想マシンが隔離モードで動作していることを示し(図13のブロック1.3.1111に示す)、例えば、ライブ科学捜査モードがオンであるか否を判断するためにチェックが行われていることを示す(ブロック1.3.1112で示す)。ライブ科学捜査モードがオンであれば、ブロック1.3.1113が起動され、その操作が図11のブロック1.3.1210に詳述されている。同様に図11のブロック1.3.1211に詳述されるように、新しい仮想マシンが作成され、それは、図13のブロック1.3.1114に示す合成モードに置かれる。このモードは、合成環境シミュレータ(図5の11.3.700)によって制御され得る。この新しい合成仮想マシンが、移行中のセキュリティ侵害された仮想マシンの非生産のライブ科学捜査インスタンスになる。
図13では、ブロック1.3.1115は、図10で詳細したシームレスな認可されたハンドオフプロセスを利用して、セキュリティ侵害されたインスタンスからライブ科学捜査の合成環境インスタンスへの認可されたプロセスの移行を強調する。ブロック1.3.1116は、感染したインスタンスから、セキュリティ侵害されたシステムからコピーされ、認可されていない状態のスナップショットを通じて複製された、ライブ科学捜査の合成環境インスタンスへ、ハンドオフされている認可されていないプロセスを強調するが、その複製には、認可されていないプロセスの実行命令(ネイティブコード、マネージコードまたはスクリプトコード)、使用されているメモリおよび実行スタックのライブ科学捜査の合成環境インスタンスへの複製を含む。ライブ科学捜査の合成環境インスタンスが全てのプロセスをそれに移行させると、ライブ科学捜査の合成環境インスタンスのセキュリティ状態が、ブロック1.3.1117に示されているようにクリーンな値に設定される。ブロック1.3.1118は、ライブ科学捜査の合成環境インスタンス上の新たに移行されたプロセスに対するプロセス中断の解除を示し、また、認可されたプロセスと認可されていないプロセスの両方の実行が復元される。ブロック1.3.119は、現在はライブ科学捜査仮想マシン内にある認可されていないプロセスに対して行うことができる調査および分析および実験を示す。同様に、これは、実行を最初は隔離し、次いで制御された合成環境に置くために、認可されていないプロセスまたはその管理者が1つのインスタンスから別のインスタンスへ移行されているという事実をそれに警告することなく実行される。ブロック1.3.1121は、ブロック1.3.1202を含め、図11で詳述された、一時的リフレッシュ移行プロセスの一部として作成された新しい移行先仮想マシンを示す。
図13のブロック1.3.1123は、仮想マシンマネージャ(図5の1.3.200)によって追跡されたそのセキュリティ整合性値を、図13のブロック1.3.1122で示すクリーンに設定することにより、新しく作成された移行先仮想マシン上で解除されている隔離を示す。
ブロック1.3.1124は、図7の流れ図で詳述するように、隔離された仮想マシンが終了される直前に、状態マッパー(図5の1.3.900)によって取得されている、その仮想マシンの状態スナップショットを示す。隔離プロセスの最終ステップは、図13のブロック1.3.1125で示すように、隔離されたインスタンスのスナップショットのコピーを科学捜査的分析のために格納することである。
図14は、本発明の実施形態に従って利用された合成生産システムを示す。ライブ科学捜査モードを実行する仮想マシンは、ネスト化仮想化オペレーティングシステム1.3.701をもつ仮想マシンを含み得る。これは、隔離されていない感染した仮想マシン1.3.702、ネットワーク装置のための合成仮想マシン1.3.703およびパーソナルコンピュータ用の合成仮想マシン1.3.704を備えた合成生産環境を含み得る。インスタンスは、インターネット1.3.705上の資源を使用することによって交換され得る。
図15は、認可されていないプロセスとして実行するエージェントコードでハッキングまたは感染されている現実の世界のシステム例を使用して、リアルタイムの防護対策を進める。この例では、本発明で詳述するように、一時的環境で実行する仮想マシンが、認可されたウェブブラウザアプリケーションを実行する。ウェブブラウザは、そのウェブブラウザが、ハッカーによってウェブサイト上に置かれた悪質なコードによって判断された、32ビットのWindows(登録商標)環境で実行しているIEであることを判断するハッカーによって悪用される。認可されたウェブブラウザアプリケーションを実行する仮想マシンがWindows(登録商標)オペレーティングシステムの32ビットバージョンを実行している。悪用に対する脆弱性は、Windows(登録商標)オペレーティングシステムの32ビットバージョン上で実行中に、IEウェブブラウザに影響を及ぼすメモリオーバーフローベクトルであった。これは、コンピュータシステムへの認可されていないアクセスを取得するために頻繁に使用される、極めて典型的なブラウザクラッシャー(browser exploit)である。メモリオーバーフローが悪用されると、閲覧されていたウェブサイト上に置かれた悪質なコードによって再度実行のために、シェルコードがロードされた。シェルコードは、ハッカーがマシンに対して認可されていないリモートアクセスをできるようにするウイルスまたはエージェントコードである。一時的移行プロセス中、図15のブロック1.3.601に示すように、仮想マシンが認可されていないプロセス、この場合エージェントコードを経験することが検出された。セキュリティ規則は、最近の成功した攻撃に対してアクティブな防護対策を適用するために、認可されていないプロセスが判断され、また、感染した仮想マシンのスナップショットが、感染が何であったかを判断し、それをセキュリティ規則エンジン(図5の1.3.600)に報告するオートプシーを経験するようなものである。ブロック1.3.602は、感染した仮想イメージスナップショット上で実施されている科学捜査的分析を示す。ブロック1.3.603は、認可されていないアクセスエージェントがシステム上に置かれていて、たぶん、これがブラウザを介して行われたと結論を下す分析を示す。ブロック1.3.604は、セキュリティ規則エンジンに発見を通知する科学捜査アプリケーションを示す。ブロック1.3.605で適用されたアクティブな防護対策に基づき、クラッシャーが最近仮想マシン上で成功している場合、経路1.3.606に示すように、IEブラウザアプリケーションを含む認可されたアプリケーションに対して、オペレーティングシステムのバージョンがその本当の値の32ビットから64ビットに変更されるように、システム仕様ハンドラの偽装特徴が変更される。ブラウザアプリケーションがオペレーティングシステムの仕様に関して次にシステム問合せを行う時、返される結果は、ブロック1.3.607に示すように、64ビットのWindows(登録商標)オペレーティングシステムである。ハッカーが悪質なコードを置いたサイトをブラウザが次に訪問する時、システムを感染させるために最後に使用されたクラッシャーは、その悪質なコードは32ビットのWindows(登録商標)オペレーティングシステムに対してのみ有効であるので、機能しないであろう。ブラウザは、ブロック1.3.608に示すように、情報文字列が変更されたことを報告する。従って、クラッシャーはもはや機能せず(1.3.609)、64ビットOSがスキップされる(1.3.610)。その結果として、クラッシャーは、偽装防護対策1.3.611のために動作しない。この例は、セキュリティを高めるためにリアルタイムの防護対策を用いる、現実の世界の一時的システム例を示し、最近検出された攻撃に対してシステムを強くする。
図16は、本発明の実施形態に従って収集され得る例示的なデータを示す。具体的には、図は、アーカイブ内に記録される基本仮想マシンイメージを示し、それは、仮想マシン基本イメージ識別、ハードウェア識別、仮想マシンデジタル識別および仮想マシン基本イメージオブジェクトのための列を含む。
図17は、本発明の実施形態に従って収集され得る例示的なデータを示す。具体的には、図は、レジストリ内の認可されたプロセス情報を示し、それは、認可されたプロセス識別、仮想マシン基本イメージ識別、プロセスファイル名、認可されたハッシュおよびプロセス実行可能オブジェクトのための列を含む。
当業者であれば、開示した技術に関連する多くの利点を認識するであろう。その最も基本的な形において、本技術は、認可されていないコンピュータアクセスおよび使用を削減する。本技術は、コンピュータ装置またはネットワークを理解および制御するために必要なスキルレベルを向上させることにより、潜在的なハッカーの数を削減する。本技術は、コンピュータ装置またはネットワークが何であるかに関して、アタッカーを当惑および混乱させる。従って、コンピュータ装置およびネットワークの認可されていないアクセスおよび使用を得るための費用が増加する。
本技術は、サイバー攻撃の現在の非対称性を減らす。本技術は、また、ネットワーク上のコンピューティング装置が感染した場合に、ウイルスの拡がりを遅くする。本技術は、ウイルスまたは認可されていないエージェントコードまたは認可されていないコンピューティングセッションが感染したコンピューティング装置上に存在する期間を短縮する。
本技術は、ウイルスまたは認可されていないエージェントコードまたは認可されていないコンピューティングセッションが悪質なコマンドを実行する必要のある時間窓を短縮する。本技術は、攻撃に対する防護対策も提供する。従って、本技術は、ランダムもしくは偶然のリフレッシュサイクル(インスタンス化、再インスタンス化および非インスタンス化)またはコンピュータ装置、ネットワークおよびシステムのサイクルを通して、安定した標準的なコンピューティング環境を容易にする。
本技術は、ミッションクリティカルなプロセスのコンピューティング装置およびネットワーク間のシームレスな移行を容易にして、サービスの中断またはコマンドのリプレイを回避する。本技術はまた、システム交換に代わるものとして、レガシーシステムの新しいセキュリティ方法への移行パスを可能にする。本技術は、サービス妨害(Denial Of Service)攻撃を回避する。本技術は、認可されていない使用セッションに加え、ウイルスおよびエージェント感染システムの将来の科学捜査的再構築および生きている見本の分析が可能になる方法で、システム状態を格納する。
本技術は、封じ込めた感染したコンピューティング装置およびネットワークを、ウイルス、認可されていないエージェントコードまたは認可されていないコンピュータセッションユーザーまたはそれらを遠隔制御している関係者によって気づかれることなく、生産コンピューティング環境から非生産コンピューティング環境に移行できるようにする。本技術は、感染したコンピューティング装置およびネットワークがその中で動作できる合成または疑似生産環境も提供するが、ウイルス、認可されていないエージェントコードまたは認可されていないコンピュータセッションユーザーまたはそれらそれぞれの管理者は、そのコンピューティング環境が生産環境でないことを判断できない。感染したコンピューティング装置およびネットワークがその中で動作でき、拡がることができる合成または疑似生産環境は、ウイルスまたは認可されていないエージェントコードの脅威レベル、伝搬速度および多形属性を判断するために安全に評価できる。
本発明の実施形態は、様々なコンピュータ実装された動作を実行するためのコンピュータコードをその上に有するコンピュータ可読記憶媒体を備えたコンピュータストレージ製品に関する。媒体およびコンピュータコードは、本発明のために特別に設計されたか、もしくは構築されたものであり得るか、またはコンピュータソフトウェア業者に周知かつ利用可能な種類である得る。コンピュータ可読媒体には、ハードディスク、フロッピィディスク、および磁気テープなどの磁気媒体;CD−ROM、DVD、およびホログラフィック装置などの光媒体;光磁気媒体;ならびに特定用途向け集積回路(ASIC)、プログラム可能論理回路(PLD)およびROMおよびRAM装置など、プログラムコードを格納および実行するように特別に構成されているハードウェア装置を含むが、それらに限定されない。コンピュータコードの例には、コンパイラによって生成されたような機械コード、インタープリタを用いてコンピュータによって実行される高水準コードを含むファイルを含む。例えば、本発明の実施形態は、JAVA(登録商標)、C++、またはオブジェクト指向プログラミング言語および開発ツールを用いて実装され得る。本発明の他の実施形態は、機械実行可能なソフトウェア命令の代わりに、またはそれと組み合わせてハードワイヤード回路内で実装され得る。
説明のため、上の記述では、本発明の完全な理解を提供するために、特別な用語体系を使用した。しかし、本発明を実施するために具体的詳細は必要ないことが当業者には明らかであろう。従って、本発明の特定の実施形態の上の記述は、例証および説明のために提示されている。それらは、包括的であるか、または本発明を開示した正確な形状に制限することを意図しておらず;前述の教示を考慮して、明らかに、多くの修正および変形が可能である。実施形態は、本発明の本質およびその実際の適用を最も良く説明するために、選択および記述され、それにより、それらは、当業者が本発明および様々な実施形態を、検討された特定の使用に適するように様々な修正を行って、最も良く利用できるようにする。以下の特許請求の範囲およびそれらの同等物が本発明の範囲を定義することが意図される。

Claims (19)

  1. コンピューティング装置およびメモリを備えるシステムにより実行されるコンピュータ実装された方法であって、
    前記コンピュータ実装された方法は、
    前記コンピューティング装置が、前記メモリから、プロセスが認可されているか認可されていないかを決定するためのデータを取得することと、
    前記コンピューティング装置が、前記プロセスが認可されているか認可されていないかを決定することと、
    前記コンピューティング装置が、偽装混乱プロセスを認可されたプロセスおよび認可されていないプロセスの動作状態に取り込むことと、
    記認可されていないプロセスは前記偽装混乱プロセスにさらされ前記認可されていないプロセスに動作障害を誘発する不安定な環境を経験させる一方で、前記コンピューティング装置が、前記認可されたプロセスを、前記認可されたプロセスに影響を及ぼすことを回避するために仮想マシンに移行することと
    を含む、コンピュータ実装された方法。
  2. 前記コンピューティング装置が前記偽装混乱プロセスを取り込むことが予測不能な方法でプロセスを開始および停止することと、虚偽のパラメータをプロセスに渡すこととのうちの1つ以上を含む、請求項1に記載のコンピュータ実装された方法。
  3. 前記コンピューティング装置が、デジタル資源の表現を作成することと、
    前記コンピューティング装置が、前記デジタル資源に対して整合性値を確立するために、前記表現に対する一意の値を形成することと、
    前記コンピューティング装置が、前記デジタル資源の現在のインスタンス生成を受信することと、
    前記コンピューティング装置が、前記現在のインスタンス生成をアクティブな整合性状態に変換することと、
    前記コンピューティング装置が、前記デジタル資源の前記現在のインスタンス生成に関連する前記認可されていないプロセスを識別するために、前記整合性値と前記アクティブな整合性状態との間の不一致を識別することと
    をさらに含む、請求項1に記載のコンピュータ実装された方法。
  4. 前記コンピューティング装置が、認可されたプロセスのレジストリを作成することをさらに含む、請求項1に記載のコンピュータ実装された方法。
  5. 前記コンピューティング装置が、前記認可されたプロセスに対して終了時間を指定することをさらに含み、前記終了時間が前記認可されたプロセスに知られていない、請求項1に記載のコンピュータ実装された方法。
  6. 前記コンピューティング装置が、前記終了時間に、前記認可されたプロセスの新しいインスタンス生成を起動することをさらに含む、請求項5に記載のコンピュータ実装された方法。
  7. 前記コンピューティング装置が、デジタル資源の表現を作成することと、
    前記コンピューティング装置が、前記認可されたプロセスを前記デジタル資源の新しいインスタンス上に移行すること
    をさらに含み、移行が、前記認可されたプロセスに対応する登録済みの認可されたプロセスを起動することを含む、請求項6に記載のコンピュータ実装された方法。
  8. 前記コンピューティング装置が、前記認可されていないプロセスを隔離することをさらに含む、請求項1に記載のコンピュータ実装された方法。
  9. 前記認可されていないプロセスが、システム設定に対して変更を行うこと、共有資源にアクセスすること、および本当のシステム仕様を見ることを妨げる、請求項1に記載のコンピュータ実装された方法。
  10. 前記コンピューティング装置が、前記認可されていないプロセスの隔離されたインスタンス生成を形成することをさらに含み、前記認可されていないプロセスの前記隔離されたインスタンス生成が、生産環境外部の見えない合成仮想化環境シミュレーション内で動作される、請求項1に記載のコンピュータ実装された方法。
  11. 前記コンピューティング装置が、科学捜査的分析を、前記認可されていないプロセスの前記隔離されたインスタンス上で実行することをさらに含む、請求項10に記載のコンピュータ実装された方法。
  12. 前記コンピューティング装置が、前記認可されていないプロセスを分類することと、
    前記コンピューティング装置が、脅威レベルの定量化を前記認可されていないプロセスに提供することと、
    前記コンピューティング装置が、前記認可されていないプロセスに対する防護対策を決定することと
    をさらに含む、請求項1に記載のコンピュータ実装された方法。
  13. 前記デジタル資源の前記表現が、第1の仮想マシン、第2の仮想マシン、一時的防御層、仮想化オペレーティングシステム、デバイスドライバおよびコンピュータハードウェアの表現を含む、請求項3に記載のコンピュータ実装された方法。
  14. 前記コンピューティング装置が、前記表現に対して前記一意の値を形成することが、前記デジタル資源によって処理される実行可能コードのハッシュを計算することを含む、請求項13に記載のコンピュータ実装された方法。
  15. 前記コンピューティング装置が、前記表現に対して前記一意の値を形成することが、認可されたプロセスに関連するイメージ識別、プロセス名、および選択されたヘッダー情報に基づき、前記認可されたプロセスに対してハッシュを計算することを含む、請求項13に記載のコンピュータ実装された方法。
  16. 前記コンピューティング装置が、前記表現に対して前記一意の値を形成することが、仮想マシンアーカイブ識別番号、オペレーティングシステム名、オペレーティングシステムバージョン、オペレーティングシステムサービスのプロセス名、および仮想マシン上で実行するために登録された認可されたプロセスに基づき、仮想マシンに対してハッシュを計算することを含む、請求項13に記載のコンピュータ実装された方法。
  17. 前記コンピューティング装置が、セキュリティ規則エンジン、合成環境シミュレータ、仮想化オペレーティングシステムおよび整合性チェッカーを起動することをさらに含む、請求項1に記載のコンピュータ実装された方法。
  18. 前記コンピューティング装置が、プロセス間通信ゲートウェイ、隔離エンフォーサ、および状態マッパーを起動することをさらに含む、請求項1に記載のコンピュータ実装された方法。
  19. 前記コンピューティング装置が、一時的スケジューラ、仮想マシンマネージャ、認可プロセスレジストリ、および基本仮想マシンイメージアーカイブを起動することをさらに含む、請求項1に記載のコンピュータ実装された方法。
JP2013536889A 2010-10-31 2011-10-28 仮想コンピューティング環境を保護するためのシステムおよび方法 Expired - Fee Related JP5853327B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US40860710P 2010-10-31 2010-10-31
US61/408,607 2010-10-31
PCT/US2011/058421 WO2012058613A2 (en) 2010-10-31 2011-10-28 System and method for securing virtual computing environments

Publications (2)

Publication Number Publication Date
JP2013541120A JP2013541120A (ja) 2013-11-07
JP5853327B2 true JP5853327B2 (ja) 2016-02-09

Family

ID=45994823

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013536889A Expired - Fee Related JP5853327B2 (ja) 2010-10-31 2011-10-28 仮想コンピューティング環境を保護するためのシステムおよび方法

Country Status (8)

Country Link
US (1) US9117091B2 (ja)
EP (1) EP2633466A4 (ja)
JP (1) JP5853327B2 (ja)
KR (1) KR101881179B1 (ja)
CN (1) CN103370715B (ja)
AU (1) AU2011320339B2 (ja)
CA (1) CA2816298A1 (ja)
WO (1) WO2012058613A2 (ja)

Families Citing this family (71)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8874888B1 (en) 2011-01-13 2014-10-28 Google Inc. Managed boot in a cloud system
US9135037B1 (en) 2011-01-13 2015-09-15 Google Inc. Virtual network protocol
US9237087B1 (en) 2011-03-16 2016-01-12 Google Inc. Virtual machine name resolution
US8533796B1 (en) 2011-03-16 2013-09-10 Google Inc. Providing application programs with access to secured resources
US20120324446A1 (en) * 2011-06-17 2012-12-20 Microsoft Corporation Virtual machine image composition and signing
US8813234B1 (en) * 2011-06-29 2014-08-19 Emc Corporation Graph-based approach to deterring persistent security threats
US9075979B1 (en) 2011-08-11 2015-07-07 Google Inc. Authentication based on proximity to mobile device
US8966198B1 (en) 2011-09-01 2015-02-24 Google Inc. Providing snapshots of virtual storage devices
US8958293B1 (en) 2011-12-06 2015-02-17 Google Inc. Transparent load-balancing for cloud computing services
US8800009B1 (en) 2011-12-30 2014-08-05 Google Inc. Virtual machine service access
US8983860B1 (en) 2012-01-30 2015-03-17 Google Inc. Advertising auction system
US8839447B2 (en) * 2012-02-27 2014-09-16 Ca, Inc. System and method for virtual image security in a cloud environment
US8677449B1 (en) 2012-03-19 2014-03-18 Google Inc. Exposing data to virtual machines
US8930751B2 (en) 2012-04-24 2015-01-06 Microsoft Corporation Initializing replication in a virtual machine
US8839031B2 (en) * 2012-04-24 2014-09-16 Microsoft Corporation Data consistency between virtual machines
US8813240B1 (en) * 2012-05-30 2014-08-19 Google Inc. Defensive techniques to increase computer security
US9015838B1 (en) 2012-05-30 2015-04-21 Google Inc. Defensive techniques to increase computer security
US9009705B2 (en) 2012-10-01 2015-04-14 International Business Machines Corporation Authenticated distribution of virtual machine images
US9304795B2 (en) * 2013-01-15 2016-04-05 Empire Technology Development Llc Function-targeted virtual machine switching
US9846596B1 (en) * 2013-06-24 2017-12-19 Hrl Laboratories, Llc System and method for cloud control operations plane based on proactive security algorithms
US20150052614A1 (en) * 2013-08-19 2015-02-19 International Business Machines Corporation Virtual machine trust isolation in a cloud environment
US10275268B2 (en) 2013-08-26 2019-04-30 Red Hat, Inc. Providing entropy to a guest operating system
JP2016536661A (ja) * 2013-09-23 2016-11-24 ジーオーピーシー・プロプライエタリー・リミテッドGopc Pty Ltd 仮想コンピュータシステム及び方法
US10764323B1 (en) * 2015-12-21 2020-09-01 Amdocs Development Limited System, method, and computer program for isolating services of a communication network in response to a distributed denial of service (DDoS) attack
US9851998B2 (en) 2014-07-30 2017-12-26 Microsoft Technology Licensing, Llc Hypervisor-hosted virtual machine forensics
US9386027B2 (en) * 2014-08-11 2016-07-05 Indiana University Research & Technology Corporation Detection of pileup vulnerabilities in mobile operating systems
US9363263B2 (en) 2014-08-27 2016-06-07 Bank Of America Corporation Just in time polymorphic authentication
US9342338B2 (en) * 2014-10-15 2016-05-17 Red Hat, Inc. Application migration in a process virtual machine environment
US11586358B2 (en) * 2014-12-17 2023-02-21 Red Hat, Inc. Building file system images using cached logical volume snapshots
US9807077B2 (en) * 2015-03-10 2017-10-31 Polyverse Corporation Systems and methods for containerized data security
US9792141B1 (en) * 2015-05-28 2017-10-17 Amazon Technologies, Inc. Configured generation of virtual machine images
US9645847B1 (en) * 2015-06-08 2017-05-09 Amazon Technologies, Inc. Efficient suspend and resume of instances
US9524389B1 (en) 2015-06-08 2016-12-20 Amazon Technologies, Inc. Forensic instance snapshotting
US10291648B2 (en) 2015-12-22 2019-05-14 At&T Intellectual Property I, L.P. System for distributing virtual entity behavior profiling in cloud deployments
CN107533594B (zh) 2016-01-21 2021-01-26 慧与发展有限责任合伙企业 验证软件的方法、安全软件系统及可读存储介质
WO2017129659A1 (en) 2016-01-29 2017-08-03 British Telecommunications Public Limited Company Disk encryption
WO2017129657A1 (en) 2016-01-29 2017-08-03 British Telecommunications Public Limited Company Disk encryption
EP3408778B1 (en) * 2016-01-29 2020-08-19 British Telecommunications public limited company Disk encryption
US10848465B2 (en) * 2016-02-26 2020-11-24 Extreme Networks, Inc. Dynamic firewalls and forensic gateways
US10333962B1 (en) 2016-03-30 2019-06-25 Amazon Technologies, Inc. Correlating threat information across sources of distributed computing systems
US10320750B1 (en) 2016-03-30 2019-06-11 Amazon Technologies, Inc. Source specific network scanning in a distributed environment
US10148675B1 (en) * 2016-03-30 2018-12-04 Amazon Technologies, Inc. Block-level forensics for distributed computing systems
US10178119B1 (en) 2016-03-30 2019-01-08 Amazon Technologies, Inc. Correlating threat information across multiple levels of distributed computing systems
US10142290B1 (en) 2016-03-30 2018-11-27 Amazon Technologies, Inc. Host-based firewall for distributed computer systems
US10079842B1 (en) 2016-03-30 2018-09-18 Amazon Technologies, Inc. Transparent volume based intrusion detection
US10536476B2 (en) 2016-07-21 2020-01-14 Sap Se Realtime triggering framework
US10460113B2 (en) * 2016-08-16 2019-10-29 International Business Machines Corporation Security fix of a container in a virtual machine environment
US10482241B2 (en) * 2016-08-24 2019-11-19 Sap Se Visualization of data distributed in multiple dimensions
US10542016B2 (en) 2016-08-31 2020-01-21 Sap Se Location enrichment in enterprise threat detection
US10459632B1 (en) * 2016-09-16 2019-10-29 EMC IP Holding Company LLC Method and system for automatic replication data verification and recovery
US10673879B2 (en) * 2016-09-23 2020-06-02 Sap Se Snapshot of a forensic investigation for enterprise threat detection
US10630705B2 (en) 2016-09-23 2020-04-21 Sap Se Real-time push API for log events in enterprise threat detection
KR102511451B1 (ko) 2016-11-09 2023-03-17 삼성전자주식회사 리치 실행 환경에서 보안 어플리케이션을 안전하게 실행하는 컴퓨팅 시스템
US10534908B2 (en) 2016-12-06 2020-01-14 Sap Se Alerts based on entities in security information and event management products
US10530792B2 (en) 2016-12-15 2020-01-07 Sap Se Using frequency analysis in enterprise threat detection to detect intrusions in a computer system
US10534907B2 (en) 2016-12-15 2020-01-14 Sap Se Providing semantic connectivity between a java application server and enterprise threat detection system using a J2EE data
US11470094B2 (en) 2016-12-16 2022-10-11 Sap Se Bi-directional content replication logic for enterprise threat detection
US10552605B2 (en) 2016-12-16 2020-02-04 Sap Se Anomaly detection in enterprise threat detection
US10764306B2 (en) 2016-12-19 2020-09-01 Sap Se Distributing cloud-computing platform content to enterprise threat detection systems
US10372945B2 (en) * 2017-01-24 2019-08-06 Microsoft Technology Licensing, Llc Cross-platform enclave identity
US9912695B1 (en) 2017-04-06 2018-03-06 Qualcomm Incorporated Techniques for using a honeypot to protect a server
US10623432B2 (en) * 2017-06-21 2020-04-14 International Business Machines Corporation Mitigating security risks utilizing continuous device image reload with data integrity
US10530794B2 (en) 2017-06-30 2020-01-07 Sap Se Pattern creation in enterprise threat detection
US10333951B1 (en) * 2017-07-31 2019-06-25 EMC IP Holding Company LLC Method and system for implementing golden container storage
RU2746570C1 (ru) * 2017-10-25 2021-04-15 Бооле Сервер С.Р.Л. Способ управления службой доступа и отображения конфиденциальной информации и данных с помощью виртуального рабочего стола
US10467211B2 (en) * 2017-11-15 2019-11-05 International Business Machines Corporation Representing and analyzing cloud computing data as pseudo systems
US10681064B2 (en) 2017-12-19 2020-06-09 Sap Se Analysis of complex relationships among information technology security-relevant entities using a network graph
US10986111B2 (en) 2017-12-19 2021-04-20 Sap Se Displaying a series of events along a time axis in enterprise threat detection
US11593085B1 (en) 2020-02-03 2023-02-28 Rapid7, Inc. Delta data collection technique for machine assessment
US11567794B1 (en) * 2020-09-30 2023-01-31 Virtuozzo International Gmbh Systems and methods for transparent entering of a process into a virtual machine
CN114117286A (zh) * 2022-01-28 2022-03-01 北京安帝科技有限公司 基于行为识别的网页访问方法及系统

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050132122A1 (en) * 2003-12-16 2005-06-16 Rozas Carlos V. Method, apparatus and system for monitoring system integrity in a trusted computing environment
US7908653B2 (en) * 2004-06-29 2011-03-15 Intel Corporation Method of improving computer security through sandboxing
US7409719B2 (en) * 2004-12-21 2008-08-05 Microsoft Corporation Computer security management, such as in a virtual machine or hardened operating system
US7574741B2 (en) * 2005-04-20 2009-08-11 Cisco Technology, Inc. Method and system for preventing operating system detection
US20080244758A1 (en) * 2007-03-30 2008-10-02 Ravi Sahita Systems and methods for secure association of hardward devices
KR101405319B1 (ko) * 2007-04-16 2014-06-10 삼성전자 주식회사 가상화 환경에서의 안전한 시스템 보호 장치 및 방법
US20090007100A1 (en) * 2007-06-28 2009-01-01 Microsoft Corporation Suspending a Running Operating System to Enable Security Scanning
US8024801B2 (en) * 2007-08-22 2011-09-20 Agere Systems Inc. Networked computer system with reduced vulnerability to directed attacks
US8307443B2 (en) * 2007-09-28 2012-11-06 Microsoft Corporation Securing anti-virus software with virtualization
US8032942B2 (en) * 2007-12-31 2011-10-04 Intel Corporation Configuration of virtual trusted platform module
JP2010026572A (ja) * 2008-07-15 2010-02-04 Hitachi Ltd 仮想計算機の現出方法、この方法を実行するためのプログラム、及びこの方法を実行するサーバ
US20110078797A1 (en) * 2008-07-29 2011-03-31 Novell, Inc. Endpoint security threat mitigation with virtual machine imaging
US8347386B2 (en) * 2008-10-21 2013-01-01 Lookout, Inc. System and method for server-coupled malware prevention
CN101753594B (zh) * 2008-11-28 2014-03-12 国际商业机器公司 一种激活虚拟机的方法和装置
US20110010710A1 (en) * 2009-07-10 2011-01-13 Microsoft Corporation Image Transfer Between Processing Devices

Also Published As

Publication number Publication date
CN103370715A (zh) 2013-10-23
CA2816298A1 (en) 2012-05-03
EP2633466A2 (en) 2013-09-04
AU2011320339A1 (en) 2013-05-02
KR101881179B1 (ko) 2018-07-23
US20130212709A1 (en) 2013-08-15
KR20140057467A (ko) 2014-05-13
US9117091B2 (en) 2015-08-25
JP2013541120A (ja) 2013-11-07
EP2633466A4 (en) 2017-11-29
WO2012058613A3 (en) 2012-07-05
AU2011320339B2 (en) 2015-09-03
CN103370715B (zh) 2017-04-12
WO2012058613A2 (en) 2012-05-03

Similar Documents

Publication Publication Date Title
JP5853327B2 (ja) 仮想コンピューティング環境を保護するためのシステムおよび方法
US10956184B2 (en) On-demand disposable virtual work system
RU2714607C2 (ru) Двукратная самодиагностика памяти для защиты множества сетевых конечных точек
US11163878B2 (en) Integrity, theft protection and cyber deception using a deception-based filesystem
US10230757B2 (en) Method and system for handling malware
Wueest Threats to virtual environments
Abed et al. Resilient intrusion detection system for cloud containers
Sun et al. A scalable high fidelity decoy framework against sophisticated cyber attacks
Lauer et al. Bootstrapping trust in a" trusted" virtualized platform
Shabtai et al. Evaluation of security solutions for Android systems
Win et al. Handling the hypervisor hijacking attacks on virtual cloud environment
Dutta et al. Design of a virtual cybersecurity lab
Shouman et al. Surviving cyber warfare with a hybrid multiagent-based intrusion prevention system
RU2673407C1 (ru) Система и способ определения вредоносного файла
Qattan et al. Deficiencies in Current Software Protection Mechanisms and Alternatives for Securing Computer Integrity
Benkhelifa et al. A novel architecture for self-propagating malicious software within cloud infrastructures
KR101415403B1 (ko) 공유 가능한 보안공간 제공시스템 및 그 방법
Kar Planning a virtual lab for analysis of malware: A study of virtualization on an Intel platform

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140819

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150624

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150717

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150819

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

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20151021

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20151118

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151118

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20151118

R150 Certificate of patent or registration of utility model

Ref document number: 5853327

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

LAPS Cancellation because of no payment of annual fees