Hardware Guard Lines for Runtime Memory Protection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current cyber defense mechanisms are inefficient in detecting and preventing memory corruption vulnerabilities, leading to a disadvantage for defenders who must find all vulnerabilities while attackers only need to exploit one, resulting in a 'whack-a-mole' game of patching bugs after attacks occur, with existing robust identification technologies having too much overhead for runtime use.
Innovation Solution
A hardware-based solution employing a two-level data structure with a page level and sub-page level protection mechanism using guard lines, where a guard line mask is added to each virtual memory page to detect memory exploits efficiently, allowing for runtime execution without excessive overhead.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If robust identification technologies are used to detect memory corruption, then detection accuracy is improved, but system overhead increases making runtime execution impossible
Solution Approach 1:
The patent segments memory protection into page-level and sub-page-level mechanisms. Page-level protection uses guard pages at memory boundaries, while sub-page-level protection uses guard lines within pages. This segmentation allows efficient hardware enforcement without requiring comprehensive software analysis, resolving the contradiction between detection accuracy and system overhead.
Solution Approach 2:
The patent replaces software-based memory corruption identification with hardware-based enforcement using guard lines in the memory management unit. This substitution eliminates the excessive overhead of software analysis while maintaining high detection accuracy, enabling runtime execution.
2Reliability
If comprehensive vulnerability patching is performed, then system security is improved, but time loss increases due to the whack-a-mole game of finding and patching bugs
Solution Approach 1:
The patent implements preliminary protective measures by embedding guard lines in memory structures before exploitation can occur. This preliminary hardware-based protection prevents memory corruption attacks without requiring continuous vulnerability scanning and patching, eliminating the time-consuming whack-a-mole game while maintaining system security.
3Reliability
If existing memory protection mechanisms are used, then some protection is provided, but overhead is too high for runtime execution in deployed systems
Solution Approach 1:
The patent divides memory protection into hierarchical levels: page-level guard pages for boundary protection and sub-page-level guard lines for fine-grained control. This segmentation enables efficient hardware enforcement with minimal overhead, allowing runtime execution in deployed systems while maintaining strong memory protection.
Solution Approach 2:
The hardware-based guard line mechanism automatically enforces memory protection without requiring software intervention or analysis. The memory management unit self-services by checking guard lines during memory access, eliminating the performance penalty associated with software-based protection mechanisms.
Data Source
AI summary
An apparatus having processing circuitry configured to execute applications involving access to memory may include a CPU and a cache controller. The CPU may be configured to access cache memory for execution of an application. The cache controller may be configured to provide an interface between the CPU and the cache memory. The cache controller may include a bitmask to enable the cache controller to employ a two-level data structure to identify memory exploits using hardware. The two-level data structure may include a page level protection mechanism, and a sub-page level protection mechanism.


