CVE Catalog

CVE-2024-36909

CriticalCVSS 9.3
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.23%

13th percentile - higher than 13% of all known CVEs

Summary

In the Linux kernel, a problem was found in the vmbus driver (Drivers: hv) where ring buffers that couldn't be re-encrypted could be freed. In CoCo VMs, an untrusted host can cause set_memory_encrypted() or set_memory_decrypted() to fail, leaving memory shared. The VMBus ring buffer code could free decrypted/shared pages if set_memory_decrypted() fails. The fix checks the decrypted field in the struct vmbus_gpadl for the ring buffers to decide whether to free the memory.

Risk Assessment

Freeing decrypted memory can lead to confidentiality or integrity breaches, as shared memory may be accessible to the untrusted host, potentially enabling attacks.

Recommendation

It is recommended to update the Linux kernel to a version containing the fix for CVE-2024-36909, which prevents freeing ring buffers that couldn't be re-encrypted.

Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: Drivers: hv: vmbus: Don't free ring buffers that couldn't be re-encrypted In CoCo VMs it is possible for the untrusted host to cause set_memory_encrypted() or set_memory_decrypted() to fail such that an error is returned and the resulting memory is shared. Callers need to take care to handle these errors to avoid returning decrypted (shared) memory to the page allocator, which could lead to functional or security issues. The VMBus ring buffer code could free decrypted/shared pages if set_memory_decrypted() fails. Check the decrypted field in the struct vmbus_gpadl for the ring buffers to decide whether to free the memory.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS