ROP Exploit Detection via Call Stack Gadget Reference Analysis

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional anti-malware techniques struggle to detect return-oriented programming (ROP) exploits effectively, as these malware use legitimate code reuse to evade detection, leading to vulnerabilities in computer systems.

Innovation Solution

A host system equipped with hardware processors identifies a target area of the call stack and detects gadget references pointing to ROP gadgets, determining the malicious nature of a process based on the proportion of the target area occupied by these references, employing a ROP score calculation to assess the likelihood of an ROP exploit.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional anti-malware techniques are used, then detection simplicity is maintained, but detection effectiveness against ROP exploits deteriorates

Engineering Contradiction:
Improvedetection effectivenessVSAvoiddetection complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the detection process into distinct phases: identifying the target area in the call stack, scanning for gadget references within that area, and evaluating the proportion of gadget references to determine maliciousness. This segmentation allows complex ROP exploit detection to be broken down into manageable, systematic steps that improve detection effectiveness without overwhelming system complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary identification of the target area in the call stack before conducting the full gadget reference scan. By pre-defining the search boundaries and criteria, the system prepares the detection framework in advance, which streamlines the actual detection process and improves efficiency while maintaining high detection effectiveness.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If comprehensive gadget reference scanning is performed, then detection precision is improved, but computational cost increases

Engineering Contradiction:
Improvedetection precisionVSAvoidcomputational cost
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The patent applies local quality by focusing the scanning effort specifically on the target area of the call stack rather than the entire stack. By concentrating computational resources on the relevant region where gadget references are most likely to appear, the system achieves high detection precision while minimizing unnecessary computational expenditure on irrelevant areas.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent performs a targeted scan of the target area, which represents a partial action focused on the most critical region. This partial scanning approach provides sufficient detection precision for ROP exploits without requiring a complete exhaustive scan of all possible memory areas, thereby reducing computational cost while maintaining effective detection.

Inventive Principle:
Principle #16Partial or excessive action

3Reliability

If ROP exploits are detected and mitigated, then system security is enhanced, but processing time is consumed

Engineering Contradiction:
Improvesystem securityVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary identification of the target area and establishes detection criteria before actual exploit detection occurs. This preliminary setup enables faster real-time detection and response, as the framework is already prepared and does not require extensive analysis during critical security events, thus minimizing processing time loss while enhancing security.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent enables the system to quickly skip through the call stack to identify the target area and scan for gadget references using optimized search procedures. This rushing through the detection process with focused efficiency allows rapid identification and mitigation of ROP exploits, enhancing security response speed while minimizing the time penalty associated with thorough detection.

Inventive Principle:
Principle #21Skipping (Rushing through)

Data Source

PatentUS10083294B2Systems and methods for detecting return-oriented programming (ROP) exploits
Publication Date: 2018.09.25 BITDEFENDER IPR MANAGEMENT
  • US10083294B2 patent drawing
  • US10083294B2 patent drawing
  • US10083294B2 patent drawing

AI summary

Described systems and methods allow protecting a computer system from malware, such as return-oriented programming (ROP) exploits. In some embodiments, a set of references are identified within a call stack used by a thread of a target process, each reference pointing into the memory space of an executable module loaded by the target process. Each such reference is analyzed to determine whether it points to a ROP gadget, and whether the respective reference was pushed on the stack by a legitimate function call. In some embodiments, a ROP score is indicative of whether the target process is subject to a ROP attack, the score determined according to a count of references to a loaded module, according to a stack footprint of the respective module, and further according to a count of ROP gadgets identified within the respective module.