Loading…
CanSecWest 2023 has ended
Thursday, March 23 • 2:30pm - 3:30pm
Synthetic Memory Protections - Beyond R, W, and X

Log in to save this to your schedule, view media, leave feedback and see who's attending!

Feedback form is now closed.
The attack method described in "Smash the Stack For Fun and Profit" (1996) depended upon the stack being executable. Within a few years, most processors came with MMU capabilities allowing the stack to be marked non-executable. This capability was extended to apply to all memory and named the W^X policy. Attackers then switched to ROP methods instead, which utilize the stack to point at fragments of code ("gadgets") which must remain executable. In response, Address Space Randomization to hide the location of the gadgets became commonplace over the next decade. Sadly, other software bugs can produce info-leaks which reveal the gadget locations, so the principle of "Never Reuse An Address Space" was introduced (meaning, always fork+execve), but adoption is still slowgoing. A variety of Control-Flow-Integrity mechanisms (such as RETGUARD) were also invented to reduce primary "function-tail" gadgets, but X86-style polymorphic gadgets remain a problem. OpenBSD was first to market with each of these responses. This talk will summarize the situation briefly, and then describe new mechanisms being explored in OpenBSD to make ROP exploitation more difficult.

Speakers
avatar for Theo de Raadt

Theo de Raadt

founder, OpenBSD
Theo de Raadt is the project lead of OpenBSD and serial instigator for security mitigations and sub-projects like OpenSSH. For nearly 30 years Theo has studied the runtime requirements of regular code to constrast against the runtime requirements used in attack methodologies. This... Read More →


Thursday March 23, 2023 2:30pm - 3:30pm PDT
CanSecWest Main Room - Sheraton Wall Centre (North Tower 3rd floor, Jr. Ballroom CD) 1000 Burrard St, Vancouver, BC V6Z 2R9