mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-01-24 13:35:17 +00:00
Fix perms for virConnectDomainXML{To,From}Native (CVE-2013-4401)
The virConnectDomainXMLToNative API should require 'connect:write' not 'connect:read', since it will trigger execution of the QEMU binaries listed in the XML. Also make virConnectDomainXMLFromNative API require a full read-write connection and 'connect:write' permission. Although the current impl doesn't trigger execution of QEMU, we should not rely on that impl detail from an API permissioning POV. Signed-off-by: Daniel P. Berrange <berrange@redhat.com> (cherry picked from commit 57687fd6bf7f6e1b3662c52f3f26c06ab19dc96c)
This commit is contained in:
parent
0eb43777db
commit
90171893ce
@ -4606,6 +4606,10 @@ char *virConnectDomainXMLFromNative(virConnectPtr conn,
|
|||||||
virDispatchError(NULL);
|
virDispatchError(NULL);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
if (conn->flags & VIR_CONNECT_RO) {
|
||||||
|
virLibDomainError(VIR_ERR_OPERATION_DENIED, __FUNCTION__);
|
||||||
|
goto error;
|
||||||
|
}
|
||||||
|
|
||||||
virCheckNonNullArgGoto(nativeFormat, error);
|
virCheckNonNullArgGoto(nativeFormat, error);
|
||||||
virCheckNonNullArgGoto(nativeConfig, error);
|
virCheckNonNullArgGoto(nativeConfig, error);
|
||||||
|
@ -3812,13 +3812,13 @@ enum remote_procedure {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @generate: both
|
* @generate: both
|
||||||
* @acl: connect:read
|
* @acl: connect:write
|
||||||
*/
|
*/
|
||||||
REMOTE_PROC_CONNECT_DOMAIN_XML_FROM_NATIVE = 135,
|
REMOTE_PROC_CONNECT_DOMAIN_XML_FROM_NATIVE = 135,
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @generate: both
|
* @generate: both
|
||||||
* @acl: connect:read
|
* @acl: connect:write
|
||||||
*/
|
*/
|
||||||
REMOTE_PROC_CONNECT_DOMAIN_XML_TO_NATIVE = 136,
|
REMOTE_PROC_CONNECT_DOMAIN_XML_TO_NATIVE = 136,
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user