Hardware-Assisted Return Address Prediction for ROP Attack Detection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
There is a need for improved techniques to detect and prevent return-oriented programming attacks in networked computing environments, as existing methods are inadequate in effectively mitigating these threats.
Innovation Solution
The implementation of hardware-assisted filtering of an import address table, which includes configuring a computing environment to detour function calls through stubs, using an import address table and address space layout randomization to randomize function locations, and generating return address predictions to detect deviations from predicted behavior, thereby identifying and mitigating return-oriented programming attacks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If return address prediction is implemented to detect deviations, then detection accuracy of return-oriented programming attacks is improved, but device complexity increases due to additional prediction mechanisms and instrumentation
Solution Approach 1:
The system performs preliminary actions by pre-configuring return address prediction mechanisms and detouring function calls to stubs before attacks occur. The import address table is instrumented in advance to establish expected return address patterns, enabling the system to detect deviations without adding complex runtime analysis mechanisms.
Solution Approach 2:
Programming stubs serve as intermediaries between function calls and the import address table. These stubs intercept function calls, verify return addresses against predictions, and redirect malicious calls without requiring complex direct analysis of all return addresses, thereby simplifying the overall detection architecture.
2Reliability
If import address table is instrumented to detour function calls through stubs, then detection capability is improved, but processing overhead increases due to additional function call interceptions
Solution Approach 1:
The system applies local quality by instrumenting only specific function calls that are critical for return-oriented programming attack detection. Rather than intercepting all function calls uniformly, the import address table selectively detours only those calls that would indicate suspicious return address patterns, reducing unnecessary processing overhead while maintaining detection capability.
3Object-affected harmful factors
If address space layout randomization is used to randomize function locations, then security against attacks is improved, but difficulty in accessing functions increases
Solution Approach 1:
The system implements feedback mechanisms where the import address table maintains mappings between randomized function locations and their expected return addresses. When function calls are detoured through stubs, the system verifies return addresses against these mappings, providing feedback that confirms legitimate calls while identifying malicious deviations, thus resolving the access difficulty introduced by randomization.
Data Source
AI summary
Trampoline and return-oriented programming attacks employ a variety of techniques to maliciously execute instructions on a device in a manner different from a legitimate programmer's original intent. By instrumenting a device to detect deviations from predicted behavior, these exploits can be identified and mitigated.


