apparmor: disable showing the mode as part of a secid to secctx
authorJohn Johansen <john.johansen@canonical.com>
Tue, 6 Oct 2020 21:43:16 +0000 (14:43 -0700)
committerJohn Johansen <john.johansen@canonical.com>
Thu, 14 Jul 2022 00:18:29 +0000 (17:18 -0700)
commit524d8e14258a3c31bcaf915db5762e41249eb924
tree3d071c02f5bf3ecfd3af63e3d44cd5b8046a294d
parentdf4390934da48e0462d1e77fba3e15f080e2c2a0
apparmor: disable showing the mode as part of a secid to secctx

Displaying the mode as part of the seectx takes up unnecessary memory,
makes it so we can't use refcounted secctx so we need to alloc/free on
every conversion from secid to secctx and introduces a space that
could be potentially mishandled by tooling.

Eg. In an audit record we get

  subj_type=firefix (enforce)

Having the mode reported is not necessary, and might even be confusing
eg. when writing an audit rule to match the above record field you
would use

  -F subj_type=firefox

ie. the mode is not included. AppArmor provides ways to find the mode
without reporting as part of the secctx. So disable this by default
before its use is wide spread and we can't. For now we add a sysctl
to control the behavior as we can't guarantee no one is using this.

Acked-by: Andrea Righi <andrea.righi@canonical.com>
Signed-off-by: John Johansen <john.johansen@canonical.com>
security/apparmor/include/secid.h
security/apparmor/lsm.c
security/apparmor/secid.c