|
 |
|
QEMU Various Vulnerabilities
|
|
|
|
|
Secunia Advisory:
|
SA25073
|
|
|
Release Date:
|
2007-05-01
|
|
Last Update:
|
2008-05-19
|
|
|
Critical:
|

Moderately critical
|
|
Impact:
|
Security Bypass DoS
|
|
Where:
|
Local system
|
|
Solution Status:
|
Partial Fix
|
|
| Software: | QEMU 0.x
|
| | CVE reference: | CVE-2007-1320 (Secunia mirror) CVE-2007-1321 (Secunia mirror) CVE-2007-1322 (Secunia mirror) CVE-2007-1323 (Secunia mirror) CVE-2007-1366 (Secunia mirror) CVE-2007-5729 (Secunia mirror) CVE-2007-5730 (Secunia mirror) CVE-2007-6227 (Secunia mirror) CVE-2008-0928 (Secunia mirror)
|
|
|
|
|
|
Description: Some vulnerabilities have been reported in QEMU, which can be exploited by malicious, local users to bypass certain security restrictions or cause a DoS (Denial of Service).
1) A boundary error exists within the "cirrus_invalidate_region()" function of the Cirrus video driver, which can be exploited to cause a heap-based buffer overflow.
2) The size of ethernet frames is not correctly checked against the "MTU" before being copied into the registers of the NE2000 network driver. This can be exploited to cause a heap-based buffer overflow.
3) An integer signedness error when processing data in the NE2000 device registers can be exploited to cause a heap-based buffer overflow.
Successful exploitation of 1) through 3) may allow the execution of arbitrary code.
4) Errors when handling the "icebp" instruction can be exploited to cause a DoS by terminating the emulation session.
5) An error within the handling of the "aam" instruction can result in a division by zero, which can be exploited to cause a DoS.
6) A boundary error in "dyngen_code()" when generating host instructions can be exploited to cause a buffer overflow.
7) The block device backends do not properly check a guest's read or write attempts, which can be exploited to e.g. crash the QEMU process or potentially escape the virtualisation jail by writing into arbitrary QEMU host memory.
Successful exploitation of this vulnerability requires privileges to send specially crafted read or write requests to the ioemu block device backends.
Other issues, like an infinite loop in the SB16 driver, the dereference of an uninitialised function in the DMA handling, signedness errors in the IDE handling, and panics in the BIOS and VGA BIOS have also been reported.
Solution: Vulnerability #1 is fixed in the SVN repository.
http://svn.savannah.gnu.org/viewvc/?view=rev&root=qemu&revision=4340
Do not run untrusted applications in an emulated environment.
Provided and/or discovered by: 1)-5) Tavis Ormandy, Google
6) TeLeMan
7) Ian Jackson
Changelog: 2007-11-02: Added CVE references.
2007-12-03: Added vulnerability #6 and additional link.
2007-12-05: Added CVE reference.
2008-02-26: Added vulnerability #7 and additional link.
2008-02-29: Added CVE reference.
2008-05-19: Updated "Solution" section.
Original Advisory: Tavis Ormandy:
http://taviso.decsystem.org/virtsec.pdf
http://lists.gnu.org/archive/html/qemu-devel/2007-12/msg00009.html
Ian Jackson:
http://marc.info/?l=debian-security&m=120343592917055&w=2
|
|
|
|
|
Please note: The information that this Secunia Advisory is based on comes from a third party unless stated otherwise.
Secunia collects, validates, and verifies all vulnerability reports issued by security research groups, vendors, and others.
|
|
|
|
1 Related Secunia Security Advisories
|
|
|
1. QEMU "drive_init()" Disk Format Security Bypass
|
|
|
Send Feedback to Secunia
|
|
If you have new information regarding this Secunia advisory or a product in our database, please send it to us using either our web form or email us at vuln@secunia.com.
Ideas, suggestions, and other feedback are most welcome.
|
|
|
|

|
 |
Secunia PSI Scan | Patch | Track Free Download
|
|
|
Secunia Poll
|
|
|
|
|
 |
|
|
Most Popular Advisories
|
|
|
|
|
|