[PATCH 2/2] AppArmor: Fix lsm_get_self_attr()

Paul Moore paul at paul-moore.com
Fri Feb 23 21:07:18 UTC 2024


On Fri, Feb 23, 2024 at 2:06 PM Mickaël Salaün <mic at digikod.net> wrote:
>
> aa_getprocattr() may not initialize the value's pointer in some case.
> As for proc_pid_attr_read(), initialize this pointer to NULL in
> apparmor_getselfattr() to avoid an UAF in the kfree() call.
>
> Cc: Casey Schaufler <casey at schaufler-ca.com>
> Cc: John Johansen <john.johansen at canonical.com>
> Cc: Paul Moore <paul at paul-moore.com>
> Cc: stable at vger.kernel.org
> Fixes: 223981db9baf ("AppArmor: Add selfattr hooks")
> Signed-off-by: Mickaël Salaün <mic at digikod.net>
> ---
>  security/apparmor/lsm.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

If you like John, I can send this up to Linus with the related SELinux
fix, I would just need an ACK from you.

> diff --git a/security/apparmor/lsm.c b/security/apparmor/lsm.c
> index 98e1150bee9d..9a3dcaafb5b1 100644
> --- a/security/apparmor/lsm.c
> +++ b/security/apparmor/lsm.c
> @@ -784,7 +784,7 @@ static int apparmor_getselfattr(unsigned int attr, struct lsm_ctx __user *lx,
>         int error = -ENOENT;
>         struct aa_task_ctx *ctx = task_ctx(current);
>         struct aa_label *label = NULL;
> -       char *value;
> +       char *value = NULL;
>
>         switch (attr) {
>         case LSM_ATTR_CURRENT:
> --
> 2.43.0

-- 
paul-moore.com



More information about the Linux-security-module-archive mailing list