Bug 870096 (CVE-2012-4536) - CVE-2012-4536 kernel: xen: PIRQ unmap missing range check causes hypervisor crash
Summary: CVE-2012-4536 kernel: xen: PIRQ unmap missing range check causes hypervisor c...
Alias: CVE-2012-4536
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
Target Milestone: ---
Assignee: Red Hat Product Security
QA Contact:
Depends On: 876200
Blocks: 870154
TreeView+ depends on / blocked
Reported: 2012-10-25 14:35 UTC by Petr Matousek
Modified: 2021-02-17 08:28 UTC (History)
6 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2013-04-15 14:26:22 UTC

Attachments (Terms of Use)

Description Petr Matousek 2012-10-25 14:35:29 UTC
domain_pirq_to_emuirq() uses the guest provided pirq value before range checking it, and physdev_unmap_pirq uses domain_pirq_to_emuirq without checking the pirq value either.  Invalid pirq values can cause Xen to read out of array bounds, usually resulting in a fatal page fault.

A malicious guest administrator can cause Xen to crash.  If the out of array bounds access does not crash, the arbitrary value read will be ignored due to later error checking, so there is no privilege escalation and no exploitable information leak.


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

Comment 2 Paolo Bonzini 2012-10-25 14:53:34 UTC
In RHEL5, physdev_unmap_pirq calls unmap_domain_pirq which does the range check.

Comment 3 Petr Matousek 2012-10-25 16:18:28 UTC

Not vulnerable.

This issue did not affect the versions of the kernel-xen package as shipped with Red Hat Enterprise Linux 5.

This issue did not affect Red Hat Enterprise Linux 6 and Red Hat Enterprise MRG as we did not have support for Xen hypervisor.

Comment 4 Petr Matousek 2012-11-13 14:40:50 UTC
Created xen tracking bugs for this issue

Affects: fedora-all [bug 876200]

Comment 5 Vincent Danen 2013-04-15 14:26:22 UTC
Fixed in Fedora via xen-4.1.3-4.fc16 and xen-4.1.3-6.fc17; Fedora 18 and higher were not affected.

Note You need to log in before you can comment on or make changes to this bug.