Privileged Domain Security Layer for Virtualization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current virtualization technologies, such as hypervisors like Xen and HyperV, fail to provide adequate protection for privileged domains, making them vulnerable to security threats like unauthorized binary and kernel module execution, and hypercall attacks, which can compromise the security of all guest OS instances.

Innovation Solution

A security layer is inserted in the Domain 0 kernel to intercept and authorize kernel modules and binaries, compute checksums for verification, and randomize hypercalls to ensure only authorized elements can execute, thereby preventing unauthorized access and attacks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If virtualization technologies are used to run multiple operating systems on a host computer, then system resource utilization and productivity are improved, but security vulnerabilities increase due to inadequate protection of privileged domains

Engineering Contradiction:
Improvesystem resource utilizationVSAvoidsecurity of privileged domains
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent segments the virtualization system into distinct security zones by implementing a security layer within the privileged domain kernel that separates authorized from unauthorized operations. This segmentation allows the system to maintain high productivity through virtualization while protecting security-critical areas through isolated verification mechanisms.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary security layer in the privileged domain kernel that acts as a mediator between virtual machine operations and the underlying hypervisor. This intermediary intercepts and verifies hypercalls, binaries, and kernel modules, allowing productive virtualization operations to proceed while blocking security threats before they reach critical system components.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If security checks are implemented in the privileged domain to prevent unauthorized execution, then security is improved, but system performance and operation speed deteriorate due to additional verification overhead

Engineering Contradiction:
Improvesecurity against unauthorized executionVSAvoidsystem operation speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The patent implements preliminary action by pre-computing and storing checksums of authorized binaries and kernel modules in the security layer before execution occurs. When these elements are loaded, the system performs rapid checksum comparison against stored values, enabling security verification to proceed in constant time rather than requiring full analysis during execution.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent changes the verification parameter from complex runtime analysis to simple checksum comparison. By transforming the security check into a parameter-based verification (comparing computed checksums against stored reference values), the system achieves high-speed security verification that minimizes impact on overall system operation speed.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If checksum verification is performed for every binary and kernel module, then authorization accuracy is improved, but processing time and computational overhead increase

Engineering Contradiction:
Improveauthorization verification accuracyVSAvoidverification processing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent applies preliminary action by pre-computing checksums for all authorized binaries and kernel modules during system initialization or secure boot processes. These reference checksums are stored in protected memory within the security layer, enabling rapid verification through simple comparison rather than repeated computation during operation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses copying by creating and storing reference copies of authorized binary checksums in the security layer's memory. Instead of re-verification, the system copies the verification task into a simple lookup operation comparing runtime checksums against stored reference copies, dramatically reducing processing time while maintaining verification accuracy.

Inventive Principle:
Principle #26Copying

4Reliability

If the privileged domain is protected as a special entity with security layer insertion, then security against hypercall attacks is improved, but device complexity increases due to additional security mechanisms

Engineering Contradiction:
Improveprotection against hypercall attacksVSAvoidsecurity layer structure
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements universality by designing the security layer to perform multiple security functions within a single integrated structure. The same security layer mechanisms verify hypercalls, validate binaries, check kernel modules, and enforce authorization policies uniformly across all privileged domain operations, reducing overall system complexity compared to separate security mechanisms for each function.

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

Solution Approach 2:

The security layer implements self-service by autonomously verifying the integrity and authorization of all code execution requests without requiring external security management. The security layer independently computes checksums, compares them against stored references, and enforces authorization decisions, eliminating the need for complex external security management infrastructure.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS8381284B2System and method for enforcing security policies in a virtual environment
Publication Date: 2013.02.19 MCAFEE LLC
  • US8381284B2 patent drawing
  • US8381284B2 patent drawing
  • US8381284B2 patent drawing

AI summary

A method in one example implementation includes intercepting a request associated with an execution of an object (e.g., a kernel module or a binary) in a computer configured to operate in a virtual machine environment. The request is associated with a privileged domain of the computer that operates logically below one or more operating systems. The method also includes verifying an authorization of the object by computing a checksum for the object and comparing the checksum to a plurality of stored checksums in a memory element. The execution of the object is denied if it is not authorized. In other embodiments, the method can include evaluating a plurality of entries within the memory element of the computer, wherein the entries include authorized binaries and kernel modules. In other embodiments, the method can include intercepting an attempt from a remote computer to execute code from a previously authorized binary.