NULL pointer dereference in Xen

CVE-2017-14318

An issue was discovered in Xen 4.5.x through 4.9.x. The function `__gnttab_cache_flush` handles GNTTABOP_cache_flush grant table operations. It checks to see if the calling domain is the owner of the page that is to be operated on. If it is not, the owner's grant table is checked to see if a grant mapping to the calling domain exists for the page in question. However, the function does not check to see if the owning domain actually has a grant table or not. Some special domains, such as `DOMID_XEN`, `DOMID_IO` and `DOMID_COW` are created without grant tables. Hence, if __gnttab_cache_flush operates on a page owned by these special domains, it will attempt to dereference a NULL pointer in the domain struct.

EPSS: 0.004 (34.7th percentile) — read the EPSS interpretation.

CVSS v3 metric

CVSS v3 base score 6.5 (Medium). Vector: CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:C/C:N/I:N/A:H.

Affected products

  • Xen — versions 4.5.0, 4.5.1, 4.5.2
  • N/a — versions n/a

Weakness classification (CWE)

References

Frequently asked questions

What is CVE-2017-14318?
CVE-2017-14318 is a medium-severity vulnerability in Xen, classified under NULL Pointer Dereference. CVSS score: 6.5/10. Published 2017-09-12.
How severe is CVE-2017-14318?
Medium severity. CVSS v3 base score is 6.5 out of 10.