summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon McVittie <simon.mcvittie@collabora.co.uk>2015-01-26 20:09:56 +0000
committerSimon McVittie <simon.mcvittie@collabora.co.uk>2015-02-04 16:45:16 +0000
commit6dbd09fedc396c53b25ea73c6c8a278beca349c7 (patch)
tree1a517e366a36dea5ce5279269e994aa4f2db75d0
parent3a78d91694236f2a12626987cfc0b94891691576 (diff)
CVE-2015-0245: prevent forged ActivationFailure from non-root processes
Without either this rule or better checking in dbus-daemon, non-systemd processes can make dbus-daemon think systemd failed to activate a system service, resulting in an error reply back to the requester. This is redundant with the fix in the C code (which I consider to be the real solution), but is likely to be easier to backport. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=88811 Reviewed-by: Alban Crequy Reviewed-by: David King Reviewed-by: Philip Withnall
-rw-r--r--bus/system.conf.in8
1 files changed, 8 insertions, 0 deletions
diff --git a/bus/system.conf.in b/bus/system.conf.in
index 92f4cc42..851b9e63 100644
--- a/bus/system.conf.in
+++ b/bus/system.conf.in
@@ -68,6 +68,14 @@
<deny send_destination="org.freedesktop.DBus"
send_interface="org.freedesktop.DBus"
send_member="UpdateActivationEnvironment"/>
+ <deny send_destination="org.freedesktop.DBus"
+ send_interface="org.freedesktop.systemd1.Activator"/>
+ </policy>
+
+ <!-- Only systemd, which runs as root, may report activation failures. -->
+ <policy user="root">
+ <allow send_destination="org.freedesktop.DBus"
+ send_interface="org.freedesktop.systemd1.Activator"/>
</policy>
<!-- Config files are placed here that among other things, punch