Virtual Machine Firmware Validation via VMM

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current firmware update technologies cannot effectively determine if firmware packages are free of bugs, errors, and vulnerabilities, which can lead to system failures and exposure to malicious actors during the update process.

Innovation Solution

A method that uses a virtual machine monitor to launch a virtual machine within a unified extensible firmware interface, allowing for a test installation of firmware updates in a secure environment before applying them to the regular system, thereby detecting and resolving any errors or vulnerabilities.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If firmware updates are installed directly in the regular environment, then the system can be updated quickly, but vulnerabilities and bugs may cause system failures and security exposures

Engineering Contradiction:
Improvesystem reliabilityVSAvoidupdate speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent performs a test installation of the firmware update in a virtual machine environment before applying it to the regular environment. This preliminary action allows detection and resolution of vulnerabilities and bugs in advance, ensuring system reliability while maintaining update efficiency through automated testing workflows.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces a virtual machine as an intermediary environment between the firmware update package and the regular system environment. This intermediary allows safe testing and validation of firmware updates, preventing direct exposure of the production system to potential vulnerabilities while enabling thorough security verification.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If firmware updates are tested thoroughly before installation, then system security is improved, but the update process becomes more complex and time-consuming

Engineering Contradiction:
Improvefirmware securityVSAvoidupdate process complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent creates a virtual copy of the system environment to perform firmware testing. This copying approach allows comprehensive security verification without affecting the production system, and the virtual environment can be programmatically managed to reduce operational complexity despite the additional testing step.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent changes the execution environment parameter from direct production deployment to virtualized testing environment. This parameter change enables automated testing workflows and scriptable validation processes, which can reduce manual intervention and overall process complexity through automation.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If firmware updates are tested in a virtual environment, then bugs and vulnerabilities are detected, but additional system resources are consumed

Engineering Contradiction:
Improvefirmware validationVSAvoidsystem resource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent extracts the firmware testing process from the production environment and isolates it in a virtual machine. This extraction allows resource-intensive validation operations to be performed in a controlled virtual environment, with resources allocated specifically for testing purposes and automatically released after validation completes.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS10599419B2Secure firmware updates using virtual machines to validate firmware packages
Publication Date: 2020.03.24 DELL PROD LP
  • US10599419B2 patent drawing
  • US10599419B2 patent drawing
  • US10599419B2 patent drawing

AI summary

Provided herein are systems, methods, and computer program products for testing a firmware update in a secure virtual environment prior to actually installing the firmware update in a device or system. In one embodiment, a firmware update is received. The system is rebooted after receiving the firmware update, and a virtual machine monitor (VMM) is launched following the reboot. In turn, the VMM registers various exit handlers and policies, and launches a virtual machine within a unified extensible firmware interface (UEFI) stored within a reprogrammable read only memory. The process uses the VMM to launch a virtual machine, which is used to perform a test installation of the firmware update. If no violations or other errors are detected in connection with the test installation, the process reboots the system again and installs the firmware update in the regular operating environment following the reboot.