~/talk

What Cannot Be Read, Cannot Be Leveraged? Revisiting Assumptions of JIT-ROP...

Talkat USENIX Security '16 · 2016-08-10..08-12· [security]
links:none on file
links:none on file
links:none on file
slides:none on file

Demonstrates that JIT-ROP does not need readable code: a JIT compiler is coerced to emit arbitrary three-byte gadgets by controlling displacement fields in conditional jumps and direct-call offsets, then gadget addresses are recovered via leaked function pointers or return addresses. Implements attacks against Chrome, IE11 and Firefox variants (gadget generation takes ~1.3s in Chrome, ~32s average in IE11) and proposes a mitigation that converts relative into indirect addressing with measured 2% performance overhead and 26% code-size overhead.

AI-written summary · about

  1. 0:00Intro
  2. 0:17Overview
  3. 2:33Code Reuse Defenses
  4. 4:11Execute-no-Read (XnR) Schemes
  5. 5:08JIT Spraying [WOOT10]
  6. 6:04Defenses in Browsers
  7. 7:152B Gadgets
  8. 9:02Emitting Gadgets via Control Flow Instructions
  9. 9:47Conditional Jumps in JS
  10. 11:08Direct Calls in JS
  11. 13:41Gadgets in Chrome 51 (64-bit)
  12. 15:10Limitations in Internet Explorer
  13. 18:16Gadgets in IE 11 (32-bit)
  14. 18:51Gadgets in Browsers
  15. 19:49Defense - Direct Calls
  16. 20:49Defense - Conditional Jumps
  17. 21:41Defense - Overhead
  18. 22:30Summary
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.