Return Address Pointer Authentication Against ROP Attacks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

ROP attacks compromise system security by modifying return addresses on the stack, allowing attackers to hijack control flow and execute unauthorized code.

Innovation Solution

Implement a pointer authentication feature (PAC) that signs return addresses using a secret cryptographic key based on the stack pointer and callee address, authenticating the signature before execution to prevent unauthorized control flow.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If return addresses are stored on the stack without authentication, then the system operates with simple control flow management, but the system becomes vulnerable to ROP attacks that compromise security

Engineering Contradiction:
Improvecontrol flow integrityVSAvoidauthentication mechanism complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by signing the return address at the time it is pushed onto the stack, before the actual return operation occurs. This pre-authentication ensures that when the return address is later popped and executed, its integrity is already verified through the signature, preventing ROP attacks without adding complexity to the return operation itself

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces a cryptographic signature as an intermediary mechanism between the return address storage and execution. This signature acts as a mediator that verifies the authenticity of the return address without requiring complex authentication logic in the control flow management, thus maintaining simplicity while ensuring security

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If cryptographic signing is applied to return addresses, then security against ROP attacks is improved, but the processing time and computational overhead increase

Engineering Contradiction:
Improvesecurity against ROP attacksVSAvoidprocessing time for signature operations
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies partial action by signing only the critical return address values that are pushed onto the stack, rather than authenticating all memory operations or control flow transitions. This selective authentication of only the most vulnerable return addresses provides sufficient security against ROP attacks while minimizing the overall computational overhead and processing time

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent changes the parameter of return address representation by transforming it into a signed value that includes cryptographic authentication. This parameter change allows the system to verify authenticity through the signature bitfield, enabling efficient verification that reduces the time loss compared to more extensive authentication approaches

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12562918B2Pointer authentication
Publication Date: 2026.02.24 APPLE INC
  • US12562918B2 patent drawing
  • US12562918B2 patent drawing
  • US12562918B2 patent drawing

AI summary

In an embodiment, a processor includes hardware circuitry which may be used to detect that a return address has been modified since it was generated. In response to detecting the modification, the processor may be configured to signal an exception or otherwise initiate error handling to prevent execution at the modified return address. In an embodiment, the processor may perform a cryptographic signature operation on the return address to generate a signed return address, and the signature may be verified before the address is used as a return target.