[RFC PATCH 1/4] lsm: separate security_task_getsecid() into subjective and objective variants
paul at paul-moore.com
Sun Feb 21 22:09:48 UTC 2021
On Sun, Feb 21, 2021 at 7:51 AM John Johansen
<john.johansen at canonical.com> wrote:
> On 2/19/21 3:29 PM, Paul Moore wrote:
> > Of the three LSMs that implement the security_task_getsecid() LSM
> > hook, all three LSMs provide the task's objective security
> > credentials. This turns out to be unfortunate as most of the hook's
> > callers seem to expect the task's subjective credentials, although
> > a small handful of callers do correctly expect the objective
> > credentials.
> > This patch is the first step towards fixing the problem: it splits
> > the existing security_task_getsecid() hook into two variants, one
> > for the subjective creds, one for the objective creds.
> > void security_task_getsecid_subj(struct task_struct *p,
> > u32 *secid);
> > void security_task_getsecid_obj(struct task_struct *p,
> > u32 *secid);
> > While this patch does fix all of the callers to use the correct
> > variant, in order to keep this patch focused on the callers and to
> > ease review, the LSMs continue to use the same implementation for
> > both hooks. The net effect is that this patch should not change
> > the behavior of the kernel in any way, it will be up to the latter
> > LSM specific patches in this series to change the hook
> > implementations and return the correct credentials.
> > Signed-off-by: Paul Moore <paul at paul-moore.com>
> So far this looks good. I want to take another stab at it and give
> it some testing
Thanks John, I appreciate the extra set of eyes. Let me know if you
run across anything wonky.
More information about the Linux-security-module-archive