public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Dax Kelson <dax@gurulabs.com>
To: Alexander Viro <viro@math.psu.edu>
Cc: Linus Torvalds <torvalds@transmeta.com>,
	Oliver Xymoron <oxymoron@waste.org>,
	Olaf Dietsche <olaf.dietsche#list.linux-kernel@t-online.de>,
	"Theodore Ts'o" <tytso@mit.edu>,
	Rusty Russell <rusty@rustcorp.com.au>,
	linux-kernel@vger.kernel.org, davej@suse.de
Subject: Re: Filesystem Capabilities in 2.6?
Date: 03 Nov 2002 00:16:02 -0700	[thread overview]
Message-ID: <1036307763.31699.214.camel@thud> (raw)
In-Reply-To: <Pine.GSO.4.21.0211030048170.25010-100000@steklov.math.psu.edu>

On Sat, 2002-11-02 at 23:37, Alexander Viro wrote:
> 
> Congratulations with potential crapload of security holes - now anyone
> who'd compromised a process running as nobody can chmod the damn thing
> and modify it.

Speaking of user 'nobody', modern best practices (and shipped vendor
configuration) strongly discourages lumping everything under 'nobody'.

Each app should run in its own security context by itself.  That is why
I have all the following users in my /etc/passwd:

apache nscd squid xfs ident rpc pcap nfsnobody radvd gdm named ntp

I didn't have to do this myself, my vendor shipped it that way. I don't
have any daemons running as 'nobody'.

I think it is well understood that having more than one app run as the
same uid (historically, nobody) is a Bad Thing(tm).

> And that is the reason why suid-nonroot is bad.  

Generally speaking yes, but don't remove that ability for those who have
applications/circumstances where suid-noroot+caps can be a simple and
clean solution. Vendors, of course, are not likely to ship
suid-noroot+caps binaries.
 
> Note that _all_ binaries that need any capabilities now are written to
> be suid-root.  So the only case left from your scenario is
> 	* new binary
> 	* runs with UID of caller
> 	* wants some capabilities
> 	* doesn't want to be portable (it won't work on any other Unix,
> since we had assumed that it doesn't want to be suid-root and still
> relies on caps present)
> 	* doesn't use any of $BIGNUM portable mechanisms (separate
> helpers, descriptor-passing, yadda, yadda).
> 
> Umm...  Do we really want to help these out?  We don't even have an
> excuse of that being an important 3rd-party program brought from some
> other system - it will be Linux-only and new, at that.

Pardon if I miss parsed.

On a 'everything install RHL8.0', there exists 47 SUID root binaries.

Don't we want to convert them to 'run with UID of caller and with some
capabilities'?

Isn't this the common case?

A process executing as root, even with ZERO capabilities, is still quite
privileged/dangerous.  That process can replace root owned binaries, and
read /etc/shadow.

I see two problem spaces that capabilities helps with:

1. SUID root binaries --> run as caller with need capabilities
2. root daemons --> run as defined non-root user with capabilities

Problem space 2 can be tackled right now assuming the daemon doesn't try
to fork+exec another binary and expect that binary to inherit the
capabilities that it has.

> 
> Comments?

See above :)


  reply	other threads:[~2002-11-03  7:09 UTC|newest]

