[cap-talk] Failure isolation (was: Re: images and capability security)
Jed Donnelley
capability at webstart.com
Sun Mar 16 02:58:13 EDT 2008
At 01:39 PM 3/15/2008, Pierre THIERRY wrote:
>Scribit Jed Donnelley dies 15/03/2008 hora 11:47:
> > >Put the code wherever you like
> > seems to me overstated, since the authority a program has seems in so
> > many instances to depend on "where" it is.
>
>Isn't it precisely because POLA is not enforced? Kernel code compiled or
>interpreted with capability discipline shouldn't be an issue, should it?
>
>Of course, in general it would not be enforcing POLA to execute code in
>kernel mode when it's not really necessary, but it could be for
>performance or hardware-related reasons.
I think the only issue above is terminology. I used the term
"kernel" to mean the fully trusted part of the system - part
of the "trusted computing base". Many hardware architectures
do have a "kernel" mode that is usually used to run code
from the trusted computing base, but you are of course right
that other means could be used to set up separated domains
between distinct code sets (e.g. methods) run in "kernel" mode.
> > One straight forward approach to solving the computer security problem
> > hasn't been tried in the modern era. This approach is that of
> > Principle Of Least Authority (POLA) computing. Just as ship builders
> > learned that by having multiple water tight compartments in their
> > ships they could keep them from sinking if a compartment was breached,
> > computer systems can be made resilient to breaches (e.g. viruses or
> > other forms of "malware") if they are composed of multiple "water
> > tight" (mutually suspicious) compartments.
>
>If it's for a workshop about capabilities, doesn't it lack a mention of
>their relation to POLA? Something like:
>
> Capabilities not only are a mean to achieve POLA in a both humanly and
> technically manageable way, but they also provide an expressive
> framework to reason about POLA formally and informally.
The above sounds nice. I particularly like the wording about
using capabilities as "an expressive framework to reason about
POLA formally and informally."
I'm sure we can work in something like the above as we move further along.
>I like your comparison with water tight compartments. It calls for a
>graphical comparison...
Ah well, I guess I may as well include the rest of my draft
"prospectus" then for comment:
________________________
Computer security, recently ranked as tech's #1 all-time flop by
InfoWorld, is such a well known problem that IT professionals have
become inured to continuous computer security fire fights. As
InfoWorld said, "Thirty years into the personal computer era, and it
seems like security is only getting worse." We've gotten better at
managing software patches, but software vulnerabilities seem to come
up and get exploited faster than we can repair them, fast enough that
exploiting computer security vulnerabilities is big business.
One straight forward approach to solving the computer security
problem hasn't been tried in the modern era. This approach is that
of Principle Of Least Authority (POLA) computing. Just as ship
builders learned that by having multiple water tight compartments in
their ships they could keep them from sinking if a compartment was
breached, computer systems can be made resilient to breaches (e.g.
viruses or other forms of "malware") if they are composed of multiple
"water tight" (mutually suspicious) compartments. In the early years
of computer system development this was a rather popular approach to
making systems more secure.
As the Unix and Windows paradigm of having two compartments, a "user"
compartment (where application programs run with all of a user's
authority) and a "kernel" compartment, came to dominate computing,
things seemed at first to be working rather well. Arguments were
even made that POLA computing created more problems than it solved
and that two "compartments" should suffice for secure computing.
Today this situation has changed dramatically. "Things" are no
longer working well at all. Computer security is a serious problem
and with the advent of the Web is getting much more intractable (e.g.
the well known "mash-up" problem). In recent years researchers have
begun to revisit Principle Of Least Authority computing
paradigms. In particular the most popular POLA approach, the
"capability" paradigm (where protected references to objects can be
sent in messages) has been shown to not be subject to the problems
that early critics had suggested. In addition it has recently been
realized that the popular "Object Oriented" programming paradigm is
really just the same capability paradigm in another (language)
context. This realization has brought additional discipline and
synergy to capability systems. These developments, together with
many other new developments in capability design such as user
interface developments (e.g. the "power box") and underlying
infrastructure developments (e.g. identity based controls and
auditing), have resulted in resurgent interest in and development of
modern capability systems.
The focus of this Capability Systems Workshop is to:
1. bring representative researchers from past capability
developments together with modern practitioners to bring forward
relevant historical concepts to enhance modern work, and to
2. bring together modern practitioners who haven't had a chance to
meet and directly discuss capability mechanisms and systems and how
they are being applied to solve the computer security problem in
modern systems and networks.
We look forward to an exciting workshop that will go beyond the sort
of sharing of security problems and patches typical of computer
security conferences to change the computer security "game" with
Principle Of Least Authority computing in Capability Systems.
_______________
We're still at a very early stage (working on sponsorship),
but feel free to comment.
--Jed http://www.webstart.com/jed-signature.html
More information about the cap-talk
mailing list