Re: [PATCH] lkdtm: add test for executing .rodata
From: Kees Cook
Date: Tue Feb 23 2016 - 15:53:31 EST
On Mon, Feb 22, 2016 at 3:21 PM, PaX Team <pageexec@xxxxxxxxxxx> wrote:
> On 22 Feb 2016 at 12:46, Kees Cook wrote:
>
>> GCC really wants to declare the section. :(
>
> hmm, i see, so how about going about it another way. instead of trying
> to do this at compile/link time, do it an load/runtime. one way of doing
> it would be to preserve a page in .rodata then map in a code page underneath
> that holds your empty function (which you can generate from C). it'd be
> somewhat similar to how the vsyscall page on amd64 is mapped (or used to
> be mapped) from the kernel image into its userland visible place.
I prefer using all the "regular" mechanisms so that I really know I'm
exercising the actual case I want to be testing. (i.e. I don't want to
bypass the linker.)
If only there were some way to filter gcc output, like with plugins. ;)
-Kees
--
Kees Cook
Chrome OS & Brillo Security