IOMMU Trusted Ping Verification for Rogue Device Prevention

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current systems lack a trusted mechanism to verify the attachment of input-output memory management units (IOMMUs) to devices, leading to potential rogue device attachment and data integrity issues in trusted domains, especially in virtualized environments where malicious VMs or VMMs can exploit vulnerabilities.

Innovation Solution

Implementing a trusted ping mechanism using unique IDs for IOMMUs, where a SEAM module assigns and verifies unique identifiers for each IOMMU, ensuring only authorized devices can access trusted domains by generating a special transaction that carries this ID, and having devices report back the received ID to prevent confused deputy attacks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional device attachment mechanisms are used in virtualized environments, then device functionality is provided, but security vulnerabilities allow rogue device attachment and data integrity issues

Engineering Contradiction:
Improvedevice attachment verificationVSAvoidrogue device attachment
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The patent implements a feedback mechanism where the IOMMU sends a ping message containing its unique ID to the device, and the device must report back the received ID to verify correct attachment. This closed-loop verification ensures that only properly attached devices can access trusted domains, preventing rogue device attachment while maintaining reliable device functionality.

Inventive Principle:
Principle #23Feedback

2Reliability

If unique identification mechanism is implemented for IOMMUs, then security against confused deputy attacks is improved, but system complexity increases

Engineering Contradiction:
Improveattachment verification securityVSAvoidtrusted ping mechanism
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by assigning unique IDs to IOMMUs during system initialization and configuring the trusted ping mechanism before devices are attached. The SEAM module pre-provisions the verification infrastructure, so that when devices are later attached, the security verification is already in place and operational, reducing the perceived complexity during runtime operations.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If trusted domain memory protection is enforced, then data integrity is maintained, but device access to memory is restricted

Engineering Contradiction:
Improvedata integrityVSAvoiddevice memory access
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent introduces the IOMMU as an intermediary between devices and trusted domain memory. The IOMMU performs address translation and access control, allowing authorized devices to access memory while maintaining data integrity protection. This mediator enables both device functionality and security requirements to coexist by filtering and controlling memory access requests.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentEP3720084B1Apparatuses, methods, and systems for verification of input-output memory management unit to device attachment
Publication Date: 2024.01.17 INTEL CORP
  • EP3720084B1 patent drawingFigure 1
  • EP3720084B1 patent drawingFigure 2
  • EP3720084B1 patent drawingFigure 3

AI summary

Systems, methods, and apparatuses relating to performing an attachment of an input-output memory management unit (IOMMU) to a device, and a verification of the attachment. In one embodiment, a protocol and IOMMU extensions are used by a secure arbitration mode (SEAM) module and/or circuitry to determine if the IOMMU that is attached to the device requested to be mapped to a trusted domain.