Stack Use-After-Free Flaw in libvirt Allows Escape from Limited Access

CVE-2024-4418
6.2MEDIUM

Key Information

Vendor
Red Hat
Status
Red Hat Enterprise Linux 8
Red Hat Enterprise Linux 9
Red Hat Enterprise Linux 9.2 Extended Update Support
Red Hat Enterprise Linux 6
Vendor
CVE Published:
8 May 2024

Summary

A race condition leading to a stack use-after-free flaw was found in libvirt. Due to a bad assumption in the virNetClientIOEventLoop() method, the `data` pointer to a stack-allocated virNetClientIOEventData structure ended up being used in the virNetClientIOEventFD callback while the data pointer's stack frame was concurrently being "freed" when returning from virNetClientIOEventLoop(). The 'virtproxyd' daemon can be used to trigger requests. If libvirt is configured with fine-grained access control, this issue, in theory, allows a user to escape their otherwise limited access. This flaw allows a local, unprivileged user to access virtproxyd without authenticating. Remote users would need to authenticate before they could access it.

Affected Version(s)

Red Hat Enterprise Linux 8 <= 8100020240606142719.489197e6

Red Hat Enterprise Linux 8 <= 8100020240606142719.489197e6

Red Hat Enterprise Linux 9 <= 0:10.0.0-6.6.el9_4

CVSS V3.1

Score:
6.2
Severity:
MEDIUM
Confidentiality:
None
Integrity:
None
Availability:
High
Attack Vector:
Local
Attack Complexity:
Low
Privileges Required:
None
User Interaction:
None
Scope:
Unchanged

Timeline

  • Risk change from: null to: 6.2 - (MEDIUM)

  • Vulnerability published.

  • Vulnerability Reserved.

  • Reported to Red Hat.

Collectors

NVD DatabaseMitre Database

Credit

Red Hat would like to thank Martin Širokov for reporting this issue.
.