On Tue, 2002-11-05 at 21:01, Adam Thornton wrote: > other data spaces, and I don't think you can execute code from data > spaces, but you see where this is going), so you could share your shared
x86 alas doesnt support page level "no execute". Other platforms do and can run with nonexec stacks. People still exploit them. The libraries are mostly mapped read only on Linux, people don't need to modify them. You put arguments on the stack, and corrupt the return code to call the right C library function.