CVE-2024-46709

Description

From CVE.org

In the Linux kernel, the following vulnerability has been resolved: drm/vmwgfx: Fix prime with external buffers Make sure that for external buffers mapping goes through the dma_buf interface instead of trying to access pages directly. External buffers might not provide direct access to readable/writable pages so to make sure the bo's created from external dma_bufs can be read dma_buf interface has to be used. Fixes crashes in IGT's kms_prime with vgem. Regular desktop usage won't trigger this due to the fact that virtual machines will not have multiple GPUs but it enables better test coverage in IGT.

Statement

A low impact flaw was found in the Linux kernel's vmwgfx (VMware graphics) driver, affecting the kernel and kernel-rt packages in Red Hat Enterprise Linux 9. When a graphics buffer object is created from an external dma_buf (PRIME import), the driver could attempt to access the buffer's pages directly instead of going through the dma_buf mapping interface. Because external buffers may not provide directly readable or writable pages, this incorrect mapping can crash the kernel. A local user with the high privileges needed to set up PRIME buffer sharing with external buffers could therefore cause a denial of service (kernel crash); there is no impact on confidentiality or integrity. Triggering this issue effectively requires multiple GPUs in the guest, and regular desktop usage in virtual machines does not exercise this path (the crashes were observed in the IGT kms_prime tests using vgem). For these reasons Red Hat rates the flaw Low severity (CVSS 4.4, AV:L/AC:L/PR:H/UI:N/S:U/C:N/I:N/A:H), a meaningful difference from the upstream CVE record's score of 7.8, which assumes full confidentiality, integrity, and availability impact. In Red Hat Enterprise Linux 9 the fix is currently deferred, given the low severity and the fact that regular desktop usage does not trigger the flaw; the residual risk is that a privileged local user in the unusual multi-GPU PRIME configuration described above could still trigger a kernel crash. Fedora is also affected, with a fix being pursued through the community kernel process. Red Hat Enterprise Linux 8 and Red Hat's hosted OpenShift offerings are not affected.

Mitigation

Mitigation for this issue is either not available or the currently available options do not meet the Red Hat Product Security criteria comprising ease of use and deployment, applicability to widespread installation base, or stability.

Common Vulnerability Scoring System (CVSS) Score Details

Info alert:Important note

CVSS scores for open source components depend on vendor-specific factors (e.g. version or build chain). Therefore, Red Hat's score and impact rating can be different from NVD and other vendors. Red Hat remains the authoritative CVE Naming Authority (CNA) source for its products and services (see Red Hat classifications).

The following CVSS metrics and score provided are preliminary and subject to review.

CVSS v3 Score Breakdown

Red HatNVDcve.org
Base Score4.45.57.8
Attack VectorLocalLocalLocal
Attack ComplexityLowLowLow
Privileges RequiredHighLowLow
User InteractionNoneNoneNone
ScopeUnchangedUnchangedUnchanged
ConfidentialityNoneNoneHigh
Integrity ImpactNoneNoneHigh
Availability ImpactHighHighHigh

Vector

Red Hat: CVSS:3.1/AV:L/AC:L/PR:H/UI:N/S:U/C:N/I:N/A:H

NVD: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

cve.org: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Understanding the Weakness (CWE)

Integrity,Confidentiality,Availability

Technical Impact: Execute Unauthorized Code or Commands; Modify Memory

If the memory accessible by the attacker can be effectively controlled, it may be possible to execute arbitrary code, as with a standard buffer overflow. If the attacker can overwrite a pointer's worth of memory (usually 32 or 64 bits), they can alter the intended control flow by redirecting a function pointer to their own malicious code. Even when the attacker can only modify a single byte arbitrary code execution can be possible. Sometimes this is because the same problem can be exploited repeatedly to the same effect. Other times it is because the attacker can overwrite security-critical application-specific data -- such as a flag indicating whether the user is an administrator.

Availability,Confidentiality

Technical Impact: Read Memory; DoS: Crash, Exit, or Restart; DoS: Resource Consumption (CPU); DoS: Resource Consumption (Memory)

Out of bounds memory access will very likely result in the corruption of relevant memory, and perhaps instructions, possibly leading to a crash. Other attacks leading to lack of availability are possible, including putting the program into an infinite loop.

Confidentiality

Technical Impact: Read Memory

In the case of an out-of-bounds read, the attacker may have access to sensitive information. If the sensitive information contains system details, such as the current buffer's position in memory, this knowledge can be used to craft further attacks, possibly with more severe consequences.

Frequently Asked Questions

Want to get errata notifications? Sign up here.