Page Protection Layer for Secure Memory Isolation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Computer systems face vulnerabilities that allow attackers to read, write, or execute at arbitrary virtual addresses, compromising system security, and existing security structures like the trusted computing base (TCB) can be complex and prone to implementation errors, increasing the risk of vulnerabilities.

Innovation Solution

A computer system incorporating a page protection layer (PPL) that manages virtual to physical page mappings, enforces dynamic security policies, and ensures only the PPL can modify page tables, ensuring no component can modify executable pages without a valid code signature, thereby enhancing security by minimizing the TCB's complexity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a traditional TCB with multiple privileged levels (including hypervisor) is implemented to enforce security policies, then security isolation between components is improved, but device complexity increases and the TCB becomes more prone to implementation errors

Engineering Contradiction:
Improvesecurity isolationVSAvoidTCB complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the core security enforcement function from the complex multi-level TCB architecture and consolidates it into a dedicated page protection layer that manages page tables. This layer is responsible for enforcing security policies related to memory access and page modifications, while other system components can focus on their primary functions without the overhead of implementing full security logic.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The TCB is segmented into distinct functional layers: the page protection layer handles memory security and page table management, the kernel handles system operations, and user applications handle business logic. This segmentation allows each layer to be optimized independently and reduces the attack surface by limiting the privileges required for each function.

Inventive Principle:
Principle #1Segmentation

2Device complexity

If the TCB is minimized to reduce complexity and implementation errors, then device complexity is reduced, but the ability to enforce dynamic security policies may be limited

Engineering Contradiction:
ImproveTCB complexityVSAvoiddynamic security policy enforcement
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The page protection layer implements dynamic security policies by allowing runtime modification of page table entries and memory protection attributes. Security policies can be adjusted based on system state, user actions, or detected threats without requiring system restart or complex reconfiguration, enabling the minimal TCB to remain adaptable to changing security requirements.

Inventive Principle:
Principle #15Dynamics

3Reliability

If additional privileged levels (such as hypervisor) are added to enforce security policies, then security isolation is improved, but the system becomes more complex and vulnerable to attacks

Engineering Contradiction:
Improvesecurity isolationVSAvoidvulnerability to attacks
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The page protection layer acts as an intermediary between the kernel and hardware memory management units. It enforces security policies by intercepting and validating memory access requests, page table modifications, and executable page changes. This intermediary approach provides strong security isolation without requiring an additional hypervisor level, as the page protection layer operates within the existing kernel privilege structure.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11188477B2Page protection layer
Publication Date: 2021.11.30 APPLE INC
  • US11188477B2 patent drawing
  • US11188477B2 patent drawing
  • US11188477B2 patent drawing

AI summary

In an embodiment, a computer system comprises a page protection layer. The page protection layer may be the component in the system which manages the page tables for virtual to physical page mappings. Transactions to the page protection layer are used to create/manage mappings created in the page tables. The page protection layer may enforce dynamic security policies in the system (i.e. security policies that may not be enforced using only a static hardware configuration). In an embodiment, the page protection layer may ensure that it is the only component which is able to modify the page tables. The page protection layer may ensure than no component in the system is able to modify a page that is marked executable in any process' address space. The page protection may ensure that any page that is marked executable has code with a verified code signature, in an embodiment.