Hiding Kernel Data in SMM Memory to Thwart Side-Channel Attacks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for protecting operating system kernel data from side-channel attacks, such as moving data to a hard disk drive, result in significant performance impacts and wear on solid-state disks, and are vulnerable to data loss in case of power failure.

Innovation Solution

Implementing a system that hides operating system kernel data in system management mode (SMM) memory, using a CPU programmable to specify an SMM region accessible only in SMM, and employing BIOS to save and restore kernel data through an intermediate buffer, optimizing latency and security.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If kernel data is moved to hard disk drive before switching to user mode, then security against side-channel attacks is improved, but access time and performance are significantly reduced

Engineering Contradiction:
ImprovesecurityVSAvoidaccess time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent introduces system management mode (SMM) memory as an intermediary storage location between kernel mode and user mode. Kernel data is moved to SMM memory before user mode execution, allowing fast access during kernel mode while preventing user mode access to sensitive data. This intermediary solution avoids the slow HDD/SSD storage while maintaining security.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent creates a new dimension of memory access control by introducing SMM memory, which is accessible only when the CPU is operating in system management mode. This adds a fourth state to the traditional kernel/user mode duality, providing an additional layer of security without the performance penalty of disk-based storage.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Reliability

If kernel data is moved to hard disk drive before switching to user mode, then security against side-channel attacks is improved, but wear on solid-state disks increases

Engineering Contradiction:
ImprovesecurityVSAvoidhard drive lifetime
Core Design Contradiction:
ReliabilityVSDuration of action of stationary object

Solution Approach 1:

SMM memory serves as an intermediary that eliminates the need to use HDD/SSD for kernel data protection. By storing sensitive data in volatile SMM memory during kernel mode operations, the system avoids write operations to persistent storage, thereby preventing wear on SSDs and extending their operational lifetime.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If kernel data is moved to hard disk drive before switching to user mode, then security against side-channel attacks is improved, but performance is significantly reduced

Engineering Contradiction:
ImprovesecurityVSAvoidperformance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent uses SMM memory as a high-speed intermediary storage that maintains the performance characteristics of volatile memory while providing security against user mode access. This eliminates the performance penalty associated with disk-based storage while maintaining the security benefits of data protection during user mode execution.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Speed

If kernel data is stored in volatile memory, then access speed is improved, but data loss occurs in case of power failure

Engineering Contradiction:
Improveaccess speedVSAvoiddata persistence
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The patent applies different quality characteristics to different memory regions: SMM memory provides volatile, high-speed storage for kernel data during operational modes, while the system maintains the ability to persist data to HDD/SSD when needed. This local differentiation of memory characteristics allows the system to optimize for speed during normal operation while maintaining data persistence capabilities when required.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS20200073832A1Systems And Methods For Hiding Operating System Kernel Data In System Management Mode Memory To Thwart User Mode Side-Channel Attacks
Publication Date: 2020.03.05 DELL PROD LP
  • US20200073832A1 patent drawing
  • US20200073832A1 patent drawing
  • US20200073832A1 patent drawing

AI summary

Systems and methods are provided that may be implemented to hide operating system kernel data in system management mode memory. An information handling system includes a system memory, central processing unit (CPU), and Basic Input Output System (BIOS). The CPU is operable in a system management mode and is programmable to specify an SMM region of the system memory that is only accessible when the CPU is operating in the SMM. The BIOS is programmed to save kernel data from a non-SMM region of the system memory to the SMM region and then clear the kernel data from the non-SMM region in response to an operating system (OS) generating a system management interrupt (SMI) and to restore the kernel data to the non-SMM region of the system memory from the SMM region in response to the OS generating a SMI.