Thread (69 messages) 69 messages, 5 authors, 2018-06-04

Re: [RFC PATCH ghak32 V2 01/13] audit: add container id

From: Casey Schaufler <casey@schaufler-ca.com>
Date: 2018-04-19 01:15:57
Also in: cgroups, linux-fsdevel, lkml, netdev

On 4/18/2018 5:46 PM, Paul Moore wrote:
On Wed, Apr 18, 2018 at 8:41 PM, Casey Schaufler [off-list ref] wrote:
quoted
On 4/18/2018 4:47 PM, Paul Moore wrote:
quoted
On Fri, Mar 16, 2018 at 5:00 AM, Richard Guy Briggs [off-list ref] wrote:
quoted
Implement the proc fs write to set the audit container ID of a process,
emitting an AUDIT_CONTAINER record to document the event.
...
diff --git a/include/linux/sched.h b/include/linux/sched.h
index d258826..1b82191 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -796,6 +796,7 @@ struct task_struct {
 #ifdef CONFIG_AUDITSYSCALL
        kuid_t                          loginuid;
        unsigned int                    sessionid;
+       u64                             containerid;
This one line addition to the task_struct scares me the most of
anything in this patchset.  Why?  It's a field named "containerid" in
a perhaps one of the most widely used core kernel structures; the
possibilities for abuse are endless, and it's foolish to think we
would ever be able to adequately police this.
If we can get the LSM infrastructure managed task blobs from
module stacking in ahead of this we could create a trivial security
module to manage this. It's not as if there aren't all sorts of
interactions between security modules and the audit system already.
While yes, there are plenty of interactions between the two, it is
possible to use audit without the LSMs and I would like to preserve
that.  
Fair enough.
Further, I don't want to entangle two very complicated code
changes or make the audit container ID effort dependent on LSM
stacking.
Also fair, although the use case for container audit IDs is
already pulling in audit, namespaces (yeah, I know it's not
necessary for a container to use namespaces) security modules
(stacked and/or namespaced), cgroups and who knows what else.
You're a good salesman Casey, but you're not that good ;)
I have to keep the skills sharpened somehow!

OK, I'll grant that this isn't a great fit.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help