From 9062f89d17d1ab5d6c5c3efae8c6056149ef0a28 Mon Sep 17 00:00:00 2001 Message-Id: <9062f89d17d1ab5d6c5c3efae8c6056149ef0a28@dist-git> From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= Date: Wed, 15 May 2019 21:40:57 +0100 Subject: [PATCH] locking: restrict sockets to mode 0600 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The virtlockd daemon's only intended client is the libvirtd daemon. As such it should never allow clients from other user accounts to connect. The code already enforces this and drops clients from other UIDs, but we can get earlier (and thus stronger) protection against DoS by setting the socket permissions to 0600 Fixes CVE-2019-10132 Reviewed-by: Ján Tomko Signed-off-by: Daniel P. Berrangé (cherry picked from a private commit) Reviewed-by: Jiri Denemark Message-Id: <20190515204058.28077-3-berrange@redhat.com> --- src/locking/virtlockd-admin.socket.in | 1 + src/locking/virtlockd.socket.in | 1 + 2 files changed, 2 insertions(+) diff --git a/src/locking/virtlockd-admin.socket.in b/src/locking/virtlockd-admin.socket.in index 2a7500f3d0..f674c492f7 100644 --- a/src/locking/virtlockd-admin.socket.in +++ b/src/locking/virtlockd-admin.socket.in @@ -5,6 +5,7 @@ Before=libvirtd.service [Socket] ListenStream=@localstatedir@/run/libvirt/virtlockd-admin-sock Service=virtlockd.service +SocketMode=0600 [Install] WantedBy=sockets.target diff --git a/src/locking/virtlockd.socket.in b/src/locking/virtlockd.socket.in index 45e0f20235..d701b27516 100644 --- a/src/locking/virtlockd.socket.in +++ b/src/locking/virtlockd.socket.in @@ -4,6 +4,7 @@ Before=libvirtd.service [Socket] ListenStream=@localstatedir@/run/libvirt/virtlockd-sock +SocketMode=0600 [Install] WantedBy=sockets.target -- 2.21.0