Re: [PATCH 12/19] CacheFiles: Permit a process's create SID to beoverridden

From: Karl MacMillan
Date: Mon Nov 20 2006 - 14:57:27 EST


Stephen Smalley wrote:
On Tue, 2006-11-14 at 16:19 -0500, James Morris wrote:
On Tue, 14 Nov 2006, David Howells wrote:

+static u32 selinux_set_fscreate_secid(u32 secid)
+{
+ struct task_security_struct *tsec = current->security;
+ u32 oldsid = tsec->create_sid;
+
+ tsec->create_sid = secid;
+ return oldsid;
+}
The ability to set this needs to be mediated via MAC policy.

See selinux_setprocattr()

That's different - selinux_set_fscreate_secid() is for internal use by a
kernel module that wishes to temporarily assume a particular fscreate
SID, whereas selinux_setprocattr() handles userspace writes
to /proc/self/attr nodes. Imposing a permission check here makes no
sense.


Since that discussion last week I have been thinking about this and I have to say I agree with Steve. This should be a kernel only mechanism for impersonating another SID - controlling the setting of process attributes shouldn't be restricted as this will only lead to inconsistencies in those attributes.

Karl
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/