Trusted Domain Memory Mapping with Secure Extended Page Tables
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing virtual machine (VM) implementations lack effective solutions to protect the memory and runtime processor state from page remapping attacks, which can compromise the confidentiality and integrity of VMs, and conventional systems do not adequately isolate customer workloads from cloud service provider software, increasing the Trusted Computing Base (TCB) and compromising security.
Innovation Solution
The introduction of Trust Domain Extensions (TDX) with a Secure Extended Page Table (SEPT) managed by a Trust Domain Resource Manager (TDRM) and processor instructions to ensure secure memory access, encrypting memory using Multi-key Total Memory Encryption (MK-TME), and employing a Memory Ownership Table (MOT) to isolate TDs from the TCB, allowing secure operation of TD workloads.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If conventional extended page tables (EPT) are used for memory management, then memory allocation flexibility is improved, but security against page remapping attacks deteriorates
Solution Approach 1:
The patent divides the memory management system into two separate components: a conventional EPT for flexible memory allocation and a new Secure Extended Page Table (SEPT) for security. The SEPT is a distinct structure that parallels the EPT but provides protected page table walk capabilities, preventing malicious remapping attacks while preserving the flexibility of the original EPT system.
Solution Approach 2:
The patent introduces a trusted domain resource manager as an intermediary between the untrusted VMM and the SEPT structure. This resource manager controls access to the SEPT and enforces security policies, acting as a mediator that allows flexible memory management through the EPT while preventing security violations through the protected SEPT path.
2Ease of operation
If the VMM is given full control over memory management, then ease of operation is improved, but the Trusted Computing Base size increases compromising security
Solution Approach 1:
The patent extracts the security-critical page table walk functionality from the untrusted VMM and places it in a protected SEPT structure that the VMM cannot access or modify. The VMM retains control over memory allocation through the EPT, but the actual translation and security verification are performed through the separate SEPT path, removing security responsibilities from the VMM's trusted base.
Solution Approach 2:
The SEPT structure is designed to be self-protecting through hardware-enforced controls that prevent the VMM from modifying or attacking the page table walk process. The system uses automated security checks and protected access paths that do not require the VMM to be trusted, allowing the VMM to operate with full memory control while the hardware automatically enforces security boundaries.
3Reliability
If memory is encrypted using MK-TME, then confidentiality is improved, but processing overhead increases
Solution Approach 1:
The patent implements memory encryption keys and SEPT structures during the initial memory allocation and setup phase, before any confidential data is stored or processed. This preliminary configuration ensures that encryption is already in place when data is written to memory, avoiding the need for real-time key management or re-encryption operations that would increase processing overhead during normal operation.
Data Source
AI summary
Methods and apparatus to set guest physical address mapping attributes for a trusted domain. In one embodiment, the method includes executing a first one or more of instructions to establish a trusted domain and executing a second one or more of the instructions to add a first memory page to the trusted domain, where the first memory page is private to the trusted domain and a first set of page attributes is set for the first memory page based on the second one or more of the instructions, where the first set of page attributes indicates how the first memory page is mapped in a secure extended page table. The method further includes storing the first set of page attributes for the first memory page in the secure extended page table at a storage location responsive to executing the second one or more of the instructions.


