Supervisor Mode Execution Protection Mechanism
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Memory-based attacks, such as privilege escalation attacks, pose a significant threat to information processing system security by exploiting vulnerabilities in kernel code and transferring control to malicious code stored in application memory.
Innovation Solution
Implementing supervisor mode execution protection by assigning an attribute to memory pages, which prevents the execution of instructions from user memory when the processor is in supervisor mode, using a bit or field in memory management data structures to differentiate between user and supervisor memory, and employing control logic to cause a fault if an attempt is made to fetch instructions from user memory during supervisor mode execution.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If memory pages are assigned attributes to prevent supervisor mode execution, then system security is improved, but device complexity increases
Solution Approach 1:
The patent changes the parameter of memory page attributes by adding a specific bit (e.g., bit 11 in the page table entry) that indicates whether supervisor mode execution is permitted. This parameter change allows the system to differentiate between user-mode and supervisor-mode executable memory regions without fundamentally altering the memory management architecture.
Solution Approach 2:
The patent introduces an intermediary mechanism in the form of control logic within the memory management unit that checks the supervisor mode execution attribute before allowing instruction execution. This intermediary layer intercepts memory access requests and enforces the security policy without requiring changes to the application software or operating system kernel.
2Reliability
If control logic is added to prevent instruction fetching from user memory in supervisor mode, then security against privilege escalation is improved, but processing speed deteriorates
Solution Approach 1:
The patent applies preliminary action by pre-configuring the memory page attributes with the supervisor mode execution permission bit before execution occurs. The control logic checks this pre-set attribute during normal operation, allowing rapid enforcement of security policies without requiring complex real-time analysis or intervention.
Solution Approach 2:
The memory management unit performs self-service by automatically checking the supervisor mode execution attribute and generating appropriate faults without requiring external intervention from the CPU or operating system. This self-service mechanism minimizes processing overhead while maintaining security enforcement.
Data Source
AI summary
Apparatuses and methods for supervisor mode execution protection are disclosed. In one embodiment, a processor includes an interface to access a memory, execution hardware, and control logic. A region in the memory is user memory. The execution hardware is to execute an instruction. The control logic is to prevent the execution hardware from executing the instruction when the instruction is stored in user memory and the processor is in supervisor mode.


