Lower Process Capabilities
Serge E. Hallyn
serue at us.ibm.com
Mon Jul 27 13:42:23 UTC 2009
Quoting Steve Grubb (sgrubb at redhat.com):
> On Monday 27 July 2009 09:11:33 am Serge E. Hallyn wrote:
> > Quoting Steve Grubb (sgrubb at redhat.com):
> > > On Sunday 26 July 2009 08:54:26 pm Steve Grubb wrote:
> > > > > I trust you meant to write 0555?
> > > >
> > > > No, I really mean 005 so that root daemons are using public
> > > > permissions. Admins of course have DAC_OVERRIDE and can do anything.
> > > > Try the script in a VM and tell me if there are any problems you see.
> > >
> > > I should elaborate more. The issue is that sometimes there are secrets
> > > that root admins have access to that should not be available to
> > > semi-trusted daemons. For example, any private keys in /root or /etc. You
> > > do not want any daemon that could be compromised to have access to these.
> > > So, its safest just to set the permissions to 0005 so that they have no
> > > access to /root.
> >
> > But 0555 will also prevent root without CAP_DAC_OVERRIDE from writing, no?
>
> True. After some thought, I guess most secrets that a partially trusted root
> daemon may attempt to access would be in /root, /etc, /var, and /home. Perhaps
> those are the ones that need the extra tight permissions?
Well 0555 vs. 0755 is already 'extra tight' for /bin itself, no?
> > Using 0005 will mean root also needs CAP_DAC_OVERRIDE to read/execute,
> > which seems a bit much. Suddenly it needs extra privilege if i just want
> > it to be able to execute /bin/date. That actually seems less secure in any
> > real system.
>
> # ls -l /bin/date
> -rwxr-xr-x 1 root root 69296 2009-03-02 08:57 /bin/date
>
> The file is 0755 and therefore is executable by anyone. DAC_OVERRIDE is not
> needed for anything but writing to the file as in "yum update".
But you said you were making /bin 0005, in which case users other than
root could access /bin/date, but root itself could not without
CAP_DAC_OVERRIDE (as tested by:
mkdir delme
chmod 005 delme
ls delme
Permission denied
)
-serge
More information about the fedora-devel-list
mailing list