summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGyorgy Sarvari <skandigraun@gmail.com>2026-02-23 20:18:44 +0100
committerKhem Raj <raj.khem@gmail.com>2026-02-24 22:30:28 -0800
commitf059dcebc394548069295be1cb0ee1ccf50a5c78 (patch)
treefb9f7fd98ed04e8371a80c915381ab5848acf30c
parent1f70d339eb3d3f4897f3eef91ae86fd915cbfa8c (diff)
downloadmeta-openembedded-f059dcebc394548069295be1cb0ee1ccf50a5c78.tar.gz
openjpeg: patch CVE-2023-39327
Details: https://nvd.nist.gov/vuln/detail/CVE-2023-39327 Take the patch that is used by OpenSUSE to mitigate this vulnerability. Upstream seems to be unresponsive to this issue. Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r--meta-oe/recipes-graphics/openjpeg/openjpeg/CVE-2023-39327.patch50
-rw-r--r--meta-oe/recipes-graphics/openjpeg/openjpeg_2.5.4.bb1
2 files changed, 51 insertions, 0 deletions
diff --git a/meta-oe/recipes-graphics/openjpeg/openjpeg/CVE-2023-39327.patch b/meta-oe/recipes-graphics/openjpeg/openjpeg/CVE-2023-39327.patch
new file mode 100644
index 0000000000..05e504a18e
--- /dev/null
+++ b/meta-oe/recipes-graphics/openjpeg/openjpeg/CVE-2023-39327.patch
@@ -0,0 +1,50 @@
1From a3504b2484cf7443c547037511c40f59aff8ae5a Mon Sep 17 00:00:00 2001
2From: Gyorgy Sarvari <skandigraun@gmail.com>
3Date: Mon, 23 Feb 2026 17:22:18 +0100
4Subject: [PATCH] CVE-2023-39327
5
6This patch fixes CVE-2023-39327.
7
8This patch comes from OpenSuse:
9https://build.opensuse.org/projects/openSUSE:Factory/packages/openjpeg2/files/openjpeg2-cve-2023-39327-limit-iterations.patch
10
11Upstream seems to unresponsive to this vulnerability.
12
13Upstream-Status: Inactive-Upstream [inactive, when it comes to CVEs]
14
15Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
16---
17 src/lib/openjp2/t2.c | 13 +++++++++++++
18 1 file changed, 13 insertions(+)
19
20diff --git a/src/lib/openjp2/t2.c b/src/lib/openjp2/t2.c
21index 4e8cf601..ad39cd74 100644
22--- a/src/lib/openjp2/t2.c
23+++ b/src/lib/openjp2/t2.c
24@@ -441,6 +441,8 @@ OPJ_BOOL opj_t2_decode_packets(opj_tcd_t* tcd,
25 * and no l_img_comp->resno_decoded are computed
26 */
27 OPJ_BOOL* first_pass_failed = NULL;
28+ OPJ_UINT32 l_packet_count = 0;
29+ OPJ_UINT32 l_max_packets = 100000;
30
31 if (l_current_pi->poc.prg == OPJ_PROG_UNKNOWN) {
32 /* TODO ADE : add an error */
33@@ -457,6 +459,17 @@ OPJ_BOOL opj_t2_decode_packets(opj_tcd_t* tcd,
34
35 while (opj_pi_next(l_current_pi)) {
36 OPJ_BOOL skip_packet = OPJ_FALSE;
37+
38+ /* CVE-2023-39327: Check for excessive packet iterations */
39+ if (++l_packet_count > l_max_packets) {
40+ opj_event_msg(p_manager, EVT_ERROR,
41+ "Excessive packet iterations detected (>%u). Possible malformed stream.\n",
42+ l_max_packets);
43+ opj_pi_destroy(l_pi, l_nb_pocs);
44+ opj_free(first_pass_failed);
45+ return OPJ_FALSE;
46+ }
47+
48 JAS_FPRINTF(stderr,
49 "packet offset=00000166 prg=%d cmptno=%02d rlvlno=%02d prcno=%03d lyrno=%02d\n\n",
50 l_current_pi->poc.prg1, l_current_pi->compno, l_current_pi->resno,
diff --git a/meta-oe/recipes-graphics/openjpeg/openjpeg_2.5.4.bb b/meta-oe/recipes-graphics/openjpeg/openjpeg_2.5.4.bb
index 6d7d87f5f1..33dc48b2ea 100644
--- a/meta-oe/recipes-graphics/openjpeg/openjpeg_2.5.4.bb
+++ b/meta-oe/recipes-graphics/openjpeg/openjpeg_2.5.4.bb
@@ -7,6 +7,7 @@ DEPENDS = "libpng tiff lcms zlib"
7 7
8SRC_URI = "git://github.com/uclouvain/openjpeg.git;branch=master;protocol=https \ 8SRC_URI = "git://github.com/uclouvain/openjpeg.git;branch=master;protocol=https \
9 file://0001-Do-not-ask-cmake-to-export-binaries-they-don-t-make-.patch \ 9 file://0001-Do-not-ask-cmake-to-export-binaries-they-don-t-make-.patch \
10 file://CVE-2023-39327.patch \
10 " 11 "
11SRCREV = "6c4a29b00211eb0430fa0e5e890f1ce5c80f409f" 12SRCREV = "6c4a29b00211eb0430fa0e5e890f1ce5c80f409f"
12 13