Proxy Kernel Isolating Application Secrets from OS Attacks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing computing architectures are vulnerable to unauthorized access of application secrets by compromised or malicious system software, as they rely on the operating system for resource management, which cannot ensure the security of secrets like encryption keys and passwords.

Innovation Solution

Implementing a secure execution environment with a proxy kernel that manages access to virtual addresses and provides kernel services transparently, isolating user-mode applications from the OS kernel to prevent unauthorized access while still utilizing OS resource management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If the operating system kernel is given full access to system memory for resource management, then resource management functionality is improved, but security of application secrets deteriorates

Engineering Contradiction:
Improveresource managementVSAvoidsecurity of application secrets
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent segments the kernel mode into two distinct modes: OS kernel mode and proxy kernel mode. The OS kernel manages resources while the proxy kernel enforces security policies and controls access to application secrets. This segmentation allows the OS to maintain resource management capabilities while a separate entity enforces security boundaries, resolving the contradiction between operational ease and security reliability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The proxy kernel acts as an intermediary between the OS kernel and application processes. It mediates all access requests to application memory spaces, filtering and controlling what the OS kernel can access. This intermediary layer preserves the OS's resource management functionality while preventing unauthorized access to secrets, thus maintaining both ease of operation and security reliability.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If isolation techniques are used to protect application secrets, then security is improved, but system complexity and resource consumption worsen

Engineering Contradiction:
Improvesecurity of application secretsVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The proxy kernel serves multiple functions simultaneously: it enforces security policies, manages access control to application secrets, provides memory management services, and acts as an intermediary for system calls. By consolidating these diverse functions into a single component rather than requiring separate isolation mechanisms, the system achieves high security without proportionally increasing complexity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent implements a nested architecture where the proxy kernel operates within the existing OS kernel framework. The proxy kernel mode is nested within the broader kernel mode structure, allowing it to leverage existing OS infrastructure while adding security capabilities. This nesting approach avoids the need for completely separate isolation systems, reducing overall complexity while maintaining strong security protections.

Inventive Principle:
Principle #7Nested doll (Nesting)

3Reliability

If traditional isolation methods requiring two operating systems are used, then security is improved, but productivity and resource efficiency deteriorate

Engineering Contradiction:
Improvesecurity of application secretsVSAvoidsystem efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent merges the security enforcement functionality into the existing OS kernel rather than requiring a separate operating system. The proxy kernel mode is integrated within the single OS architecture, combining security functions with resource management in one unified system. This merging eliminates the overhead of running multiple operating systems while maintaining security protections, thus improving productivity without sacrificing security reliability.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentEP3201820B1Protecting application secrets from operating system attacks
Publication Date: 2023.10.25 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP3201820B1 patent drawingFigure 1
  • EP3201820B1 patent drawingFigure 2
  • EP3201820B1 patent drawingFigure 3

AI summary

Various embodiments provide techniques and devices for protecting application secrets from operating system attacks. In some examples, applications execute with an isolated user mode of a secure execution environment, while relying on an operating system executing within a separate execution environment for resource management and system services. A proxy kernel can control access by the operating system to data associated with the secure execution environment. Further, the proxy kernel can act as a transparent interface between isolated user mode applications and the operating system during the provision of resource management and system services.