UBUNTU-CVE-2019-18423

Source
https://ubuntu.com/security/CVE-2019-18423
Import Source
https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2019/UBUNTU-CVE-2019-18423.json
JSON Data
https://api.osv.dev/v1/vulns/UBUNTU-CVE-2019-18423
Related
Published
2019-10-31T14:15:00Z
Modified
2024-10-15T14:07:03Z
Severity
  • 8.8 (High) CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H CVSS Calculator
Summary
[none]
Details

An issue was discovered in Xen through 4.12.x allowing ARM guest OS users to cause a denial of service via a XENMEMaddtophysmap hypercall. p2m->maxmappedgfn is used by the functions p2mresolvetranslationfault() and p2mgetentry() to sanity check guest physical frame. The rest of the code in the two functions will assume that there is a valid root table and check that with BUGON(). The function p2mgetrootpointer() will ignore the unused top bits of a guest physical frame. This means that the function p2msetentry() will alias the frame. However, p2m->maxmappedgfn will be updated using the original frame. It would be possible to set p2m->maxmappedgfn high enough to cover a frame that would lead p2mgetrootpointer() to return NULL in p2mgetentry() and p2mresolvetranslationfault(). Additionally, the sanity check on p2m->maxmappedgfn is off-by-one allowing "highest mapped + 1" to be considered valid. However, p2mgetrootpointer() will return NULL. The problem could be triggered with a specially crafted hypercall XENMEMaddtophysmap{, batch} followed by an access to an address (via hypercall or direct access) that passes the sanity check but cause p2mgetrootpointer() to return NULL. A malicious guest administrator may cause a hypervisor crash, resulting in a Denial of Service (DoS). Xen version 4.8 and newer are vulnerable. Only Arm systems are vulnerable. x86 systems are not affected.

References

Affected packages

Ubuntu:Pro:16.04:LTS / xen

Package

Name
xen
Purl
pkg:deb/ubuntu/xen?arch=src?distro=esm-infra/xenial

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0Unknown introduced version / All previous versions are affected

Affected versions

4.*

4.5.1-0ubuntu1
4.5.1-0ubuntu2
4.6.0-1ubuntu1
4.6.0-1ubuntu2
4.6.0-1ubuntu4
4.6.0-1ubuntu4.1
4.6.0-1ubuntu4.2
4.6.0-1ubuntu4.3
4.6.5-0ubuntu1
4.6.5-0ubuntu1.1
4.6.5-0ubuntu1.2
4.6.5-0ubuntu1.4

Ecosystem specific

{
    "ubuntu_priority": "medium"
}

Ubuntu:Pro:18.04:LTS / xen

Package

Name
xen
Purl
pkg:deb/ubuntu/xen?arch=src?distro=esm-infra/bionic

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0Unknown introduced version / All previous versions are affected

Affected versions

4.*

4.9.0-0ubuntu3
4.9.0-0ubuntu4
4.9.2-0ubuntu1

Ecosystem specific

{
    "ubuntu_priority": "medium"
}

Ubuntu:20.04:LTS / xen

Package

Name
xen
Purl
pkg:deb/ubuntu/xen?arch=src?distro=focal

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
4.11.3+24-g14b62ab3e5-1ubuntu1

Affected versions

4.*

4.9.2-0ubuntu2
4.9.2-0ubuntu6
4.9.2-0ubuntu7

Ecosystem specific

{
    "availability": "No subscription required",
    "ubuntu_priority": "medium",
    "binaries": [
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "libxen-dev"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "libxencall1"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "libxencall1-dbgsym"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "libxendevicemodel1"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "libxendevicemodel1-dbgsym"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "libxenevtchn1"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "libxenevtchn1-dbgsym"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "libxenforeignmemory1"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "libxenforeignmemory1-dbgsym"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "libxengnttab1"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "libxengnttab1-dbgsym"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "libxenmisc4.11"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "libxenmisc4.11-dbgsym"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "libxenstore3.0"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "libxenstore3.0-dbgsym"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "libxentoolcore1"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "libxentoolcore1-dbgsym"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "libxentoollog1"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "libxentoollog1-dbgsym"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "xen-doc"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "xen-hypervisor-4.11-amd64"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "xen-hypervisor-4.11-arm64"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "xen-hypervisor-4.11-armhf"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "xen-hypervisor-4.9-amd64"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "xen-hypervisor-4.9-arm64"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "xen-hypervisor-4.9-armhf"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "xen-hypervisor-common"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "xen-system-amd64"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "xen-system-arm64"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "xen-system-armhf"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "xen-utils-4.11"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "xen-utils-4.11-dbgsym"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "xen-utils-common"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "xen-utils-common-dbgsym"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "xenstore-utils"
        },
        {
            "binary_version": "4.11.3+24-g14b62ab3e5-1ubuntu1",
            "binary_name": "xenstore-utils-dbgsym"
        }
    ]
}