Hypervisor Process Isolation via API Subset Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current security measures for computer systems are inadequate in preventing unauthorized access through malicious code execution, as traditional methods are time-consuming and impractical for consumer applications, and existing solutions are easily bypassed by hackers.

Innovation Solution

Implementing a system with a hypervisor that isolates processes within virtual machines, exposing a subset of the API to allow authorized operations while hiding restricted ones, and using copy-on-write memory and read-only views of the operating system kernel to prevent malicious code execution.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional security mechanisms (hands-on code examination) are used to ensure code is trusted, then security reliability is improved, but implementation complexity and time consumption increase significantly

Engineering Contradiction:
Improvesecurity reliabilityVSAvoidimplementation complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system segments the execution environment by creating virtual machine instances for each process. The hypervisor divides the API into subsets, exposing only authorized operations to each virtual machine while hiding restricted operations. This segmentation isolates processes and prevents malicious code from accessing unauthorized resources without requiring manual code examination.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The hypervisor acts as an intermediary between processes and the operating system kernel. It mediates all API calls by processes, filtering and controlling which operations can be performed. The hypervisor exposes a subset of the API to virtual machines, blocking restricted operations such as memory allocation, dynamic code loading, and process modification, thereby providing security without requiring direct code inspection.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If strict security requirements are imposed on operating systems to prevent unauthorized memory access and code execution, then security reliability is improved, but compatibility with existing applications deteriorates

Engineering Contradiction:
Improvesecurity reliabilityVSAvoidapplication compatibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

Instead of requiring applications to adhere to security requirements, the system inverts the approach by having the hypervisor enforce security requirements on behalf of applications. The hypervisor blocks restricted operations at the virtual machine level, allowing legacy applications to run without modification while still preventing malicious code execution. This inversion maintains application compatibility while achieving security goals.

Inventive Principle:
Principle #13The other way round (Inversion)

Solution Approach 2:

The system creates virtual machine instances that copy the necessary operating system kernel functionality to provide authorized operations to processes. Each virtual machine receives a copy of the API subset it needs, allowing applications to execute with their original code unchanged while the hypervisor controls access to sensitive operations through the copied interface.

Inventive Principle:
Principle #26Copying

3Reliability

If existing applications are modified to self-certify security requirements, then security reliability is improved, but ease of operation deteriorates

Engineering Contradiction:
Improvesecurity reliabilityVSAvoidease of operation
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The system enables processes to self-service by executing within their own isolated virtual machine instances. Each process runs with its own set of authorized API operations exposed by the hypervisor, allowing it to perform its intended function without requiring modification or external certification. The hypervisor automatically enforces security boundaries, making the system easy to operate while maintaining security.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS8464252B2Per process virtual machines
Publication Date: 2013.06.11 RED HAT INC
  • US8464252B2 patent drawing
  • US8464252B2 patent drawing
  • US8464252B2 patent drawing

AI summary

A system and method for isolating processes executing within a computing device. A process is loaded into a virtual machine operating under the control of a hypervisor communicatively interfaced with an operating system kernel. A subset of an application programming interface (API) is exposed to the virtual machine enabling the process to interface with the operating system kernel via the subset of the API. The process is then executed in the virtual machine.