lkml.org 
[lkml]   [2006]   [Oct]   [8]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateSun, 08 Oct 2006 02:56:43 -0700
FromJeremy Fitzhardinge <>
SubjectRe: [patch] honour MNT_NOEXEC for access()
Stas Sergeev wrote:
>> Not really.  If you want to do something along those lines it would 
>> be better to add a new open flag called something like O_RDEXONLY 
>> which would require r-x effective file permissions, and allow 
>> PROT_READ|PROT_EXEC mmaps (though for that to be really useful, you'd 
>> need to make an O_RDONLY fd not allow PROT_EXEC mmaps, which would 
>> break a few things).
> It will break _many_ things - my intention is to find a
> solution for ld.so that won't break things at all.

Yeah, sorry about that.  I was using ironic understatement, but it's not 
something that comes across well in email.

> But your idea about playing with the flags is interesting.
> What if the currently-unused MAP_EXECUTABLE flag became a
> way for the program to express that it needs an exec perm,
> and so the mmap should fail if there is none? I think ld.so
> will be happy using such a flag...

Yes, but it doesn't solve the fact that there isn't really anything 
special about ld.so, so putting special checks into it doesn't really 
solve the overall problem.

Also, I guess there's the general question of what the noexec mount flag 
really means?  Does it mean "make the execve syscall fail", or does it 
mean "no bits on this filesystem may be interpreted as instructions".  
The former is simple to implement, but probably not very useful; the 
latter is not possible to implement in general.

    J

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2006-10-08 11:59    [from the cache]
©2003-2008