Heap-based buffer overflow in QEMU - CVE-2024-3447

 

Heap-based buffer overflow in QEMU - CVE-2024-3447

Published: April 29, 2024


Vulnerability identifier: #VU89048
CSH Severity: Low
CVSS v4: 6.9 [CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:N/VI:L/VA:H/SC:N/SI:N/SA:N]
CVE-ID: CVE-2024-3447
CWE-ID: CWE-122
Exploitation vector: Local access
Exploit availability: No public exploit available

Vulnerability details

The vulnerability allows a malicious guest to perform a denial of service (DoS) attack.

The vulnerability exists due to a boundary error in the SDHCI device emulation. A malicious guest can set both "s->data_count" and the size of "s->fifo_buffer" to the value of "0x200" to trigger an out-of-bound memory access and perform a denial of service (DoS) attack.


Affected software

QEMU
SUSE Linux Enterprise Server 15 SP3
SUSE Linux Enterprise High Performance Computing LTSS 15
SUSE Linux Enterprise High Performance Computing 15
SUSE Linux Enterprise Server 15
SUSE Linux Enterprise Server for SAP Applications 15
SUSE Linux Enterprise Real Time 15
SUSE Linux Enterprise Server for SAP Applications 12
SUSE Linux Enterprise Desktop 15
SUSE Linux Enterprise Server 12
SUSE Linux Enterprise High Performance Computing 12
SUSE Linux Enterprise Micro
SUSE Linux Enterprise Micro for Rancher
SUSE Enterprise Storage
Server Applications Module
SUSE Package Hub 15
Basesystem Module
openSUSE Leap
openEuler
Ubuntu
Anolis OS
qemu-ipxe
qemu-seabios
qemu-vgabios
qemu-ui-sdl
qemu-block-rbd
qemu-block-curl
qemu-tools-debuginfo
qemu-ui-sdl-debuginfo
qemu-guest-agent-debuginfo
qemu-ui-gtk
qemu-block-rbd-debuginfo
qemu-audio-sdl-debuginfo
qemu-arm
qemu-kvm
qemu-x86
qemu-ppc-debuginfo
qemu-ppc
qemu-s390-debuginfo
qemu-s390
qemu-audio-pa-debuginfo
qemu-block-curl-debuginfo
qemu-audio-oss-debuginfo
qemu-block-ssh-debuginfo
qemu-ui-curses
qemu-block-ssh
qemu-audio-oss
qemu-ui-curses-debuginfo
qemu-guest-agent
qemu-audio-pa
qemu
qemu-audio-alsa-debuginfo
qemu-audio-sdl
qemu-arm-debuginfo
qemu-audio-alsa
qemu-lang
qemu-block-iscsi
qemu-tools
qemu-block-iscsi-debuginfo
qemu-ui-gtk-debuginfo
qemu-debugsource
qemu-debuginfo
qemu-img
qemu-help
qemu-chardev-spice-debuginfo
qemu-block-gluster-debuginfo
qemu-ui-spice-core
qemu-ui-spice-app
qemu-hw-usb-redirect-debuginfo
qemu-ui-spice-app-debuginfo
qemu-ksm
qemu-audio-spice-debuginfo
qemu-chardev-baum-debuginfo
qemu-testsuite
qemu-linux-user-debugsource
qemu-block-nfs-debuginfo
qemu-block-nfs
qemu-microvm
qemu-skiboot
qemu-SLOF
qemu-ui-spice-core-debuginfo
qemu-hw-usb-redirect
qemu-block-dmg-debuginfo
qemu-vhost-user-gpu-debuginfo
qemu-x86-debuginfo
qemu-hw-display-virtio-gpu-pci
qemu-ui-opengl
qemu-hw-display-qxl
qemu-hw-display-virtio-vga
qemu-chardev-spice
qemu-ivshmem-tools
qemu-hw-s390x-virtio-gpu-ccw
qemu-hw-display-qxl-debuginfo
qemu-linux-user
qemu-extra-debuginfo
qemu-hw-usb-smartcard
qemu-chardev-baum
qemu-audio-spice
qemu-hw-display-virtio-gpu-debuginfo
qemu-hw-display-virtio-vga-debuginfo
qemu-linux-user-debuginfo
qemu-s390x-debuginfo
qemu-hw-display-virtio-gpu
qemu-vhost-user-gpu
qemu-s390x
qemu-hw-s390x-virtio-gpu-ccw-debuginfo
qemu-ivshmem-tools-debuginfo
qemu-ui-opengl-debuginfo
qemu-hw-usb-smartcard-debuginfo
qemu-block-dmg
qemu-extra
qemu-hw-display-virtio-gpu-pci-debuginfo
qemu-block-gluster
qemu (Ubuntu package)
qemu-system-riscv
qemu-hw-usb-host
qemu-system-aarch64
qemu-system-arm
qemu-system-x86_64
qemu-accel-tcg-x86
qemu-hw-usb-host-debuginfo
qemu-accel-qtest
qemu-headless
qemu-audio-jack
qemu-audio-jack-debuginfo
qemu-accel-qtest-debuginfo
qemu-accel-tcg-x86-debuginfo
qemu-audio-dbus-debuginfo
qemu-audio-dbus
qemu-ui-dbus-debuginfo
qemu-ui-dbus
qemu-kvm-core
qemu-pr-helper
qemu-system-aarch64-core
qemu-system-arm-core
qemu-system-loongarch64
qemu-system-loongarch64-core
qemu-system-riscv-core
qemu-system-x86
qemu-system-x86-core
qemu-tests
qemu-ui-egl-headless
qemu-user
qemu-user-binfmt
qemu-docs
qemu-char-baum
qemu-char-spice
qemu-common
qemu-device-display-qxl
qemu-device-display-virtio-gpu
qemu-device-display-virtio-gpu-ccw
qemu-device-display-virtio-gpu-pci
qemu-device-display-virtio-vga
qemu-device-display-virtio-vga-gl
qemu-device-usb-host
qemu-device-usb-redirect
qemu-device-usb-smartcard
qemu-sgabios

