linux_dsm_epyc7002/security/integrity
Dmitry Kasatkin 74de668424 evm: add file system uuid to EVM hmac
EVM uses the same key for all file systems to calculate the HMAC,
making it possible to paste inodes from one file system on to another
one, without EVM being able to detect it.  To prevent such an attack,
it is necessary to make the EVM HMAC file system specific.

This patch uses the file system UUID, a file system unique identifier,
to bind the EVM HMAC to the file system. The value inode->i_sb->s_uuid
is used for the HMAC hash calculation, instead of using it for deriving
the file system specific key.  Initializing the key for every inode HMAC
calculation is a bit more expensive operation than adding the uuid to
the HMAC hash.

Changing the HMAC calculation method or adding additional info to the
calculation, requires existing EVM labeled file systems to be relabeled.
This patch adds a Kconfig HMAC version option for backwards compatability.

Changelog v1:
- squash "hmac version setting"
Changelog v0:
- add missing Kconfig depends (Mimi)

Signed-off-by: Dmitry Kasatkin <dmitry.kasatkin@intel.com>
Signed-off-by: Mimi Zohar <zohar@linux.vnet.ibm.com>
2013-02-06 10:40:28 -05:00
..
evm evm: add file system uuid to EVM hmac 2013-02-06 10:40:28 -05:00
ima ima: differentiate appraise status only for hook specific rules 2013-01-22 16:10:39 -05:00
digsig.c integrity: digital signature verification using multiple keyrings 2011-11-09 16:51:09 +02:00
iint.c ima: per hook cache integrity appraisal status 2013-01-22 16:10:36 -05:00
integrity.h ima: per hook cache integrity appraisal status 2013-01-22 16:10:36 -05:00
Kconfig integrity: digital signature config option name change 2012-01-18 10:46:27 +11:00
Makefile integrity: digital signature config option name change 2012-01-18 10:46:27 +11:00