OESA-2021-1385 (CVE-2021-3667)
Vulnerability from osv_openeuler – Published: 2021-10-15 11:04 – Updated: 2026-08-06 11:04 – Source websiteLibvirt is a C toolkit to interact with the virtualization capabilities of recent versions of Linux (and other OSes). The main package includes the libvirtd server exporting the virtualization support.
Security Fix(es):
An improper locking issue was found in the virStoragePoolLookupByTargetPath API of libvirt. It occurs in the storagePoolLookupByTargetPath function where a locked virStoragePoolObj object is not properly released on ACL permission failure. Clients connecting to the read-write socket with limited ACL permissions could use this flaw to acquire the lock and prevent other users from accessing storage pool/volume APIs, resulting in a denial of service condition. The highest threat from this vulnerability is to system availability.(CVE-2021-3667)
A flaw was found in libvirt while it generates SELinux MCS category pairs for VMs' dynamic labels. This flaw allows one exploited guest to access files labeled for another guest, resulting in the breaking out of sVirt confinement. The highest threat from this vulnerability is to confidentiality and integrity.(CVE-2021-3631)
| URL | Type | |
|---|---|---|
{
"affected": [
{
"ecosystem_specific": {
"aarch64": [
"libvirt-daemon-driver-storage-iscsi-direct-6.2.0-13.oe1.aarch64.rpm",
"libvirt-daemon-driver-qemu-6.2.0-13.oe1.aarch64.rpm",
"libvirt-nss-6.2.0-13.oe1.aarch64.rpm",
"libvirt-daemon-qemu-6.2.0-13.oe1.aarch64.rpm",
"libvirt-daemon-kvm-6.2.0-13.oe1.aarch64.rpm",
"libvirt-client-6.2.0-13.oe1.aarch64.rpm",
"libvirt-debuginfo-6.2.0-13.oe1.aarch64.rpm",
"libvirt-admin-6.2.0-13.oe1.aarch64.rpm",
"libvirt-bash-completion-6.2.0-13.oe1.aarch64.rpm",
"libvirt-daemon-driver-storage-logical-6.2.0-13.oe1.aarch64.rpm",
"libvirt-devel-6.2.0-13.oe1.aarch64.rpm",
"libvirt-daemon-driver-interface-6.2.0-13.oe1.aarch64.rpm",
"libvirt-daemon-driver-storage-gluster-6.2.0-13.oe1.aarch64.rpm",
"libvirt-daemon-driver-storage-disk-6.2.0-13.oe1.aarch64.rpm",
"libvirt-daemon-driver-nwfilter-6.2.0-13.oe1.aarch64.rpm",
"libvirt-daemon-driver-secret-6.2.0-13.oe1.aarch64.rpm",
"libvirt-6.2.0-13.oe1.aarch64.rpm",
"libvirt-docs-6.2.0-13.oe1.aarch64.rpm",
"libvirt-daemon-driver-storage-core-6.2.0-13.oe1.aarch64.rpm",
"libvirt-daemon-driver-nodedev-6.2.0-13.oe1.aarch64.rpm",
"libvirt-daemon-driver-storage-scsi-6.2.0-13.oe1.aarch64.rpm",
"libvirt-libs-6.2.0-13.oe1.aarch64.rpm",
"libvirt-debugsource-6.2.0-13.oe1.aarch64.rpm",
"libvirt-daemon-driver-storage-iscsi-6.2.0-13.oe1.aarch64.rpm",
"libvirt-daemon-config-network-6.2.0-13.oe1.aarch64.rpm",
"libvirt-lock-sanlock-6.2.0-13.oe1.aarch64.rpm",
"libvirt-daemon-driver-network-6.2.0-13.oe1.aarch64.rpm",
"libvirt-daemon-driver-storage-6.2.0-13.oe1.aarch64.rpm",
"libvirt-daemon-6.2.0-13.oe1.aarch64.rpm",
"libvirt-daemon-driver-storage-rbd-6.2.0-13.oe1.aarch64.rpm",
"libvirt-daemon-config-nwfilter-6.2.0-13.oe1.aarch64.rpm",
"libvirt-wireshark-6.2.0-13.oe1.aarch64.rpm",
"libvirt-daemon-driver-storage-mpath-6.2.0-13.oe1.aarch64.rpm"
],
"src": [
"libvirt-6.2.0-13.oe1.src.rpm"
],
"x86_64": [
"libvirt-daemon-driver-qemu-6.2.0-13.oe1.x86_64.rpm",
"libvirt-daemon-kvm-6.2.0-13.oe1.x86_64.rpm",
"libvirt-wireshark-6.2.0-13.oe1.x86_64.rpm",
"libvirt-daemon-driver-interface-6.2.0-13.oe1.x86_64.rpm",
"libvirt-daemon-driver-network-6.2.0-13.oe1.x86_64.rpm",
"libvirt-6.2.0-13.oe1.x86_64.rpm",
"libvirt-daemon-driver-storage-core-6.2.0-13.oe1.x86_64.rpm",
"libvirt-admin-6.2.0-13.oe1.x86_64.rpm",
"libvirt-docs-6.2.0-13.oe1.x86_64.rpm",
"libvirt-daemon-driver-secret-6.2.0-13.oe1.x86_64.rpm",
"libvirt-debuginfo-6.2.0-13.oe1.x86_64.rpm",
"libvirt-daemon-driver-storage-6.2.0-13.oe1.x86_64.rpm",
"libvirt-daemon-driver-nodedev-6.2.0-13.oe1.x86_64.rpm",
"libvirt-daemon-driver-storage-scsi-6.2.0-13.oe1.x86_64.rpm",
"libvirt-daemon-config-nwfilter-6.2.0-13.oe1.x86_64.rpm",
"libvirt-daemon-driver-storage-gluster-6.2.0-13.oe1.x86_64.rpm",
"libvirt-daemon-driver-storage-mpath-6.2.0-13.oe1.x86_64.rpm",
"libvirt-daemon-6.2.0-13.oe1.x86_64.rpm",
"libvirt-daemon-driver-storage-iscsi-6.2.0-13.oe1.x86_64.rpm",
"libvirt-daemon-config-network-6.2.0-13.oe1.x86_64.rpm",
"libvirt-daemon-driver-nwfilter-6.2.0-13.oe1.x86_64.rpm",
"libvirt-debugsource-6.2.0-13.oe1.x86_64.rpm",
"libvirt-daemon-driver-storage-logical-6.2.0-13.oe1.x86_64.rpm",
"libvirt-bash-completion-6.2.0-13.oe1.x86_64.rpm",
"libvirt-daemon-driver-storage-iscsi-direct-6.2.0-13.oe1.x86_64.rpm",
"libvirt-client-6.2.0-13.oe1.x86_64.rpm",
"libvirt-devel-6.2.0-13.oe1.x86_64.rpm",
"libvirt-nss-6.2.0-13.oe1.x86_64.rpm",
"libvirt-daemon-driver-storage-rbd-6.2.0-13.oe1.x86_64.rpm",
"libvirt-libs-6.2.0-13.oe1.x86_64.rpm",
"libvirt-daemon-qemu-6.2.0-13.oe1.x86_64.rpm",
"libvirt-daemon-driver-storage-disk-6.2.0-13.oe1.x86_64.rpm",
"libvirt-lock-sanlock-6.2.0-13.oe1.x86_64.rpm"
]
},
"package": {
"ecosystem": "openEuler:20.03-LTS-SP1",
"name": "libvirt",
"purl": "pkg:rpm/openEuler/libvirt\u0026distro=openEuler-20.03-LTS-SP1"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "6.2.0-13.oe1"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"ecosystem_specific": {
"aarch64": [
"libvirt-daemon-driver-storage-6.2.0-14.oe1.aarch64.rpm",
"libvirt-daemon-kvm-6.2.0-14.oe1.aarch64.rpm",
"libvirt-daemon-driver-storage-iscsi-direct-6.2.0-14.oe1.aarch64.rpm",
"libvirt-bash-completion-6.2.0-14.oe1.aarch64.rpm",
"libvirt-daemon-driver-storage-scsi-6.2.0-14.oe1.aarch64.rpm",
"libvirt-debuginfo-6.2.0-14.oe1.aarch64.rpm",
"libvirt-nss-6.2.0-14.oe1.aarch64.rpm",
"libvirt-wireshark-6.2.0-14.oe1.aarch64.rpm",
"libvirt-6.2.0-14.oe1.aarch64.rpm",
"libvirt-daemon-driver-interface-6.2.0-14.oe1.aarch64.rpm",
"libvirt-daemon-driver-storage-core-6.2.0-14.oe1.aarch64.rpm",
"libvirt-daemon-driver-storage-mpath-6.2.0-14.oe1.aarch64.rpm",
"libvirt-daemon-6.2.0-14.oe1.aarch64.rpm",
"libvirt-daemon-qemu-6.2.0-14.oe1.aarch64.rpm",
"libvirt-debugsource-6.2.0-14.oe1.aarch64.rpm",
"libvirt-daemon-driver-storage-logical-6.2.0-14.oe1.aarch64.rpm",
"libvirt-docs-6.2.0-14.oe1.aarch64.rpm",
"libvirt-daemon-driver-storage-iscsi-6.2.0-14.oe1.aarch64.rpm",
"libvirt-daemon-config-nwfilter-6.2.0-14.oe1.aarch64.rpm",
"libvirt-libs-6.2.0-14.oe1.aarch64.rpm",
"libvirt-devel-6.2.0-14.oe1.aarch64.rpm",
"libvirt-daemon-driver-secret-6.2.0-14.oe1.aarch64.rpm",
"libvirt-daemon-driver-qemu-6.2.0-14.oe1.aarch64.rpm",
"libvirt-daemon-driver-storage-disk-6.2.0-14.oe1.aarch64.rpm",
"libvirt-daemon-driver-nwfilter-6.2.0-14.oe1.aarch64.rpm",
"libvirt-daemon-driver-storage-rbd-6.2.0-14.oe1.aarch64.rpm",
"libvirt-daemon-driver-storage-gluster-6.2.0-14.oe1.aarch64.rpm",
"libvirt-daemon-driver-nodedev-6.2.0-14.oe1.aarch64.rpm",
"libvirt-daemon-config-network-6.2.0-14.oe1.aarch64.rpm",
"libvirt-daemon-driver-network-6.2.0-14.oe1.aarch64.rpm",
"libvirt-client-6.2.0-14.oe1.aarch64.rpm",
"libvirt-admin-6.2.0-14.oe1.aarch64.rpm",
"libvirt-lock-sanlock-6.2.0-14.oe1.aarch64.rpm"
],
"src": [
"libvirt-6.2.0-14.oe1.src.rpm"
],
"x86_64": [
"libvirt-daemon-driver-qemu-6.2.0-14.oe1.x86_64.rpm",
"libvirt-debuginfo-6.2.0-14.oe1.x86_64.rpm",
"libvirt-daemon-6.2.0-14.oe1.x86_64.rpm",
"libvirt-daemon-qemu-6.2.0-14.oe1.x86_64.rpm",
"libvirt-admin-6.2.0-14.oe1.x86_64.rpm",
"libvirt-daemon-config-network-6.2.0-14.oe1.x86_64.rpm",
"libvirt-daemon-driver-secret-6.2.0-14.oe1.x86_64.rpm",
"libvirt-lock-sanlock-6.2.0-14.oe1.x86_64.rpm",
"libvirt-nss-6.2.0-14.oe1.x86_64.rpm",
"libvirt-daemon-driver-nwfilter-6.2.0-14.oe1.x86_64.rpm",
"libvirt-daemon-driver-storage-iscsi-direct-6.2.0-14.oe1.x86_64.rpm",
"libvirt-daemon-kvm-6.2.0-14.oe1.x86_64.rpm",
"libvirt-daemon-driver-network-6.2.0-14.oe1.x86_64.rpm",
"libvirt-daemon-driver-storage-core-6.2.0-14.oe1.x86_64.rpm",
"libvirt-daemon-driver-storage-rbd-6.2.0-14.oe1.x86_64.rpm",
"libvirt-devel-6.2.0-14.oe1.x86_64.rpm",
"libvirt-daemon-driver-storage-gluster-6.2.0-14.oe1.x86_64.rpm",
"libvirt-6.2.0-14.oe1.x86_64.rpm",
"libvirt-daemon-driver-storage-mpath-6.2.0-14.oe1.x86_64.rpm",
"libvirt-daemon-driver-storage-logical-6.2.0-14.oe1.x86_64.rpm",
"libvirt-daemon-driver-nodedev-6.2.0-14.oe1.x86_64.rpm",
"libvirt-daemon-driver-interface-6.2.0-14.oe1.x86_64.rpm",
"libvirt-docs-6.2.0-14.oe1.x86_64.rpm",
"libvirt-wireshark-6.2.0-14.oe1.x86_64.rpm",
"libvirt-daemon-config-nwfilter-6.2.0-14.oe1.x86_64.rpm",
"libvirt-daemon-driver-storage-6.2.0-14.oe1.x86_64.rpm",
"libvirt-daemon-driver-storage-scsi-6.2.0-14.oe1.x86_64.rpm",
"libvirt-daemon-driver-storage-iscsi-6.2.0-14.oe1.x86_64.rpm",
"libvirt-client-6.2.0-14.oe1.x86_64.rpm",
"libvirt-debugsource-6.2.0-14.oe1.x86_64.rpm",
"libvirt-bash-completion-6.2.0-14.oe1.x86_64.rpm",
"libvirt-daemon-driver-storage-disk-6.2.0-14.oe1.x86_64.rpm",
"libvirt-libs-6.2.0-14.oe1.x86_64.rpm"
]
},
"package": {
"ecosystem": "openEuler:20.03-LTS-SP2",
"name": "libvirt",
"purl": "pkg:rpm/openEuler/libvirt\u0026distro=openEuler-20.03-LTS-SP2"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "6.2.0-14.oe1"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"database_specific": {
"severity": "Medium"
},
"details": "Libvirt is a C toolkit to interact with the virtualization capabilities of recent versions of Linux (and other OSes). The main package includes the libvirtd server exporting the virtualization support.\r\n\r\nSecurity Fix(es):\r\n\r\nAn improper locking issue was found in the virStoragePoolLookupByTargetPath API of libvirt. It occurs in the storagePoolLookupByTargetPath function where a locked virStoragePoolObj object is not properly released on ACL permission failure. Clients connecting to the read-write socket with limited ACL permissions could use this flaw to acquire the lock and prevent other users from accessing storage pool/volume APIs, resulting in a denial of service condition. The highest threat from this vulnerability is to system availability.(CVE-2021-3667)\r\n\r\nA flaw was found in libvirt while it generates SELinux MCS category pairs for VMs\u0026apos; dynamic labels. This flaw allows one exploited guest to access files labeled for another guest, resulting in the breaking out of sVirt confinement. The highest threat from this vulnerability is to confidentiality and integrity.(CVE-2021-3631)",
"id": "OESA-2021-1385",
"modified": "2026-08-06T11:04:39Z",
"published": "2021-10-15T11:04:39Z",
"references": [
{
"type": "ADVISORY",
"url": "https://www.openeuler.org/en/security/safety-bulletin/detail.html?id=openEuler-SA-2021-1385"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2021-3667"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2021-3631"
}
],
"schema_version": "1.7.2",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H",
"type": "CVSS_V3"
}
],
"summary": "libvirt security update",
"upstream": [
"CVE-2021-3667",
"CVE-2021-3631"
]
}
Sightings
| Author | Source | Type | Date | Other |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.
The approach is described in our paper Mapping CVEs to MITRE ATT&CK Techniques: A Curated Gold-Set Classifier and the Limits of LLM-Assisted Label Expansion.
Browse all ATT&CK techniques and the vulnerabilities related to each.
Related by attack behaviour
Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.