SMM Code PCR Reset for Secure Kernel Initialization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing boot process in computing devices lacks effective detection of malicious code during the initial stages, leading to potential security risks due to the complexity of evaluating the Trusted Computing Base (TCB), which can result in insignificant deviations causing uncertainty in determining a trusted state.

Innovation Solution

The use of System Management Mode (SMM) code to reset and manage Platform Configuration Registers (PCRs) in the Trusted Platform Module (TPM), allowing for dynamic measurement and verification of the TCB, thereby simplifying the trust evaluation and enhancing security by limiting modifications to specific CPU instructions and SMM code.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all measurements taken during the booting process are combined to define the Trusted Computing Base, then comprehensive security coverage is achieved, but the complexity of evaluating the TCB increases beyond reasonable limits

Engineering Contradiction:
Improvesecurity coverageVSAvoidTCB evaluation complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the TCB evaluation by introducing a boundary measurement that divides the boot process measurements into two distinct sets: measurements taken before the boundary (first set) and measurements taken after the boundary (second set). This segmentation allows the system to selectively combine only relevant measurements from the second set with the boundary measurement itself, thereby reducing the overall TCB complexity while maintaining security coverage for critical post-boundary operations.

Inventive Principle:
Principle #1Segmentation

2Measurement precision

If the TCB includes all code executed since the machine was booted, then complete trust verification is possible, but the size of the TCB becomes excessively large and difficult to manage

Engineering Contradiction:
Improvetrust verification accuracyVSAvoidTCB size
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent extracts and isolates the boundary measurement from the complete boot process measurements. By taking out this specific measurement point that marks a significant transition in the boot process, the system can focus TCB evaluation on the critical second set of measurements after the boundary, rather than including all measurements from the entire boot process. This extraction reduces TCB size while preserving trust verification accuracy for the most critical operational phase.

Inventive Principle:
Principle #2Taking out (Extraction)

3Adaptability or versatility

If SMM code is included in the TCB with superior privileges, then comprehensive hardware control is achieved, but the security risk increases due to inability to prevent SMM execution by the operating system

Engineering Contradiction:
Improvehardware control capabilityVSAvoidsecurity risk
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

The patent applies preliminary action by measuring and recording the SMM code execution state at the boundary measurement point before the operating system can potentially interfere with or prevent SMM execution. This preliminary measurement captures the intended SMM behavior in a trusted state, allowing the system to verify later whether SMM code executed as expected. This approach maintains hardware control capability while reducing security risk by establishing a known-good baseline for SMM operations.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7921286B2Computer initialization for secure kernel
Publication Date: 2011.04.05 MICROSOFT TECHNOLOGY LICENSING LLC
  • US7921286B2 patent drawing
  • US7921286B2 patent drawing
  • US7921286B2 patent drawing

AI summary

Dynamic Root of Trust for Measurement (DRTM) mechanisms can be initiated, not by CPU-manufacturer-specific instructions, but by the execution of code in System Management Mode (SMM) that can modify the values stored in specific Platform Configuration Registers (PCRs) of a Trusted Platform Module (TPM). The SMM code can be verified prior to execution and it can be trusted based on the secure mechanisms used to update such code. The SMM code can restore a known, trusted state of the computing device and can initiate the measuring of subsequently executed code. In such a manner the Trusted Computing Base (TCB) can be limited.