Date: Wed, 02 Nov 2005 11:06:40 -0800 From: Julian Elischer <julian@elischer.org> To: =?ISO-8859-1?Q?Dag-Erling_Sm=F8rgrav?= <des@des.no> Cc: Jimmy Scott <jimmy@inet-solutions.be>, Robert Watson <rwatson@freebsd.org>, freebsd-security@freebsd.org Subject: Re: Non-executable stack Message-ID: <43690E40.5040705@elischer.org> In-Reply-To: <86pspjz0xu.fsf@xps.des.no> References: <200510270608.51571.db@traceroute.dk> <200510291242.16461.db@traceroute.dk> <20051029131519.GA22254@ada.devbox.be> <200510291412.57656.db@traceroute.dk> <86pspjz0xu.fsf@xps.des.no>
index | next in thread | previous in thread | raw e-mail
Dag-Erling Smørgrav wrote: >db <db@traceroute.dk> writes: > > >>Memory on ia32 can be writable and readable. When it is readable it >>is also executable. On other arch's like AMD64 and IA64, I believe >>memory can be readable, writable and executable. >> >> > >Not quite. IA32 can make individual segments readable, writable and / >or executable, but lacks the ability to do so on a per-page basis. >Since we have trampoline code at the top of the stack, the entire >stack segment must be executable. Moving the trampoline off the stack >would solve the problem on all platforms. > > There has been recent talk of a shared kernel/user memory page.. that could be used for trampoline code. >W^X across the board is not an option - it would break HotSpot and >other JIT-based software. > >DES > >help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?43690E40.5040705>
