Re: [PATCH] proc: don't show nonexistent capabilities (v2)

From: Serge Hallyn
Date: Mon Oct 08 2012 - 11:47:14 EST


Quoting Kees Cook (keescook@xxxxxxxxxxxx):
> On Sun, Oct 7, 2012 at 2:56 AM, Andrew Vagin <avagin@xxxxxxxxxx> wrote:
> > Without this patch it is really hard to interpret a bounding set,
> > if CAP_LAST_CAP is unknown for a current kernel.
> >
> > Non-existant capabilities can not be deleted from a bounding set
> > with help of prctl.
> >
> > E.g.: Here are two examples without/with this patch.
> > CapBnd: ffffffe0fdecffff
> > CapBnd: 00000000fdecffff
> >
> > I suggest to hide non-existent capabilities. Here is two reasons.
> > * It's logically and easier for using.
> > * It helps to checkpoint-restore capabilities of tasks, because tasks
> > can be restored on another kernel, where CAP_LAST_CAP is bigger.
> >
> > v2: Non-existent capabilities can not be removed from creds, because
> > in this case user cannot set all=eip. This patch cleans up non-existent
> > capabilities from content of /proc/pid/status
> >
> > Cc: Andrew G. Morgan <morgan@xxxxxxxxxx>
> > Cc: Serge Hallyn <serge.hallyn@xxxxxxxxxxxxx>

Basic capsh tests seem to have no problem with it.

Thanks, Andrew.

Reviewed-by: Serge E. Hallyn <serge.hallyn@xxxxxxxxxxxxx>

> > Cc: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
> > Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
> > Cc: Kees Cook <keescook@xxxxxxxxxxxx>
> > Cc: KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx>
> > Signed-off-by: Andrew Vagin <avagin@xxxxxxxxxx>
>
> Seems sensible to me.
>
> Reviewed-by: Kees Cook <keescook@xxxxxxxxxxxx>
>
> -Kees
>
> --
> Kees Cook
> Chrome OS Security
--
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/