Secure USB Input in Virtualized Systems via Service Guest Isolation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current computer systems lack secure input architectures, particularly in virtualized environments, where input data from devices like USB and legacy input devices is not adequately protected from corruption or theft, compromising sensitive information.

Innovation Solution

A virtualized computer system with a service guest environment and trusted software that implements a data intercept/routing mechanism using private message interfaces to secure communication between USB devices and guests, ensuring secure data transfer and preventing unauthorized access or corruption.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional USB host controller interfaces are used without virtualization support, then device compatibility and ease of operation are maintained, but security and data protection are compromised

Engineering Contradiction:
Improvedata securityVSAvoidsystem architecture
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system segments the USB host controller functionality into multiple virtual device components (USB host controller device, USB host controller driver device, USB device manager device) that operate within isolated guest environments. Each segment handles specific aspects of USB management, allowing secure multi-tenant operation while maintaining the appearance of a unified controller to external devices.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A service guest environment acts as an intermediary layer between the physical USB host controller and multiple virtual guest operating systems. This intermediary manages data interception and routing, ensuring that input data from USB devices is securely directed to the appropriate guest while preventing unauthorized access or corruption from other guests.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If multiple guests share the same USB host controller without isolation, then resource utilization and productivity are improved, but data integrity and security deteriorate

Engineering Contradiction:
Improveresource utilizationVSAvoiddata integrity
Core Design Contradiction:
ProductivityVSLoss of information

Solution Approach 1:

The USB data flow is segmented into isolated channels for each guest environment. The service guest intercepts data at the host controller level and routes it through separate communication paths to each guest, ensuring that while multiple guests can simultaneously utilize the USB controller, their data streams remain completely isolated and cannot interfere with or corrupt each other's information.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system creates virtual copies of USB device interfaces for each guest environment. Each guest receives a virtualized representation of the USB device through its own driver instance, allowing simultaneous access to the same physical device without direct sharing of the underlying data structures, thus preventing corruption while maintaining productivity.

Inventive Principle:
Principle #26Copying

3Ease of operation

If USB device drivers are dynamically loadable without security controls, then ease of operation and adaptability are improved, but security and protection from malicious software worsen

Engineering Contradiction:
Improvedriver managementVSAvoidmalicious software impact
Core Design Contradiction:
Ease of operationVSObject-affected harmful factors

Solution Approach 1:

The service guest environment serves as a security intermediary that mediates all driver loading and execution activities. When USB device drivers need to be dynamically loaded, the service guest intercepts the load request, validates it within the isolated service environment, and only permits execution if security checks pass. This maintains the dynamic loading capability while preventing malicious drivers from compromising the host or other guests.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The service guest creates an inert, isolated execution environment for USB device drivers. Drivers are loaded and executed within this controlled service guest context rather than directly in the guest operating system or host OS, providing a protective barrier that contains potential malicious actions within the service guest's isolated memory and resource space.

Inventive Principle:
Principle #39Inert atmosphere (Inert environment)

Data Source

PatentUS8327137B1Secure computer system with service guest environment isolated driver
Publication Date: 2012.12.04 ADVANCED MICRO DEVICES INC
  • US8327137B1 patent drawing
  • US8327137B1 patent drawing
  • US8327137B1 patent drawing

AI summary

A virtualized computer system includes at least one guest environment (guest), a service guest environment (SG) and trusted software. The at least one guest includes at least one driver having a first private message interface. The SG includes a first USB host controller (HC) driver, which is in communication with a USB HC. The first USB HC driver includes a second private message interface. The trusted software is in communication with the guest and the SG. The trusted software includes a data intercept/routing mechanism that facilitates secure communication between at least one USB device coupled to the USB HC and the guest using the first and second private message interfaces.