summaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorMimi Zohar <zohar@linux.ibm.com>2023-10-18 14:47:02 -0400
committerMimi Zohar <zohar@linux.ibm.com>2023-10-31 08:22:36 -0400
commitb836c4d29f2744200b2af41e14bf50758dddc818 (patch)
tree4ec0534db76707ad1e7d5a0ffe3a1bcd5b140901 /fs
parentb46503068cb9ed63ff1d8250f143354ead0b16eb (diff)
downloadlinux-b836c4d29f2744200b2af41e14bf50758dddc818.tar.gz
linux-b836c4d29f2744200b2af41e14bf50758dddc818.tar.bz2
linux-b836c4d29f2744200b2af41e14bf50758dddc818.zip
ima: detect changes to the backing overlay file
Commit 18b44bc5a672 ("ovl: Always reevaluate the file signature for IMA") forced signature re-evaulation on every file access. Instead of always re-evaluating the file's integrity, detect a change to the backing file, by comparing the cached file metadata with the backing file's metadata. Verifying just the i_version has not changed is insufficient. In addition save and compare the i_ino and s_dev as well. Reviewed-by: Amir Goldstein <amir73il@gmail.com> Tested-by: Eric Snowberg <eric.snowberg@oracle.com> Tested-by: Raul E Rangel <rrangel@chromium.org> Cc: stable@vger.kernel.org Signed-off-by: Mimi Zohar <zohar@linux.ibm.com>
Diffstat (limited to 'fs')
-rw-r--r--fs/overlayfs/super.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/overlayfs/super.c b/fs/overlayfs/super.c
index 3fa2416264a4..c71d185980c0 100644
--- a/fs/overlayfs/super.c
+++ b/fs/overlayfs/super.c
@@ -1489,7 +1489,7 @@ int ovl_fill_super(struct super_block *sb, struct fs_context *fc)
ovl_trusted_xattr_handlers;
sb->s_fs_info = ofs;
sb->s_flags |= SB_POSIXACL;
- sb->s_iflags |= SB_I_SKIP_SYNC | SB_I_IMA_UNVERIFIABLE_SIGNATURE;
+ sb->s_iflags |= SB_I_SKIP_SYNC;
err = -ENOMEM;
root_dentry = ovl_get_root(sb, ctx->upper.dentry, oe);