CVE-2024-57793 (GCVE-0-2024-57793)

Vulnerability from cvelistv5 – Published: 2025-01-11 12:39 – Updated: 2026-08-05 11:46
VLAI
Title
virt: tdx-guest: Just leak decrypted memory on unrecoverable errors
Summary
In the Linux kernel, the following vulnerability has been resolved: virt: tdx-guest: Just leak decrypted memory on unrecoverable errors In CoCo VMs it is possible for the untrusted host to cause 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. Leak the decrypted memory when set_memory_decrypted() fails, and don't need to print an error since set_memory_decrypted() will call WARN_ONCE().
Assigner
Impacted products
Vendor Product Version
Linux Linux Affected: f4738f56d1dc62aaba69b33702a5ab098f1b8c63 , < 1429ae7b7d4759a1e362456b8911c701bae655b4 (git)
Affected: f4738f56d1dc62aaba69b33702a5ab098f1b8c63 , < 27834971f616c5e154423c578fa95e0444444ce1 (git)
Create a notification for this product.
Linux Linux Affected: 6.7
Unaffected: 0 , < 6.7 (semver)
Unaffected: 6.12.8 , ≤ 6.12.* (semver)
Unaffected: 6.13 , ≤ * (original_commit_for_fix)
Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/virt/coco/tdx-guest/tdx-guest.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "1429ae7b7d4759a1e362456b8911c701bae655b4",
              "status": "affected",
              "version": "f4738f56d1dc62aaba69b33702a5ab098f1b8c63",
              "versionType": "git"
            },
            {
              "lessThan": "27834971f616c5e154423c578fa95e0444444ce1",
              "status": "affected",
              "version": "f4738f56d1dc62aaba69b33702a5ab098f1b8c63",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/virt/coco/tdx-guest/tdx-guest.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.7"
            },
            {
              "lessThan": "6.7",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.8",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.13",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.8",
                  "versionStartIncluding": "6.7",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.13",
                  "versionStartIncluding": "6.7",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nvirt: tdx-guest: Just leak decrypted memory on unrecoverable errors\n\nIn CoCo VMs it is possible for the untrusted host to cause\nset_memory_decrypted() to fail such that an error is returned\nand the resulting memory is shared. Callers need to take care\nto handle these errors to avoid returning decrypted (shared)\nmemory to the page allocator, which could lead to functional\nor security issues.\n\nLeak the decrypted memory when set_memory_decrypted() fails,\nand don\u0027t need to print an error since set_memory_decrypted()\nwill call WARN_ONCE()."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 9.3,
            "baseSeverity": "CRITICAL",
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:L - The attacker is the untrusted hypervisor/VMM, which reaches the vulnerable code through the TDVMCALL\u003cMapGPA\u003e interface of the guest it hosts \u2014 not via any network stack. This matches the established scoring for CoCo host-to-guest issues in this subsystem (CVE-2026-64104, CVE-2026-52959, CVE-2025-38560).\nAC:L - The VMM implements the MapGPA handler and can deterministically fail it (non-zero status, or three STATUS_RETRY responses with an unchanged r11), forcing set_memory_decrypted() to return an error every time. No race, timing, or memory-layout condition outside the attacker\u0027s control is involved.\nPR:N - alloc_quote_buf() is reached only from tdx_guest_init() at module load during guest boot, so the host needs no credentials, account, or capability inside the guest at all. The hypervisor is entirely outside the guest\u0027s authentication domain in the TDX threat model.\nUI:N - The vulnerable path executes automatically when the tdx-guest driver initializes at boot; no guest user or administrator has to perform any action.\nS:C - Returning shared pages to the buddy allocator breaks the hardware-enforced TDX confidential-computing boundary, so data belonging to every other authority in the guest (all processes, containers, and the guest\u0027s protected TCB) becomes readable and writable by the hypervisor \u2014 impact well beyond the tdx-guest driver\u0027s own scope, consistent with CVE-2026-64104.\nC:H - The recycled pages alias host-visible shared memory, so anything the guest later places there \u2014 slab objects, page cache, anonymous user data, cryptographic keys \u2014 is exposed in plaintext to the untrusted host, giving a persistent, repeatedly refreshed arbitrary-read window into guest memory.\nI:H - The host can write those pages at will while they hold live kernel or user data, yielding an arbitrary-write primitive into whatever object currently occupies them (kernel structures with function pointers or list heads), which is leverageable for control-flow hijack inside the guest.\nA:H - Host modification of live kernel objects in the recycled pages, plus the private/shared state mismatch left by the failed conversion (#VE / EPT violation on kernel accesses), reliably produces guest kernel corruption and panic."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-05T11:46:33.664Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/1429ae7b7d4759a1e362456b8911c701bae655b4"
        },
        {
          "url": "https://git.kernel.org/stable/c/27834971f616c5e154423c578fa95e0444444ce1"
        }
      ],
      "title": "virt: tdx-guest: Just leak decrypted memory on unrecoverable errors",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2024-57793",
    "datePublished": "2025-01-11T12:39:47.347Z",
    "dateReserved": "2025-01-11T12:32:49.384Z",
    "dateUpdated": "2026-08-05T11:46:33.664Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2024-57793",
      "date": "2026-08-08",
      "epss": "0.00202",
      "percentile": "0.10325"
    },
    "fkie_nvd": {
      "descriptions": "[{\"lang\": \"en\", \"value\": \"In the Linux kernel, the following vulnerability has been resolved:\\n\\nvirt: tdx-guest: Just leak decrypted memory on unrecoverable errors\\n\\nIn CoCo VMs it is possible for the untrusted host to cause\\nset_memory_decrypted() to fail such that an error is returned\\nand the resulting memory is shared. Callers need to take care\\nto handle these errors to avoid returning decrypted (shared)\\nmemory to the page allocator, which could lead to functional\\nor security issues.\\n\\nLeak the decrypted memory when set_memory_decrypted() fails,\\nand don\u0027t need to print an error since set_memory_decrypted()\\nwill call WARN_ONCE().\"}]",
      "id": "CVE-2024-57793",
      "lastModified": "2025-01-11T13:15:29.593",
      "published": "2025-01-11T13:15:29.593",
      "references": "[{\"url\": \"https://git.kernel.org/stable/c/1429ae7b7d4759a1e362456b8911c701bae655b4\", \"source\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}, {\"url\": \"https://git.kernel.org/stable/c/27834971f616c5e154423c578fa95e0444444ce1\", \"source\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]",
      "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "vulnStatus": "Received"
    },
    "nvd": "{\"cve\":{\"id\":\"CVE-2024-57793\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2025-01-11T13:15:29.593\",\"lastModified\":\"2026-08-04T11:22:27.863\",\"vulnStatus\":\"Modified\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nvirt: tdx-guest: Just leak decrypted memory on unrecoverable errors\\n\\nIn CoCo VMs it is possible for the untrusted host to cause\\nset_memory_decrypted() to fail such that an error is returned\\nand the resulting memory is shared. Callers need to take care\\nto handle these errors to avoid returning decrypted (shared)\\nmemory to the page allocator, which could lead to functional\\nor security issues.\\n\\nLeak the decrypted memory when set_memory_decrypted() fails,\\nand don\u0027t need to print an error since set_memory_decrypted()\\nwill call WARN_ONCE().\"},{\"lang\":\"es\",\"value\":\"En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: virt: tdx-guest: Just leak decrypted memory on unrecoverable errors En las m\u00e1quinas virtuales CoCo, es posible que el host no confiable haga que set_memory_decrypted() falle de modo que se devuelva un error y se comparta la memoria resultante. Los llamadores deben tener cuidado de gestionar estos errores para evitar devolver memoria descifrada (compartida) al asignador de p\u00e1ginas, lo que podr\u00eda provocar problemas funcionales o de seguridad. Filtra la memoria descifrada cuando set_memory_decrypted() falla y no necesitas imprimir un error ya que set_memory_decrypted() llamar\u00e1 a WARN_ONCE().\"}],\"affected\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"affectedData\":[{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"unaffected\",\"programFiles\":[\"drivers/virt/coco/tdx-guest/tdx-guest.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"f4738f56d1dc62aaba69b33702a5ab098f1b8c63\",\"lessThan\":\"1429ae7b7d4759a1e362456b8911c701bae655b4\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"f4738f56d1dc62aaba69b33702a5ab098f1b8c63\",\"lessThan\":\"27834971f616c5e154423c578fa95e0444444ce1\",\"versionType\":\"git\",\"status\":\"affected\"}]},{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"affected\",\"programFiles\":[\"drivers/virt/coco/tdx-guest/tdx-guest.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"6.7\",\"status\":\"affected\"},{\"version\":\"0\",\"lessThan\":\"6.7\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.12.8\",\"lessThanOrEqual\":\"6.12.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.13\",\"lessThanOrEqual\":\"*\",\"versionType\":\"original_commit_for_fix\",\"status\":\"unaffected\"}]}]}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"type\":\"Secondary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H\",\"baseScore\":9.3,\"baseSeverity\":\"CRITICAL\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"NONE\",\"userInteraction\":\"NONE\",\"scope\":\"CHANGED\",\"confidentialityImpact\":\"HIGH\",\"integrityImpact\":\"HIGH\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":2.5,\"impactScore\":6.0},{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N\",\"baseScore\":5.5,\"baseSeverity\":\"MEDIUM\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"LOW\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"HIGH\",\"integrityImpact\":\"NONE\",\"availabilityImpact\":\"NONE\"},\"exploitabilityScore\":1.8,\"impactScore\":3.6}]},\"weaknesses\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"description\":[{\"lang\":\"en\",\"value\":\"CWE-401\"}]}],\"configurations\":[{\"nodes\":[{\"operator\":\"OR\",\"negate\":false,\"cpeMatch\":[{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"6.7\",\"versionEndExcluding\":\"6.12.8\",\"matchCriteriaId\":\"E79883DD-75BE-4DA9-B4EC-AC6DE63BD438\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:6.13:rc1:*:*:*:*:*:*\",\"matchCriteriaId\":\"62567B3C-6CEE-46D0-BC2E-B3717FBF7D13\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:6.13:rc2:*:*:*:*:*:*\",\"matchCriteriaId\":\"5A073481-106D-4B15-B4C7-FB0213B8E1D4\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:6.13:rc3:*:*:*:*:*:*\",\"matchCriteriaId\":\"DE491969-75AE-4A6B-9A58-8FC5AF98798F\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:6.13:rc4:*:*:*:*:*:*\",\"matchCriteriaId\":\"93C0660D-7FB8-4FBA-892A-B064BA71E49E\"}]}]}],\"references\":[{\"url\":\"https://git.kernel.org/stable/c/1429ae7b7d4759a1e362456b8911c701bae655b4\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/27834971f616c5e154423c578fa95e0444444ce1\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]}]}}",
    "redhat_vex": {
      "aggregate_severity": "Moderate",
      "current_release_date": "2026-08-04T14:06:59+00:00",
      "cve": "CVE-2024-57793",
      "id": "CVE-2024-57793",
      "initial_release_date": "2024-01-01T00:00:00+00:00",
      "product_status:known_affected": "108",
      "product_status:known_not_affected": "90",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: virt: tdx-guest: Just leak decrypted memory on unrecoverable errors",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2024/cve-2024-57793.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "important",
      "current_release_date": "2026-07-25T01:15:02Z",
      "cve": "CVE-2024-57793",
      "id": "CVE-2024-57793",
      "initial_release_date": "2025-01-12T00:14:15Z",
      "product_status:known_affected": "384",
      "product_status:known_not_affected": "249",
      "product_status:recommended": "496",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2024-57793",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2024-57793.json",
      "version": "71"
    }
  }
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Detection rules are retrieved from Rulezet.

Loading…

Loading…

Loading…