Developer knowledge network · moderated exchange

UnreliableCode-Community

Community für Entwicklerforschung, Reverse Engineering und Codierung

Knowledge indexLive
4Categories
919Threads
2.8KBeiträge
Analysis

Stack Frame Unwinding & Return Address Spoofing in x64 Windows

hook_doctor
Hooking Specialist
MEMBER
Vertreter: 181
Beitrittsdatum: Jul 2019
Beiträge: 21
Danke: 50
Vor 3 Wochen · Jul 29, 2026 1:09 PM
#1

How modern anti-cheats detect unauthorized function calls by walking the thread stack:

  1. Anti-cheat hooks internal game functions or analyzes stack frames during exception handlers (RtlCaptureStackBackTrace).
  2. If the return address points to unbacked memory or an unknown non-game module, it flags anomalous call origin.

Return Address Spoofing:
By pushing a legitimate jmp rbx or jmp rax gadget from a signed DLL (e.g. client.dll or ntdll.dll) onto the stack before jumping to the target function, stack walkers see a valid return address pointing inside a signed game module!

x64_assembler
Assembly Guru
MEMBER
Vertreter: 99
Beitrittsdatum: Sep 2022
Beiträge: 14
Danke: 16
Vor 3 Wochen · Jul 29, 2026 3:37 PM
#2

Look for gadget signatures FF 23 (jmp [rbx]) inside legitimate game modules. Clean technique.

kernel_komrade
Driver Dev
MEMBER
Vertreter: 145
Beitrittsdatum: Feb 2019
Beiträge: 26
Danke: 45
Vor 3 Wochen · Jul 30, 2026 5:15 AM
#3

Great overview of call stack spoofing principles.