All of lore.kernel.org
 help / color / mirror / Atom feed
From: Casey Schaufler <casey.schaufler@intel.com>
To: kernel-hardening@lists.openwall.com,
	linux-kernel@vger.kernel.org,
	linux-security-module@vger.kernel.org, selinux@tycho.nsa.gov,
	SMACK-discuss@lists.01.org, casey.schaufler@intel.com,
	dave.hansen@intel.com, deneen.t.dock@intel.com,
	kristen@linux.intel.com, arjan@linux.intel.com
Subject: [PATCH RFC 5/5] SELinux: Support SELinux determination of side-channel vulnerability
Date: Wed, 15 Aug 2018 16:53:55 -0700	[thread overview]
Message-ID: <20180815235355.14908-6-casey.schaufler@intel.com> (raw)
In-Reply-To: <20180815235355.14908-1-casey.schaufler@intel.com>

SELinux considers tasks to be side-channel safe if they
have PROCESS_SHARE access.

Signed-off-by: Casey Schaufler <casey.schaufler@intel.com>
---
 security/selinux/hooks.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/security/selinux/hooks.c b/security/selinux/hooks.c
index a8bf324130f5..7fbd7d7ac1cb 100644
--- a/security/selinux/hooks.c
+++ b/security/selinux/hooks.c
@@ -4219,6 +4219,14 @@ static void selinux_task_to_inode(struct task_struct *p,
 	spin_unlock(&isec->lock);
 }
 
+static int selinux_task_safe_sidechannel(struct task_struct *p)
+{
+	struct av_decision avd;
+
+	return avc_has_perm_noaudit(&selinux_state, current_sid(), task_sid(p),
+				    SECCLASS_PROCESS, PROCESS__SHARE, 0, &avd);
+}
+
 /* Returns error only if unable to parse addresses */
 static int selinux_parse_skb_ipv4(struct sk_buff *skb,
 			struct common_audit_data *ad, u8 *proto)
@@ -7002,6 +7010,7 @@ static struct security_hook_list selinux_hooks[] __lsm_ro_after_init = {
 	LSM_HOOK_INIT(task_movememory, selinux_task_movememory),
 	LSM_HOOK_INIT(task_kill, selinux_task_kill),
 	LSM_HOOK_INIT(task_to_inode, selinux_task_to_inode),
+	LSM_HOOK_INIT(task_safe_sidechannel, selinux_task_safe_sidechannel),
 
 	LSM_HOOK_INIT(ipc_permission, selinux_ipc_permission),
 	LSM_HOOK_INIT(ipc_getsecid, selinux_ipc_getsecid),
-- 
2.17.1


WARNING: multiple messages have this Message-ID (diff)
From: casey.schaufler@intel.com (Casey Schaufler)
To: linux-security-module@vger.kernel.org
Subject: [PATCH RFC 5/5] SELinux: Support SELinux determination of side-channel vulnerability
Date: Wed, 15 Aug 2018 16:53:55 -0700	[thread overview]
Message-ID: <20180815235355.14908-6-casey.schaufler@intel.com> (raw)
In-Reply-To: <20180815235355.14908-1-casey.schaufler@intel.com>

SELinux considers tasks to be side-channel safe if they
have PROCESS_SHARE access.

Signed-off-by: Casey Schaufler <casey.schaufler@intel.com>
---
 security/selinux/hooks.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/security/selinux/hooks.c b/security/selinux/hooks.c
index a8bf324130f5..7fbd7d7ac1cb 100644
--- a/security/selinux/hooks.c
+++ b/security/selinux/hooks.c
@@ -4219,6 +4219,14 @@ static void selinux_task_to_inode(struct task_struct *p,
 	spin_unlock(&isec->lock);
 }
 
+static int selinux_task_safe_sidechannel(struct task_struct *p)
+{
+	struct av_decision avd;
+
+	return avc_has_perm_noaudit(&selinux_state, current_sid(), task_sid(p),
+				    SECCLASS_PROCESS, PROCESS__SHARE, 0, &avd);
+}
+
 /* Returns error only if unable to parse addresses */
 static int selinux_parse_skb_ipv4(struct sk_buff *skb,
 			struct common_audit_data *ad, u8 *proto)
@@ -7002,6 +7010,7 @@ static struct security_hook_list selinux_hooks[] __lsm_ro_after_init = {
 	LSM_HOOK_INIT(task_movememory, selinux_task_movememory),
 	LSM_HOOK_INIT(task_kill, selinux_task_kill),
 	LSM_HOOK_INIT(task_to_inode, selinux_task_to_inode),
+	LSM_HOOK_INIT(task_safe_sidechannel, selinux_task_safe_sidechannel),
 
 	LSM_HOOK_INIT(ipc_permission, selinux_ipc_permission),
 	LSM_HOOK_INIT(ipc_getsecid, selinux_ipc_getsecid),
-- 
2.17.1

  parent reply	other threads:[~2018-08-15 23:54 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-08-15 23:53 [PATCH RFC 0/5] LSM: Add and use a hook for side-channel safety checks Casey Schaufler
2018-08-15 23:53 ` Casey Schaufler
2018-08-15 23:53 ` [PATCH RFC 1/5] LSM: Introduce a hook for side-channel danger Casey Schaufler
2018-08-15 23:53   ` Casey Schaufler
2018-08-15 23:53 ` [PATCH RFC 2/5] X86: Support LSM determination of side-channel vulnerability Casey Schaufler
2018-08-15 23:53   ` Casey Schaufler
2018-08-16 14:09   ` Jann Horn
2018-08-16 14:09     ` Jann Horn
2018-08-15 23:53 ` [PATCH RFC 3/5] LSM: Security module checking for side-channel dangers Casey Schaufler
2018-08-15 23:53   ` Casey Schaufler
2018-08-16 14:15   ` Jann Horn
2018-08-16 14:15     ` Jann Horn
2018-08-15 23:53 ` [PATCH RFC 4/5] Smack: Support determination of side-channel vulnerability Casey Schaufler
2018-08-15 23:53   ` Casey Schaufler
2018-08-15 23:53 ` Casey Schaufler [this message]
2018-08-15 23:53   ` [PATCH RFC 5/5] SELinux: Support SELinux " Casey Schaufler
2018-08-16 14:12   ` Stephen Smalley
2018-08-16 14:12     ` Stephen Smalley
2018-08-16 14:22   ` Jann Horn
2018-08-16 14:22     ` Jann Horn

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=20180815235355.14908-6-casey.schaufler@intel.com \
    --to=casey.schaufler@intel.com \
    --cc=SMACK-discuss@lists.01.org \
    --cc=arjan@linux.intel.com \
    --cc=dave.hansen@intel.com \
    --cc=deneen.t.dock@intel.com \
    --cc=kernel-hardening@lists.openwall.com \
    --cc=kristen@linux.intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-security-module@vger.kernel.org \
    --cc=selinux@tycho.nsa.gov \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.