Skip to content
Heist/ feed
Back to feed
CriticalFix available

Drivers: hv: vmbus: Track decrypted status in vmbus_gpadl

Type: advisorySources: OSV

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.

Products
Kernel
Affected versions
Not specified
Fixed versions
6.1.91, 6.6.31, 6.8.10
CVEs
CVE-2024-36912
Confirmed fixed CVEs
Not specified
Updated in this feed
3 Nov 2026, 10:33 UTC · Revision 1

Source evidence

Drivers: hv: vmbus: Track decrypted status in vmbus_gpadl

core-osv · Original source

Published 30 May 2024, 15:29 UTC

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.

osv:CVE-2024-36912

Kernel

Fixed versions: 6.1.91, 6.6.31, 6.8.10

Complete source record
{
  "id": "2da9e72cdc0e196bb1d116ece6c2ac9c5c8f943934ec0c56187e71ed613f2aa2",
  "url": "https://osv.dev/vulnerability/CVE-2024-36912",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "Drivers: hv: vmbus: Track decrypted status in vmbus_gpadl",
    "summary": "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.",
    "evidence": "osv:CVE-2024-36912",
    "products": [
      {
        "name": {
          "value": "Kernel",
          "evidence": "/affected/1/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [
          {
            "value": "6.1.91",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.6.31",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.8.10",
            "evidence": "/affected/1/ranges"
          }
        ],
        "affected_versions": []
      }
    ],
    "severity": "critical",
    "structured": {
      "id": "CVE-2024-36912",
      "aliases": [
        "CVE-2024-36912"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "d4dccf353db80e209f262e3973c834e6e48ba9a9"
                },
                {
                  "fixed": "1999644d95194d4a58d3e80ad04ce19220a01a81"
                },
                {
                  "fixed": "8e62341f5c45b27519b7d193bcc32ada416ad9d8"
                },
                {
                  "fixed": "bfae56be077ba14311509e70706a13458f87ea99"
                },
                {
                  "fixed": "211f514ebf1ef5de37b1cf6df9d28a56cfd242ca"
                }
              ]
            }
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2024-36912.json"
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "5.16.0"
                },
                {
                  "fixed": "6.1.91"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.2.0"
                },
                {
                  "fixed": "6.6.31"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.7.0"
                },
                {
                  "fixed": "6.8.10"
                }
              ]
            }
          ],
          "package": {
            "name": "Kernel",
            "ecosystem": "Linux"
          },
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2024-36912.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:28.198530619Z",
      "provider": "osv",
      "references": [
        "https://git.kernel.org/stable/c/1999644d95194d4a58d3e80ad04ce19220a01a81",
        "https://git.kernel.org/stable/c/211f514ebf1ef5de37b1cf6df9d28a56cfd242ca",
        "https://git.kernel.org/stable/c/8e62341f5c45b27519b7d193bcc32ada416ad9d8",
        "https://git.kernel.org/stable/c/bfae56be077ba14311509e70706a13458f87ea99",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/36xxx/CVE-2024-36912.json",
        "https://nvd.nist.gov/vuln/detail/CVE-2024-36912",
        "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"
      ],
      "provider_metadata": {
        "cna_assigner": "Linux",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/36xxx/CVE-2024-36912.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2024-36912",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 494558,
  "published_at": "2024-05-30T15:29:10.454+00:00"
}