[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <FE51C682-23F0-4BFE-AA3F-E3B74F9D6E3A@mac.com>
Date: Sun, 24 Sep 2006 15:37:16 -0400
From: Kyle Moffett <mrmacman_g4@....com>
To: daw-usenet@...erner.cs.berkeley.edu (David Wagner)
Cc: linux-kernel@...r.kernel.org
Subject: Re: [patch] remove MNT_NOEXEC check for PROT_EXEC mmaps
On Sep 24, 2006, at 15:14:02, David Wagner wrote:
> Stas Sergeev wrote:
>> Ulrich Drepper wrote:
>>> The consensus has been to add the same checks to mprotect. They
>>> were
>>> not left out intentionally.
>>
>> But how about the anonymous mmap with PROT_EXEC set?
>
> I'm curious about this, too. ld-linux.so is a purely unprivileged
> program. It isn't setuid root. Can you write a variant of ld-
> linux.so
> that reads an executable into memory off of a partition mounted
> noexec and
> then begins executing that code? (perhaps by using anonymous mmap
> with
> PROT_EXEC or some other mechanism) It sure seems like the answer would
> be yes. If so, I'm having a hard time understanding what guarantees
> noexec gives you. Isn't the noexec flag just a speedbump that raises
> the bar a little but doesn't really prevent anything?
I seem to recall somewhere that it was possible to prevent anonymous
memory from being mapped PROT_EXEC during or after being mapped
PROT_WRITE; and that in fact your average SELinux-enabled system had
such protections for everything but the Java binary and a few other
odd programs. If you can't ever execute any data blobs except those
that came directly from a properly-secured SELinux-enabled filesystem
it makes exploiting a server significantly harder.
Cheers,
Kyle Moffett
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists