CVE Vulnerabilities

CVE-2017-14318

NULL Pointer Dereference

Published: Sep 12, 2017 | Modified: Nov 30, 2017
CVSS 3.x
6.5
MEDIUM
Source:
NVD
CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:C/C:N/I:N/A:H
CVSS 2.x
4.9 MEDIUM
AV:L/AC:L/Au:N/C:N/I:N/A:C
RedHat/V2
RedHat/V3
Ubuntu

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 owners 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.

Weakness

A NULL pointer dereference occurs when the application dereferences a pointer that it expects to be valid, but is NULL, typically causing a crash or exit.

Affected Software

Name Vendor Start Version End Version
Xen Xen 4.5.0 (including) 4.5.0 (including)
Xen Xen 4.5.1 (including) 4.5.1 (including)
Xen Xen 4.5.2 (including) 4.5.2 (including)
Xen Xen 4.5.3 (including) 4.5.3 (including)
Xen Xen 4.5.5 (including) 4.5.5 (including)
Xen Xen 4.6.0 (including) 4.6.0 (including)
Xen Xen 4.6.1 (including) 4.6.1 (including)
Xen Xen 4.6.3 (including) 4.6.3 (including)
Xen Xen 4.6.4 (including) 4.6.4 (including)
Xen Xen 4.6.5 (including) 4.6.5 (including)
Xen Xen 4.6.6 (including) 4.6.6 (including)
Xen Xen 4.7.0 (including) 4.7.0 (including)
Xen Xen 4.7.1 (including) 4.7.1 (including)
Xen Xen 4.7.2 (including) 4.7.2 (including)
Xen Xen 4.7.3 (including) 4.7.3 (including)
Xen Xen 4.8.0 (including) 4.8.0 (including)
Xen Xen 4.8.1 (including) 4.8.1 (including)
Xen Xen 4.9.0 (including) 4.9.0 (including)

Potential Mitigations

References