mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 10:40:15 +02:00 
			
		
		
		
	ovl: Always reevaluate the file signature for IMA
Commit db1d1e8b98 ("IMA: use vfs_getattr_nosec to get the i_version")
partially closed an IMA integrity issue when directly modifying a file
on the lower filesystem.  If the overlay file is first opened by a user
and later the lower backing file is modified by root, but the extended
attribute is NOT updated, the signature validation succeeds with the old
original signature.
Update the super_block s_iflags to SB_I_IMA_UNVERIFIABLE_SIGNATURE to
force signature reevaluation on every file access until a fine grained
solution can be found.
Signed-off-by: Eric Snowberg <eric.snowberg@oracle.com>
Signed-off-by: Mimi Zohar <zohar@linux.ibm.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
			
			
This commit is contained in:
		
							parent
							
								
									9f91164061
								
							
						
					
					
						commit
						18b44bc5a6
					
				
					 1 changed files with 1 additions and 1 deletions
				
			
		| 
						 | 
					@ -1460,7 +1460,7 @@ int ovl_fill_super(struct super_block *sb, struct fs_context *fc)
 | 
				
			||||||
		ovl_trusted_xattr_handlers;
 | 
							ovl_trusted_xattr_handlers;
 | 
				
			||||||
	sb->s_fs_info = ofs;
 | 
						sb->s_fs_info = ofs;
 | 
				
			||||||
	sb->s_flags |= SB_POSIXACL;
 | 
						sb->s_flags |= SB_POSIXACL;
 | 
				
			||||||
	sb->s_iflags |= SB_I_SKIP_SYNC;
 | 
						sb->s_iflags |= SB_I_SKIP_SYNC | SB_I_IMA_UNVERIFIABLE_SIGNATURE;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	err = -ENOMEM;
 | 
						err = -ENOMEM;
 | 
				
			||||||
	root_dentry = ovl_get_root(sb, ctx->upper.dentry, oe);
 | 
						root_dentry = ovl_get_root(sb, ctx->upper.dentry, oe);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue