Bugzilla – Bug 864812
VUL-0: CVE-2013-4148: qemu: virtio-net: buffer overflow on invalid state load
Last modified: 2016-04-27 18:55:48 UTC
CVE-2013-4148 Michael S. Tsirkin writes: QEMU 1.0 integer conversion in virtio_net_load()@hw/net/virtio-net.c > n->mac_table.in_use = qemu_get_be32(f); in_use is int so it can get negative when assigned 32bit unsigned value. > /* MAC_TABLE_ENTRIES may be different from the saved image */ > if (n->mac_table.in_use <= MAC_TABLE_ENTRIES) { passing this check ^^^ > qemu_get_buffer(f, n->mac_table.macs, > n->mac_table.in_use * ETH_ALEN); with good in_use value, "n->mac_table.in_use * ETH_ALEN" can get positive and bigger than mac_table.macs. For example 0x81000000 satisfies this condition when ETH_ALEN is 6. An user able to alter the savevm data (either on the disk or over the wire during migration) could use this flaw to to corrupt QEMU process memory on the (destination) host, which could potentially result in arbitrary code execution on the host with the privileges of the QEMU process. References: http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2013-4148 https://bugzilla.redhat.com/show_bug.cgi?id=1066334
bugbot adjusting priority
This is an autogenerated message for OBS integration: This bug (864812) was mentioned in https://build.opensuse.org/request/show/235281 Factory / qemu
Update released for: kvm, kvm-debuginfo, kvm-debugsource Products: SLE-DESKTOP 11-SP3 (i386, x86_64) SLE-SERVER 11-SP3 (i386, s390x, x86_64)
SUSE-SU-2014:0816-1: An update that solves two vulnerabilities and has 20 fixes is now available. Category: security (moderate) Bug References: 864391,864649,864650,864653,864655,864665,864671,864673,864678,864682,864769,864796,864801,864802,864804,864805,864811,864812,864814,873235,874749,874788 CVE References: CVE-2014-0150,CVE-2014-2894 Sources used: SUSE Linux Enterprise Server 11 SP3 (src): kvm-1.4.2-0.15.2 SUSE Linux Enterprise Desktop 11 SP3 (src): kvm-1.4.2-0.15.2
fixed everywhere