lkml.org 
[lkml]   [1999]   [Feb]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: RFC: Security feature: partly prohibit process uid-changing
On Tue, Feb 23, 1999 at 11:59:45AM +0100, Ph. Marek wrote:
> How about implementing a new field in the process structure, which gives
> the SMALLEST possible uid for this process? standard would be 0, but could
> be raised by all|root to any other value, maybe root could want lower it too.
>
> that would primarily be used in servers, where e.g. after a setreuid() the
> uid should NEVER AGAIN become 0 (chroot() environments). this flag would be
> given to the children too.
> that should prohibit use of SETUID programs too ...
>
> the standard cases would be 0 (normal usage) and 1 (no root anymore), maybe
> 100 (no daemon-uid's).
> We would need a syscall for that and preferable an entry like
> /proc/*/security.
>
>
> I think that something like that wouldn't make much work - I volunteer for
> that, although I have not much knowledge in kernel hacking. but if someone
> looks at my piece of code, I'd write it.
>
>
> comments? is that A Right Thing To Do?
>

I don't think this is a good idea. There is no smooth scale from
"unprivileged" to "privileged". Processes need different kinds of
privilege, and access to a set of UIDs which is individual for each
process. Trying to cram this into a linear scale won't work.

I see the need for more flexible mechanisms for switching UIDs, but
don't think your proposal is flexible enough. The examples you give
where you want it to be impossible for a process to obtain any sort of
root privileges are enforceable without any changes - set the
inheritable set of the executing process to 0.

A more flexible way of doing this would be to allow UIDs to be passed
over a socket - that way the policy can be put in a user-land daemon
and we can implement whatever policy the application needs.

astor

--
Alexander Kjeldaas, Fast Search & Transfer, Trondheim, Norway

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:50    [W:0.044 / U:1.132 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site