From d3aa4da57e02b18e8664d26a45ba941f468d2aa4 Mon Sep 17 00:00:00 2001 From: Lubomir Rintel Date: Tue, 29 Oct 2024 16:37:52 +0100 Subject: [PATCH] data/NetworkManager.service: restrict the unit some more MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This adds some low-hanging food to improve our score with "systemd-analyze security" by one point: Before: → Overall exposure level for NetworkManager.service: 7.8 EXPOSED 🙁 After: → Overall exposure level for NetworkManager.service: 6.8 MEDIUM 😐 Nothing particularly impactful here: we still got DAC_OVERRIDE, we still can insert loadable modules (as opposed to relying on autoload) and read user home directories. But there's a slight chance this may save our butts one day, who knows. https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/2062 --- data/NetworkManager.service.in | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/data/NetworkManager.service.in b/data/NetworkManager.service.in index d0cd8b732e..b27b8d2dd8 100644 --- a/data/NetworkManager.service.in +++ b/data/NetworkManager.service.in @@ -21,8 +21,16 @@ TimeoutStartSec=600 CapabilityBoundingSet=CAP_NET_ADMIN CAP_DAC_OVERRIDE CAP_NET_RAW CAP_BPF CAP_NET_BIND_SERVICE CAP_SETGID CAP_SETUID CAP_SYS_MODULE CAP_AUDIT_WRITE CAP_KILL CAP_SYS_CHROOT -ProtectSystem=true +PrivateTmp=true + +ProtectClock=true +ProtectControlGroups=true ProtectHome=read-only +ProtectKernelLogs=true +ProtectSystem=true + +RestrictRealtime=true +RestrictSUIDSGID=true # We require file descriptors for DHCP etc. When activating many interfaces, # the default limit of 1024 is easily reached.