UPDF AI

You Can Run but You Can't Read: Preventing Disclosure Exploits in Executable Code

M. Backes,Thorsten Holz,3 Authors,Jannik Pewny

2014 · DOI: 10.1145/2660267.2660378
Conference on Computer and Communications Security · 161 Citations

TLDR

This paper introduces a new primitive called Execute-no-Read (XnR) which ensures that code can still be executed by the processor, but at the same time code cannot be read as data, which ultimately forfeits the self-disassembly which is necessary for just-in-time code reuse attacks (JIT-ROP) to work.