JP2014532201A - 仮想ゲストのメモリ保護の方法、システムおよびコンピュータプログラム - Google Patents
仮想ゲストのメモリ保護の方法、システムおよびコンピュータプログラム Download PDFInfo
- Publication number
- JP2014532201A JP2014532201A JP2014517066A JP2014517066A JP2014532201A JP 2014532201 A JP2014532201 A JP 2014532201A JP 2014517066 A JP2014517066 A JP 2014517066A JP 2014517066 A JP2014517066 A JP 2014517066A JP 2014532201 A JP2014532201 A JP 2014532201A
- Authority
- JP
- Japan
- Prior art keywords
- virtual
- guest
- machine manager
- runtime memory
- virtual machine
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 56
- 238000004590 computer program Methods 0.000 title claims description 9
- 230000004044 response Effects 0.000 claims description 21
- 238000012795 verification Methods 0.000 claims description 14
- 238000004891 communication Methods 0.000 claims description 12
- 238000001514 detection method Methods 0.000 claims description 8
- 238000013508 migration Methods 0.000 claims 1
- 230000005012 migration Effects 0.000 claims 1
- 230000008569 process Effects 0.000 description 42
- 238000010586 diagram Methods 0.000 description 32
- 230000008901 benefit Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 11
- 238000012545 processing Methods 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 4
- 230000000644 propagated effect Effects 0.000 description 4
- 230000001010 compromised effect Effects 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 238000011835 investigation Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000013403 standard screening design Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/468—Specific access rights for resources, e.g. using capability register
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1416—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
- G06F12/1425—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
- G06F12/1433—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block for a module or a part of a module
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1458—Protection against unauthorised use of memory or access to memory by checking the subject access rights
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1458—Protection against unauthorised use of memory or access to memory by checking the subject access rights
- G06F12/1491—Protection against unauthorised use of memory or access to memory by checking the subject access rights in a hierarchical protection system, e.g. privilege levels, memory rings
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6209—Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6281—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database at program execution time, where the protection is within the operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45583—Memory management, e.g. access or allocation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45587—Isolation or security of virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/15—Use in a specific computing environment
- G06F2212/151—Emulated environment, e.g. virtual machine
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2149—Restricted operating environment
Abstract
Description
105:ホスト・コンピューティング・システム
110:仮想マシン・マネージャ
115a、115b:仮想マシン
120a、120b:仮想ゲスト
130a、130b、130c:クライアント
125:ネットワーク
Claims (25)
- ホスト・コンピューティング・システム上の仮想ゲストを初期化することであって、前記ホスト・コンピューティング・システムは、仮想マシン・マネージャを含み、前記仮想マシン・マネージャは、前記仮想ゲストの動作を管理し、前記仮想ゲストは、前記仮想マシン・マネージャによって提供される仮想動作プラットフォーム内で実行される別個の動作環境を含む、初期化することと、
前記仮想ゲストに対するランタイム・メモリの割当てを受取ることであって、前記ランタイム・メモリの割当てが、前記ホスト・コンピューティング・システムのランタイム・メモリの一部分を含む、受け取ることと、
前記仮想ゲストによって、前記ランタイム・メモリの割当ての少なくとも一部分を前記仮想マシン・マネージャによるアクセスができないように設定することと、
を含む方法。 - 前記仮想マシン・マネージャによるアクセスのための共有メモリ部分を確立することをさらに含み、前記共有メモリ部分は、前記仮想ゲストの前記ランタイム・メモリの割当ての一部分を含む、請求項1に記載の方法。
- 前記ランタイム・メモリの割当てに対するアクセスが、前記仮想ゲストによって決定される、請求項2に記載の方法。
- 前記仮想ゲストが、前記仮想マシン・マネージャとは無関係に、前記ホスト・コンピューティング・システムのプロセッサと直接通信していることを検証することをさらに含む、請求項1に記載の方法。
- 前記仮想ゲストが前記ホスト・コンピューティング・システムのプロセッサと直接通信していることを検証することは、前記ホスト・コンピューティング・システムと通信するトラステッド・プラットフォーム・モジュール(「TPM」)からのメトリクスに基づいて、前記仮想ゲストが前記プロセッサと直接通信していることを検証することをさらに含む、請求項4に記載の方法。
- 前記仮想ゲストによって、前記ランタイム・メモリの割当ての少なくとも一部分を前記仮想マシン・マネージャによるアクセスができないように設定することは、前記仮想ゲストによって、前記仮想マシン・マネージャとは無関係に、前記プロセッサと直接に通信して、前記仮想ゲストの前記ランタイム・メモリの割当てのアクセス許可を設定することをさらに含む、請求項1に記載の方法。
- 前記仮想ゲストによって、前記ランタイム・メモリの割当ての少なくとも一部分を前記仮想マシン・マネージャによるアクセスができないように設定することは、1つ又は複数の仮想ゲスト識別子を、前記ランタイム・メモリの割当ての特定のランタイム・メモリ・ページに関連付けることをさらに含み、前記前記仮想ゲスト識別子の少なくとも1つは、前記仮想ゲストを識別するものであり、前記プロセッサは、リクエスタからの前記特定のランタイム・メモリ・ページへのアクセス要求を、前記リクエスタが前記特定のランタイム・メモリ・ページに関する対応する仮想ゲスト識別子を有しないことに応答して拒否する、請求項1に記載の方法。
- 前記仮想マシン・マネージャから前記仮想ゲストに、前記アクセスできないランタイム・メモリの少なくとも一部分にアクセスする要求を送ることをさらに含む、請求項1に記載の方法。
- 前記仮想マシン・マネージャから、前記アクセスできないランタイム・メモリの少なくとも一部分にアクセスする要求を受取ることと、
前記要求が1つ又は複数の所定の基準を満たすことを判断することと、
前記要求が前記1つ又は複数の所定の基準を満たすとの判断に応答して、前記仮想マシン・マネージャに対して、前記アクセスできないランタイム・メモリの少なくとも一部分へのアクセスを承諾することと、
をさらに含む。請求項1に記載の方法。 - 前記1つ又は複数の所定の基準は、メモリ・ダンプ・データに関する要求及び仮想ゲスト移動に関する要求の1つ又は複数を含む、請求項9に記載の方法。
- 前記仮想マシン・マネージャに対して前記アクセスできないランタイム・メモリの少なくとも一部分のアクセスを承諾する前に、前記アクセスできないランタイム・メモリの特定のデータを暗号化することをさらに含む、請求項9に記載の方法。
- 前記仮想ゲストに対する前記ランタイム・メモリの割当てを、前記仮想マシン・マネージャが前記ランタイム・メモリの割当てにアクセスすることなく無効化するための所定のコマンドを呼び出すことをさらに含み、前記ホスト・コンピューティング・システムは、前記所定のコマンドの呼び出しに応答して前記ランタイム・メモリの割当てを無効化する、請求項1に記載の方法。
- 前記仮想ゲストが応答しないことを検出することをさらに含み、前記所定のコマンドを呼び出すことは、前記仮想ゲストが応答しないことの検出に応じて前記所定のコマンドを呼び出すことをさらに含む、請求項12に記載の方法。
- ホスト・コンピューティング・システム上の仮想ゲストを初期化する初期化モジュールであって、前記ホスト・コンピューティング・システムは、仮想マシン・マネージャを含み、前記仮想マシン・マネージャは、前記仮想ゲストの動作を管理し、前記仮想ゲストは、前記仮想マシン・マネージャによって提供される仮想動作プラットフォーム内で実行される別個の動作環境を含む、初期化モジュールと、
前記仮想ゲストに対するランタイム・メモリの割当てを受取る受信モジュールであって、前記ランタイム・メモリの割当てが、前記ホスト・コンピューティング・システムのランタイム・メモリの一部分を含む、受信モジュールと、
前記仮想ゲストによって、前記ランタイム・メモリの割当ての少なくとも一部分を前記仮想マシン・マネージャによるアクセスができないように設定する保護モジュールと、
を含む装置。 - 前記保護モジュールはさらに、前記仮想マシン・マネージャによるアクセスのための共有メモリ部分を確立し、前記共有メモリ部分は、前記仮想ゲストの前記ランタイム・メモリの割当ての一部分を含む、請求項14に記載の装置。
- 前記仮想ゲストが、前記仮想マシン・マネージャとは無関係に、前記ホスト・コンピューティング・システムのプロセッサと直接通信していることを検証する検証モジュールをさらに含む、請求項14に記載の装置。
- 前記仮想マシン・マネージャから、前記アクセスできないランタイム・メモリの少なくとも一部分にアクセスする要求を受取る要求受信モジュールと、
前記要求が1つ又は複数の所定の基準をみたすことを判断する判断モジュールと、
前記要求が前記1つ又は複数の所定の基準をみたすとの判断に応答して、前記仮想マシン・マネージャに対して、前記アクセスできないランタイム・メモリの少なくとも一部分へのアクセスを承諾するアクセス・モジュールと、
をさらに含む、請求項14に記載の装置。 - 前記仮想ゲストに対する前記ランタイム・メモリの割当てを、前記仮想マシン・マネージャが前記ランタイム・メモリの割当てにアクセスすることなく無効化するための所定のコマンドを呼び出す無効化コマンド・モジュールをさらに含み、前記ホスト・コンピューティング・システムは、前記無効化コマンド・モジュールが前記所定のコマンドを呼び出したことに応答して前記ランタイム・メモリの割当てを無効化する、
請求項17に記載の装置。 - ホスト・コンピューティング・システムの仮想動作プラットフォームを提供する仮想マシン・マネージャと、
プロセッサと、
前記プロセッサによる実行のためのモジュールを格納するメモリと、
を含むシステムであって、
前記メモリが、
前記ホスト・コンピューティング・システム上の仮想ゲストを初期化する初期化モジュールであって、前記ホスト・コンピューティング・システムは、前記仮想マシン・マネージャを含み、前記仮想マシン・マネージャは、前記仮想ゲストの動作を管理し、前記仮想ゲストは、前記仮想マシン・マネージャによって提供される前記仮想動作プラットフォーム内で実行される別個の動作環境を含む、初期化モジュールと、
前記仮想ゲストに対するランタイム・メモリの割当てを受取る受信モジュールであって、前記ランタイム・メモリの割当てが、前記ホスト・コンピューティング・システムのランタイム・メモリの一部分を含む、受信モジュールと、
前記仮想ゲストによって、前記ランタイム・メモリの割当ての少なくとも一部分を前記仮想マシン・マネージャによるアクセスができないように設定する保護モジュールと、
を含む、
システム。 - 前記仮想ゲストが応答しないことを検出する検出モジュールと、
前記検出モジュールが、前記仮想ゲストが応答しないことを検出したことに応答して、前記仮想ゲストに対する前記ランタイム・メモリの割当てを、前記仮想マシン・マネージャが前記ランタイム・メモリの割当てにアクセスすることなく、無効化するための所定のコマンドを呼び出す無効化コマンド・モジュールと、
をさらに含み、前記ホスト・コンピューティング・システムは、前記無効化モジュールが前記所定のコマンドを呼び出したことに応答して、前記ランタイム・メモリの割当てを無効化する、請求項19に記載のシステム。 - 1つ又は複数の仮想ゲスト識別子を、前記ランタイム・メモリの割当ての特定のランタイム・メモリ・ページに関連づける関連付けモジュールであって、少なくとも1つの前記仮想ゲスト識別子が前記仮想ゲストを識別する、関連付けモジュールと、
リクエスタからの前記特定のランタイム・メモリ・ページへのアクセス要求を、前記リクエスタが前記特定のランタイム・メモリ・ページに関する対応する仮想ゲスト識別子を有することに応答して承諾するアクセス要求モジュールと、
をさらに含む、請求項19に記載のシステム。 - 前記仮想マシン・マネージャから、前記仮想ゲストに対する前記ランタイム・メモリの割当てを無効化するための所定のコマンドに対する呼び出しを受取り、前記所定のコマンドに対する呼び出しを受け取ったことに応答して前記ランタイム・メモリの割当てを無効化する無効化モジュールをさらに含む、請求項19に記載のシステム。
- ホスト・コンピューティング・システム上の仮想ゲストを初期化することであって、前記ホスト・コンピューティング・システムは、仮想マシン・マネージャを含み、前記仮想マシン・マネージャは、前記仮想ゲストの動作を管理し、前記仮想ゲストは、前記仮想マシン・マネージャによって提供される仮想動作プラットフォーム内で実行される別個の動作環境を含む、初期化すること、
前記仮想ゲストに対するランタイム・メモリの割当てを受取ることであって、前記ランタイム・メモリの割当てが、前記ホスト・コンピューティング・システムのランタイム・メモリの一部分を含む、受け取ること、及び
前記仮想ゲストによって、前記ランタイム・メモリの割当ての少なくとも一部分を前記仮想マシン・マネージャによるアクセスができないように設定すること
を前記ホスト・コンピューティング・システムに実行させるためのコンピュータ可読プログラム・コードを含む、コンピュータ・プログラム。 - 前記仮想マシン・マネージャによるアクセスのための共有メモリ部分を確立することのためのコンピュータ可読プログラム・コードをさらに含み、前記共有メモリ部分は、前記仮想ゲストの前記ランタイム・メモリの割当ての一部分を含む、請求項23に記載のコンピュータ・プログラム。
- 仮想ゲスト・セキュリティ装置をホスト・コンピューティング・システム上に配備することを含む方法であって、前記仮想ゲスト・セキュリティ装置は、
ホスト・コンピューティング・システム上の仮想ゲストを初期化することであって、前記ホスト・コンピューティング・システムは、仮想マシン・マネージャを含み、前記仮想マシン・マネージャは、前記仮想ゲストの動作を管理し、前記仮想ゲストは、前記仮想マシン・マネージャによって提供される仮想動作プラットフォーム内で実行される別個の動作環境を含む、初期化すること、
前記仮想ゲストに対するランタイム・メモリの割当てを受取ることであって、前記ランタイム・メモリの割当てが、前記ホスト・コンピューティング・システムのランタイム・メモリの一部分を含む、受け取ること、及び
前記仮想ゲストによって、前記ランタイム・メモリの割当ての少なくとも一部分を前記仮想マシン・マネージャによるアクセスができないように設定すること
が可能である、方法。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/272,780 | 2011-10-13 | ||
US13/272,780 US8782351B2 (en) | 2011-10-13 | 2011-10-13 | Protecting memory of a virtual guest |
US13/482,782 | 2012-05-29 | ||
US13/482,782 US8788763B2 (en) | 2011-10-13 | 2012-05-29 | Protecting memory of a virtual guest |
PCT/JP2012/006528 WO2013054528A1 (en) | 2011-10-13 | 2012-10-11 | Protecting memory of a virtual guest |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014532201A true JP2014532201A (ja) | 2014-12-04 |
JP5736090B2 JP5736090B2 (ja) | 2015-06-17 |
Family
ID=48081595
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014517066A Active JP5736090B2 (ja) | 2011-10-13 | 2012-10-11 | 仮想ゲストのメモリ保護の方法、システムおよびコンピュータプログラム |
Country Status (6)
Country | Link |
---|---|
US (1) | US8788763B2 (ja) |
JP (1) | JP5736090B2 (ja) |
CN (1) | CN103858113B (ja) |
DE (1) | DE112012003988B4 (ja) |
GB (1) | GB2508553B (ja) |
WO (1) | WO2013054528A1 (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017042860A1 (ja) * | 2015-09-07 | 2017-03-16 | 三菱電機株式会社 | 実行制御装置及び実行制御方法及び実行制御プログラム |
CN107690628A (zh) * | 2015-06-16 | 2018-02-13 | Arm 有限公司 | 具有所有权表的数据处理装置和方法 |
CN107690621A (zh) * | 2015-06-16 | 2018-02-13 | Arm 有限公司 | 受保护的异常处置 |
KR20180017093A (ko) * | 2015-06-16 | 2018-02-20 | 에이알엠 리미티드 | 공유 페이지 |
US10936504B2 (en) | 2015-06-16 | 2021-03-02 | Arm Limited | Apparatus and method for address translation and control of whether an access request is rejected based on an ownership table indicating an owner process for a block of physical addresses |
JP7386882B2 (ja) | 2019-03-08 | 2023-11-27 | インターナショナル・ビジネス・マシーンズ・コーポレーション | セキュア仮想マシン環境におけるゲスト命令の透過的解釈 |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9304945B2 (en) * | 2013-01-24 | 2016-04-05 | Raytheon Company | Synchronizing parallel applications in an asymmetric multi-processing system |
US8793628B1 (en) * | 2013-03-11 | 2014-07-29 | Cadence Design Systems, Inc. | Method and apparatus of maintaining coherency in the memory subsystem of an electronic system modeled in dual abstractions |
US9563569B2 (en) | 2014-01-28 | 2017-02-07 | Red Hat Israel, Ltd. | Memory transformation in virtual machine live migration |
US9785378B2 (en) | 2014-01-28 | 2017-10-10 | Red Hat Israel, Ltd. | Tracking transformed memory pages in virtual machine chain migration |
US9792448B2 (en) | 2014-02-28 | 2017-10-17 | Advanced Micro Devices, Inc. | Cryptographic protection of information in a processing system |
CN103995732B (zh) * | 2014-05-26 | 2017-02-22 | 华为技术有限公司 | 一种虚拟可信平台模块功能实现方法和管理设备 |
GB2539436B (en) * | 2015-06-16 | 2019-02-06 | Advanced Risc Mach Ltd | Secure initialisation |
US20160371106A1 (en) * | 2015-06-18 | 2016-12-22 | Microsoft Technology Licensing, Llc | Virtual machine data protected from host |
KR102584506B1 (ko) * | 2015-06-24 | 2023-10-04 | 어드밴스드 마이크로 디바이시즈, 인코포레이티드 | 가상 기계들을 위한 상태 정보 보호 |
US10075296B2 (en) * | 2015-07-02 | 2018-09-11 | Intel Corporation | Loading and virtualizing cryptographic keys |
US10102151B2 (en) | 2015-11-06 | 2018-10-16 | International Business Machines Corporation | Protecting a memory from unauthorized access |
US9841987B2 (en) | 2015-12-17 | 2017-12-12 | International Business Machines Corporation | Transparent secure interception handling |
US10019279B2 (en) | 2015-12-17 | 2018-07-10 | International Business Machines Corporation | Transparent secure interception handling |
CN106997315B (zh) * | 2016-01-25 | 2021-01-26 | 阿里巴巴集团控股有限公司 | 一种用于虚拟机的内存转储的方法和装置 |
US10963280B2 (en) * | 2016-02-03 | 2021-03-30 | Advanced Micro Devices, Inc. | Hypervisor post-write notification of control and debug register updates |
CN107203411B (zh) * | 2017-04-18 | 2020-02-28 | 中国科学院计算技术研究所 | 一种基于远程ssd的虚拟机内存扩展方法及系统 |
CN109144403B (zh) * | 2017-06-19 | 2021-10-01 | 阿里巴巴集团控股有限公司 | 一种用于云盘模式切换的方法与设备 |
CN107392043A (zh) * | 2017-06-30 | 2017-11-24 | 天脉聚源(北京)传媒科技有限公司 | 一种保护系统中用户的私人对象的方法及装置 |
CN109815001A (zh) * | 2017-11-20 | 2019-05-28 | 阿里巴巴集团控股有限公司 | 应用处理方法、装置及托管系统 |
CN109739613B (zh) * | 2018-11-22 | 2021-08-13 | 海光信息技术股份有限公司 | 嵌套页表的维护方法、访问控制方法及相关装置 |
US11176054B2 (en) | 2019-03-08 | 2021-11-16 | International Business Machines Corporation | Host virtual address space for secure interface control storage |
US11182192B2 (en) | 2019-03-08 | 2021-11-23 | International Business Machines Corporation | Controlling access to secure storage of a virtual machine |
US11068310B2 (en) | 2019-03-08 | 2021-07-20 | International Business Machines Corporation | Secure storage query and donation |
US11455398B2 (en) | 2019-03-08 | 2022-09-27 | International Business Machines Corporation | Testing storage protection hardware in a secure virtual machine environment |
US11283800B2 (en) * | 2019-03-08 | 2022-03-22 | International Business Machines Corporation | Secure interface control secure storage hardware tagging |
CN112965789B (zh) * | 2021-03-25 | 2024-05-03 | 绿盟科技集团股份有限公司 | 一种虚拟机内存空间处理方法、装置、设备和介质 |
US11900142B2 (en) | 2021-06-16 | 2024-02-13 | Red Hat, Inc. | Improving memory access handling for nested virtual machines |
US20230044731A1 (en) * | 2021-08-05 | 2023-02-09 | International Business Machines Corporation | Attestation of a secure guest |
WO2023191195A1 (ko) * | 2022-03-31 | 2023-10-05 | 엘지전자 주식회사 | 신호 처리 장치, 및 이를 구비하는 차량용 디스플레이 장치 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005535005A (ja) * | 2002-03-29 | 2005-11-17 | インテル コーポレイション | 安全な環境を初期化する命令を実行するシステムおよび方法 |
JP2007510198A (ja) * | 2003-10-08 | 2007-04-19 | ユニシス コーポレーション | ホストシステムのパーティション内に実装されているハイパーバイザを使用したコンピュータシステムの準仮想化 |
JP2008250387A (ja) * | 2007-03-29 | 2008-10-16 | Toshiba Corp | 情報処理装置 |
WO2011040192A1 (ja) * | 2009-09-30 | 2011-04-07 | ブラザー工業株式会社 | 仮想マシン、仮想マシンのプログラム、アプリケーションサービス提供システム及びアプリケーションサービス提供方法 |
JP2011076505A (ja) * | 2009-09-30 | 2011-04-14 | Brother Industries Ltd | 情報処理システム及び情報処理方法 |
WO2011081535A1 (en) * | 2009-12-14 | 2011-07-07 | Business Intelligence Solutions Safe B.V. | An improved method and system for calculating breakpoints in a data visualization system |
US20110225459A1 (en) * | 2010-03-09 | 2011-09-15 | Microsoft Corporation | Generating a debuggable dump file for a virtual machine |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6496847B1 (en) * | 1998-05-15 | 2002-12-17 | Vmware, Inc. | System and method for virtualizing computer systems |
US7103529B2 (en) * | 2001-09-27 | 2006-09-05 | Intel Corporation | Method for providing system integrity and legacy environment emulation |
US7278030B1 (en) | 2003-03-03 | 2007-10-02 | Vmware, Inc. | Virtualization system for computers having multiple protection mechanisms |
US7975117B2 (en) | 2003-03-24 | 2011-07-05 | Microsoft Corporation | Enforcing isolation among plural operating systems |
US8079034B2 (en) * | 2003-09-15 | 2011-12-13 | Intel Corporation | Optimizing processor-managed resources based on the behavior of a virtual machine monitor |
US7424601B2 (en) | 2004-07-07 | 2008-09-09 | Yongyong Xu | Methods and systems for running multiple operating systems in a single mobile device |
US7281102B1 (en) | 2004-08-12 | 2007-10-09 | Vmware, Inc. | Restricting memory access to protect data when sharing a common address space |
US7886126B2 (en) | 2005-01-14 | 2011-02-08 | Intel Corporation | Extended paging tables to map guest physical memory addresses from virtual memory page tables to host physical memory addresses in a virtual machine system |
JP2007004661A (ja) | 2005-06-27 | 2007-01-11 | Hitachi Ltd | 仮想計算機の制御方法及びプログラム |
US7748037B2 (en) * | 2005-09-22 | 2010-06-29 | Intel Corporation | Validating a memory type modification attempt |
US20070067590A1 (en) * | 2005-09-22 | 2007-03-22 | Uday Savagaonkar | Providing protected access to critical memory regions |
US8380987B2 (en) * | 2007-01-25 | 2013-02-19 | Microsoft Corporation | Protection agents and privilege modes |
US8769207B2 (en) * | 2008-01-16 | 2014-07-01 | Via Technologies, Inc. | Caching method and apparatus for a vertex shader and geometry shader |
US8099541B2 (en) | 2008-01-22 | 2012-01-17 | Globalfoundries Inc. | Minivisor entry point in virtual machine monitor address space |
US8886838B2 (en) | 2008-02-29 | 2014-11-11 | Oracle America, Inc. | Method and system for transferring packets to a guest operating system |
CN101593258B (zh) * | 2008-05-28 | 2010-09-08 | 北京飞天诚信科技有限公司 | 一种在软件保护装置中实现.Net虚拟机的系统和方法 |
US8954897B2 (en) | 2008-08-28 | 2015-02-10 | Microsoft Corporation | Protecting a virtual guest machine from attacks by an infected host |
US9213566B2 (en) | 2008-11-26 | 2015-12-15 | Red Hat, Inc. | Implementing security in process-based virtualization |
US8799879B2 (en) | 2009-06-30 | 2014-08-05 | Oracle America, Inc. | Method and apparatus for protecting translated code in a virtual machine |
EP3002703B1 (en) | 2009-12-14 | 2017-08-30 | Citrix Systems Inc. | Methods and systems for communicating between trusted and non-trusted virtual machines |
-
2012
- 2012-05-29 US US13/482,782 patent/US8788763B2/en active Active
- 2012-10-11 WO PCT/JP2012/006528 patent/WO2013054528A1/en active Application Filing
- 2012-10-11 DE DE112012003988.2T patent/DE112012003988B4/de active Active
- 2012-10-11 CN CN201280049932.4A patent/CN103858113B/zh active Active
- 2012-10-11 JP JP2014517066A patent/JP5736090B2/ja active Active
- 2012-10-11 GB GB1404280.8A patent/GB2508553B/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005535005A (ja) * | 2002-03-29 | 2005-11-17 | インテル コーポレイション | 安全な環境を初期化する命令を実行するシステムおよび方法 |
JP2007510198A (ja) * | 2003-10-08 | 2007-04-19 | ユニシス コーポレーション | ホストシステムのパーティション内に実装されているハイパーバイザを使用したコンピュータシステムの準仮想化 |
JP2008250387A (ja) * | 2007-03-29 | 2008-10-16 | Toshiba Corp | 情報処理装置 |
WO2011040192A1 (ja) * | 2009-09-30 | 2011-04-07 | ブラザー工業株式会社 | 仮想マシン、仮想マシンのプログラム、アプリケーションサービス提供システム及びアプリケーションサービス提供方法 |
JP2011076505A (ja) * | 2009-09-30 | 2011-04-14 | Brother Industries Ltd | 情報処理システム及び情報処理方法 |
WO2011081535A1 (en) * | 2009-12-14 | 2011-07-07 | Business Intelligence Solutions Safe B.V. | An improved method and system for calculating breakpoints in a data visualization system |
US20110225459A1 (en) * | 2010-03-09 | 2011-09-15 | Microsoft Corporation | Generating a debuggable dump file for a virtual machine |
Non-Patent Citations (2)
Title |
---|
CSNG201100548006; 江川 友寿: '管理VMへのキーボード入力情報漏洩の防止' 情報処理学会研究報告 2011(平成23)年度(2) [CD-ROM] No.118, 20110815, 第1-8頁, 一般社団法人情報処理学会 * |
JPN6014040541; 江川 友寿: '管理VMへのキーボード入力情報漏洩の防止' 情報処理学会研究報告 2011(平成23)年度(2) [CD-ROM] No.118, 20110815, 第1-8頁, 一般社団法人情報処理学会 * |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10802729B2 (en) | 2015-06-16 | 2020-10-13 | Arm Limited | Apparatus and method for sharing pages including enforcing ownership rights independently of privilege level |
US10936504B2 (en) | 2015-06-16 | 2021-03-02 | Arm Limited | Apparatus and method for address translation and control of whether an access request is rejected based on an ownership table indicating an owner process for a block of physical addresses |
CN107690628A (zh) * | 2015-06-16 | 2018-02-13 | Arm 有限公司 | 具有所有权表的数据处理装置和方法 |
CN107690621A (zh) * | 2015-06-16 | 2018-02-13 | Arm 有限公司 | 受保护的异常处置 |
KR102517506B1 (ko) * | 2015-06-16 | 2023-04-04 | 에이알엠 리미티드 | 공유 페이지 |
CN107771323A (zh) * | 2015-06-16 | 2018-03-06 | Arm 有限公司 | 共享页 |
CN107771323B (zh) * | 2015-06-16 | 2022-07-22 | Arm 有限公司 | 共享页 |
JP2018523209A (ja) * | 2015-06-16 | 2018-08-16 | エイアールエム リミテッド | 所有権テーブルを用いたデータ処理装置及び方法 |
KR20180017093A (ko) * | 2015-06-16 | 2018-02-20 | 에이알엠 리미티드 | 공유 페이지 |
US10838877B2 (en) | 2015-06-16 | 2020-11-17 | Arm Limited | Protected exception handling |
JP2018523211A (ja) * | 2015-06-16 | 2018-08-16 | エイアールエム リミテッド | 保護された例外処理 |
CN107690628B (zh) * | 2015-06-16 | 2022-01-18 | Arm 有限公司 | 具有所有权表的数据处理装置和方法 |
US11314658B2 (en) | 2015-06-16 | 2022-04-26 | Arm Limited | Apparatus and method including an ownership table for indicating owner processes for blocks of physical addresses of a memory |
JPWO2017042860A1 (ja) * | 2015-09-07 | 2017-09-07 | 三菱電機株式会社 | 実行制御装置及び実行制御方法及び実行制御プログラム |
WO2017042860A1 (ja) * | 2015-09-07 | 2017-03-16 | 三菱電機株式会社 | 実行制御装置及び実行制御方法及び実行制御プログラム |
JP7386882B2 (ja) | 2019-03-08 | 2023-11-27 | インターナショナル・ビジネス・マシーンズ・コーポレーション | セキュア仮想マシン環境におけるゲスト命令の透過的解釈 |
Also Published As
Publication number | Publication date |
---|---|
DE112012003988T5 (de) | 2014-06-18 |
US8788763B2 (en) | 2014-07-22 |
GB2508553A (en) | 2014-06-04 |
CN103858113A (zh) | 2014-06-11 |
WO2013054528A1 (en) | 2013-04-18 |
DE112012003988B4 (de) | 2021-09-02 |
JP5736090B2 (ja) | 2015-06-17 |
GB201404280D0 (en) | 2014-04-23 |
US20130097392A1 (en) | 2013-04-18 |
CN103858113B (zh) | 2016-02-24 |
GB2508553B (en) | 2014-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5736090B2 (ja) | 仮想ゲストのメモリ保護の方法、システムおよびコンピュータプログラム | |
US8782351B2 (en) | Protecting memory of a virtual guest | |
US10831886B2 (en) | Virtual machine manager facilitated selective code integrity enforcement | |
Jang et al. | Heterogeneous isolated execution for commodity gpus | |
CN109783188B (zh) | 用于安全公共云的密码存储器所有权表 | |
US7836299B2 (en) | Virtualization of software configuration registers of the TPM cryptographic processor | |
US8220029B2 (en) | Method and system for enforcing trusted computing policies in a hypervisor security module architecture | |
Li et al. | A trusted virtual machine in an untrusted management environment | |
US10685119B2 (en) | Trusted malware scanning | |
US20180046479A1 (en) | On-demand disposable virtual work system | |
Li et al. | Secure virtual machine execution under an untrusted management OS | |
Peinado et al. | NGSCB: A trusted open system | |
US9424430B2 (en) | Method and system for defending security application in a user's computer | |
US8213618B2 (en) | Protecting content on client platforms | |
US8464252B2 (en) | Per process virtual machines | |
US7693838B2 (en) | Method and apparatus for securely accessing data | |
EP2973171B1 (en) | Context based switching to a secure operating system environment | |
Litty et al. | Manitou: a layer-below approach to fighting malware | |
Vasudevan et al. | Lockdown: Towards a safe and practical architecture for security applications on commodity platforms | |
Rocha et al. | Defense-in-depth against malicious insiders in the cloud | |
US20180341529A1 (en) | Hypervisor-based secure container | |
Sani et al. | The case for I/O-device-as-a-service | |
Zhang | Detection and mitigation of security threats in cloud computing | |
US20230401081A1 (en) | Software isolation of virtual machine resources | |
Gutstein | Towards Efficient and Effective IOMMU-based Protection from DMA Attacks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20140916 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140924 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20141120 Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20141120 |
|
RD12 | Notification of acceptance of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7432 Effective date: 20141120 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20141120 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150225 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150226 Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20150226 |
|
TRDD | Decision of grant or rejection written | ||
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20150325 |
|
RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20150325 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20150325 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150417 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5736090 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |