From: Vivek Goyal <vgoyal@redhat.com>
To: zohar@linux.vnet.ibm.com, linux-security-module@vger.kernel.org
Cc: vgoyal@redhat.com, linux-kernel@vger.kernel.org,
dmitry.kasatkin@intel.com
Subject: [PATCH 3/6] ima/evm: Differentiate between ima/evm nolabel return code
Date: Thu, 14 Feb 2013 14:55:42 -0500 [thread overview]
Message-ID: <1360871745-20616-4-git-send-email-vgoyal@redhat.com> (raw)
In-Reply-To: <1360871745-20616-1-git-send-email-vgoyal@redhat.com>
Currently if no IMA/EVM label was present, both return error code
INTEGRITY_NOLABEL. This works fine so far as nobody cares to differentiate
between two error paths.
But with appraise_type=optional, we want to allow file access if IMA
security label is not present. But still disallow access if EVM
security label is not present.
Hence, start using different error codes for two different paths.
Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
---
include/linux/integrity.h | 3 ++-
security/integrity/evm/evm_main.c | 2 +-
security/integrity/ima/ima_appraise.c | 4 ++--
3 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/include/linux/integrity.h b/include/linux/integrity.h
index 66c5fe9..9be4a98 100644
--- a/include/linux/integrity.h
+++ b/include/linux/integrity.h
@@ -15,7 +15,8 @@
enum integrity_status {
INTEGRITY_PASS = 0,
INTEGRITY_FAIL,
- INTEGRITY_NOLABEL,
+ INTEGRITY_IMA_NOLABEL,
+ INTEGRITY_EVM_NOLABEL,
INTEGRITY_NOXATTRS,
INTEGRITY_UNKNOWN,
};
diff --git a/security/integrity/evm/evm_main.c b/security/integrity/evm/evm_main.c
index a78a5e2..254eefe 100644
--- a/security/integrity/evm/evm_main.c
+++ b/security/integrity/evm/evm_main.c
@@ -111,7 +111,7 @@ static enum integrity_status evm_verify_hmac(struct dentry *dentry,
else if (rc == -ENODATA) {
rc = evm_find_protected_xattrs(dentry);
if (rc > 0)
- evm_status = INTEGRITY_NOLABEL;
+ evm_status = INTEGRITY_EVM_NOLABEL;
else if (rc == 0)
evm_status = INTEGRITY_NOXATTRS; /* new file */
}
diff --git a/security/integrity/ima/ima_appraise.c b/security/integrity/ima/ima_appraise.c
index 6f1eeb8..1750556 100644
--- a/security/integrity/ima/ima_appraise.c
+++ b/security/integrity/ima/ima_appraise.c
@@ -143,13 +143,13 @@ int ima_appraise_measurement(int func, struct integrity_iint_cache *iint,
cause = "missing-hash";
status =
- (inode->i_size == 0) ? INTEGRITY_PASS : INTEGRITY_NOLABEL;
+ (inode->i_size == 0) ? INTEGRITY_PASS : INTEGRITY_IMA_NOLABEL;
goto out;
}
status = evm_verifyxattr(dentry, XATTR_NAME_IMA, xattr_value, rc, iint);
if ((status != INTEGRITY_PASS) && (status != INTEGRITY_UNKNOWN)) {
- if ((status == INTEGRITY_NOLABEL)
+ if ((status == INTEGRITY_EVM_NOLABEL)
|| (status == INTEGRITY_NOXATTRS))
cause = "missing-HMAC";
else if (status == INTEGRITY_FAIL)
--
1.7.7.6
next prev parent reply other threads:[~2013-02-14 19:56 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-02-14 19:55 [RFC PATCH 0/6][v3] ima: Support a mode to appraise signed files only Vivek Goyal
2013-02-14 19:55 ` [PATCH 1/6] ima: detect security xattrs not enabled Vivek Goyal
2013-02-14 19:55 ` [PATCH 2/6] ima: Return INTEGRITY_FAIL if digital signature can't be verified Vivek Goyal
2013-03-04 13:48 ` Mimi Zohar
2013-03-04 16:20 ` Vivek Goyal
2013-03-05 13:30 ` Mimi Zohar
2013-03-05 13:54 ` Mimi Zohar
2013-03-05 15:35 ` Vivek Goyal
2013-02-14 19:55 ` Vivek Goyal [this message]
2013-02-14 19:55 ` [PATCH 4/6] ima: Introduce new integrity error code INTEGRITY_XATTR_NOTSUPP Vivek Goyal
2013-02-14 19:55 ` [PATCH 5/6] ima: Allow appraisal of digitally signed files only Vivek Goyal
2013-03-05 19:13 ` Vivek Goyal
2013-03-07 7:44 ` Kasatkin, Dmitry
2013-02-14 19:55 ` [PATCH 6/6] ima: With appraise_type=optional, audit log some messages as info Vivek Goyal
2013-02-14 20:51 ` [RFC PATCH 0/6][v3] ima: Support a mode to appraise signed files only Mimi Zohar
2013-02-14 21:44 ` Vivek Goyal
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1360871745-20616-4-git-send-email-vgoyal@redhat.com \
--to=vgoyal@redhat.com \
--cc=dmitry.kasatkin@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-security-module@vger.kernel.org \
--cc=zohar@linux.vnet.ibm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome