Virtual Machine Identity Provisioning via Kernel Driver

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Hypervisor technology in virtualized environments is vulnerable to malware and rootkits that can intercept operating system operations, making it difficult to detect and secure virtual machine identity information, which is crucial for secure communications in cloud computing.

Innovation Solution

A system that securely provisions virtual machine identity information by using a key blob paired with a kernel driver to read and register secret identity information within the kernel, employing public key cryptography and a hardware-assisted chain of trust, ensuring secure initialization and access control, and protecting memory pages with a memory management unit.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If hypervisor technology is used to virtualize computing resources, then resource utilization and flexibility are improved, but security vulnerabilities increase due to malware and rootkits that can intercept operating system operations

Engineering Contradiction:
Improvevirtualization capabilityVSAvoidmalware interception
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

The patent introduces a secure boot process and cryptographic verification mechanisms as intermediaries between the hypervisor and the virtual machine operating system. This mediator layer verifies the integrity of the OS kernel through digital signatures and measured boot processes, preventing malware from intercepting operations without detection. The intermediary ensures that only authenticated, unmodified system components can execute, thereby maintaining virtualization benefits while blocking malicious interception.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If malware installs itself as a hypervisor below the operating system, then detection difficulty increases, but system control capability improves

Engineering Contradiction:
Improvesystem controlVSAvoidmalware detection
Core Design Contradiction:
Ease of operationVSDifficulty of detecting and measuring

Solution Approach 1:

The patent implements preliminary verification actions during the boot process, where cryptographic signatures and integrity measurements are checked before the operating system gains full control. By performing these verification actions beforehand, the system establishes a trusted state that prevents undetected malware installation. The measured boot process captures the system state early, making any subsequent malicious modifications detectable through integrity verification.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If identity information is stored in virtual machine configurations, then secure communication capability is improved, but security risks increase due to potential exposure and unauthorized access

Engineering Contradiction:
Improvesecure communicationVSAvoidunauthorized access
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The patent extracts sensitive identity information and cryptographic credentials from the virtual machine configuration files and stores them in secure, isolated memory regions protected by hardware-based security modules. This extraction removes the security risk associated with storing sensitive data in accessible configuration files, while maintaining the ability to use this information for secure communications. The credentials are loaded only when needed and kept in protected memory, preventing unauthorized access while preserving communication security.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS10192047B2Provisioning of identity information
Publication Date: 2019.01.29 CISCO TECHNOLOGY INC
  • US10192047B2 patent drawing
  • US10192047B2 patent drawing
  • US10192047B2 patent drawing

AI summary

In one embodiment, a file comprising a disk image and a key blob is prepared. The file is attached to a virtual machine configuration. A virtual machine based on the virtual machine configuration is launched. A kernel is paired to the key blob by a kernel driver paired to the key blob reading secret comprising identity information into the kernel of the virtual machine. The identity information is registered with a kernel service. The attached file is ejected from the virtual machine configuration. The identity information is accessed by an application running on the virtual machine, wherein the identity information is used by the application when the kernel service requires identity information. Related hardware and systems are also described.