• T
    IMA: support for duplicate measurement records · 52c20839
    Tushar Sugandhi 提交于
    IMA measures contents of a given file/buffer/critical-data record,
    and properly re-measures it on change.  However, IMA does not measure
    the duplicate value for a given record, since TPM extend is a very
    expensive operation.  For example, if the record changes from value
    'v#1' to 'v#2', and then back to 'v#1', IMA will not measure and log
    the last change to 'v#1', since the hash of 'v#1' for that record is
    already present in the IMA htable.  This limits the ability of an
    external attestation service to accurately determine the current state
    of the system.  The service would incorrectly conclude that the latest
    value of the given record on the system is 'v#2', and act accordingly.
    
    Define and use a new Kconfig option IMA_DISABLE_HTABLE to permit
    duplicate records in the IMA measurement list.
    
    In addition to the duplicate measurement records described above,
    other duplicate file measurement records may be included in the log,
    when CONFIG_IMA_DISABLE_HTABLE is enabled.  For example,
        - i_version is not enabled,
        - i_generation changed,
        - same file present on different filesystems,
        - an inode is evicted from dcache
    Signed-off-by: NTushar Sugandhi <tusharsu@linux.microsoft.com>
    Reviewed-by: NPetr Vorel <pvorel@suse.cz>
    [zohar@linux.ibm.com: updated list of duplicate measurement records]
    Signed-off-by: NMimi Zohar <zohar@linux.ibm.com>
    52c20839
ima_queue.c 6.4 KB