Bypassing KPTI Using the Speculative Behavior of the SWAPGS Instruction
summary
Claim: SWAPGS executes speculatively and can be abused to swap GS bases during a mispredicted kernel path, letting unprivileged code make the kernel dereference attacker-mapped user addresses and leak pointers via flush+reload. Proof: exploit finds 38 gadgets found in Windows RS5 kernel (triggerable by faults), leaks kernel pointers (<1 ms to trigger, usually <10 tries) and a slower brute-force variant that scans user-space ranges; bypasses KPTI/KVA shadowing. Microsoft issued patches July 2019; Intel has no planned silicon fix.
AI-written summary · about
chapters (6)
- 0:00Introduction
- 3:48Sidechannel Attacks
- 10:10Segmentation
- 20:27Research Question
- 28:01Brute Force Attack
- 38:36Special Considerations
related talks
41mUsing Microarchitectural Design to Break KASLR and More
43mUsing Undocumented CPU Behavior to See Into Kernel Mode and Break KASLR in the Process
33mExploring a New Class of Kernel Exploit Primitive
14mBranch Privilege Injection: Compromising Spectre v2 Hardware Mitigations by...
13mExploiting Inaccurate Branch History in Side-Channel Attacks
24mCurrent State of Exploit Mitigations in the Linux Kernel
48mCapturing 0Day Exploits With Perfectly Placed Hardware Traps
36mLost Control-Breaking Hardware-Assisted Kernel Control-Flow Integrity with Page-Oriented Programming
