Re: [PATCH] capabilities: Ambient capability set V2

From
Serge E. Hallyn <serge@hallyn.com>
Date
2015-03-06 20:08:43
Also in
lkml
Reply to
Andy Lutomirski, 2015-03-06
On Fri, Mar 06, 2015 at 11:02:43AM -0800, Andy Lutomirski wrote:
On Fri, Mar 6, 2015 at 10:53 AM, Christoph Lameter [off-list ref] wrote:
quoted
On Fri, 6 Mar 2015, Serge E. Hallyn wrote:
quoted
Sorry, something about that patch-patch didn't make sense to me, but I
need to look more closely.  My objection was that you were able to get the
pA capabilities into pP without them being in your pI.  Your proposed
change didn't seem like it would fix that.
Just tried to fix that. Could it be that cap_inherited is never set even
for a binary that has

christoph@fujitsu-haswell:~$ getcap ambient_test

ambient_test = cap_setpcap,cap_net_admin,cap_net_raw,cap_sys_nice+eip
I think that's right.  fI doesn't set pI.
Right.  The idea is that for the running binary to get capability x in its
pP, its privileged ancestor must have set x in pI, and the binary itself
must be trusted with x in fI.

What we are doing is allowing bypassing fI using pA, without bypassing the
requirement for x to be in pI.  Since pI is intended to be filled (for 
instance) at login based on username/group, pI generally does not get cleared.
At the same time, any software which thinks it is running untrusted code
safely without privilege by clearing pI and pP won't be fooled by pA.

-serge
Thread (21 messages) 21 messages, 4 authors, last reply 2015-03-14
Keyboard shortcuts
hback out one level
jnext message in thread / next series-diff position
kprevious message in thread / previous series-diff position
ldrill in
Escclose help / fold thread tree
?toggle this help