Bug 1223846 (CVE-2015-4103, xsa128)

Summary: CVE-2015-4103 xen: potential unintended writes to host MSI message data field via qemu (xsa-128)
Product: [Other] Security Response Reporter: Martin Prpič <mprpic>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED WONTFIX QA Contact:
Severity: low Docs Contact:
Priority: low    
Version: unspecifiedCC: ailan, drjones, imammedo, knoel, mrezanin, mst, pbonzini, pmatouse, rkrcmar, security-response-team, vkuznets
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-05-24 10:36:52 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1227627    
Bug Blocks: 1223862    
Attachments:
Description Flags
xsa128-qemut.patch
none
xsa128-qemuu-4.3.patch
none
xsa128-qemuu.patch none

Description Martin Prpič 2015-05-21 14:28:01 UTC
ISSUE DESCRIPTION
=================

Logic is in place to avoid writes to certain host config space fields when the guest must nevertheless be able to access their virtual counterparts. A bug in how this logic deals with accesses spanning multiple fields allows the guest to write to the host MSI message data field.

While generally the writes write back the values previously read, their value in config space may have got changed by the host between the qemu read and write. In such a case host side interrupt handling could become confused, possibly losing interrupts or allowing spurious interrupt injection into other guests.

IMPACT
======

Certain untrusted guest administrators may be able to confuse host side interrupt handling, leading to a Denial of Service.

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

Xen versions 3.3 and onwards are vulnerable due to supporting PCI pass-through.

Only x86 systems are vulnerable. ARM systems are not vulnerable.

Only HVM guests with their device model run in Dom0 can take advantage of this vulnerability.

Only HVM guests which have been granted access to physical PCI devices (`PCI passthrough') can take advantage of this vulnerability.

Furthermore, the vulnerability is only applicable when the passed-through PCI devices are MSI-capable. (Most modern devices are.)

MITIGATION
==========

This issue can be avoided by not assigning MSI capable PCI devices to untrusted HVM guests.

This issue can also be avoided by only using PV guests.

It can also be avoided by configuring HVM guests with their device model run in a separate (stub) domain. (When using xl, this can be requested with "device_model_stubdomain_override=1" in the domain configuration file.)


Acknowledgements:

Red Hat would like to thank the Xen project for reporting this issue.

Comment 1 Martin Prpič 2015-05-21 14:30:05 UTC
Created attachment 1028232 [details]
xsa128-qemut.patch

Comment 2 Martin Prpič 2015-05-21 14:30:07 UTC
Created attachment 1028233 [details]
xsa128-qemuu-4.3.patch

Comment 3 Martin Prpič 2015-05-21 14:30:08 UTC
Created attachment 1028234 [details]
xsa128-qemuu.patch

Comment 4 Petr Matousek 2015-05-24 10:36:52 UTC
Statement:

This issue does affect then Xen packages as shipped with Red Hat Enterprise Linux 5.

Red Hat Enterprise Linux 5 is now in Production 3 Phase of the support and maintenance life cycle. This has been rated as having Low security impact and is not currently planned to be addressed in future updates. For additional information, refer to the Red Hat Enterprise Linux Life Cycle: https://access.redhat.com/support/policy/updates/errata/.

Comment 5 Martin Prpič 2015-06-03 07:55:35 UTC
External References:

http://xenbits.xen.org/xsa/advisory-128.html

Comment 6 Martin Prpič 2015-06-03 07:58:05 UTC
Created xen tracking bugs for this issue:

Affects: fedora-all [bug 1227627]