mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "LA Walsh" <law@tlinx.org>
To: "'Crispin Cowan'" <crispin@wirex.com>,
	"'Christoph Hellwig'" <hch@infradead.org>
Cc: <torvalds@transmeta.com>, <linux-security-module@wirex.com>,
	<linux-kernel@vger.kernel.org>
Subject: RE: [BK PATCH] LSM changes for 2.5.59
Date: Sun, 9 Feb 2003 19:02:12 -0800	[thread overview]
Message-ID: <001001c2d0b0$cf49b190$1403a8c0@sc.tlinx.org> (raw)
In-Reply-To: <3E4702CE.3040403@wirex.com>


> From: Crispin Cowan
>
> Christoph Hellwig wrote:
> 
> LSM does have a careful design. The design goal was to permit loadable 
> kernel modules to mediate access to critical kernel objects by user 
> level processes. By providing such a facility, LSM enables arbitrary 
> security policies and policy management engines to be implemented as 
> loadable modules. This solves the "make one size fit all" problem of 
> diverse interests lobbying Linus to adopt one security model or another 
> as the Linux standard. The LSM design saves Linus from having to make 
> such a  choice by allowing end-users to make their own choice, meeting a 
> goal stated by Linus nearly two years ago.
====
	A security model that mediates access to security objects by
logging all access and blocking access if logging cannot continue is
unsupportable in any straight forward, efficient and/or non-kludgy, ugly
way.  
	LSM is a collection of hack & hooks thrown together in an ad-hoc
manner to support those people who were able to lobby their specific
security policies.  Some security people were banned from the kernel
devel. summit because their thoughts were deemed 'dangerous': fear was they
were too persuasive about ideas that were deemed 'ignorant' and would
fool those poor kernel lambs at the summit.

	Also unsupported: The "no-security" model -- where all security 
is thrown out (to save memory space and cycles) that was desired for embedded work.

	LSM also doesn't support standard LSPP-B1 style graded security
where mandatory access checks are logged as security violations before
DAC checks are even looked at for an object.

	At one point a plan was proposed (by Casey Schaufler, SGI) and 
_\implemented\_ (team members & prjct lead Linda Walsh) to move all
security checks out of the kernel into a 'default policy' module.
The code to implement this was submitted to the LSM list in June 1991.
  
	This plan was shot down as "too radical".  It wasn't what the "kernel
programmers" wanted.  "They" would never accept it and therefore, LSM wouldn't accept it without prior approval from the "kernel
programmers".
When such approval was sought, the seeking party was drawn and quartered
for having the temerity to actually ask the question (since asking the question pointed out the failings of LSM to meet its original
design
goals).

> 
> >The real problem is adding mess to the kernel.
> >
> Christoph's problem is likely that he doesn't like the design. Fair 
> enough, can't please everyone, but a lot of effort went into that 
> design.
---
	True...alot of effort went into building the Titanic as well.

	The modular security model was implemented via macros and cleaned
up the logic of the kernel code by moving toward single exit points
that could allow consistent release of acquired data structures and locks
depending on where failure occurred.  That alone made the code more
readily understandable and maintainable.  Removing security policy
from the code into separate modules also made validation of security
considerably easier.

	So...of course, it wasn't wanted.

	LSM may implement some number of policies, but it is neither robust
nor easy to use.  Only recently was it decided not to require that every
security module to know about every hook.  That was also suggested almost
2 years ago because the current setup makes the implementation of 
security policies *MUCH* more complicated...and, theoretically, inherently
less provably secure.

l. walsh



  reply	other threads:[~2003-02-10  2:53 UTC|newest]

Thread overview: 55+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-02-06 15:02 Stephen D. Smalley
2003-02-06 15:18 ` Christoph Hellwig
2003-02-06 17:16   ` David Wagner
2003-02-06 17:45     ` Christoph Hellwig
2003-02-06 17:51   ` Alan Cox
2003-02-08  2:20   ` jmjones
2003-02-09 20:06     ` Christoph Hellwig
2003-02-10  1:39       ` Crispin Cowan
2003-02-10  3:02         ` LA Walsh [this message]
2003-02-10  3:40           ` Crispin Cowan
2003-02-10  7:34             ` LA Walsh
2003-02-10  8:11               ` Chris Wright
2003-02-10  8:21             ` 'Christoph Hellwig'
2003-02-10  8:33               ` Crispin Cowan
2003-02-10  8:39                 ` 'Christoph Hellwig'
2003-02-10 13:31             ` Alan Cox
2003-02-10 17:29             ` Casey Schaufler
2003-02-12  8:12               ` side issues of baloney with that ham...(was LSM changes for 2.5.59) LA Walsh
2003-02-10 20:51             ` [BK PATCH] LSM changes for 2.5.59 LA Walsh
2003-02-10 21:36               ` David Wagner
2003-02-10 22:14             ` Bill Davidsen
2003-02-11  1:35               ` Dave Jones
2003-02-11 13:59                 ` the modules problems Roman Zippel
2003-02-11 19:44                 ` [BK PATCH] LSM changes for 2.5.59 Bill Davidsen
2003-02-10  4:06           ` J Sloan
2003-02-10  5:59       ` David Wagner
2003-02-10  7:31         ` Christoph Hellwig
2003-02-08  4:13   ` Miles Bader
  -- strict thread matches above, loose matches on Subject: below --
2003-02-13  4:08 Mika Kukkonen
2003-02-12 16:58 Makan Pourzandi (LMC)
2003-02-12 18:45 ` 'Christoph Hellwig'
2003-02-12 19:11 ` magniett
2003-02-12 18:38   ` 'Christoph Hellwig'
2003-02-12 22:22     ` Crispin Cowan
2003-02-12 15:37 Pete Loscocco
     [not found] <b28k4f$hp4$1@abraham.cs.berkeley.edu>
2003-02-12  8:27 ` LA Walsh
2003-02-10 19:57 Stephen D. Smalley
2003-02-10 22:38 ` LA Walsh
2003-02-10 16:55 Stephen D. Smalley
2003-02-11  8:05 ` Christoph Hellwig
2003-02-13 11:08   ` Chris Wright
2003-02-05 16:59 Stephen D. Smalley
2003-02-05 16:47 Stephen D. Smalley
2003-02-05 16:49 ` Christoph Hellwig
2003-02-05 22:07   ` Greg KH
2003-02-05 22:30     ` Christoph Hellwig
2003-02-05 22:39       ` Russell Coker
2003-02-05 22:41         ` Christoph Hellwig
2003-02-05 15:00 Stephen D. Smalley
2003-02-05 15:34 ` Christoph Hellwig
2003-02-05 16:26 ` Mark Hahn
2003-02-05 13:45 Stephen D. Smalley
2003-02-05 14:13 ` Christoph Hellwig
2003-02-05  4:15 Greg KH
2003-02-05  8:47 ` Christoph Hellwig

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='001001c2d0b0$cf49b190$1403a8c0@sc.tlinx.org' \
    --to=law@tlinx.org \
    --cc=crispin@wirex.com \
    --cc=hch@infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-security-module@wirex.com \
    --cc=torvalds@transmeta.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®