Thread overview: 124+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-11-01  8:49 Rusty's Remarkably Unreliable List of Pending 2.6 Features Rusty Russell
2002-11-01 16:19 ` Karim Yaghmour
2002-11-02  6:32   ` Rusty Russell
2002-11-01 18:32 ` Filesystem Capabilities in 2.6? Dax Kelson
2002-11-01 19:05   ` Nicholas Wourms
2002-11-01 22:07     ` Olaf Dietsche
2002-11-01 23:25       ` Jan Harkes
2002-11-04 17:51         ` Mark H. Wood
2002-11-01 22:07   ` Olaf Dietsche
2002-11-01 22:59   ` Rusty Russell
2002-11-02 13:41     ` Olaf Dietsche
2002-11-02  7:06   ` Theodore Ts'o
2002-11-02 13:38     ` Olaf Dietsche
2002-11-02 18:18       ` Olaf Dietsche
2002-11-02 22:57       ` Bernd Eckenfels
2002-11-02 18:35     ` Dax Kelson
2002-11-06  1:07       ` Bill Davidsen
2002-11-02 18:47     ` Linus Torvalds
2002-11-02 23:02       ` Bernd Eckenfels
2002-11-02 23:11       ` Chris Wedgwood
2002-11-03  0:18       ` Rik van Riel
2002-11-03  0:22         ` Linus Torvalds
2002-11-03  0:43           ` Alexander Viro
2002-11-03  0:52             ` Alexander Viro
2002-11-04 13:02             ` Pavel Machek
2002-11-03  0:47           ` Rik van Riel
2002-11-03  1:53             ` Linus Torvalds
2002-11-03  1:05           ` David D. Hagood
2002-11-03  2:05             ` Linus Torvalds
2002-11-03 13:55               ` Olaf Dietsche
2002-11-05  8:47               ` Rogier Wolff
2002-11-05 10:50                 ` Bernd Eckenfels
2002-11-03  1:27           ` Alan Cox
2002-11-03  2:43             ` Werner Almesberger
2002-11-03 12:46               ` Alan Cox
2002-11-03  0:56       ` Olaf Dietsche
2002-11-03  2:03         ` Linus Torvalds
2002-11-03  2:21           ` Alexander Viro
2002-11-03  3:23             ` Linus Torvalds
2002-11-03  3:35               ` Linus Torvalds
2002-11-03  4:28                 ` Alexander Viro
2002-11-03 13:03                   ` Alan Cox
2002-11-03 14:51                     ` Alexander Viro
2002-11-03 16:50                       ` Alan Cox
2002-11-03 16:56                         ` Alexander Viro
2002-11-03 16:56                           ` yodaiken
2002-11-03 18:13                             ` Linus Torvalds
2002-11-03 18:25                               ` yodaiken
2002-11-03 18:42                                 ` Linus Torvalds
2002-11-04  0:40                               ` Rik van Riel
2002-11-03  7:36                 ` Hacksaw
2002-11-03  8:59                   ` Kai Henningsen
2002-11-03 10:50                     ` Hacksaw
2002-11-04  8:55                       ` Rando Christensen
2002-11-03 12:57                 ` Alan Cox
2002-11-03 15:20                   ` Bernd Eckenfels
2002-11-03 16:30                     ` Ragnar Kjørstad
2002-11-03 16:40                       ` Bernd Eckenfels
2002-11-03 17:10                       ` Alan Cox
2002-11-09 20:11                     ` Pavel Machek
2002-11-10 22:50                       ` Bernd Eckenfels
2002-11-03 13:55                 ` Olaf Dietsche
2002-11-03  3:50               ` Oliver Xymoron
2002-11-03  4:00                 ` Dax Kelson
2002-11-03  4:10                   ` Oliver Xymoron
2002-11-03 13:55                     ` Olaf Dietsche
2002-11-03  4:20                 ` Linus Torvalds
2002-11-03  4:37                   ` Alexander Viro
2002-11-03  4:54                     ` Linus Torvalds
2002-11-03  5:09                       ` Alexander Viro
2002-11-03  5:39                         ` Linus Torvalds
2002-11-03  6:37                           ` Alexander Viro
2002-11-03  7:16                             ` Dax Kelson [this message]
2002-11-03  9:18                               ` Alexander Viro
2002-11-03 20:35                               ` Michal Jaegermann
2002-11-04  9:25                               ` Antti Salmela
2002-11-04 12:24                                 ` Olaf Dietsche
2002-11-04 14:39                             ` Theodore Ts'o
2002-11-04 15:13                       ` Jesse Pollard
2002-11-03  5:03                   ` Oliver Xymoron
2002-11-03  5:25                     ` Dax Kelson
2002-11-03  5:52                     ` Linus Torvalds
2002-11-03  6:46                       ` Alexander Viro
2002-11-03 12:53                         ` Alan Cox
2002-11-03 13:52                       ` Olaf Dietsche
2002-11-03 14:38                         ` Alexander Viro
2002-11-03 16:01                           ` Olaf Dietsche
2002-11-03 16:09                             ` Alexander Viro
2002-11-03 12:51                   ` Alan Cox
2002-11-03 21:02                     ` Ryan Anderson
2002-11-03  3:36             ` [REPORT] current use of capabilities Dax Kelson
2002-11-03 13:57               ` Olaf Dietsche
2002-11-05 12:14               ` Andreas Gruenbacher
2002-11-03  4:04             ` Filesystem Capabilities in 2.6? Dax Kelson
2002-11-03  4:10               ` Alexander Viro
2002-11-03  5:31               ` Erik Andersen
2002-11-03  5:37                 ` Dax Kelson
2002-11-03  5:42                   ` Erik Andersen
2002-11-03  6:07                     ` Dax Kelson
2002-11-03 22:24                       ` Anders Gustafsson
2002-11-03 15:13             ` Bernd Eckenfels
2002-11-03 12:45           ` Alan Cox
2002-11-03 15:49             ` Patrick Finnegan
2002-11-04 15:00               ` Patrick Finnegan
2002-11-04 15:51                 ` Olaf Dietsche
2002-11-04 16:53                   ` Patrick Finnegan
2002-11-04 17:23                     ` Olaf Dietsche
2002-11-03 13:30           ` Olaf Dietsche
2002-11-03 15:11           ` Bernd Eckenfels
2002-11-04  2:49           ` Jan Harkes
2002-11-04 14:50             ` Theodore Ts'o
2002-11-04 15:33               ` Alan Cox
2002-11-04 20:35                 ` Ulrich Drepper
2002-11-04 21:50                   ` Linus Torvalds
2002-11-04 14:58       ` Jesse Pollard
2002-11-05 23:47       ` Bill Davidsen
2002-11-06 13:36         ` Jesse Pollard
2002-11-05  4:14   ` Andreas Gruenbacher
2002-11-05 14:48     ` Olaf Dietsche
2002-11-05 15:05       ` Andreas Gruenbacher
  -- strict thread matches above, loose matches on Subject: below --
2002-11-03  0:31 Albert D. Cahalan
2002-11-03  3:15 ` john slee
2002-11-06  0:00 ` Bill Davidsen
2002-11-05  0:11 Tom Reinhart

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=1036307763.31699.214.camel@thud \
    --to=dax@gurulabs.com \
    --cc=davej@suse.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=olaf.dietsche#list.linux-kernel@t-online.de \
    --cc=oxymoron@waste.org \
    --cc=rusty@rustcorp.com.au \
    --cc=torvalds@transmeta.com \
    --cc=tytso@mit.edu \
    --cc=viro@math.psu.edu \
    /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