Re: [PATCH 1/1] file capabilities: remove cap_task_kill() (-git)

From: Andrew Morton
Date: Wed Mar 19 2008 - 18:41:13 EST


On Wed, 19 Mar 2008 11:56:35 -0500
"Serge E. Hallyn" <serue@xxxxxxxxxx> wrote:

> (resending once against -git. I had sent against -stable in
> http://lkml.org/lkml/2008/2/28/225. Without this patch,
> atd is broken at least on some distros.)

So this fix is needed in 2.6.24.x?

> The original justification for cap_task_kill() was as follows:
>
> check_kill_permission() does appropriate uid equivalence checks.
> However with file capabilities it becomes possible for an
> unprivileged user to execute a file with file capabilities
> resulting in a more privileged task with the same uid.
>
> However now that cap_task_kill() always returns 0 (permission
> granted) when p->uid==current->uid, the whole hook is worthless,
> and only likely to create more subtle problems in the corner cases
> where it might still be called but return -EPERM. Those cases
> are basically when uids are different but euid/suid is equivalent
> as per the check in check_kill_permission().
>
> One example of a still-broken application is 'at' for non-root users.

This 2.6.25-rc6 patch doesn't apply correctly to 2.6.24. I can't find a
*formal* copy of your 2.6.24 patch on stable@xxxxxxxxxx, so perhaps a
resend for -stable is in order.

--
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/