[systemd-devel] euid 0 not honored authenticating control socket?

Charles Duffy charles at dyfis.net
Thu Jan 21 10:12:26 PST 2016


Howdy --

I have a setuid-root executable from which I'm trying to start or stop a
service. However, when invoking systemctl from this executable -- for which
geteuid() returns 0 -- the control socket is rejected when the ruid does
not match (such that the executable was invoked from a less-privileged
user).

2042 17:02:00.508893788 0 systemd (1) > recvmsg
fd=14(<u>ffff883f648b4280->ffff883f648b4980 /run/systemd/private)
2043 17:02:00.508897318 0 systemd (1) < recvmsg res=45 size=45 data=.AUTH
EXTERNAL 30..NEGOTIATE_UNIX_FD..BEGIN.. tuple=NULL

2068 17:02:00.510329428 0 systemd (1) > sendmsg
fd=14(<u>ffff883f648b4280->ffff883f648b4980 /run/systemd/private) size=24
tuple=NULL
2069 17:02:00.510344760 0 systemd (1) < sendmsg res=24
data=REJECTED..ERROR..ERROR..

What's going on, and why?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/systemd-devel/attachments/20160121/a906029a/attachment.html>


More information about the systemd-devel mailing list