Re: [PATCH 1/3] evm: added flag IMA_NEW in theintegrity_iint_cache structure

From: Mimi Zohar
Date: Tue Nov 02 2010 - 07:27:20 EST


On Tue, 2010-11-02 at 11:05 +0100, Roberto Sassu wrote:
> The flag IMA_NEW is set in the function evm_inode_post_init_security()
> to distinguish between new and existent files and it is cleared in the
> function ima_dec_counts(). This permits to check/fix the 'security.ima'
> extended attribute properly in the function ima_appraise_measurement()
> without verifying the 'version' field of the 'integrity_iint_cache'
> structure.
> The 'i_version' field of the inode is not suitable for determining if a
> file is being created because the value '1' may be assumed by inodes
> already in the filesystem before mounting the same with the parameter
> 'iversion' as well as those newly created.
>
> Signed-off-by: Roberto Sassu <roberto.sassu@xxxxxxxxx>

Hi Roberto. Yes, the current patches are not differentiating an
existing file from a new one properly. I think it can be done by
replacing the 'inode->iversion == 1' test in ima_appraise_measurement()
with a test for 'inode->i_size == 0', without adding an xattr.
.
thanks,

Mimi

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/