Re: [PATCH v12 12/26] ima: Only accept AUDIT rules for non-init_ima_ns namespaces for now
"Serge E. Hallyn" <[email protected]> Sun, 22 May 2022 12:38:44 -0500
| Newsgroups | dev.linux.lists.containers,org.kernel.vger.linux-integrity,org.kernel.vger.linux-kernel,org.kernel.vger.linux-security-module |
|---|---|
| Message-ID | <[email protected]> |
On Wed, Apr 20, 2022 at 10:06:19AM -0400, Stefan Berger wrote: > Only accept AUDIT rules for non-init_ima_ns namespaces for now. Reject This sentence gives me trouble - i keep thinking you mean that you'll reject AUDIT rules for init_ima_ns :) Can you rephrase it as something like For non-init_ima_ns namespaces, only accept AUDIT rules for now. :) > all rules that require support for measuring, appraisal, and hashing. > > Signed-off-by: Stefan Berger <[email protected]> > Acked-by: Christian Brauner <[email protected]> > Reviewed-by: Mimi Zohar <[email protected]> > > --- > v9: > - Jump to err_audit when unsupported rules are detected > --- > security/integrity/ima/ima_policy.c | 12 ++++++++++++ > 1 file changed, 12 insertions(+) > > diff --git a/security/integrity/ima/ima_policy.c b/security/integrity/ima/ima_policy.c > index 59e4ae5a6361..45a997709200 100644 > --- a/security/integrity/ima/ima_policy.c > +++ b/security/integrity/ima/ima_policy.c > @@ -1812,6 +1812,17 @@ static int ima_parse_rule(struct ima_namespace *ns, > result = -EINVAL; > break; > } > + > + /* IMA namespace only accepts AUDIT rules */ > + if (ns != &init_ima_ns && result == 0) { > + switch (entry->action) { > + case MEASURE: > + case APPRAISE: > + case HASH: So... what about DONT_MEASURE and DONT_APPRAISE? > + result = -EINVAL; > + goto err_audit; > + } > + } > } > if (!result && !ima_validate_rule(entry)) > result = -EINVAL; > @@ -1824,6 +1835,7 @@ static int ima_parse_rule(struct ima_namespace *ns, > check_template_modsig(template_desc); > } > > +err_audit: > audit_log_format(ab, "res=%d", !result); > audit_log_end(ab); > return result; > -- > 2.34.1