How to mitigate CVE-2024-3447

Install updates from vendor's website.

qemu-ipxe - addressed in versions 1.0.0+-75.1, 1.0.0+-150300.135.1, 1.0.0+-150500.49.15.1
qemu-seabios - addressed in versions 1.12.0_0_ga698c89-75.1, 1.14.0_0_g155821a-150300.135.1, 1.16.0_0_gd239552-150500.49.15.1
qemu-vgabios - addressed in versions 1.12.0_0_ga698c89-75.1, 1.14.0_0_g155821a-150300.135.1, 1.16.0_0_gd239552-150500.49.15.1
qemu-ui-sdl - update to 3.1.1.1-75.1
qemu-block-rbd - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-block-curl - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-tools-debuginfo - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-ui-sdl-debuginfo - update to 3.1.1.1-75.1
qemu-guest-agent-debuginfo - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-ui-gtk - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-block-rbd-debuginfo - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-audio-sdl-debuginfo - update to 3.1.1.1-75.1
qemu-arm - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-kvm - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-x86 - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-ppc-debuginfo - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-ppc - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-s390-debuginfo - update to 3.1.1.1-75.1
qemu-s390 - update to 3.1.1.1-75.1
qemu-audio-pa-debuginfo - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-block-curl-debuginfo - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-audio-oss-debuginfo - addressed in versions 3.1.1.1-75.1, 7.1.0-150500.49.15.1
qemu-block-ssh-debuginfo - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-ui-curses - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-block-ssh - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-audio-oss - addressed in versions 3.1.1.1-75.1, 7.1.0-150500.49.15.1
qemu-ui-curses-debuginfo - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-guest-agent - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-audio-pa - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-audio-alsa-debuginfo - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-audio-sdl - update to 3.1.1.1-75.1
qemu-arm-debuginfo - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-audio-alsa - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-lang - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-block-iscsi - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-tools - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-block-iscsi-debuginfo - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-ui-gtk-debuginfo - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-debugsource - addressed in versions 3.1.1.1-75.1, 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu - addressed in versions 4.1.0-79, 4.1.0-83, 6.2.0-88, 6.2.0-91
qemu-block-rbd - addressed in versions 4.1.0-79, 4.1.0-83, 6.2.0-88, 6.2.0-91
qemu-block-curl - addressed in versions 4.1.0-79, 4.1.0-83, 6.2.0-88, 6.2.0-91
qemu-debugsource - addressed in versions 4.1.0-79, 4.1.0-83, 6.2.0-88, 6.2.0-91
qemu-debuginfo - addressed in versions 4.1.0-79, 4.1.0-83, 6.2.0-88, 6.2.0-91
qemu-guest-agent - addressed in versions 4.1.0-79, 4.1.0-83, 6.2.0-88, 6.2.0-91
qemu-block-iscsi - addressed in versions 4.1.0-79, 4.1.0-83, 6.2.0-88, 6.2.0-91
qemu-block-ssh - addressed in versions 4.1.0-79, 4.1.0-83, 6.2.0-88, 6.2.0-91
qemu-img - addressed in versions 4.1.0-79, 4.1.0-83, 6.2.0-88, 6.2.0-91
qemu-help - addressed in versions 4.1.0-79, 4.1.0-83, 6.2.0-88, 6.2.0-91
qemu-seabios - addressed in versions 4.1.0-79, 4.1.0-83, 6.2.0-88, 6.2.0-91
qemu-chardev-spice-debuginfo - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-block-gluster-debuginfo - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-ui-spice-core - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-ui-spice-app - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-hw-usb-redirect-debuginfo - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-ui-spice-app-debuginfo - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-ksm - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-audio-spice-debuginfo - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-chardev-baum-debuginfo - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-testsuite - update to 5.2.0-150300.135.1
qemu-linux-user-debugsource - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-block-nfs-debuginfo - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-block-nfs - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-microvm - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-skiboot - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-SLOF - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-ui-spice-core-debuginfo - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-hw-usb-redirect - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-block-dmg-debuginfo - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-vhost-user-gpu-debuginfo - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-x86-debuginfo - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-hw-display-virtio-gpu-pci - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-ui-opengl - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-hw-display-qxl - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-hw-display-virtio-vga - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-chardev-spice - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-ivshmem-tools - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-hw-s390x-virtio-gpu-ccw - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-hw-display-qxl-debuginfo - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-linux-user - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-extra-debuginfo - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-hw-usb-smartcard - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-chardev-baum - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-audio-spice - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-hw-display-virtio-gpu-debuginfo - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-debuginfo - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-hw-display-virtio-vga-debuginfo - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-linux-user-debuginfo - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-s390x-debuginfo - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-hw-display-virtio-gpu - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-vhost-user-gpu - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-s390x - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-hw-s390x-virtio-gpu-ccw-debuginfo - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-ivshmem-tools-debuginfo - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-ui-opengl-debuginfo - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-hw-usb-smartcard-debuginfo - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-block-dmg - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-extra - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-hw-display-virtio-gpu-pci-debuginfo - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu-block-gluster - addressed in versions 5.2.0-150300.135.1, 7.1.0-150500.49.15.1
qemu (Ubuntu package) - addressed in versions 1:6.2+dfsg-2ubuntu6.27, 1:8.2.2+ds-0ubuntu1.10, 1:9.2.1+ds-1ubuntu5.2
qemu-system-riscv - addressed in versions 6.2.0-88, 6.2.0-91
qemu-hw-usb-host - addressed in versions 6.2.0-88, 6.2.0-91
qemu-system-aarch64 - addressed in versions 6.2.0-88, 6.2.0-91
qemu-system-arm - addressed in versions 6.2.0-88, 6.2.0-91
qemu-system-x86_64 - addressed in versions 6.2.0-88, 6.2.0-91
qemu-accel-tcg-x86 - update to 7.1.0-150500.49.15.1
qemu-hw-usb-host-debuginfo - update to 7.1.0-150500.49.15.1
qemu-accel-qtest - update to 7.1.0-150500.49.15.1
qemu-headless - update to 7.1.0-150500.49.15.1
qemu-audio-jack - update to 7.1.0-150500.49.15.1
qemu-audio-jack-debuginfo - update to 7.1.0-150500.49.15.1
qemu-accel-qtest-debuginfo - update to 7.1.0-150500.49.15.1
qemu-accel-tcg-x86-debuginfo - update to 7.1.0-150500.49.15.1
qemu-audio-dbus-debuginfo - update to 7.1.0-150500.49.15.1
qemu-hw-usb-host - update to 7.1.0-150500.49.15.1
qemu-audio-dbus - update to 7.1.0-150500.49.15.1
qemu-ui-dbus-debuginfo - update to 7.1.0-150500.49.15.1
qemu-ui-dbus - update to 7.1.0-150500.49.15.1
qemu-guest-agent - update to 8.2.0-19
qemu-img - update to 8.2.0-19
qemu-kvm - update to 8.2.0-19
qemu-kvm-core - update to 8.2.0-19
qemu-pr-helper - update to 8.2.0-19
qemu-system-aarch64 - update to 8.2.0-19
qemu-system-aarch64-core - update to 8.2.0-19
qemu-system-arm - update to 8.2.0-19
qemu-system-arm-core - update to 8.2.0-19
qemu-system-loongarch64 - update to 8.2.0-19
qemu-system-loongarch64-core - update to 8.2.0-19
qemu-system-riscv - update to 8.2.0-19
qemu-system-riscv-core - update to 8.2.0-19
qemu-system-x86 - update to 8.2.0-19
qemu-system-x86-core - update to 8.2.0-19
qemu-tests - update to 8.2.0-19
qemu-tools - update to 8.2.0-19
qemu-ui-curses - update to 8.2.0-19
qemu-ui-dbus - update to 8.2.0-19
qemu-ui-egl-headless - update to 8.2.0-19
qemu-ui-gtk - update to 8.2.0-19
qemu-ui-opengl - update to 8.2.0-19
qemu-ui-spice-app - update to 8.2.0-19
qemu-ui-spice-core - update to 8.2.0-19
qemu-user - update to 8.2.0-19
qemu-user-binfmt - update to 8.2.0-19
qemu-docs - update to 8.2.0-19
qemu - update to 8.2.0-19
qemu-audio-alsa - update to 8.2.0-19
qemu-audio-dbus - update to 8.2.0-19
qemu-audio-oss - update to 8.2.0-19
qemu-audio-pa - update to 8.2.0-19
qemu-audio-spice - update to 8.2.0-19
qemu-block-curl - update to 8.2.0-19
qemu-block-dmg - update to 8.2.0-19
qemu-block-gluster - update to 8.2.0-19
qemu-block-iscsi - update to 8.2.0-19
qemu-block-ssh - update to 8.2.0-19
qemu-char-baum - update to 8.2.0-19
qemu-char-spice - update to 8.2.0-19
qemu-common - update to 8.2.0-19
qemu-device-display-qxl - update to 8.2.0-19
qemu-device-display-virtio-gpu - update to 8.2.0-19
qemu-device-display-virtio-gpu-ccw - update to 8.2.0-19
qemu-device-display-virtio-gpu-pci - update to 8.2.0-19
qemu-device-display-virtio-vga - update to 8.2.0-19
qemu-device-display-virtio-vga-gl - update to 8.2.0-19
qemu-device-usb-host - update to 8.2.0-19
qemu-device-usb-redirect - update to 8.2.0-19
qemu-device-usb-smartcard - update to 8.2.0-19
qemu-sgabios - addressed in versions 8-75.1, 8-150300.135.1, 8-150500.49.15.1

External References

Related Security Bulletins