Accelerator Firmware Integrity via Virtualization-Based Security

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The integrity of accelerator device firmware in modern system on chips (SoCs) is compromised by ring 0 vulnerabilities, which can lead to security risks for AI workloads due to its execution in the operating system's most privileged memory space, requiring costly hardware modifications or complex security processors.

Innovation Solution

The implementation of Virtualization-Based Security (VBS) with Kernel Data Protection (KDP) features extends protection to accelerator firmware, using page tables to control memory access and isolate the firmware in a secure region of system memory, eliminating the need for additional hardware.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If accelerator firmware is loaded into operating system ring 0 memory for ease of deployment and cost reduction, then deployment ease and cost are improved, but security and integrity are worsened due to ring 0 vulnerabilities

Engineering Contradiction:
Improvedeployment easeVSAvoidfirmware integrity
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

The patent segments the memory space into protected and unprotected regions using Virtualization-Based Security (VBS). The accelerator firmware is loaded into a protected memory region that is isolated from the operating system ring 0 environment, allowing the firmware to benefit from both ease of deployment and enhanced security through spatial separation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a hypervisor as an intermediary layer between the operating system and the accelerator firmware. This hypervisor mediates the access between ring 0 vulnerabilities and the firmware, creating a secure boundary that prevents malicious code from compromising the firmware while maintaining the benefits of ring 0 execution for the host OS.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If device ROM or secure processor with MPU support is used to verify firmware integrity, then firmware security is improved, but device complexity and product cost increase

Engineering Contradiction:
Improvefirmware securityVSAvoidhardware complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

Instead of using a dedicated secure processor or ROM, the patent creates a virtual copy of the secure execution environment through software-based virtualization. The hypervisor emulates the security functions that would otherwise require dedicated hardware, providing firmware protection without adding physical security processors or complex hardware structures.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent replaces the mechanical hardware-based security solutions (dedicated ROM, secure processor with MPU) with a software-based virtualization approach. By substituting hardware security mechanisms with virtualization technology, the system achieves equivalent or superior security without the associated hardware complexity and cost.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS20240354415A1Method and system for integrity protection for accelerator device firmware using virtualization-based security
Publication Date: 2024.10.24 INTEL CORP
  • US20240354415A1 patent drawing
  • US20240354415A1 patent drawing
  • US20240354415A1 patent drawing

AI summary

A method and system for security protection for firmware of an accelerator by leveraging Virtualization-Based Security (VBS). A memory space is allocated for firmware of an accelerator from a Kernel Data Protection (KDP)-protected region of a system memory. The KDP-protected region is a specific area of the system memory that is protected by KDP. The firmware of the accelerator is placed in the KDP-protected region. A device memory management unit (MMU) page table corresponding to the memory space allocation for the firmware of the accelerator may be generated and placed in the KDP-protected region. A device driver of the accelerator sets attributes of page table entries of the device MMU page table appropriately, and accesses to the system memory may be controlled based on the attributes of the page table entries of the device MMU page table.