On Wed, Dec 23, 2009 at 10:28:28PM +0100, Casper.Dik at Sun.COM wrote:
> >In the case of loopback IPC: we do not support a system with lo0 unplumbed
> >because we do not know what applications will break.  This proposal seems
> >to result in a system that is at least as unsupportable.
> 
> No, because it is a basic privilege and so all applications will have
> the basic privileges unless they want to run without them.
> 
> Follow on projects will allow us to select what INET connections can be 
> made; I do not believe that a carte blanche for "localhost" connections is 
> warranted: it allows sending email out through sendmail using the 
> submission port.

Just the ability to exec() sendmail suffices for sending e-mail; no need
to talk to sendmail via a socket.  Sure, you could then remove PROC_EXEC
and PROC_NETWORK from a process' privilege sets, but that's pretty
constraining when all you wanted initially was to disallow network
communication.

Also, even without this privilege one could use name services as a
covert channel.  Maybe nscd should not allow a calling process without
this new basic privilege to do host lookups for anything other than
localhost and its aliases as they appear in /etc/inet/hosts.

I do agree that privileges are not suitable for fine-grained access
controls on specific programs, that that's the land of FGAP and FMAC.
This, not by itself but coupled with the simplicity of implementing the
new privilege in socket()/t_open(), is the best rationale for this basic
privilege to apply to all inet/inet6 sockets.

Nico
-- 

Reply via email to