Virtual Secure Mode Memory Access Control
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Computing devices are increasingly vulnerable to malicious programs that can steal information, disable systems, or use them for attacks, and existing protection methods are inadequate in preventing such threats.
Innovation Solution
Implementing a virtual secure mode with multiple virtual trust levels in a virtual machine, where each trust level has distinct memory access protections, allowing only one trust level to be active at a time, and enabling programs to switch between these levels to enhance security.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional protection methods are used, then device complexity remains low, but security against malicious programs is insufficient
Solution Approach 1:
The system segments memory access rights by dividing them into multiple virtual trust levels (VTLs), where each level has distinct access permissions. This segmentation allows the system to control which programs can access which memory regions, providing granular security without requiring complete system redesign. The VSM module acts as an intermediary that enforces these segmented access rules.
Solution Approach 2:
The Virtual Secure Mode (VSM) module serves as an intermediary between programs and memory, intercepting and controlling all memory access requests. Rather than allowing direct access, the VSM module validates each request against the configured trust levels and access rights, providing a security layer that doesn't require modifying the underlying hardware or operating system structure.
2Reliability
If memory access protections are implemented for each trust level, then security is enhanced, but processing overhead increases
Solution Approach 1:
The system performs preliminary configuration of memory access rights during system initialization or when security policies are established. The VSM module pre-configures access control lists and trust level mappings before runtime, so that during execution, access decisions can be made by simple table lookups rather than complex evaluations, minimizing processing overhead during critical operations.
Solution Approach 2:
The system changes the parameter of memory access control from a binary allowed/disallowed model to a multi-level trust model with configurable rights. By parameterizing access control around virtual trust levels and associated rights, the system can efficiently manage security policies through structured data representations that enable fast comparison and decision-making during runtime.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A virtual machine manager (e.g., hypervisor) implements a virtual secure mode that makes multiple different virtual trust levels available to virtual processors of a virtual machine. Different memory access protections (such as the ability to read, write, and/or execute memory) can be associated with different portions of memory (e.g., memory pages) for each virtual trust level. The virtual trust levels are organized as a hierarchy with a higher level virtual trust level being more privileged than a lower virtual trust level, and programs running in the higher virtual trust level being able to change memory access protections of a lower virtual trust level. The number of virtual trust levels can vary, and can vary for different virtual machines as well as for different virtual processors in the same virtual machine.