Virtual Machine Function Page Table Trampoline Security
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
2Reliability
If virtual machine systems implement strict access controls, then security is improved, but operational complexity is worsened
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.
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.
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
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.
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.
Data Source
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.


