Re: [PATCH 4/4] ima: only audit failed appraisal verifications

From: Mimi Zohar
Date: Mon May 20 2019 - 17:23:13 EST


On Thu, 2019-05-16 at 18:12 +0200, Roberto Sassu wrote:
> This patch ensures that integrity_audit_msg() is called only when the
> status is not INTEGRITY_PASS.
>
> Fixes: 8606404fa555c ("ima: digital signature verification support")
> Signed-off-by: Roberto Sassu <roberto.sassu@xxxxxxxxxx>
> Cc: stable@xxxxxxxxxxxxxxx
> ---
> security/integrity/ima/ima_appraise.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/security/integrity/ima/ima_appraise.c b/security/integrity/ima/ima_appraise.c
> index a32ed5d7afd1..f5f4506bcb8e 100644
> --- a/security/integrity/ima/ima_appraise.c
> +++ b/security/integrity/ima/ima_appraise.c
> @@ -359,8 +359,9 @@ int ima_appraise_measurement(enum ima_hooks func,
> status = INTEGRITY_PASS;
> }
>
> - integrity_audit_msg(AUDIT_INTEGRITY_DATA, inode, filename,
> - op, cause, rc, 0);
> + if (status != INTEGRITY_PASS)
> + integrity_audit_msg(AUDIT_INTEGRITY_DATA, inode,
> + filename, op, cause, rc, 0);

For some reason, the integrity verification has failed. ÂIn some
specific cases, we'll let it pass, but do we really want to remove any
indication that it failed in all cases?

Mimi


> } else {
> ima_cache_flags(iint, func);
> }