a2479f
From: =?UTF-8?q?J=C3=A1n=20Tomko?= <jtomko@redhat.com>
a2479f
Date: Fri, 14 Jun 2019 09:16:14 +0200
a2479f
Subject: [PATCH] api: disallow virConnectGetDomainCapabilities on read-only
a2479f
 connections
a2479f
MIME-Version: 1.0
a2479f
Content-Type: text/plain; charset=UTF-8
a2479f
Content-Transfer-Encoding: 8bit
a2479f
a2479f
This API can be used to execute arbitrary emulators.
a2479f
Forbid it on read-only connections.
a2479f
a2479f
Fixes: CVE-2019-10167
a2479f
Signed-off-by: Ján Tomko <jtomko@redhat.com>
a2479f
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
a2479f
(cherry picked from commit 8afa68bac0cf99d1f8aaa6566685c43c22622f26)
a2479f
---
a2479f
 src/libvirt-domain.c | 1 +
a2479f
 1 file changed, 1 insertion(+)
a2479f
a2479f
diff --git a/src/libvirt-domain.c b/src/libvirt-domain.c
a2479f
index f77fc23a3f..c500d6be36 100644
a2479f
--- a/src/libvirt-domain.c
a2479f
+++ b/src/libvirt-domain.c
a2479f
@@ -11360,6 +11360,7 @@ virConnectGetDomainCapabilities(virConnectPtr conn,
a2479f
     virResetLastError();
a2479f
 
a2479f
     virCheckConnectReturn(conn, NULL);
a2479f
+    virCheckReadOnlyGoto(conn->flags, error);
a2479f
 
a2479f
     if (conn->driver->connectGetDomainCapabilities) {
a2479f
         char *ret;