Information

Advisory XSA-335
Public release 2020-08-24 12:00
Updated 2020-08-24 12:17
Version 2
CVE(s) CVE-2020-14364
Title QEMU: usb: out-of-bounds r/w access issue

Files

advisory-335.txt (signed advisory file)
xsa335-qemu.patch
xsa335-trad.patch

Advisory


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

            Xen Security Advisory CVE-2020-14364 / XSA-335
                               version 2

               QEMU: usb: out-of-bounds r/w access issue

UPDATES IN VERSION 2
====================

Don't break the DSO by eliding the SoB on the patch.

Update Vulnerable Systems section.

Public release.

ISSUE DESCRIPTION
=================

An out-of-bounds read/write access issue was found in the USB emulator
of the QEMU. It occurs while processing USB packets from a guest, when
'USBDevice->setup_len' exceeds the USBDevice->data_buf[4096], in
do_token_{in,out} routines.

IMPACT
======

A guest user may use this flaw to crash the QEMU process resulting in
DoS OR potentially execute arbitrary code with the privileges of the
QEMU process on the host.

VULNERABLE SYSTEMS
==================

All versions of Qemu shipped with in-support versions of Xen are
vulnerable.  This includes both qemu-traditional and qemu-xen.

The vulnerability can only be exploited when Qemu is used as a device
model.  This configuration is only used by default for x86 HVM guests.
x86 PV, PVH and ARM guest do not use a device model by default.

Guests configured to use a Qemu stubdomain contain the code execution
within the stubdomain, and are therefore not considered vulnerable.

MITIGATION
==========

No mitigation is available.

CREDITS
=======

This issue was discovered by Xiao Wei of Qihoo 360 Inc.

RESOLUTION
==========

Applying the appropriate attached patch resolves this issue.

Note that patches for released versions are generally prepared to
apply to the stable branches, and may not apply cleanly to the most
recent release tarball.  Downstreams are encouraged to update to the
tip of the stable branch before applying these patches.

xsa335-qemu.patch    QEMU
xsa335-trad.patch    Xen unstable (SUPPORT.md update only)

$ sha256sum xsa335*
3af5f30c4fd21e3679fb749659f9e59d0ff335d092254352e128e7fee3340c41  xsa335-qemu.patch
2ed7b8bac4c473c6f89173a73485904be16785eb29ee18e189717d201381f27f  xsa335-trad.patch
$

"QEMU XEN TRADITIONAL"
======================

This version of qemu is provided by the Xen Project for use as a
device model stub domain.  In that configuration, there is not a
security problem and no action is needed.

But in other configurations, this version of qemu is lacking many
security fixes.  It is beyond the capacity of the Xen Project Security
Team to address these.  There is therefore no code resolution to
XSA-335 for users of qemu-xen-traditional who are not using device
model stub domains.

The patch xsa335-trad.patch included in this advisory is merely an
update for Xen's SUPPORT.md to document this situation.

DEPLOYMENT DURING EMBARGO
=========================

Deployment of the patches and/or mitigations described above (or
others which are substantially similar) is permitted during the
embargo, even on public-facing systems with untrusted guest users and
administrators.

But: Distribution of updated software is prohibited (except to other
members of the predisclosure list).

Predisclosure list members who wish to deploy significantly different
patches and/or mitigations, please contact the Xen Project Security
Team.


(Note: this during-embargo deployment notice is retained in
post-embargo publicly released Xen Project advisories, even though it
is then no longer applicable.  This is to enable the community to have
oversight of the Xen Project Security Team's decisionmaking.)

For more information about permissible uses of embargoed information,
consult the Xen Project community's agreed Security Policy:
  http://www.xenproject.org/security-policy.html
-----BEGIN PGP SIGNATURE-----

iQFABAEBCAAqFiEEI+MiLBRfRHX6gGCng/4UyVfoK9kFAl9Dr+0MHHBncEB4ZW4u
b3JnAAoJEIP+FMlX6CvZ274H/3FIK/DecsmdqVFs9UjqCi+RABmz6dFsgUxQYH9c
ysZvN7R/BTR1m425+7tlPK1oglkFkHt6C9snc3+kTh/Bl5ktXakgVacoR6yeTh88
1yJQC3JmG9OaXGS4AR9hmE+Wg0XTlrmvzPMFxtWv055kpPVEG6FWhnhV8d0FavoI
RWnlelNSkXgai5zWlAqhF8jzR4EeEmOp4f/BtQX/cjZAodXZSYMvLW1zy3vx4Wik
ZpL4qkJLE9GHOYZF9Ng8zwWx7c1CIi76zwdUvUgPu6IjTBIpo0LPZxlkbF+CqYcp
rVFaAy7j7+xMOOJntlN2a/NAxD4zs+sCLF1legrfi+9uMH4=
=bMZs
-----END PGP SIGNATURE-----

Xenproject.org Security Team