Re: Security fix for remapping of page 0 (was [PATCH] Change ZERO_SIZE_PTR to point at unmapped space)
From: Eric Paris
Date: Wed Jun 03 2009 - 15:51:27 EST
On Wed, Jun 3, 2009 at 3:42 PM, Christoph Lameter
<cl@xxxxxxxxxxxxxxxxxxxx> wrote:
> On Wed, 3 Jun 2009, Eric Paris wrote:
>
>> NAK with SELinux on you now need both the SELinux mmap_zero
>> permission and the CAP_SYS_RAWIO permission. Previously you only
>> needed one or the other, depending on which was the predominant
>> LSM.....
>
> CAP_SYS_RAWIO is checked so you only need to check for mmap_zero in
> SELinux.
You misunderstand. As it stands today if you use SELinux you need
only the selinux mmap_zero permission. If you use capabilities you
need CAP_SYS_RAWIO.
With your patch SELinux policy would now have to grant CAP_SYS_RAWIO
everywhere it grants mmap_zero. This not not acceptable. Take notice
that with SELinux enabled cap_file_mmap is never called.....
>> Even if you want to argue that I have to take CAP_SYS_RAWIO in the
>> SELinux case what about all the other places? do_mremap? do_brk?
>> expand_downwards?
>
> brk(0) would free up all the code? The others could be added.
The 'right'est fix is as Alan suggested, duplicate the code
from security/capability.c::cap_file_mmap()
to include/linux/security.h::securitry_file_mmap()
-Eric
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/