mirror of
https://git.yoctoproject.org/poky
synced 2026-07-21 07:17:48 +02:00
qemu: Fix CVE-2026-2243
This patch applies the upstream v10.0.9 stable backport for
CVE-2026-2243. The upstream fix commit is referenced in [1],
and the public CVE advisory is referenced in [2]. The individual
backported commit links are recorded in the embedded patch headers
when the fix expands to multiple commits.
[1] 37ff880a12
[2] https://access.redhat.com/security/cve/CVE-2026-2243
(From OE-Core rev: 9d20ff0a25cf9822c1164baaf0a319985c5cc88f)
Signed-off-by: Ashishkumar Parmar <asparmar@cisco.com>
Signed-off-by: Yoann Congal <yoann.congal@smile.fr>
Signed-off-by: Paul Barker <paul@pbarker.dev>
This commit is contained in:
committed by
Paul Barker
parent
8f694f00c4
commit
8cb3e690c5
@@ -51,6 +51,7 @@ SRC_URI = "https://download.qemu.org/${BPN}-${PV}.tar.xz \
|
||||
file://CVE-2025-14876_p1.patch \
|
||||
file://CVE-2025-14876_p2.patch \
|
||||
file://CVE-2026-0665.patch \
|
||||
file://CVE-2026-2243.patch \
|
||||
"
|
||||
UPSTREAM_CHECK_REGEX = "qemu-(?P<pver>\d+(\.\d+)+)\.tar"
|
||||
|
||||
|
||||
45
meta/recipes-devtools/qemu/qemu/CVE-2026-2243.patch
Normal file
45
meta/recipes-devtools/qemu/qemu/CVE-2026-2243.patch
Normal file
@@ -0,0 +1,45 @@
|
||||
From 8480e4b3718302e7f63efb87e07720f70509c8c7 Mon Sep 17 00:00:00 2001
|
||||
From: "Halil Oktay (oblivionsage)" <cookieandcream560@gmail.com>
|
||||
Date: Tue, 10 Feb 2026 13:33:25 +0100
|
||||
Subject: [PATCH] block/vmdk: fix OOB read in vmdk_read_extent()
|
||||
|
||||
Bounds check for marker.size doesn't account for the 12-byte marker
|
||||
header, allowing zlib to read past the allocated buffer.
|
||||
|
||||
Move the check inside the has_marker block and subtract the marker size.
|
||||
|
||||
CVE: CVE-2026-2243
|
||||
Upstream-Status: Backport [https://gitlab.com/qemu-project/qemu/-/commit/37ff880a1252de304985c7e8493765014012ed2f]
|
||||
|
||||
Fixes: CVE-2026-2243
|
||||
Reported-by: Halil Oktay (oblivionsage) <cookieandcream560@gmail.com>
|
||||
Signed-off-by: Halil Oktay (oblivionsage) <cookieandcream560@gmail.com>
|
||||
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
|
||||
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
|
||||
(cherry picked from commit cfda94eddb6c9c49b66461c950b22845a46a75c9)
|
||||
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
|
||||
(cherry picked from commit 37ff880a1252de304985c7e8493765014012ed2f)
|
||||
Signed-off-by: Ashishkumar Parmar <asparmar@cisco.com>
|
||||
---
|
||||
block/vmdk.c | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/block/vmdk.c b/block/vmdk.c
|
||||
index d6971c706..7f63d0947 100644
|
||||
--- a/block/vmdk.c
|
||||
+++ b/block/vmdk.c
|
||||
@@ -1949,10 +1949,10 @@ vmdk_read_extent(VmdkExtent *extent, int64_t cluster_offset,
|
||||
marker = (VmdkGrainMarker *)cluster_buf;
|
||||
compressed_data = marker->data;
|
||||
data_len = le32_to_cpu(marker->size);
|
||||
- }
|
||||
- if (!data_len || data_len > buf_bytes) {
|
||||
- ret = -EINVAL;
|
||||
- goto out;
|
||||
+ if (!data_len || data_len > buf_bytes - sizeof(VmdkGrainMarker)) {
|
||||
+ ret = -EINVAL;
|
||||
+ goto out;
|
||||
+ }
|
||||
}
|
||||
ret = uncompress(uncomp_buf, &buf_len, compressed_data, data_len);
|
||||
if (ret != Z_OK) {
|
||||
Reference in New Issue
Block a user