Trusted Domain Memory Protection via Secure Extended Page Tables

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current virtual machine (VM) implementations lack effective security measures to prevent page remapping attacks from malicious or exploited Virtual Machine Monitors (VMMs) on the private memory address space of Trusted Domains (TDs), compromising the integrity and confidentiality of TDs.

Innovation Solution

The introduction of Trusted Domain Extensions (TDX) with Secure Extended Page Tables (SEPT) managed by a Trusted Domain Resource Manager (TDRM) using special instructions, and memory encryption via Multi-key Total Memory Encryption (MK-TME) engines to ensure cryptographic isolation and integrity of TDs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If VMM manages memory allocation and mapping for TDs, then resource utilization and management efficiency are improved, but security against page remapping attacks deteriorates

Engineering Contradiction:
Improvememory management efficiencyVSAvoidsecurity against page remapping attacks
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent introduces SEPT as an intermediary layer between VMM and TD memory. SEPT acts as a mediator that allows VMM to manage memory allocation while preventing malicious page remapping attacks on TD private memory, thus resolving the contradiction between management efficiency and security

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the page table structure into multiple components: traditional page tables for general memory management and SEPT for secure TD memory protection. This segmentation allows different security policies to apply to different memory regions, enabling efficient VMM management while protecting TD memory

Inventive Principle:
Principle #1Segmentation

2Reliability

If memory is encrypted with TD-specific keys, then confidentiality and integrity of TDs are improved, but access control complexity and device complexity increase

Engineering Contradiction:
Improveconfidentiality and integrity of TDsVSAvoidaccess control mechanism complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements self-service mechanisms where the processor automatically handles encryption/decryption operations and access control checks for encrypted TD memory. The MK-TME engine and SEPT work autonomously to protect memory without requiring complex software-based access control, thus achieving high security with manageable complexity

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent replaces software-based access control mechanisms with hardware-based encryption and protection mechanisms. By using MK-TME for memory encryption and processor-enforced access controls, the system achieves stronger security with more efficient hardware-level operations rather than complex software management

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS20240061697A1Providing trusted devices fine grained access into private memory of trusted execution environment
Publication Date: 2024.02.22 INTEL CORP
  • US20240061697A1 patent drawing
  • US20240061697A1 patent drawing
  • US20240061697A1 patent drawing

AI summary

An apparatus comprises a hardware processor to create an input/output control data structure (IOCS) for a trusted execution environment (TEE), allocate an input/output (I/O) address range comprising a host physical address (HPA) and a plurality of input/output (IO) pages to the input/output control structure, create an entry in the input/output control structure (IOCS) for a set of input/output (IO) pages and a device identifier for a remote device, set a pending bit to a first value which indicates that the remote device is authorized to access the input/output (I/O) address range, and grant the remote device access to the set of input/output pages in the input/output control structure upon verification of an input/output (IO) address range for the remote device.