tech-kern archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: Capsicum: practical capabilities for UNIX
On Sun, Sep 26, 2010 at 01:34:54PM -0400, Perry E. Metzger wrote:
> On Fri, 24 Sep 2010 14:46:10 -0500 David Young <dyoung%pobox.com@localhost>
> wrote:
> > A couple of weeks ago I read a paper on Capsicum, a
> > "lightweight OS capability and sandbox framework,"
> > <http://www.cl.cam.ac.uk/research/security/capsicum/>.
>
> It won best paper at Usenix Security, and the creators have lots of
> experience with previous systems that fed in to how they designed
> Capsicum.
>
> > Capsicum
> > looks like a giant step in the right direction for UNIX security
> > research. I'd like to see a similar function in NetBSD. What are
> > others' impressions of Capcisum? Is anybody working on a port?
>
> A port would be good -- superior to a reinvention. I'm reasonably
> convinced that Robert Watson, Ben Laurie, etc. know what they're doing
> here.
Suffice it to say, it's a good idea. The persons involved are beside
the point.
> > I have a couple of concerns about Capsicum at its current level of
> > development. First, I'm wary of "self-compartmentalization" of
> > programs and libraries. It seems like it could be a lot of work to
> > add self-compartmentalization to just the programs in NetBSD's base
> > system, and when it was finished, I doubt that so many changes
> > would be both trustworthy and consistent.
>
> Actually, the amount of work for any given subsystem is pretty small,
> but I don't think the intent of the architecture is to go through
> libraries doing this. For a program like ntp or bozo-httpd or what
> have you, it is worthwhile, and not a very large effort.
How about this: it's a larger effort than appears to be necessary. As
you say, I don't think that the intent is to go through libraries (or
programs) doing that. I'm not sure what you mean by "subsystem."
> > The second concern is
> > related to the first: a Capsicum sandbox doesn't simulate access to
> > the global namespace for the purpose of unmodified programs
> > calling, e.g., open(2)---can it?
>
> The whole point of a capability system is to remove access to such
> namespaces -- you eliminate the security properties if you do. If the
> desire is a system based on more global policies, you want a MAC
> system of some sort (systrace was a sort of MAC system), not a
> capability architecture.
I think you have misunderstood what I mean by "*simulate* access to the
global namespace".
> I suggest reading Jonathan Shapiro's introduction to capability
> systems, found here:
>
> http://www.eros-os.org/essays/capintro.html
Thanks, but I read that a long time ago. You could say that I'm down
with the concept.
Dave
--
David Young OJC Technologies
dyoung%ojctech.com@localhost Urbana, IL * (217) 278-3933
Home |
Main Index |
Thread Index |
Old Index