x86/tdx: Fix "in-kernel MMIO" check (Linux Linux)

CVE-2024-47727
HIGH 7.8

At a glance

Source
NVD
EPSS
EPSS 0.25 % · percentile 16 ()
State
PUBLISHED
Published
Updated
Assigner
Linux
NVD status
Modified

Description

In the Linux kernel, the following vulnerability has been resolved: x86/tdx: Fix "in-kernel MMIO" check TDX only supports kernel-initiated MMIO operations. The handle_mmio() function checks if the #VE exception occurred in the kernel and rejects the operation if it did not. However, userspace can deceive the kernel into performing MMIO on its behalf. For example, if userspace can point a syscall to an MMIO address, syscall does get_user() or put_user() on it, triggering MMIO #VE. The kernel will treat the #VE as in-kernel MMIO. Ensure that the target MMIO address is within the kernel before decoding instruction.

Weaknesses (CWE)

  • CWE-754 — Improper Check for Unusual or Exceptional Conditions

References

Scores

VersionScoreVectorScored by
CVSS 3.1HIGH 7.8CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HLinux
CVSS 3.1HIGH 7.8CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HNVD · 416baaa9-dc9f-4396-8d5f-8c081fb06d67 (Secondary)
CVSS 3.1HIGH 7.8CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HNVD · nvd@nist.gov (Primary)

European references

CERT-FR advisories

Affected configurations (NVD CPE)

Affected products

ProductVersions
Linux · Linuxaffected 31d58c4e557d46fa7f8557714250fb6f89c941ae < 25703a3c980e21548774eea8c8a87a75c5c8f58c ; affected 31d58c4e557d46fa7f8557714250fb6f89c941ae < 4c0c5dcb5471de5fc8f0a1c4980e5815339e1cee ; affected 31d58c4e557d46fa7f8557714250fb6f89c941ae < 18ecd5b74682839e7cdafb7cd1ec106df7baa18c ; affected 31d58c4e557d46fa7f8557714250fb6f89c941ae < bca2e29f7e26ce7c3522f8b324c0bd85612f68e3 ; affected 31d58c4e557d46fa7f8557714250fb6f89c941ae < d4fc4d01471528da8a9797a065982e05090e1d81
Linux · Linuxaffected 5.19 ; unaffected 0 < 5.19 ; unaffected 6.1.113 ≤ 6.1.* ; unaffected 6.6.54 ≤ 6.6.* ; unaffected 6.10.13 ≤ 6.10.* ; unaffected 6.11.2 ≤ 6.11.*

Sources

SourceLicence
CVE List (CVEProject cvelistV5)CVE Program Terms of Use
EPSS (FIRST.org)FIRST — attribution requested
ENISA EUVDENISA — reproduction authorised, source acknowledged
CERT-FR (ANSSI)Licence Ouverte / Etalab 2.0
NVD (NIST) via fkie-cad/nvd-json-data-feedsPublic domain — this product uses data from the NVD API but is not endorsed or certified by the NVD