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