Virtual Machine Function Page Table Trampoline Security

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current virtual machine systems lack secure mechanisms to transition between different access privilege views, which can lead to unauthorized execution of instructions and potential security breaches.

Innovation Solution

The method involves configuring a virtual machine function page table with trampoline pages that store instructions to change access privileges, ensuring secure transitions between primary, trampoline, and protected views, thereby restricting access to sensitive operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If virtual machine systems allow flexible access to different pages, then operational versatility is improved, but security is worsened due to unauthorized execution risks

Engineering Contradiction:
Improveaccess flexibilityVSAvoidsecurity
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent segments the virtual machine memory space into distinct page types (trampoline pages, protected pages, regular pages) with different access privilege requirements. Each page type has specific access controls that restrict or allow certain operations, enabling flexible access where needed while maintaining security boundaries. The page table is divided into multiple sections that can be independently configured with different privilege levels.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different access privilege rules are applied to different regions of the virtual machine memory space. Trampoline pages have specific access rules allowing certain privileged operations, protected pages have restricted access rules for sensitive data, and regular pages have standard access rules. This localized application of quality control allows the system to be versatile where needed while maintaining security where required.

Inventive Principle:
Principle #3Local quality

2Reliability

If virtual machine systems implement strict access controls, then security is improved, but operational complexity is worsened

Engineering Contradiction:
ImprovesecurityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements a universal page table structure that handles multiple access control scenarios through a single unified mechanism. The same page table infrastructure manages access to trampoline pages, protected pages, and regular pages, as well as handling privilege transitions and memory mapping. This multi-functional approach reduces the need for separate complex control mechanisms for each security requirement.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent introduces trampoline pages as intermediary structures that facilitate secure privilege transitions. These trampoline pages act as mediators between different privilege levels, providing a controlled transition path that simplifies the access control mechanism. Instead of directly managing complex privilege transitions, the system uses these intermediary pages to handle the transition securely and systematically.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If virtual machine systems use multiple page types with different access privileges, then security is improved, but execution speed is worsened due to additional page table lookups

Engineering Contradiction:
ImprovesecurityVSAvoidexecution speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The patent pre-configures the page table with clearly defined sections for different page types (trampoline, protected, regular) during virtual machine initialization. Access privilege rules are established in advance for each page type, so that during execution, the system can quickly determine the appropriate access rules without complex real-time analysis. The page table structure itself is prepared beforehand to facilitate fast lookups.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses distinct page table entry types or markers (analogous to color coding) to identify different page types. Each page type has unique identifiers in the page table that allow the system to quickly recognize and apply the appropriate access rules. This classification system enables rapid determination of access privileges without extensive processing, as the page type is immediately identifiable through its marker.

Inventive Principle:
Principle #32Color changes

Data Source

PatentUS9921979B2Position dependent code in virtual machine functions
Publication Date: 2018.03.20 RED HAT ISRAEL
  • US9921979B2 patent drawing
  • US9921979B2 patent drawing
  • US9921979B2 patent drawing

AI summary

Methods, systems, and computer program products for executing a protected function are provided. A computer-implemented method may include storing a first virtual machine function instruction as the last instruction on the first trampoline page that is executable to configure access privileges according to a trampoline view, storing a page table setup instruction on the second trampoline page, and storing a second virtual machine function instruction as a last instruction on the second trampoline page that is executable to configure access privileges according to a protected view.