[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <0f54c1636b390689031ac48e32b238a83777e09c.camel@linux.ibm.com>
Date: Mon, 23 Nov 2020 10:10:26 -0500
From: Mimi Zohar <zohar@...ux.ibm.com>
To: KP Singh <kpsingh@...omium.org>
Cc: James Morris <jmorris@...ei.org>,
open list <linux-kernel@...r.kernel.org>,
bpf <bpf@...r.kernel.org>,
Linux Security Module list
<linux-security-module@...r.kernel.org>,
Yonghong Song <yhs@...com>,
Alexei Starovoitov <ast@...nel.org>,
Daniel Borkmann <daniel@...earbox.net>,
Florent Revest <revest@...omium.org>,
Brendan Jackman <jackmanb@...omium.org>,
Petr Vorel <pvorel@...e.cz>
Subject: Re: [PATCH bpf-next v2 3/3] bpf: Update LSM selftests for
bpf_ima_inode_hash
[Cc'ing Petr Vorel]
On Mon, 2020-11-23 at 15:06 +0100, KP Singh wrote:
> On Mon, Nov 23, 2020 at 2:24 PM Mimi Zohar <zohar@...ux.ibm.com> wrote:
> >
> > On Sat, 2020-11-21 at 00:50 +0000, KP Singh wrote:
> > > From: KP Singh <kpsingh@...gle.com>
> > >
> > > - Update the IMA policy before executing the test binary (this is not an
> > > override of the policy, just an append that ensures that hashes are
> > > calculated on executions).
> >
> > Assuming the builtin policy has been replaced with a custom policy and
> > CONFIG_IMA_WRITE_POLICY is enabled, then yes the rule is appended. If
> > a custom policy has not yet been loaded, loading this rule becomes the
> > defacto custom policy.
> >
> > Even if a custom policy has been loaded, potentially additional
> > measurements unrelated to this test would be included the measurement
> > list. One way of limiting a rule to a specific test is by loopback
> > mounting a file system and defining a policy rule based on the loopback
> > mount unique uuid.
>
> Thanks Mimi!
>
> I wonder if we simply limit this to policy to /tmp and run an executable
> from /tmp (like test_local_storage.c does).
>
> The only side effect would be of extra hashes being calculated on
> binaries run from /tmp which is not too bad I guess?
The builtin measurement policy (ima_policy=tcb") explicitly defines a
rule to not measure /tmp files. Measuring /tmp results in a lot of
measurements.
{.action = DONT_MEASURE, .fsmagic = TMPFS_MAGIC, .flags = IMA_FSMAGIC},
>
> We could do the loop mount too, but I am guessing the most clean way
> would be to shell out to mount from the test? Are there some other examples
> of IMA we could look at?
LTP loopback mounts a filesystem, since /tmp is not being measured with
the builtin "tcb" policy. Defining new policy rules should be limited
to the loopback mount. This would pave the way for defining IMA-
appraisal signature verification policy rules, without impacting the
running system.
Mimi
Powered by blists - more mailing lists