linux/security/integrity
Dmitry Kasatkin 742b40ef8d evm: properly handle INTEGRITY_NOXATTRS EVM status
commit 3dcbad52cf upstream.

Unless an LSM labels a file during d_instantiate(), newly created
files are not labeled with an initial security.evm xattr, until
the file closes.  EVM, before allowing a protected, security xattr
to be written, verifies the existing 'security.evm' value is good.
For newly created files without a security.evm label, this
verification prevents writing any protected, security xattrs,
until the file closes.

Following is the example when this happens:
fd = open("foo", O_CREAT | O_WRONLY, 0644);
setxattr("foo", "security.SMACK64", value, sizeof(value), 0);
close(fd);

While INTEGRITY_NOXATTRS status is handled in other places, such
as evm_inode_setattr(), it does not handle it in all cases in
evm_protect_xattr().  By limiting the use of INTEGRITY_NOXATTRS to
newly created files, we can now allow setting "protected" xattrs.

Changelog:
- limit the use of INTEGRITY_NOXATTRS to IMA identified new files

Signed-off-by: Dmitry Kasatkin <d.kasatkin@samsung.com>
Signed-off-by: Mimi Zohar <zohar@linux.vnet.ibm.com>
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
History 2014-11-14 15:20:09 +00:00
..
evm evm: properly handle INTEGRITY_NOXATTRS EVM status 2014-11-14 15:20:09 +00:00
ima ima: check xattr value length and type in the ima_inode_setxattr() 2014-11-13 11:48:50 +00:00
digsig.c Revert "ima: define '_ima' as a builtin 'trusted' keyring" 2013-11-23 16:36:35 -08:00
digsig_asymmetric.c ima: read and use signature hash algorithm 2013-10-25 17:16:59 -04:00
iint.c integrity: fix checkpatch errors 2014-03-07 12:15:45 -05:00
integrity.h ima: check xattr value length and type in the ima_inode_setxattr() 2014-11-13 11:48:50 +00:00
integrity_audit.c Merge git://git.infradead.org/users/eparis/audit 2014-04-12 12:38:53 -07:00
Kconfig integrity: move integrity_audit_msg() 2013-06-20 07:47:49 -04:00
Makefile security: cleanup Makefiles to use standard syntax for specifying sub-directories 2014-02-17 11:08:04 +11:00