Virtual Guest Memory Protection via Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Virtual guests in cloud computing environments are vulnerable to compromised hosts, as they must trust the cloud provider to secure their data, limiting their ability to run in public clouds due to potential access by the host.
Innovation Solution
A method and apparatus that allow a virtual guest to set a portion of its run-time memory as inaccessible by the virtual machine manager, enabling secure operation by communicating directly with the processor to manage access permissions, thereby protecting sensitive data from unauthorized access.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If virtual guests trust the host/virtual machine manager to manage their memory, then ease of operation is improved, but security deteriorates because the host could potentially access virtual guest confidential data
Solution Approach 1:
The patent divides memory into different types: shared memory (accessible to both virtual guest and host) and private memory (accessible only to the virtual guest). This segmentation allows the system to maintain ease of operation for memory management while ensuring data security for confidential information by restricting host access to private memory regions.
Solution Approach 2:
Different portions of memory are assigned different access qualities: shared memory regions have access permissions allowing both virtual guest and host access, while private memory regions have restricted access permissions allowing only virtual guest access. This local differentiation resolves the contradiction by providing appropriate access levels to different memory areas.
2Adaptability or versatility
If virtual guests run in public cloud environments, then adaptability is improved, but security deteriorates because the cloud provider could potentially access virtual guest data
Solution Approach 1:
The patent segments memory into shared and private regions, enabling virtual guests to run in public cloud environments while maintaining data privacy. Private memory ensures that even though the cloud provider manages the host, they cannot access confidential data stored in private memory regions.
Solution Approach 2:
The virtual machine manager acts as an intermediary that manages memory allocation and access permissions between the virtual guest and the host. It enables virtual guests to access shared memory for communication and resource sharing while protecting private memory from unauthorized access, thus maintaining data privacy in public cloud environments.
3Device complexity
If the virtual machine manager manages all run-time memory, then device complexity is reduced, but security worsens because the host could access virtual guest memory
Solution Approach 1:
The patent segments memory management into two parts: the virtual machine manager handles shared memory allocation and access control, while private memory is managed independently with restricted access. This segmentation reduces the security burden on the virtual machine manager while maintaining overall system simplicity.
Solution Approach 2:
The virtual guest has direct control over private memory regions, managing its own access permissions without requiring host intervention. This self-service approach reduces the security liability of the virtual machine manager while maintaining manageable system complexity through clear division of responsibilities.
Data Source
AI summary
An apparatus and system for protecting memory of a virtual guest includes initializing a virtual guest on a host computing system. The host computing system includes a virtual machine manager that manages operation of the virtual guest. The virtual guest includes a distinct operating environment executing in a virtual operation platform provided by the virtual machine manager. The method includes receiving an allocation of run-time memory for the virtual guest, the allocation of run-time memory comprising a portion of run-time memory of the host computing system. The method includes setting, by the virtual guest, at least a portion of the allocation of run-time memory to be inaccessible by the virtual machine manager.


