SMM Page Table Locking for Secure SMI Handler
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing system management mode (SMM) is vulnerable to malicious code injection attacks due to its high privilege level during the boot sequence, which can be exploited by intruders to take over the processor and system.
Innovation Solution
The solution involves allocating a portion of memory as System Management Random Access Memory (SMRAM) and generating a page table with specific attributes to lock down the SMI handler, using a lock register to prevent modification of page table attributes, thereby reducing the possibility of malicious code injection attacks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If the processor operates in System Management Mode with high privilege level to provide power management and security functions, then the system can perform critical management tasks, but the system becomes vulnerable to malicious code injection attacks
Solution Approach 1:
The patent segments the memory space into different protected regions (SMRAM for SMI handler, separate regions for code and data) and applies different access control attributes to each segment. This allows the high-privilege SMM to perform management functions while isolating critical components from malicious code injection attempts.
Solution Approach 2:
The patent applies local quality by setting different page table attributes (read-only, execute, write permissions) for different memory regions. The SMI handler code is marked as read-only and execute-only, while data regions have appropriate write permissions. This localized attribute assignment prevents code injection in critical areas while maintaining necessary functionality.
2Ease of operation
If the SMI handler is made accessible to all memory addresses to handle interrupts, then the handler can respond to system management interrupts, but intruders can write malicious code to the handler addresses
Solution Approach 1:
The patent introduces page table attributes as an intermediary layer between memory addresses and actual code execution. The page table acts as a mediator that translates memory addresses into protected regions with controlled access permissions, preventing direct write access to SMI handler addresses while maintaining interrupt handling functionality.
Solution Approach 2:
The patent applies preliminary anti-action by pre-configuring the page table attributes to mark SMI handler regions as read-only and execute-only before any potential attack can occur. This preventive measure blocks malicious code injection attempts at the memory access level while allowing legitimate SMI interrupts to be handled normally.
3Adaptability or versatility
If the page table attributes are made modifiable to allow system configuration, then the system can adapt to different security requirements, but the page table can be modified by intruders to enable attacks
Solution Approach 1:
The patent implements dynamics by allowing the page table attributes to be modified during system initialization and configuration phases, then locking them in place during runtime operation. This dynamic approach enables flexible security configuration when needed while maintaining integrity during execution, preventing intruder modification of critical attributes.
Data Source
AI summary
Various embodiments are generally directed to an apparatus, method and other techniques for allocating a portion of the memory as system management random access memory (SMRAM) including a system management interrupt (SMI) handler for a system management mode (SMM), the SMI handler to handle SMIs for the SMM, generating a page table for the SMM, the page table comprising one or more mapped pages to map virtual addresses to physical addresses for the SMM, and setting one or more page table attributes for the page table to prevent a malicious code attack on the SMM.


