Memory Controller Trusted Domain Poisoned Data Rowhammer Defense

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current Trusted Domain Execution (TDX) technologies are vulnerable to Rowhammer attacks, which allow untrusted software to corrupt trusted domain memory, and existing security measures using cryptographic message authentication codes (MACs) impact performance and reliability.

Innovation Solution

A memory controller that sets a hardware register flag upon detecting non-trusted domain reads from trusted domain memory, returning poisoned data and shutting down affected trusted domains to prevent corruption, and invoking a trusted domain-related management service for mitigation actions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If cryptographic message authentication codes (MACs) are used to protect trusted domain memory, then data integrity is improved, but system performance and reliability deteriorate

Engineering Contradiction:
Improvedata integrityVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts the security verification function from the memory access path by implementing a dedicated TD bit in the memory hierarchy that independently tracks trusted domain status. This separates the integrity protection mechanism from the main data flow, eliminating the performance overhead of cryptographic MAC verification while maintaining security through hardware-enforced access control based on the TD bit status.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If Rowhammer attack protection mechanisms are implemented, then security against memory corruption is improved, but device complexity increases

Engineering Contradiction:
Improvesecurity against memory corruptionVSAvoidprotection mechanism complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the memory system into trusted and untrusted domains using the TD bit flag in the memory hierarchy. This segmentation creates clear boundaries that prevent Rowhammer attacks from untrusted software from corrupting trusted domain memory, as the hardware automatically enforces access restrictions based on TD bit status without requiring complex protection logic.

Inventive Principle:
Principle #1Segmentation

3Ease of operation

If untrusted software is allowed to access memory, then ease of operation is improved, but vulnerability to unauthorized access increases

Engineering Contradiction:
Improvememory access flexibilityVSAvoidunauthorized access vulnerability
Core Design Contradiction:
Ease of operationVSObject-affected harmful factors

Solution Approach 1:

The patent introduces the TD bit as an intermediary marker in the memory hierarchy that mediates between untrusted software and trusted domain memory. The TD bit acts as a hardware-enforced gatekeeper that allows legitimate memory access operations while automatically blocking unauthorized access attempts to trusted domains, thus maintaining ease of operation for authorized software while preventing harmful factors from untrusted software.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20240289438A1Memory Controller, Method for a Memory Controller and Apparatus for Providing a Trusted Domain-Related Management Service
Publication Date: 2024.08.29 INTEL CORP
  • US20240289438A1 patent drawing
  • US20240289438A1 patent drawing
  • US20240289438A1 patent drawing

AI summary

It is provided an apparatus comprising interface circuitry, machine-readable instructions, and processing circuitry to execute the machine-readable instructions. The machine-readable instructions comprise instructions to obtain a read request for reading data from an address in volatile memory. The machine-readable instructions further comprise instructions to determine whether the address in volatile memory is associated with a trusted domain. The machine-readable instructions further comprise instructions to set, if the address is associated with a trusted domain and the read request is obtained from outside the trusted domain, an identification tag for the trusted domain. The machine-readable instructions further comprise instructions to return, for the read request and subsequent read requests for one or more addresses associated with the trusted domain, poisoned data if the flag is set for the trusted domain.