diff options
author | Simon McVittie <simon.mcvittie@collabora.co.uk> | 2015-01-26 20:09:56 +0000 |
---|---|---|
committer | Simon McVittie <simon.mcvittie@collabora.co.uk> | 2015-02-05 15:32:49 +0000 |
commit | f9697e04f1c9871cb54a99f087e97e4bb9e41e06 (patch) | |
tree | 04c79a69683acb48053fdace2a231c68a17ccecf | |
parent | 0e0a1bb00e678d30c6b4cedfc4f3894bcf93f666 (diff) | |
download | dbus-f9697e04f1c9871cb54a99f087e97e4bb9e41e06.tar.gz |
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.in | 8 |
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 |