[kernel-hardening] Re: [PATCH] shm: handle separate PID namespaces case

Vasiliy Kulikov
2011-07-05T17:29:02Z

On Mon, Jul 04, 2011 at 15:55 +0400, Vasiliy Kulikov wrote:
> shm_try_destroy_orphaned() and shm_try_destroy_current() didn't handle
> the case of separate PID namespaces, but a single IPC namespace. If
> there are tasks with the same PID values using the same shmem object,
> the wrong destroy decision could be reached.
>
> On shm segment creation store the pointer to the creator task in
> shmid_kernel->shm_creator field and zero it on task exit. Then
> use the ->shm_creator insread of ->shm_cprid in both functions.
> As shmid_kernel object is already locked at this stage, no additional
> locking is needed.
>
> Signed-off-by: Vasiliy Kulikov <segoon@openwall.com>
> ---
[...]
> + if (!ns->shm_forced_rmid) {

Oops, this patch is based on my old tree where it was shm_forced_rmid
instead of shm_rmid_forced. I'll resend these 2 patches. Sorry for the
noise...

--
Vasiliy Kulikov
http://www.openwall.com - bringing security into open computing environments