VM Page Mapping Security via Cryptographic Token Validation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In virtual machine (VM) environments, there is a need to ensure secure memory page mapping while supporting legacy software that may modify page tables, to prevent security attacks such as remapping attacks that compromise software at any privilege level by altering code or data page selections.

Innovation Solution

A system that includes a processor executing a virtual machine monitor (VMM) to manage VM guests and a page walk processor that inserts cryptographic tokens in physical pages to authorize mappings, using cryptographic keys to validate these tokens before performing memory page mappings from guest linear addresses to guest physical addresses, thereby preventing unauthorized access and attacks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If cryptographic validation is implemented for page mappings, then security against remapping attacks is improved, but device complexity increases due to token insertion and validation mechanisms

Engineering Contradiction:
ImprovesecurityVSAvoiddevice complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The VMM inserts cryptographic tokens into physical pages during page allocation or before mapping, performing the security preparation in advance. This preliminary action ensures that when page mappings occur, the cryptographic validation is already in place, preventing remapping attacks without requiring complex real-time validation logic during every mapping operation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Cryptographic tokens act as intermediaries between the VMM and the page walk processor. These tokens contain embedded cryptographic credentials that mediate the trust relationship, allowing the page walk processor to validate mappings independently without requiring constant VMM intervention, thus reducing the complexity of the overall validation mechanism.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If token validation is performed for each mapping operation, then security is improved, but processing time increases

Engineering Contradiction:
ImprovesecurityVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The cryptographic validation logic is extracted from the main page mapping path and implemented as a separate, optimized validation routine in the page walk processor. This extraction allows the validation to be performed efficiently in hardware or dedicated logic, minimizing the time penalty compared to general-purpose software validation.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The VMM maintains copies of cryptographic keys and token validation state in accessible memory locations that the page walk processor can quickly reference. By pre-positioning these validation resources, the system avoids time-consuming key retrieval and validation setup during each mapping operation.

Inventive Principle:
Principle #26Copying

3Reliability

If cryptographic keys are secured for VMM and page walk processor access, then security is improved, but ease of operation decreases due to key management requirements

Engineering Contradiction:
ImprovesecurityVSAvoidease of operation
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The VMM and page walk processor share a common cryptographic key management mechanism, where the VMM distributes necessary key materials to the page walk processor through secure channels. This merging of key management responsibilities reduces the operational burden compared to completely separate key management systems while maintaining security boundaries.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The page walk processor is designed to autonomously validate cryptographic tokens using keys it receives from the VMM, without requiring manual key management or frequent VMM intervention. This self-service capability simplifies operations by making the security mechanism automatic and hands-off after initial setup.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10152612B2Cryptographic operations for secure page mapping in a virtual machine environment
Publication Date: 2018.12.11 INTEL CORP
  • US10152612B2 patent drawing
  • US10152612B2 patent drawing
  • US10152612B2 patent drawing

AI summary

Generally, this disclosure provides systems, devices, methods and computer readable media for secure memory page mapping in a virtual machine (VM) environment. The system may include a processor configured to execute a virtual machine monitor (VMM). The VMM may be configured to maintain a table of cryptographic keys and associate a token with one of the memory pages to be mapped from a guest linear address (GLA) to a guest physical address (GPA). The token may include a key identifier (key ID) associated with one of the cryptographic keys, and an authentication code based on the GLA, the GPA, and one of the cryptographic keys. The system may also include a page walk processor configured to validate the token to indicate that the memory page associated with the token is authorized to be mapped from the GLA to the GPA.