Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

PaX and W^X use segmentation on x86. x86 code segments were by design and definition non-writable--you couldn't write to any region in a code segment unless a writable data or stack segment overlapped the same region. This was a deliberate feature of the hardware that happened to go unused in favor of flat memory models in the most popular operating systems.


No. PaX has both SEGMEXEC and PAGEEXEC. PAGEEXEC does not use segmentation, and works without page-level HW support by using the split data/code TLB.

https://en.wikipedia.org/wiki/Executable_space_protection#Pa...

https://pax.grsecurity.net/docs/pageexec.txt

contrasted with:

https://pax.grsecurity.net/docs/segmexec.txt




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: