Re: [SECURITY] /proc/$pid/ leaks contents across setuid exec

From: James Morris
Date: Wed Feb 09 2011 - 21:45:16 EST


On Tue, 8 Feb 2011, Eric W. Biederman wrote:

> Kees Cook <kees.cook@xxxxxxxxxxxxx> writes:
>
> > On Tue, Feb 08, 2011 at 02:43:15PM +1100, James Morris wrote:

> >> > I don't think /proc/$pid/* needs to stay open across execs, does it? Or at
> >> > least the non-0444 files should be handled separately.
> >>
> >> Actually, this seems like a more general kind of bug in proc rather than a
> >> leaked fd. Each child task should only see its own /proc/[pid] data.
> >
> > Right, that's precisely the problem. The unprivileged process can read
> > the setuid process's /proc files.
>
> If these are things that we actually care about we should sprinkle in a
> few more ptrace_may_access calls into implementations of the relevant
> proc files.

This seems to be papering over a bug.

It is plainly broken to return an access error to a task which is
legitimately accessing a file. The task should not receive the wrong
information from /proc/[pid]/* .


- James
--
James Morris
<jmorris@xxxxxxxxx>
--
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/