Pointer Authentication Mitigation Circuit for PACMAN Attacks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Modern processor-based devices are vulnerable to PACMAN attacks, which exploit speculative execution to brute-force pointer signatures and leak microarchitectural side channels, allowing control-flow hijacking attacks despite the use of pointer authentication instructions.

Innovation Solution

Implement a mitigation circuit in the processor to detect speculative execution of pointer authentication instructions, modify the pointer signature to indicate validity, and raise a microarchitectural exception to flush the pipeline, preventing leaks of true validity through side channels, and optionally increment an invalid pointer counter to raise an architectural exception if the threshold is exceeded.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If pointer authentication instructions are implemented to protect against control-flow hijacking attacks, then pointer integrity is improved, but the processor becomes vulnerable to PACMAN attacks that exploit speculative execution

Engineering Contradiction:
Improvepointer integrityVSAvoidPACMAN attack vulnerability
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The processor performs preliminary detection of speculative execution conditions before the pointer authentication instruction completes. When speculation is detected, the processor preemptively modifies the pointer signature and raises a microarchitectural exception to prevent the speculative path from leaking information through side channels, thereby countering the PACMAN attack before it can succeed

Inventive Principle:
Principle #9Preliminary anti-action

Solution Approach 2:

The processor introduces an intermediary mitigation circuit that sits between the pointer authentication instruction and the execution pipeline. This circuit monitors for speculative execution, intercepts the authentication result, and controls whether the result is committed to the architectural state or discarded, thereby mediating between the authentication mechanism and the vulnerable speculative execution path

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If the processor raises an architectural exception when pointer authentication fails, then security is improved, but attackers can use microarchitectural side channels to leak authentication results during speculative execution

Engineering Contradiction:
ImprovesecurityVSAvoidauthentication result leakage
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

The processor extracts the authentication result from the normal execution flow when speculation is detected. Instead of allowing the result to propagate through the pipeline and potentially leak via side channels, the mitigation circuit separates the speculative authentication result from the architectural state, preventing information leakage while maintaining security

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The processor changes the parameter of the pointer signature during speculative execution to a predetermined value that indicates invalidity. This parameter change ensures that even if the speculative execution affects microarchitectural state, the altered signature prevents any useful information about the original authentication result from being leaked through side channels

Inventive Principle:
Principle #35Parameter changes

3Loss of information

If the processor flushes the pipeline upon detecting invalid pointers during speculative execution, then information leakage is prevented, but execution performance deteriorates

Engineering Contradiction:
Improveside channel leakage preventionVSAvoidexecution performance
Core Design Contradiction:
Loss of informationVSProductivity

Solution Approach 1:

The processor performs a partial pipeline flush that targets only the instructions affected by the speculative pointer authentication, rather than flushing the entire pipeline. This selective approach prevents information leakage from the vulnerable instruction while minimizing the performance impact by allowing other instructions to continue executing

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The processor implements periodic validation of pointer authentication results at specific pipeline stages, rather than continuously monitoring every instruction. This periodic checking approach maintains security by detecting speculative execution at critical points while reducing the overhead compared to continuous monitoring, thereby preserving execution performance

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS12518004B2Mitigating pointer authentication code (PAC) attacks in processor-based devices
Publication Date: 2026.01.06 QUALCOMM INC
  • US12518004B2 patent drawing
  • US12518004B2 patent drawing
  • US12518004B2 patent drawing

AI summary

Mitigating Pointer Authentication Code (PAC) attacks in processor-based devices is disclosed herein. In this regard, in some exemplary aspects, a processor of a processor-based device is configured to determine that a pointer authentication instruction to authenticate a pointer is being executed speculatively. The processor is further configured to, responsive to determining that the pointer authentication instruction is being executed speculatively, determine, based on a signature of the pointer, that the pointer is not valid. The processor is also configured to, responsive to determining that the pointer is not valid, perform a mitigation action.