Safe VM Entropy Sources Through Encrypted Guest Memory
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Virtual machines (VMs) face security vulnerabilities due to unauthorized access to guest memory, particularly when using dedicated entropy sources that can deceive VMs with predictable data, compromising sensitive information.
Innovation Solution
A processing device encrypts and decrypts data using the VM's encryption key to ensure randomness, writing to encrypted guest memory pages and scrambling data to prevent unauthorized access, even when multiple requests are made.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If a hypervisor provides access to guest memory of VMs, then communication between virtual devices and VMs is facilitated, but security vulnerabilities arise allowing unauthorized access to sensitive information
Solution Approach 1:
The patent segments guest memory into encrypted pages and unencrypted pages, allowing different access controls and security levels for different portions of memory, thereby enabling communication while protecting sensitive information
Solution Approach 2:
The patent introduces an entropy source as an intermediary component that provides random data to VMs through controlled access, acting as a mediator between the hypervisor and VM memory systems to enable secure communication
2Reliability
If dedicated entropy sources provide random data to VMs, then cryptographic security is enhanced, but the entropy sources can deceive VMs with predictable data compromising security
Solution Approach 1:
The patent performs preliminary encryption of entropy data before writing it to encrypted guest memory pages, ensuring that the data maintains its randomness properties while being securely stored and transmitted to the VM
Solution Approach 2:
The patent implements validation mechanisms that provide feedback to verify the randomness of entropy data, ensuring that the entropy source is not providing predictable data and maintaining cryptographic security
3Reliability
If SEV encrypts guest memory pages, then VM isolation and confidentiality are improved, but data access and processing become more complex
Solution Approach 1:
The patent extracts the encryption/decryption operations from the general memory access path and handles them specifically for entropy data, reducing the complexity impact on general data access while maintaining security for sensitive operations
Data Source
AI summary
Systems and methods for ensuring that data received from a virtual device is random are provided. A processing device may be used to generate, by a virtual device executing on a hypervisor, data intended for a virtual machine (VM) having a guest memory that includes one or more encrypted pages and one or more unencrypted pages. Data written to an encrypted page of the guest memory by the VM is encrypted using an encryption key assigned to the VM and information read from the encrypted page by the VM is decrypted using the encryption key. The hypervisor may write the data to the encrypted page, wherein the data is not encrypted by the encryption key assigned to the VM because it is written by the hypervisor. The VM reads the data from the encrypted page as randomized data because it cannot be properly decrypted by the encryption key.


