// For flags

CVE-2014-5177

libvirt: unsafe parsing of XML documents allows libvirt DoS and/or arbitrary file read

Severity Score

1.2
*CVSS v2

Exploit Likelihood

*EPSS

Affected Versions

*CPE

Public Exploits

0
*Multiple Sources

Exploited in Wild

-
*KEV

Decision

-
*SSVC
Descriptions

libvirt 1.0.0 through 1.2.x before 1.2.5, when fine grained access control is enabled, allows local users to read arbitrary files via a crafted XML document containing an XML external entity declaration in conjunction with an entity reference to the (1) virDomainDefineXML, (2) virNetworkCreateXML, (3) virNetworkDefineXML, (4) virStoragePoolCreateXML, (5) virStoragePoolDefineXML, (6) virStorageVolCreateXML, (7) virDomainCreateXML, (8) virNodeDeviceCreateXML, (9) virInterfaceDefineXML, (10) virStorageVolCreateXMLFrom, (11) virConnectDomainXMLFromNative, (12) virConnectDomainXMLToNative, (13) virSecretDefineXML, (14) virNWFilterDefineXML, (15) virDomainSnapshotCreateXML, (16) virDomainSaveImageDefineXML, (17) virDomainCreateXMLWithFiles, (18) virConnectCompareCPU, or (19) virConnectBaselineCPU API method, related to an XML External Entity (XXE) issue. NOTE: this issue was SPLIT from CVE-2014-0179 per ADT3 due to different affected versions of some vectors.

libvirt 1.0.0 hasta 1.2.x anterior a 1.2.5, cuando el control de acceso detallado está habilitado, permite a usuarios locales leer ficheros arbitrarios a través de un documento XML manipulado que contiene una declaración de entidad externa XML en conjunto con una referencia de entidad en el método API (1) virDomainDefineXML, (2) virNetworkCreateXML, (3) virNetworkDefineXML, (4) virStoragePoolCreateXML, (5) virStoragePoolDefineXML, (6) virStorageVolCreateXML, (7) virDomainCreateXML, (8) virNodeDeviceCreateXML, (9) virInterfaceDefineXML, (10) virStorageVolCreateXMLFrom, (11) virConnectDomainXMLFromNative, (12) virConnectDomainXMLToNative, (13) virSecretDefineXML, (14) virNWFilterDefineXML, (15) virDomainSnapshotCreateXML, (16) virDomainSaveImageDefineXML, (17) virDomainCreateXMLWithFiles, (18) virConnectCompareCPU o (19) virConnectBaselineCPU, relacionado con un problema de entidad externa XML (XXE). NOTA: este problema ha sido dividido (SPLIT) del CVE-2014-0179 por ADT3 debido a las diferentes versiones afectadas de algunos vectores.

It was found that libvirt passes the XML_PARSE_NOENT flag when parsing XML documents using the libxml2 library, in which case all XML entities in the parsed documents are expanded. A user able to force libvirtd to parse an XML document with an entity pointing to a file could use this flaw to read the contents of that file (limited to libvirt as shipped with Red Hat Enterprise Linux 7); parsing an XML document with an entity pointing to a special file that blocks on read access could cause libvirtd to hang indefinitely, resulting in a denial of service on the system.

*Credits: N/A
CVSS Scores
Attack Vector
Local
Attack Complexity
High
Authentication
None
Confidentiality
Partial
Integrity
None
Availability
None
Attack Vector
Adjacent
Attack Complexity
Medium
Authentication
None
Confidentiality
Complete
Integrity
None
Availability
Partial
* Common Vulnerability Scoring System
SSVC
  • Decision:-
Exploitation
-
Automatable
-
Tech. Impact
-
* Organization's Worst-case Scenario
Timeline
  • 2014-08-03 CVE Reserved
  • 2014-08-03 CVE Published
  • 2023-03-08 EPSS Updated
  • 2024-08-06 CVE Updated
  • ---------- Exploited in Wild
  • ---------- KEV Due Date
  • ---------- First Exploit
CWE
  • CWE-20: Improper Input Validation
  • CWE-611: Improper Restriction of XML External Entity Reference
