| From bippy-1.0.0 Mon Sep 17 00:00:00 2001 |
| From: Greg Kroah-Hartman <gregkh@kernel.org> |
| To: <linux-cve-announce@vger.kernel.org> |
| Reply-to: <cve@kernel.org>, <linux-kernel@vger.kernel.org> |
| Subject: CVE-2024-36912: Drivers: hv: vmbus: Track decrypted status in vmbus_gpadl |
| |
| Description |
| =========== |
| |
| In the Linux kernel, the following vulnerability has been resolved: |
| |
| Drivers: hv: vmbus: Track decrypted status in vmbus_gpadl |
| |
| 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. |
| |
| In order to make sure callers of vmbus_establish_gpadl() and |
| vmbus_teardown_gpadl() don't return decrypted/shared pages to |
| allocators, add a field in struct vmbus_gpadl to keep track of the |
| decryption status of the buffers. This will allow the callers to |
| know if they should free or leak the pages. |
| |
| The Linux kernel CVE team has assigned CVE-2024-36912 to this issue. |
| |
| |
| Affected and fixed versions |
| =========================== |
| |
| Issue introduced in 5.16 with commit d4dccf353db80e209f262e3973c834e6e48ba9a9 and fixed in 6.1.91 with commit 1999644d95194d4a58d3e80ad04ce19220a01a81 |
| Issue introduced in 5.16 with commit d4dccf353db80e209f262e3973c834e6e48ba9a9 and fixed in 6.6.31 with commit 8e62341f5c45b27519b7d193bcc32ada416ad9d8 |
| Issue introduced in 5.16 with commit d4dccf353db80e209f262e3973c834e6e48ba9a9 and fixed in 6.8.10 with commit bfae56be077ba14311509e70706a13458f87ea99 |
| Issue introduced in 5.16 with commit d4dccf353db80e209f262e3973c834e6e48ba9a9 and fixed in 6.9 with commit 211f514ebf1ef5de37b1cf6df9d28a56cfd242ca |
| |
| Please see https://www.kernel.org for a full list of currently supported |
| kernel versions by the kernel community. |
| |
| Unaffected versions might change over time as fixes are backported to |
| older supported kernel versions. The official CVE entry at |
| https://cve.org/CVERecord/?id=CVE-2024-36912 |
| will be updated if fixes are backported, please check that for the most |
| up to date information about this issue. |
| |
| |
| Affected files |
| ============== |
| |
| The file(s) affected by this issue are: |
| drivers/hv/channel.c |
| include/linux/hyperv.h |
| |
| |
| Mitigation |
| ========== |
| |
| The Linux kernel CVE team recommends that you update to the latest |
| stable kernel version for this, and many other bugfixes. Individual |
| changes are never tested alone, but rather are part of a larger kernel |
| release. Cherry-picking individual commits is not recommended or |
| supported by the Linux kernel community at all. If however, updating to |
| the latest release is impossible, the individual changes to resolve this |
| issue can be found at these commits: |
| https://git.kernel.org/stable/c/1999644d95194d4a58d3e80ad04ce19220a01a81 |
| https://git.kernel.org/stable/c/8e62341f5c45b27519b7d193bcc32ada416ad9d8 |
| https://git.kernel.org/stable/c/bfae56be077ba14311509e70706a13458f87ea99 |
| https://git.kernel.org/stable/c/211f514ebf1ef5de37b1cf6df9d28a56cfd242ca |