CAPEC
Affected Vendors, Products, and Versions
Vendor Product Version Other Status
Vendor Product Version Other Status <-- --> Vendor Product Version Other Status
Redhat
Search vendor "Redhat"
Enterprise Virtualization
Search vendor "Redhat" for product "Enterprise Virtualization"
3.0
Search vendor "Redhat" for product "Enterprise Virtualization" and version "3.0"
-
Affected
Opensuse
Search vendor "Opensuse"
Opensuse
Search vendor "Opensuse" for product "Opensuse"
12.3
Search vendor "Opensuse" for product "Opensuse" and version "12.3"
-
Affected
Opensuse
Search vendor "Opensuse"
Opensuse
Search vendor "Opensuse" for product "Opensuse"
13.1
Search vendor "Opensuse" for product "Opensuse" and version "13.1"
-
Affected
Redhat
Search vendor "Redhat"
Enterprise Linux
Search vendor "Redhat" for product "Enterprise Linux"
6.0
Search vendor "Redhat" for product "Enterprise Linux" and version "6.0"
-
Affected
Redhat
Search vendor "Redhat"
Libvirt
Search vendor "Redhat" for product "Libvirt"
1.0.0
Search vendor "Redhat" for product "Libvirt" and version "1.0.0"
-
Affected
Redhat
Search vendor "Redhat"
Libvirt
Search vendor "Redhat" for product "Libvirt"
1.0.1
Search vendor "Redhat" for product "Libvirt" and version "1.0.1"
-
Affected
Redhat
Search vendor "Redhat"
Libvirt
Search vendor "Redhat" for product "Libvirt"
1.0.2
Search vendor "Redhat" for product "Libvirt" and version "1.0.2"
-
Affected
Redhat
Search vendor "Redhat"
Libvirt
Search vendor "Redhat" for product "Libvirt"
1.0.3
Search vendor "Redhat" for product "Libvirt" and version "1.0.3"
-
Affected
Redhat
Search vendor "Redhat"
Libvirt
Search vendor "Redhat" for product "Libvirt"
1.0.4
Search vendor "Redhat" for product "Libvirt" and version "1.0.4"
-
Affected
Redhat
Search vendor "Redhat"
Libvirt
Search vendor "Redhat" for product "Libvirt"
1.0.5
Search vendor "Redhat" for product "Libvirt" and version "1.0.5"
-
Affected
Redhat
Search vendor "Redhat"
Libvirt
Search vendor "Redhat" for product "Libvirt"
1.0.5.1
Search vendor "Redhat" for product "Libvirt" and version "1.0.5.1"
-
Affected
Redhat
Search vendor "Redhat"
Libvirt
Search vendor "Redhat" for product "Libvirt"
1.0.5.2
Search vendor "Redhat" for product "Libvirt" and version "1.0.5.2"
-
Affected
Redhat
Search vendor "Redhat"
Libvirt
Search vendor "Redhat" for product "Libvirt"
1.0.5.3
Search vendor "Redhat" for product "Libvirt" and version "1.0.5.3"
-
Affected
Redhat
Search vendor "Redhat"
Libvirt
Search vendor "Redhat" for product "Libvirt"
1.0.5.4
Search vendor "Redhat" for product "Libvirt" and version "1.0.5.4"
-
Affected
Redhat
Search vendor "Redhat"
Libvirt
Search vendor "Redhat" for product "Libvirt"
1.0.5.5
Search vendor "Redhat" for product "Libvirt" and version "1.0.5.5"
-
Affected
Redhat
Search vendor "Redhat"
Libvirt
Search vendor "Redhat" for product "Libvirt"
1.0.5.6
Search vendor "Redhat" for product "Libvirt" and version "1.0.5.6"
-
Affected
Redhat
Search vendor "Redhat"
Libvirt
Search vendor "Redhat" for product "Libvirt"
1.0.6
Search vendor "Redhat" for product "Libvirt" and version "1.0.6"
-
Affected
Redhat
Search vendor "Redhat"
Libvirt
Search vendor "Redhat" for product "Libvirt"
1.1.0
Search vendor "Redhat" for product "Libvirt" and version "1.1.0"
-
Affected
Redhat
Search vendor "Redhat"
Libvirt
Search vendor "Redhat" for product "Libvirt"
1.1.1
Search vendor "Redhat" for product "Libvirt" and version "1.1.1"
-
Affected
Redhat
Search vendor "Redhat"
Libvirt
Search vendor "Redhat" for product "Libvirt"
1.1.2
Search vendor "Redhat" for product "Libvirt" and version "1.1.2"
-
Affected
Redhat
Search vendor "Redhat"
Libvirt
Search vendor "Redhat" for product "Libvirt"
1.1.3
Search vendor "Redhat" for product "Libvirt" and version "1.1.3"
-
Affected
Redhat
Search vendor "Redhat"
Libvirt
Search vendor "Redhat" for product "Libvirt"
1.1.4
Search vendor "Redhat" for product "Libvirt" and version "1.1.4"
-
Affected
Redhat
Search vendor "Redhat"
Libvirt
Search vendor "Redhat" for product "Libvirt"
1.2.0
Search vendor "Redhat" for product "Libvirt" and version "1.2.0"
-
Affected
Redhat
Search vendor "Redhat"
Libvirt
Search vendor "Redhat" for product "Libvirt"
1.2.1
Search vendor "Redhat" for product "Libvirt" and version "1.2.1"
-
Affected
Redhat
Search vendor "Redhat"
Libvirt
Search vendor "Redhat" for product "Libvirt"
1.2.2
Search vendor "Redhat" for product "Libvirt" and version "1.2.2"
-
Affected
Redhat
Search vendor "Redhat"
Libvirt
Search vendor "Redhat" for product "Libvirt"
1.2.3
Search vendor "Redhat" for product "Libvirt" and version "1.2.3"
-
Affected
Redhat
Search vendor "Redhat"
Libvirt
Search vendor "Redhat" for product "Libvirt"
1.2.4
Search vendor "Redhat" for product "Libvirt" and version "1.2.4"
-
Affected